From 3295498e9e49b3f67d6bf5453ebc93ab335e76ff Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 16 Sep 2017 12:50:34 +0200 Subject: [PATCH 001/769] Remove code comment --- htdocs/product/index.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/product/index.php b/htdocs/product/index.php index cd1c9a4883b..3568cd4a492 100644 --- a/htdocs/product/index.php +++ b/htdocs/product/index.php @@ -367,7 +367,6 @@ function activitytrim($product_type) $result = $db->query($sql); if ($result) { - //$tmpyear=$beginyear; // FIXME $beginyear is not defined $tmpyear=0; $trim1=0; $trim2=0; From e61bcd03ed86879044e4631e15242602d7501128 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 16 Sep 2017 13:03:27 +0200 Subject: [PATCH 002/769] Fix travis --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7cb9db632ad..8ae2e95f0c8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -126,10 +126,10 @@ before_script: echo "Set timezone" echo 'date.timezone = "Europe/Paris"' >> ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php.ini if [ "$TRAVIS_PHP_VERSION" = '5.3' ] || [ "$TRAVIS_PHP_VERSION" = '5.4' ]; then - echo - echo "Enabling APC for PHP <= 5.4" + #echo + #echo "Enabling APC for PHP <= 5.4" # Documentation says it should be available for PHP <= 5.6 but it's not for 5.5 and 5.6! - echo 'extension = apc.so' >> ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php.ini + #echo 'extension = apc.so' >> ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php.ini echo echo "Enabling Memcached for PHP <= 5.4" # Documentation says it should be available for all PHP versions but it's not for 5.5 and 5.6, 7.0 and nightly! From 008163628ab1ed78afd5dab12d4f5da593e5eef5 Mon Sep 17 00:00:00 2001 From: John Date: Tue, 26 Jun 2018 08:03:25 +0200 Subject: [PATCH 003/769] New pdf documents using new column system --- .../core/class/commondocgenerator.class.php | 225 ++ .../commande/doc/pdf_eratosthene.modules.php | 1675 ++++++++++++++ .../facture/doc/pdf_sponge.modules.php | 2030 +++++++++++++++++ .../modules/propale/doc/pdf_cyan.modules.php | 1891 +++++++++++++++ htdocs/langs/en_US/bills.lang | 3 +- htdocs/langs/en_US/orders.lang | 3 +- htdocs/langs/en_US/propal.lang | 3 +- 7 files changed, 5827 insertions(+), 3 deletions(-) create mode 100644 htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php create mode 100644 htdocs/core/modules/facture/doc/pdf_sponge.modules.php create mode 100644 htdocs/core/modules/propale/doc/pdf_cyan.modules.php diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index d3d77640540..ef0283a85d5 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -749,5 +749,230 @@ abstract class CommonDocGenerator if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h); $pdf->line($x, $y+$h, $x, $y); } + + + /** + * uasort callback function to Sort colums fields + * + * @param array $a PDF lines array fields configs + * @param array $b PDF lines array fields configs + * @return int Return compare result + */ + function columnSort($a, $b) { + + if(empty($a['rank'])){ $a['rank'] = 0; } + if(empty($b['rank'])){ $b['rank'] = 0; } + if ($a['rank'] == $b['rank']) { + return 0; + } + return ($a['rank'] > $b['rank']) ? -1 : 1; + + } + + /** + * Prepare Array Column Field + * + * @param object $object common object + * @param outputlangs $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return null + */ + function prepareArrayColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + + global $conf; + + $this->defineColumnField($object,$outputlangs,$hidedetails,$hidedesc,$hideref); + + + // Sorting + uasort ( $this->cols, array( $this, 'columnSort' ) ); + + // Positionning + $curX = $this->page_largeur-$this->marge_droite; // start from right + + // Array witdh + $arrayWidth = $this->page_largeur-$this->marge_droite-$this->marge_gauche; + + // Count flexible column + $totalDefinedColWidth = 0; + $countFlexCol = 0; + foreach ($this->cols as $colKey =>& $colDef) + { + if(!$this->getColumnStatus($colKey)) continue; // continue if desable + + if(!empty($colDef['scale'])){ + // In case of column widht is defined by percentage + $colDef['width'] = abs($arrayWidth * $colDef['scale'] / 100 ); + } + + if(empty($colDef['width'])){ + $countFlexCol++; + } + else{ + $totalDefinedColWidth += $colDef['width']; + } + } + + foreach ($this->cols as $colKey =>& $colDef) + { + // setting empty conf with default + if(!empty($colDef['title'])){ + $colDef['title'] = array_replace($this->defaultTitlesFieldsStyle, $colDef['title']); + } + else{ + $colDef['title'] = $this->defaultTitlesFieldsStyle; + } + + // setting empty conf with default + if(!empty($colDef['content'])){ + $colDef['content'] = array_replace($this->defaultContentsFieldsStyle, $colDef['content']); + } + else{ + $colDef['content'] = $this->defaultContentsFieldsStyle; + } + + if($this->getColumnStatus($colKey)) + { + // In case of flexible column + if(empty($colDef['width'])){ + $colDef['width'] = abs(($arrayWidth - $totalDefinedColWidth)) / $countFlexCol; + } + + // Set positions + $lastX = $curX; + $curX = $lastX - $colDef['width']; + $colDef['xStartPos'] = $curX; + $colDef['xEndPos'] = $lastX; + } + } + } + + /** + * get column content width from column key + * + * @param string $colKey the column key + * @return float width in mm + */ + function getColumnContentWidth($colKey) + { + $colDef = $this->cols[$colKey]; + return $colDef['width'] - $colDef['content']['padding'][3] - $colDef['content']['padding'][1]; + } + + + /** + * get column content X (abscissa) left position from column key + * + * @param string $colKey the column key + * @return float X position in mm + */ + function getColumnContentXStart($colKey) + { + $colDef = $this->cols[$colKey]; + return $colDef['xStartPos'] + $colDef['content']['padding'][3]; + } + + /** + * get column position rank from column key + * + * @param string $colKey the column key + * @return int rank on success and -1 on error + */ + function getColumnRank($colKey) + { + if(!isset($this->cols[$colKey]['rank'])) return -1; + return $this->cols[$colKey]['rank']; + } + + /** + * get column position rank from column key + * + * @param string $newColKey the new column key + * @param array $defArray a single column definition array + * @param string $targetCol target column used to place the new column beside + * @param bool $insertAfterTarget insert before or after target column ? + * @return int new rank on success and -1 on error + */ + function insertNewColumnDef($newColKey, $defArray, $targetCol = false, $insertAfterTarget = false) + { + // prepare wanted rank + $rank = -1; + + // try to get rank from target column + if(!empty($targetCol)){ + $rank = $this->getColumnRank($targetCol); + if($rank>=0 && $insertAfterTarget){ $rank++; } + } + + // get rank from new column definition + if($rank<0 && !empty($defArray['rank'])){ + $rank = $defArray['rank']; + } + + // error: no rank + if($rank<0){ return -1; } + + foreach ($this->cols as $colKey =>& $colDef) + { + if( $rank <= $colDef['rank']) + { + $colDef['rank'] = $colDef['rank'] + 1; + } + } + + $defArray['rank'] = $rank; + $this->cols[$newColKey] = $defArray; // array_replace is used to preserve keys + + return $rank; + } + + + /** + * print standard column content + * + * @param PDF $pdf pdf object + * @param float $curY curent Y position + * @param string $colKey the column key + * @param string $columnText column text + * @return int new rank on success and -1 on error + */ + function printStdColumnContent($pdf, &$curY, $colKey, $columnText = '') + { + global $hookmanager; + + $parameters=array( + 'object' => $object, + 'curY' =>& $curY, + 'columnText' => $columnText, + 'colKey' => $colKey + ); + $reshook=$hookmanager->executeHooks('printStdColumnContent',$parameters,$this); // Note that $action and $object may have been modified by hook + if ($reshook < 0) setEventMessages($hookmanager->error,$hookmanager->errors,'errors'); + if (!$reshook) + { + if(empty($columnText)) return; + $pdf->SetXY($this->getColumnContentXStart($colKey),$curY); // Set curent position + $colDef = $this->cols[$colKey]; + $pdf->MultiCell( $this->getColumnContentWidth($colKey),2, $columnText,'',$colDef['content']['align']); + } + + } + + + /** + * get column status from column key + * + * @param string $colKey the column key + * @return float width in mm + */ + function getColumnStatus($colKey) + { + if( !empty($this->cols[$colKey]['status'])){ + return true; + } + else return false; + } } diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php new file mode 100644 index 00000000000..58129bea6e2 --- /dev/null +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -0,0 +1,1675 @@ + + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2008 Raphael Bertrand + * Copyright (C) 2010-2013 Juanjo Menent + * Copyright (C) 2012 Christophe Battarel + * Copyright (C) 2012 Cedric Salvador + * Copyright (C) 2015 Marcos García + * Copyright (C) 2017 Ferran Marcet + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php + * \ingroup commande + * \brief Fichier de la classe permettant de generer les commandes au modele Eratosthène + */ + +require_once DOL_DOCUMENT_ROOT.'/core/modules/commande/modules_commande.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; + + +/** + * Classe to generate PDF orders with template Eratosthene + */ +class pdf_eratosthene extends ModelePDFCommandes +{ + /** + * @var DoliDb Database handler + */ + public $db; + + /** + * @var string model name + */ + public $name; + + /** + * @var string model description (short text) + */ + public $description; + + /** + * @var int Save the name of generated file as the main doc when generating a doc with this template + */ + public $update_main_doc_field; + + /** + * @var string document type + */ + public $type; + + /** + * @var array() Minimum version of PHP required by module. + * e.g.: PHP ≥ 5.3 = array(5, 3) + */ + public $phpmin = array(5, 2); + + /** + * Dolibarr version of the loaded document + * @public string + */ + public $version = 'dolibarr'; + + public $page_largeur; + public $page_hauteur; + public $format; + public $marge_gauche; + public $marge_droite; + public $marge_haute; + public $marge_basse; + + public $emetteur; // Objet societe qui emet + + + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + global $conf,$langs,$mysoc; + + // Translations + $langs->loadLangs(array("main", "bills", "products")); + + $this->db = $db; + $this->name = "eratosthene"; + $this->description = $langs->trans('PDFEratostheneDescription'); + $this->update_main_doc_field = 1; // Save the name of generated file as the main doc when generating a doc with this template + + // Dimension page + $this->type = 'pdf'; + $formatarray=pdf_getFormat(); + $this->page_largeur = $formatarray['width']; + $this->page_hauteur = $formatarray['height']; + $this->format = array($this->page_largeur,$this->page_hauteur); + $this->marge_gauche=isset($conf->global->MAIN_PDF_MARGIN_LEFT)?$conf->global->MAIN_PDF_MARGIN_LEFT:10; + $this->marge_droite=isset($conf->global->MAIN_PDF_MARGIN_RIGHT)?$conf->global->MAIN_PDF_MARGIN_RIGHT:10; + $this->marge_haute =isset($conf->global->MAIN_PDF_MARGIN_TOP)?$conf->global->MAIN_PDF_MARGIN_TOP:10; + $this->marge_basse =isset($conf->global->MAIN_PDF_MARGIN_BOTTOM)?$conf->global->MAIN_PDF_MARGIN_BOTTOM:10; + + $this->option_logo = 1; // Affiche logo + $this->option_tva = 1; // Gere option tva FACTURE_TVAOPTION + $this->option_modereg = 1; // Affiche mode reglement + $this->option_condreg = 1; // Affiche conditions reglement + $this->option_codeproduitservice = 1; // Affiche code produit-service + $this->option_multilang = 1; // Dispo en plusieurs langues + $this->option_escompte = 0; // Affiche si il y a eu escompte + $this->option_credit_note = 0; // Support credit notes + $this->option_freetext = 1; // Support add of a personalised text + $this->option_draft_watermark = 1; // Support add of a watermark on drafts + + $this->franchise=!$mysoc->tva_assuj; + + // Get source company + $this->emetteur=$mysoc; + if (empty($this->emetteur->country_code)) $this->emetteur->country_code=substr($langs->defaultlang,-2); // By default, if was not defined + + // Define position of columns + $this->posxdesc=$this->marge_gauche+1; + + + $this->tva=array(); + $this->localtax1=array(); + $this->localtax2=array(); + $this->atleastoneratenotnull=0; + $this->atleastonediscount=0; + } + + /** + * Function to build pdf onto disk + * + * @param Object $object Object to generate + * @param Translate $outputlangs Lang output object + * @param string $srctemplatepath Full path of source filename for generator using a template file + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return int 1=OK, 0=KO + */ + function write_file($object, $outputlangs, $srctemplatepath='', $hidedetails=0, $hidedesc=0, $hideref=0) + { + global $user, $langs, $conf, $mysoc, $db, $hookmanager, $nblignes; + + if (! is_object($outputlangs)) $outputlangs=$langs; + // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO + if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1'; + + // Translations + $outputlangs->loadLangs(array("main", "dict", "companies", "bills", "products", "orders", "deliveries")); + + $nblignes = count($object->lines); + + if ($conf->commande->dir_output) + { + $object->fetch_thirdparty(); + + $deja_regle = 0; + + // Definition of $dir and $file + if ($object->specimen) + { + $dir = $conf->commande->dir_output; + $file = $dir . "/SPECIMEN.pdf"; + } + else + { + $objectref = dol_sanitizeFileName($object->ref); + $dir = $conf->commande->dir_output . "/" . $objectref; + $file = $dir . "/" . $objectref . ".pdf"; + } + + if (! file_exists($dir)) + { + if (dol_mkdir($dir) < 0) + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + } + + if (file_exists($dir)) + { + // Add pdfgeneration hook + if (! is_object($hookmanager)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; + $hookmanager=new HookManager($this->db); + } + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('beforePDFCreation',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + + // Create pdf instance + $pdf=pdf_getInstance($this->format); + $default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance + $pdf->SetAutoPageBreak(1,0); + + $heightforinfotot = 40; // Height reserved to output the info and total part + $heightforfreetext= (isset($conf->global->MAIN_PDF_FREETEXT_HEIGHT)?$conf->global->MAIN_PDF_FREETEXT_HEIGHT:5); // Height reserved to output the free text on last page + $heightforfooter = $this->marge_basse + (empty($conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS)?12:22); // Height reserved to output the footer (value include bottom margin) + + if (class_exists('TCPDF')) + { + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + } + $pdf->SetFont(pdf_getPDFFont($outputlangs)); + // Set path to the background PDF File + if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) + { + $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $tplidx = $pdf->importPage(1); + } + + $pdf->Open(); + $pagenb=0; + $pdf->SetDrawColor(128,128,128); + + $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref)); + $pdf->SetSubject($outputlangs->transnoentities("PdfOrderTitle")); + $pdf->SetCreator("Dolibarr ".DOL_VERSION); + $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); + $pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("PdfOrderTitle")." ".$outputlangs->convToOutputCharset($object->thirdparty->name)); + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); + + $pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right + + /// Does we have at least one line with discount $this->atleastonediscount + foreach ($object->lines as $line) { + if ($line->remise_percent){ + $this->atleastonediscount = true; + break; + } + } + + if (empty($this->atleastonediscount) && empty($conf->global->PRODUCT_USE_UNITS)) + { + $this->posxpicture+=($this->postotalht - $this->posxdiscount); + $this->posxtva+=($this->postotalht - $this->posxdiscount); + $this->posxup+=($this->postotalht - $this->posxdiscount); + $this->posxqty+=($this->postotalht - $this->posxdiscount); + $this->posxdiscount+=($this->postotalht - $this->posxdiscount); + //$this->postotalht; + } + + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + $top_shift = $this->_pagehead($pdf, $object, 1, $outputlangs); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(0, 3, ''); // Set interline to 3 + $pdf->SetTextColor(0,0,0); + + + $tab_top = 90+$top_shift; + $tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)?42+$top_shift:10); + + // Incoterm + if ($conf->incoterm->enabled) + { + $desc_incoterms = $object->getIncotermsForPDF(); + if ($desc_incoterms) + { + $tab_top -= 2; + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top-1, dol_htmlentitiesbr($desc_incoterms), 0, 1); + $nexY = $pdf->GetY(); + $height_incoterms=$nexY-$tab_top; + + // Rect prend une longueur en 3eme param + $pdf->SetDrawColor(192,192,192); + $pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_incoterms+1); + + $tab_top = $nexY+6; + } + } + + // Affiche notes + $notetoshow=empty($object->note_public)?'':$object->note_public; + if (! empty($conf->global->MAIN_ADD_SALE_REP_SIGNATURE_IN_NOTE)) + { + // Get first sale rep + if (is_object($object->thirdparty)) + { + $salereparray=$object->thirdparty->getSalesRepresentatives($user); + $salerepobj=new User($this->db); + $salerepobj->fetch($salereparray[0]['id']); + if (! empty($salerepobj->signature)) $notetoshow=dol_concatdesc($notetoshow, $salerepobj->signature); + } + } + + $pagenb = $pdf->getPage(); + if ($notetoshow) + { + $tab_width = $this->page_largeur-$this->marge_gauche-$this->marge_droite; + $pageposbeforenote = $pagenb; + + $substitutionarray=pdf_getSubstitutionArray($outputlangs, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); + + $tab_top -= 2; + + $pdf->startTransaction(); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + // Description + $pageposafternote=$pdf->getPage(); + $posyafter = $pdf->GetY(); + + if($pageposafternote>$pageposbeforenote ) + { + $pdf->rollbackTransaction(true); + + // prepar pages to receive notes + while ($pagenb < $pageposafternote) { + $pdf->AddPage(); + $pagenb++; + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + // $this->_pagefoot($pdf,$object,$outputlangs,1); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + } + + // back to start + $pdf->setPage($pageposbeforenote); + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + $pageposafternote=$pdf->getPage(); + + $posyafter = $pdf->GetY(); + + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20))) // There is no space left for total+free text + { + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + //$posyafter = $tab_top_newpage; + } + + + // apply note frame to previus pages + $i = $pageposbeforenote; + while ($i < $pageposafternote) { + $pdf->setPage($i); + + + $pdf->SetDrawColor(128,128,128); + // Draw note frame + if($i>$pageposbeforenote){ + $height_note = $this->page_hauteur - ($tab_top_newpage + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note + 1); + } + else{ + $height_note = $this->page_hauteur - ($tab_top + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note + 1); + } + + // Add footer + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + $this->_pagefoot($pdf,$object,$outputlangs,1); + + $i++; + } + + // apply note frame to last page + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $height_note=$posyafter-$tab_top_newpage; + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); + + } + else // No pagebreak + { + $pdf->commitTransaction(); + $posyafter = $pdf->GetY(); + $height_note=$posyafter-$tab_top; + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note+1); + + + if($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20)) ) + { + // not enough space, need to add page + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + + $posyafter = $tab_top_newpage; + } + + } + + $tab_height = $tab_height - $height_note; + $tab_top = $posyafter +6; + } + else + { + $height_note=0; + } + + $iniY = $tab_top + 7; + $curY = $tab_top + 7; + $nexY = $tab_top + 7; + + // Use new auto collum system + $this->prepareArrayColumnField($object,$outputlangs,$hidedetails,$hidedesc,$hideref); + + // Loop on each lines + $pageposbeforeprintlines=$pdf->getPage(); + $pagenb = $pageposbeforeprintlines; + for ($i = 0 ; $i < $nblignes ; $i++) + { + $curY = $nexY; + $pdf->SetFont('','', $default_font_size - 1); // Into loop to work with multipage + $pdf->SetTextColor(0,0,0); + + $pdf->setTopMargin($tab_top_newpage); + $pdf->setPageOrientation('', 1, $heightforfooter+$heightforfreetext+$heightforinfotot); // The only function to edit the bottom margin of current page to set it. + $pageposbefore=$pdf->getPage(); + + // Description of product line + $curX = $this->posxdesc-1; + + $showpricebeforepagebreak=1; + + if($this->getColumnStatus('desc')) + { + $pdf->startTransaction(); + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + $pageposafter=$pdf->getPage(); + if ($pageposafter > $pageposbefore) // There is a pagebreak + { + $pdf->rollbackTransaction(true); + $pageposafter=$pageposbefore; + //print $pageposafter.'-'.$pageposbefore;exit; + $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + $pageposafter=$pdf->getPage(); + $posyafter=$pdf->GetY(); + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))) // There is no space left for total+free text + { + if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + //if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $pdf->setPage($pageposafter+1); + } + } + else + { + // We found a page break + $showpricebeforepagebreak=0; + } + } + else // No pagebreak + { + $pdf->commitTransaction(); + } + $posYAfterDescription=$pdf->GetY(); + } + + $nexY = $pdf->GetY(); + $pageposafter=$pdf->getPage(); + + $pdf->setPage($pageposbefore); + $pdf->setTopMargin($this->marge_haute); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + + // We suppose that a too long description is moved completely on next page + if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) { + $pdf->setPage($pageposafter); $curY = $tab_top_newpage; + } + + $pdf->SetFont('','', $default_font_size - 1); // On repositionne la police par defaut + + // VAT Rate + if ($this->getColumnStatus('vat')) + { + $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'vat', $vat_rate); + $nexY = max($pdf->GetY(),$nexY); + } + + // Unit price before discount + if ($this->getColumnStatus('subprice')) + { + $up_excl_tax = pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'subprice', $up_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + // Quantity + // Enough for 6 chars + if ($this->getColumnStatus('qty')) + { + $qty = pdf_getlineqty($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'qty', $qty); + $nexY = max($pdf->GetY(),$nexY); + } + + + // Unit + if ($this->getColumnStatus('unit')) + { + $unit = pdf_getlineunit($object, $i, $outputlangs, $hidedetails, $hookmanager); + $this->printStdColumnContent($pdf, $curY, 'unit', $unit); + $nexY = max($pdf->GetY(),$nexY); + } + + // Discount on line + if ($this->getColumnStatus('discount') && $object->lines[$i]->remise_percent) + { + $remise_percent = pdf_getlineremisepercent($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'discount', $remise_percent); + $nexY = max($pdf->GetY(),$nexY); + } + + // Total HT line + if ($this->getColumnStatus('totalexcltax')) + { + $total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'totalexcltax', $total_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + + $parameters=array( + 'object' => $object, + 'i' => $i, + 'pdf' =>& $pdf, + 'curY' =>& $curY, + 'nexY' =>& $nexY, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails + ); + $reshook=$hookmanager->executeHooks('printPDFline',$parameters,$this); // Note that $object may have been modified by hook + + + // Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva + if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne=$object->lines[$i]->multicurrency_total_tva; + else $tvaligne=$object->lines[$i]->total_tva; + + $localtax1ligne=$object->lines[$i]->total_localtax1; + $localtax2ligne=$object->lines[$i]->total_localtax2; + $localtax1_rate=$object->lines[$i]->localtax1_tx; + $localtax2_rate=$object->lines[$i]->localtax2_tx; + $localtax1_type=$object->lines[$i]->localtax1_type; + $localtax2_type=$object->lines[$i]->localtax2_type; + + if ($object->remise_percent) $tvaligne-=($tvaligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax1ligne-=($localtax1ligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax2ligne-=($localtax2ligne*$object->remise_percent)/100; + + $vatrate=(string) $object->lines[$i]->tva_tx; + + // Retrieve type from database for backward compatibility with old records + if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined + && (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax + { + $localtaxtmp_array=getLocalTaxesFromRate($vatrate,0,$object->thirdparty,$mysoc); + $localtax1_type = $localtaxtmp_array[0]; + $localtax2_type = $localtaxtmp_array[2]; + } + + // retrieve global local tax + if ($localtax1_type && $localtax1ligne != 0) + $this->localtax1[$localtax1_type][$localtax1_rate]+=$localtax1ligne; + if ($localtax2_type && $localtax2ligne != 0) + $this->localtax2[$localtax2_type][$localtax2_rate]+=$localtax2ligne; + + if (($object->lines[$i]->info_bits & 0x01) == 0x01) $vatrate.='*'; + if (! isset($this->tva[$vatrate])) $this->tva[$vatrate]=0; + $this->tva[$vatrate] += $tvaligne; + + // Add line + if (! empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblignes - 1)) + { + $pdf->setPage($pageposafter); + $pdf->SetLineStyle(array('dash'=>'1,1','color'=>array(80,80,80))); + //$pdf->SetDrawColor(190,190,200); + $pdf->line($this->marge_gauche, $nexY+1, $this->page_largeur - $this->marge_droite, $nexY+1); + $pdf->SetLineStyle(array('dash'=>0)); + } + + $nexY+=2; // Passe espace entre les lignes + + // Detect if some page were added automatically and output _tableau for past pages + while ($pagenb < $pageposafter) + { + $pdf->setPage($pagenb); + if ($pagenb == $pageposbeforeprintlines) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + $pagenb++; + $pdf->setPage($pagenb); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak) + { + if ($pagenb == $pageposafter) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + } + + // Show square + if ($pagenb == $pageposbeforeprintlines) + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 0, 0, $object->multicurrency_code); + else + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 1, 0, $object->multicurrency_code); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1; + + // Affiche zone infos + $posy=$this->_tableau_info($pdf, $object, $bottomlasttab, $outputlangs); + + // Affiche zone totaux + $posy=$this->_tableau_tot($pdf, $object, $deja_regle, $bottomlasttab, $outputlangs); + + // Affiche zone versements + /* + if ($deja_regle) + { + $posy=$this->_tableau_versements($pdf, $object, $posy, $outputlangs); + } + */ + + // Pied de page + $this->_pagefoot($pdf, $object, $outputlangs); + if (method_exists($pdf, 'AliasNbPages')) $pdf->AliasNbPages(); + + $pdf->Close(); + + $pdf->Output($file, 'F'); + + // Add pdfgeneration hook + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file, 'object'=>$object, 'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('afterPDFCreation', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks + + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + $this->result = array('fullpath'=>$file); + + return 1; // Pas d'erreur + } + else + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + } + else + { + $this->error=$langs->transnoentities("ErrorConstantNotDefined","COMMANDE_OUTPUTDIR"); + return 0; + } + } + + /** + * Show payments table + * + * @param TCPDF $pdf Object PDF + * @param Object $object Object order + * @param int $posy Position y in PDF + * @param Translate $outputlangs Object langs for output + * @return int <0 if KO, >0 if OK + */ + function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + { + + } + + + /** + * Show miscellaneous information (payment mode, payment term, ...) + * + * @param TCPDF $pdf Object PDF + * @param Object $object Object to show + * @param int $posy Y + * @param Translate $outputlangs Langs object + * @return void + */ + function _tableau_info(&$pdf, $object, $posy, $outputlangs) + { + global $conf; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $pdf->SetFont('','', $default_font_size - 1); + + // If France, show VAT mention if not applicable + if ($this->emetteur->country_code == 'FR' && $this->franchise == 1) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("VATIsNotUsedForInvoice"), 0, 'L', 0); + + $posy=$pdf->GetY()+4; + } + + $posxval=52; + + // Show payments conditions + if ($object->cond_reglement_code || $object->cond_reglement) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentConditions").':'; + $pdf->MultiCell(43, 4, $titre, 0, 'L'); + + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_condition_paiement=$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code)!=('PaymentCondition'.$object->cond_reglement_code)?$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code):$outputlangs->convToOutputCharset($object->cond_reglement_doc); + $lib_condition_paiement=str_replace('\n',"\n",$lib_condition_paiement); + $pdf->MultiCell(67, 4, $lib_condition_paiement,0,'L'); + + $posy=$pdf->GetY()+3; + } + + // Check a payment mode is defined + /* Not used with orders + if (empty($object->mode_reglement_code) + && ! $conf->global->FACTURE_CHQ_NUMBER + && ! $conf->global->FACTURE_RIB_NUMBER) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->MultiCell(80, 3, $outputlangs->transnoentities("ErrorNoPaiementModeConfigured"),0,'L',0); + $pdf->SetTextColor(0,0,0); + + $posy=$pdf->GetY()+1; + } + */ + /* TODO + else if (! empty($object->availability_code)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->MultiCell(80, 3, $outputlangs->transnoentities("AvailabilityPeriod").': '.,0,'L',0); + $pdf->SetTextColor(0,0,0); + + $posy=$pdf->GetY()+1; + }*/ + + // Show planed date of delivery + if (! empty($object->date_livraison)) + { + $outputlangs->load("sendings"); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("DateDeliveryPlanned").':'; + $pdf->MultiCell(80, 4, $titre, 0, 'L'); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $dlp=dol_print_date($object->date_livraison,"daytext",false,$outputlangs,true); + $pdf->MultiCell(80, 4, $dlp, 0, 'L'); + + $posy=$pdf->GetY()+1; + } + elseif ($object->availability_code || $object->availability) // Show availability conditions + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("AvailabilityPeriod").':'; + $pdf->MultiCell(80, 4, $titre, 0, 'L'); + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_availability=$outputlangs->transnoentities("AvailabilityType".$object->availability_code)!=('AvailabilityType'.$object->availability_code)?$outputlangs->transnoentities("AvailabilityType".$object->availability_code):$outputlangs->convToOutputCharset(isset($object->availability)?$object->availability:''); + $lib_availability=str_replace('\n',"\n",$lib_availability); + $pdf->MultiCell(80, 4, $lib_availability, 0, 'L'); + + $posy=$pdf->GetY()+1; + } + + // Show payment mode + if ($object->mode_reglement_code + && $object->mode_reglement_code != 'CHQ' + && $object->mode_reglement_code != 'VIR') + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentMode").':'; + $pdf->MultiCell(80, 5, $titre, 0, 'L'); + + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_mode_reg=$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code)!=('PaymentType'.$object->mode_reglement_code)?$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code):$outputlangs->convToOutputCharset($object->mode_reglement); + $pdf->MultiCell(80, 5, $lib_mode_reg,0,'L'); + + $posy=$pdf->GetY()+2; + } + + // Show payment mode CHQ + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'CHQ') + { + // Si mode reglement non force ou si force a CHQ + if (! empty($conf->global->FACTURE_CHQ_NUMBER)) + { + if ($conf->global->FACTURE_CHQ_NUMBER > 0) + { + $account = new Account($this->db); + $account->fetch($conf->global->FACTURE_CHQ_NUMBER); + + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - 3); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$account->proprio),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - 3); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($account->owner_address), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + if ($conf->global->FACTURE_CHQ_NUMBER == -1) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - 3); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$this->emetteur->name),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - 3); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($this->emetteur->getFullAddress()), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + } + } + + // If payment mode not forced or forced to VIR, show payment with BAN + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'VIR') + { + if (! empty($object->fk_account) || ! empty($object->fk_bank) || ! empty($conf->global->FACTURE_RIB_NUMBER)) + { + $bankid=(empty($object->fk_account)?$conf->global->FACTURE_RIB_NUMBER:$object->fk_account); + if (! empty($object->fk_bank)) $bankid=$object->fk_bank; // For backward compatibility when object->fk_account is forced with object->fk_bank + $account = new Account($this->db); + $account->fetch($bankid); + + $curx=$this->marge_gauche; + $cury=$posy; + + $posy=pdf_bank($pdf,$outputlangs,$curx,$cury,$account,0,$default_font_size); + + $posy+=2; + } + } + + return $posy; + } + + + /** + * Show total to pay + * + * @param TCPDF $pdf Object PDF + * @param Facture $object Object invoice + * @param int $deja_regle Montant deja regle + * @param int $posy Position depart + * @param Translate $outputlangs Objet langs + * @return int Position pour suite + */ + function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + { + global $conf,$mysoc; + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $tab2_top = $posy; + $tab2_hl = 4; + $pdf->SetFont('','', $default_font_size - 1); + + // Tableau total + $col1x = 120; $col2x = 170; + if ($this->page_largeur < 210) // To work with US executive format + { + $col2x-=20; + } + $largcol2 = ($this->page_largeur - $this->marge_droite - $col2x); + + $useborder=0; + $index = 0; + + // Total HT + $pdf->SetFillColor(255,255,255); + $pdf->SetXY($col1x, $tab2_top + 0); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1); + + $total_ht = ($conf->multicurrency->enabled && $object->mylticurrency_tx != 1 ? $object->multicurrency_total_ht : $object->total_ht); + $pdf->SetXY($col2x, $tab2_top + 0); + $pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (! empty($object->remise)?$object->remise:0), 0, $outputlangs), 0, 'R', 1); + + // Show VAT by rates and total + $pdf->SetFillColor(248,248,248); + + $total_ttc = ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc; + + $this->atleastoneratenotnull=0; + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) + { + $tvaisnull=((! empty($this->tva) && count($this->tva) == 1 && isset($this->tva['0.000']) && is_float($this->tva['0.000'])) ? true : false); + if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_IFNULL) && $tvaisnull) + { + // Nothing to do + } + else + { + //Local tax 1 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + + } + } + } + //} + // VAT + foreach($this->tva as $tvakey => $tvaval) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + $this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat =$outputlangs->transcountrynoentities("TotalVAT",$mysoc->country_code).' '; + $totalvat.=vatrate($tvakey,1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + + //Local tax 1 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + + // Total TTC + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc, 0, $outputlangs), $useborder, 'R', 1); + } + } + + $pdf->SetTextColor(0,0,0); + + $creditnoteamount=0; + $depositsamount=0; + //$creditnoteamount=$object->getSumCreditNotesUsed(); + //$depositsamount=$object->getSumDepositsUsed(); + //print "x".$creditnoteamount."-".$depositsamount;exit; + $resteapayer = price2num($total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 'MT'); + if (! empty($object->paye)) $resteapayer=0; + + if ($deja_regle > 0) + { + // Already paid + Deposits + $index++; + + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("AlreadyPaid"), 0, 'L', 0); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($deja_regle, 0, $outputlangs), 0, 'R', 0); + + $index++; + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RemainderToPay"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($resteapayer, 0, $outputlangs), $useborder, 'R', 1); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetTextColor(0,0,0); + } + + $index++; + return ($tab2_top + ($tab2_hl * $index)); + } + + /** + * Show table for lines + * + * @param PDF $pdf Object PDF + * @param string $tab_top Top position of table + * @param string $tab_height Height of table (rectangle) + * @param int $nexY Y (not used) + * @param Translate $outputlangs Langs object + * @param int $hidetop 1=Hide top bar of array and title, 0=Hide nothing, -1=Hide only title + * @param int $hidebottom Hide bottom bar of array + * @param string $currency Currency code + * @return void + */ + function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0, $currency='') + { + global $conf; + + // Force to disable hidetop and hidebottom + $hidebottom=0; + if ($hidetop) $hidetop=-1; + + $currency = !empty($currency) ? $currency : $conf->currency; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + // Amount in (at tab_top - 1) + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + + if (empty($hidetop)) + { + $titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$currency)); + $pdf->SetXY($this->page_largeur - $this->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4); + $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); + + //$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR='230,230,230'; + if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_droite-$this->marge_gauche, 5, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)); + } + + $pdf->SetDrawColor(128,128,128); + $pdf->SetFont('','', $default_font_size - 1); + + // Output Rect + $this->printRect($pdf,$this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height, $hidetop, $hidebottom); // Rect prend une longueur en 3eme param et 4eme param + + + foreach ($this->cols as $colKey => $colDef) + { + if(!$this->getColumnStatus($colKey)) continue; + + // get title label + $colDef['title']['label'] = !empty($colDef['title']['label'])?$colDef['title']['label']:$outputlangs->transnoentities($colDef['title']['textkey']); + + // Add column separator + if(!empty($colDef['border-left'])){ + $pdf->line($colDef['xStartPos'], $tab_top, $colDef['xStartPos'], $tab_top + $tab_height); + } + + if (empty($hidetop)) + { + $pdf->SetXY($colDef['xStartPos'] + $colDef['title']['padding'][3], $tab_top + $colDef['title']['padding'][0] ); + + $textWidth = $colDef['width'] - $colDef['title']['padding'][3] -$colDef['title']['padding'][1]; + $pdf->MultiCell($textWidth,2,$colDef['title']['label'],'',$colDef['title']['align']); + } + } + + if (empty($hidetop)){ + $pdf->line($this->marge_gauche, $tab_top+5, $this->page_largeur-$this->marge_droite, $tab_top+5); // line prend une position y en 2eme param et 4eme param + } + + + } + + /** + * Show top header of page. + * + * @param TCPDF $pdf Object PDF + * @param Object $object Object to show + * @param int $showaddress 0=no, 1=yes + * @param Translate $outputlangs Object lang for output + * @param string $titlekey Translation key to show as title of document + * @return void + */ + function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey="PdfOrderTitle") + { + global $conf,$langs,$hookmanager; + + // Translations + $outputlangs->loadLangs(array("main", "bills", "propal", "orders", "companies")); + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + pdf_pagehead($pdf,$outputlangs,$this->page_hauteur); + + // Show Draft Watermark + if($object->statut==0 && (! empty($conf->global->COMMANDE_DRAFT_WATERMARK)) ) + { + pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->COMMANDE_DRAFT_WATERMARK); + } + + $pdf->SetTextColor(0,0,60); + $pdf->SetFont('','B', $default_font_size + 3); + + $posy=$this->marge_haute; + $posx=$this->page_largeur-$this->marge_droite-100; + + $pdf->SetXY($this->marge_gauche,$posy); + + // Logo + $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + if ($this->emetteur->logo) + { + if (is_readable($logo)) + { + $height=pdf_getHeightForLogo($logo); + $pdf->Image($logo, $this->marge_gauche, $posy, 0, $height); // width=0 (auto) + } + else + { + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size -2); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L'); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorGoToGlobalSetup"), 0, 'L'); + } + } + else + { + $text=$this->emetteur->name; + $pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L'); + } + + $pdf->SetFont('','B', $default_font_size + 3); + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $title=$outputlangs->transnoentities($titlekey); + $pdf->MultiCell(100, 3, $title, '', 'R'); + + $pdf->SetFont('','B',$default_font_size); + + $posy+=5; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 4, $outputlangs->transnoentities("Ref")." : " . $outputlangs->convToOutputCharset($object->ref), '', 'R'); + + $posy+=1; + $pdf->SetFont('','', $default_font_size - 1); + + if ($object->ref_client) + { + $posy+=5; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("RefCustomer")." : " . $outputlangs->convToOutputCharset($object->ref_client), '', 'R'); + } + + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("OrderDate")." : " . dol_print_date($object->date,"%d %b %Y",false,$outputlangs,true), '', 'R'); + + // Get contact + if (!empty($conf->global->DOC_SHOW_FIRST_SALES_REP)) + { + $arrayidcontact=$object->getIdContact('internal','SALESREPFOLL'); + if (count($arrayidcontact) > 0) + { + $usertmp=new User($this->db); + $usertmp->fetch($arrayidcontact[0]); + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $langs->trans("SalesRepresentative")." : ".$usertmp->getFullName($langs), '', 'R'); + } + } + + $posy+=2; + + $top_shift = 0; + // Show list of linked objects + $current_y = $pdf->getY(); + $posy = pdf_writeLinkedObjects($pdf, $object, $outputlangs, $posx, $posy, 100, 3, 'R', $default_font_size); + if ($current_y < $pdf->getY()) + { + $top_shift = $pdf->getY() - $current_y; + } + + if ($showaddress) + { + // Sender properties + $carac_emetteur=''; + // Add internal contact of proposal if defined + $arrayidcontact=$object->getIdContact('internal','SALESREPFOLL'); + if (count($arrayidcontact) > 0) + { + $object->fetch_user($arrayidcontact[0]); + $labelbeforecontactname=($outputlangs->transnoentities("FromContactName")!='FromContactName'?$outputlangs->transnoentities("FromContactName"):$outputlangs->transnoentities("Name")); + $carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$labelbeforecontactname." ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n"; + } + + $carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->thirdparty, '', 0, 'source', $object); + + // Show sender + $posy=42+$top_shift; + $posx=$this->marge_gauche; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80; + $hautcadre=40; + + // Show sender frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx,$posy-5); + $pdf->MultiCell(66,5, $outputlangs->transnoentities("BillFrom").":", 0, 'L'); + $pdf->SetXY($posx,$posy); + $pdf->SetFillColor(230,230,230); + $pdf->MultiCell(82, $hautcadre, "", 0, 'R', 1); + $pdf->SetTextColor(0,0,60); + + // Show sender name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); + $posy=$pdf->getY(); + + // Show sender information + $pdf->SetXY($posx+2,$posy); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(80, 4, $carac_emetteur, 0, 'L'); + + + + // If CUSTOMER contact defined on order, we use it + $usecontact=false; + $arrayidcontact=$object->getIdContact('external','CUSTOMER'); + if (count($arrayidcontact) > 0) + { + $usecontact=true; + $result=$object->fetch_contact($arrayidcontact[0]); + } + + //Recipient name + // On peut utiliser le nom de la societe du contact + if ($usecontact && !empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) { + $thirdparty = $object->contact; + } else { + $thirdparty = $object->thirdparty; + } + + $carac_client_name= pdfBuildThirdpartyName($thirdparty, $outputlangs); + + $carac_client=pdf_build_address($outputlangs,$this->emetteur,$object->thirdparty,($usecontact?$object->contact:''),$usecontact,'target', $object); + + // Show recipient + $widthrecbox=100; + if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format + $posy=42+$top_shift; + $posx=$this->page_largeur-$this->marge_droite-$widthrecbox; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche; + + // Show recipient frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx+2,$posy-5); + $pdf->MultiCell($widthrecbox, 5, $outputlangs->transnoentities("BillTo").":",0,'L'); + $pdf->Rect($posx, $posy, $widthrecbox, $hautcadre); + + // Show recipient name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + + $posy = $pdf->getY(); + + // Show recipient information + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($posx+2,$posy); + $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); + } + + $pdf->SetTextColor(0,0,0); + return $top_shift; + } + + /** + * Show footer of page. Need this->emetteur object + * + * @param TCPDF $pdf PDF + * @param Object $object Object to show + * @param Translate $outputlangs Object lang for output + * @param int $hidefreetext 1=Hide free text + * @return int Return height of bottom margin including footer text + */ + function _pagefoot(&$pdf,$object,$outputlangs,$hidefreetext=0) + { + global $conf; + $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; + return pdf_pagefoot($pdf,$outputlangs,'ORDER_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + } + + + + /** + * Define Array Column Field + * + * @param object $object common object + * @param outputlangs $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return null + */ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + + global $conf, $hookmanager; + + // Default field style for content + $this->defaultContentsFieldsStyle = array( + 'align' => 'R', // R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + // Default field style for content + $this->defaultTitlesFieldsStyle = array( + 'align' => 'C', // R,C,L + 'padding' => array(0.5,0,0.5,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + /* + * For exemple + $this->cols['theColKey'] = array( + 'rank' => $rank, // int : use for ordering columns + 'width' => 20, // the column width in mm + 'title' => array( + 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + 'label' => ' ', // the final label : used fore final generated text + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + ); + */ + + $rank=0; // do not use negative rank + $this->cols['desc'] = array( + 'rank' => $rank, + 'width' => false, // only for desc + 'status' => true, + 'title' => array( + 'textkey' => 'Designation', // use lang key is usefull in somme case with module + 'align' => 'L', + // 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + // 'label' => ' ', // the final label + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', + ), + ); + + $rank = $rank + 10; + $this->cols['photo'] = array( + 'rank' => $rank, + 'width' => (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?20:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH), // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Photo', + 'label' => ' ' + ), + 'content' => array( + 'padding' => array(0,0,0,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'border-left' => false, // remove left line separator + ); + + if (! empty($conf->global->MAIN_GENERATE_ORDERS_WITH_PICTURE)) + { + $this->cols['photo']['status'] = true; + } + + + $rank = $rank + 10; + $this->cols['vat'] = array( + 'rank' => $rank, + 'status' => false, + 'width' => 16, // in mm + 'title' => array( + 'textkey' => 'VAT' + ), + 'border-left' => true, // add left line separator + ); + + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) && empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_COLUMN)) + { + $this->cols['vat']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['subprice'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'PriceUHT' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['qty'] = array( + 'rank' => $rank, + 'width' => 16, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'Qty' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['progress'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Progress' + ), + 'border-left' => false, // add left line separator + ); + + if($this->situationinvoice) + { + $this->cols['progress']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['unit'] = array( + 'rank' => $rank, + 'width' => 11, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Unit' + ), + 'border-left' => true, // add left line separator + ); + if($conf->global->PRODUCT_USE_UNITS){ + $this->cols['unit']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['discount'] = array( + 'rank' => $rank, + 'width' => 13, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'ReductionShort' + ), + 'border-left' => true, // add left line separator + ); + if ($this->atleastonediscount){ + $this->cols['discount']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['totalexcltax'] = array( + 'rank' => $rank, + 'width' => 26, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'TotalHT' + ), + 'border-left' => true, // add left line separator + ); + + + $parameters=array( + 'object' => $object, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails, + 'hidedesc' => $hidedesc, + 'hideref' => $hideref + ); + + $reshook=$hookmanager->executeHooks('defineColumnField',$parameters,$this); // Note that $object may have been modified by hook + if ($reshook < 0) + { + setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + } + elseif (empty($reshook)) + { + $this->cols = array_replace($this->cols, $hookmanager->resArray); // array_replace is used to preserve keys + } + else + { + $this->cols = $hookmanager->resArray; + } + + } + +} diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php new file mode 100644 index 00000000000..72c2a5aaca6 --- /dev/null +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -0,0 +1,2030 @@ + + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2008 Raphael Bertrand + * Copyright (C) 2010-2014 Juanjo Menent + * Copyright (C) 2012 Christophe Battarel + * Copyright (C) 2012 Cédric Salvador + * Copyright (C) 2012-2014 Raphaël Doursenaud + * Copyright (C) 2015 Marcos García + * Copyright (C) 2017 Ferran Marcet + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/core/modules/facture/doc/pdf_sponge.modules.php + * \ingroup facture + * \brief File of class to generate customers invoices from sponge model + */ + +require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; + + +/** + * Class to manage PDF invoice template sponge + */ +class pdf_sponge extends ModelePDFFactures +{ + /** + * @var DoliDb Database handler + */ + public $db; + + /** + * @var string model name + */ + public $name; + + /** + * @var string model description (short text) + */ + public $description; + + /** + * @var int Save the name of generated file as the main doc when generating a doc with this template + */ + public $update_main_doc_field; + + /** + * @var string document type + */ + public $type; + + /** + * @var array() Minimum version of PHP required by module. + * e.g.: PHP ≥ 5.3 = array(5, 3) + */ + public $phpmin = array(5, 2); + + /** + * Dolibarr version of the loaded document + * @public string + */ + public $version = 'dolibarr'; + + public $page_largeur; + public $page_hauteur; + public $format; + public $marge_gauche; + public $marge_droite; + public $marge_haute; + public $marge_basse; + + public $emetteur; // Objet societe qui emet + + /** + * @var bool Situation invoice type + */ + public $situationinvoice; + + /** + * @var float X position for the situation progress column + */ + public $posxprogress; + + + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + function __construct($db) + { + global $conf,$langs,$mysoc; + + // Translations + $langs->loadLangs(array("main", "bills")); + + $this->db = $db; + $this->name = "sponge"; + $this->description = $langs->trans('PDFSpongeDescription'); + $this->update_main_doc_field = 1; // Save the name of generated file as the main doc when generating a doc with this template + + // Dimensiont page + $this->type = 'pdf'; + $formatarray=pdf_getFormat(); + $this->page_largeur = $formatarray['width']; + $this->page_hauteur = $formatarray['height']; + $this->format = array($this->page_largeur,$this->page_hauteur); + $this->marge_gauche=isset($conf->global->MAIN_PDF_MARGIN_LEFT)?$conf->global->MAIN_PDF_MARGIN_LEFT:10; + $this->marge_droite=isset($conf->global->MAIN_PDF_MARGIN_RIGHT)?$conf->global->MAIN_PDF_MARGIN_RIGHT:10; + $this->marge_haute =isset($conf->global->MAIN_PDF_MARGIN_TOP)?$conf->global->MAIN_PDF_MARGIN_TOP:10; + $this->marge_basse =isset($conf->global->MAIN_PDF_MARGIN_BOTTOM)?$conf->global->MAIN_PDF_MARGIN_BOTTOM:10; + + $this->option_logo = 1; // Affiche logo + $this->option_tva = 1; // Gere option tva FACTURE_TVAOPTION + $this->option_modereg = 1; // Affiche mode reglement + $this->option_condreg = 1; // Affiche conditions reglement + $this->option_codeproduitservice = 1; // Affiche code produit-service + $this->option_multilang = 1; // Dispo en plusieurs langues + $this->option_escompte = 1; // Affiche si il y a eu escompte + $this->option_credit_note = 1; // Support credit notes + $this->option_freetext = 1; // Support add of a personalised text + $this->option_draft_watermark = 1; // Support add of a watermark on drafts + + $this->franchise=!$mysoc->tva_assuj; + + // Get source company + $this->emetteur=$mysoc; + if (empty($this->emetteur->country_code)) $this->emetteur->country_code=substr($langs->defaultlang,-2); // By default, if was not defined + + // Define position of columns + $this->posxdesc=$this->marge_gauche+1; // used for notes ans other stuff + + // Use new system for position of columns, view $this->defineColumnField() + + $this->tva=array(); + $this->localtax1=array(); + $this->localtax2=array(); + $this->atleastoneratenotnull=0; + $this->atleastonediscount=0; + $this->situationinvoice=false; + } + + + /** + * Function to build pdf onto disk + * + * @param Object $object Object to generate + * @param Translate $outputlangs Lang output object + * @param string $srctemplatepath Full path of source filename for generator using a template file + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return int 1=OK, 0=KO + */ + function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0) + { + global $user,$langs,$conf,$mysoc,$db,$hookmanager,$nblignes; + + if (! is_object($outputlangs)) $outputlangs=$langs; + // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO + if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1'; + + // Translations + $outputlangs->loadLangs(array("main", "bills", "products", "dict", "companies")); + + $nblignes = count($object->lines); + + // Loop on each lines to detect if there is at least one image to show + $realpatharray=array(); + $this->atleastonephoto = false; + if (! empty($conf->global->MAIN_GENERATE_INVOICES_WITH_PICTURE)) + { + $objphoto = new Product($this->db); + + for ($i = 0 ; $i < $nblignes ; $i++) + { + if (empty($object->lines[$i]->fk_product)) continue; + + $objphoto->fetch($object->lines[$i]->fk_product); + //var_dump($objphoto->ref);exit; + if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) + { + $pdir[0] = get_exdir($objphoto->id,2,0,0,$objphoto,'product') . $objphoto->id ."/photos/"; + $pdir[1] = get_exdir(0,0,0,0,$objphoto,'product') . dol_sanitizeFileName($objphoto->ref).'/'; + } + else + { + $pdir[0] = get_exdir(0,0,0,0,$objphoto,'product') . dol_sanitizeFileName($objphoto->ref).'/'; // default + $pdir[1] = get_exdir($objphoto->id,2,0,0,$objphoto,'product') . $objphoto->id ."/photos/"; // alternative + } + + $arephoto = false; + foreach ($pdir as $midir) + { + if (! $arephoto) + { + $dir = $conf->product->dir_output.'/'.$midir; + + foreach ($objphoto->liste_photos($dir,1) as $key => $obj) + { + if (empty($conf->global->CAT_HIGH_QUALITY_IMAGES)) // If CAT_HIGH_QUALITY_IMAGES not defined, we use thumb if defined and then original photo + { + if ($obj['photo_vignette']) + { + $filename= $obj['photo_vignette']; + } + else + { + $filename=$obj['photo']; + } + } + else + { + $filename=$obj['photo']; + } + + $realpath = $dir.$filename; + $arephoto = true; + $this->atleastonephoto = true; + } + } + } + + if ($realpath && $arephoto) $realpatharray[$i]=$realpath; + } + } + + //if (count($realpatharray) == 0) $this->posxpicture=$this->posxtva; + + if ($conf->facture->dir_output) + { + $object->fetch_thirdparty(); + + $deja_regle = $object->getSommePaiement(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? 1 : 0); + $amount_credit_notes_included = $object->getSumCreditNotesUsed(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? 1 : 0); + $amount_deposits_included = $object->getSumDepositsUsed(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? 1 : 0); + + // Definition of $dir and $file + if ($object->specimen) + { + $dir = $conf->facture->dir_output; + $file = $dir . "/SPECIMEN.pdf"; + } + else + { + $objectref = dol_sanitizeFileName($object->ref); + $dir = $conf->facture->dir_output . "/" . $objectref; + $file = $dir . "/" . $objectref . ".pdf"; + } + if (! file_exists($dir)) + { + if (dol_mkdir($dir) < 0) + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + } + + if (file_exists($dir)) + { + // Add pdfgeneration hook + if (! is_object($hookmanager)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; + $hookmanager=new HookManager($this->db); + } + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('beforePDFCreation',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + + // Set nblignes with the new facture lines content after hook + $nblignes = count($object->lines); + $nbpayments = count($object->getListOfPayments()); + + // Create pdf instance + $pdf=pdf_getInstance($this->format); + $default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance + $pdf->SetAutoPageBreak(1,0); + + $heightforinfotot = 50+(4*$nbpayments); // Height reserved to output the info and total part and payment part + $heightforfreetext= (isset($conf->global->MAIN_PDF_FREETEXT_HEIGHT)?$conf->global->MAIN_PDF_FREETEXT_HEIGHT:5); // Height reserved to output the free text on last page + $heightforfooter = $this->marge_basse + (empty($conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS)?12:22); // Height reserved to output the footer (value include bottom margin) + + if (class_exists('TCPDF')) + { + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + } + $pdf->SetFont(pdf_getPDFFont($outputlangs)); + + // Set path to the background PDF File + if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) + { + $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $tplidx = $pdf->importPage(1); + } + + $pdf->Open(); + $pagenb=0; + $pdf->SetDrawColor(128,128,128); + + $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref)); + $pdf->SetSubject($outputlangs->transnoentities("PdfInvoiceTitle")); + $pdf->SetCreator("Dolibarr ".DOL_VERSION); + $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); + $pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("PdfInvoiceTitle")." ".$outputlangs->convToOutputCharset($object->thirdparty->name)); + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); + + $pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right + + // Does we have at least one line with discount $this->atleastonediscount + foreach ($object->lines as $line) { + if ($line->remise_percent){ + $this->atleastonediscount = true; + break; + } + } + + + // Situation invoice handling + if ($object->situation_cycle_ref) + { + $this->situationinvoice = true; + } + + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + + $top_shift = $this->_pagehead($pdf, $object, 1, $outputlangs); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(0, 3, ''); // Set interline to 3 + $pdf->SetTextColor(0,0,0); + + $tab_top = 90+$top_shift; + $tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)?42+$top_shift:10); + $tab_height = 130-$top_shift; + $tab_height_newpage = 150; + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $tab_height_newpage -= $top_shift; + + // Incoterm + $height_incoterms = 0; + if ($conf->incoterm->enabled) + { + $desc_incoterms = $object->getIncotermsForPDF(); + if ($desc_incoterms) + { + $tab_top -= 2; + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top-1, dol_htmlentitiesbr($desc_incoterms), 0, 1); + $nexY = max($pdf->GetY(),$nexY); + $height_incoterms=$nexY-$tab_top; + + // Rect prend une longueur en 3eme param + $pdf->SetDrawColor(192,192,192); + $pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_incoterms+1); + + $tab_top = $nexY+6; + $height_incoterms += 4; + } + } + + // Affiche notes + $notetoshow=empty($object->note_public)?'':$object->note_public; + if (! empty($conf->global->MAIN_ADD_SALE_REP_SIGNATURE_IN_NOTE)) + { + // Get first sale rep + if (is_object($object->thirdparty)) + { + $salereparray=$object->thirdparty->getSalesRepresentatives($user); + $salerepobj=new User($this->db); + $salerepobj->fetch($salereparray[0]['id']); + if (! empty($salerepobj->signature)) $notetoshow=dol_concatdesc($notetoshow, $salerepobj->signature); + } + } + + $pagenb = $pdf->getPage(); + if ($notetoshow) + { + $tab_top -= 2; + + $tab_width = $this->page_largeur-$this->marge_gauche-$this->marge_droite; + $pageposbeforenote = $pagenb; + + $substitutionarray=pdf_getSubstitutionArray($outputlangs, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); + + + $pdf->startTransaction(); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + // Description + $pageposafternote=$pdf->getPage(); + $posyafter = $pdf->GetY(); + + if($pageposafternote>$pageposbeforenote ) + { + $pdf->rollbackTransaction(true); + + // prepar pages to receive notes + while ($pagenb < $pageposafternote) { + $pdf->AddPage(); + $pagenb++; + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + // $this->_pagefoot($pdf,$object,$outputlangs,1); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + } + + // back to start + $pdf->setPage($pageposbeforenote); + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + $pageposafternote=$pdf->getPage(); + + $posyafter = $pdf->GetY(); + + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20))) // There is no space left for total+free text + { + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + //$posyafter = $tab_top_newpage; + } + + + // apply note frame to previus pages + $i = $pageposbeforenote; + while ($i < $pageposafternote) { + $pdf->setPage($i); + + + $pdf->SetDrawColor(128,128,128); + // Draw note frame + if($i>$pageposbeforenote){ + $height_note = $this->page_hauteur - ($tab_top_newpage + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note + 1); + } + else{ + $height_note = $this->page_hauteur - ($tab_top + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note + 1); + } + + // Add footer + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + $this->_pagefoot($pdf,$object,$outputlangs,1); + + $i++; + } + + // apply note frame to last page + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $height_note=$posyafter-$tab_top_newpage; + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); + + } + else // No pagebreak + { + $pdf->commitTransaction(); + $posyafter = $pdf->GetY(); + $height_note=$posyafter-$tab_top; + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note+1); + + + if($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20)) ) + { + // not enough space, need to add page + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + + $posyafter = $tab_top_newpage; + } + + } + + $tab_height = $tab_height - $height_note; + $tab_top = $posyafter +6; + } + else + { + $height_note=0; + } + + $iniY = $tab_top + 7; + $curY = $tab_top + 7; + $nexY = $tab_top + 7; + + // Use new auto collum system + $this->prepareArrayColumnField($object,$outputlangs,$hidedetails,$hidedesc,$hideref); + + // Loop on each lines + $pageposbeforeprintlines=$pdf->getPage(); + $pagenb = $pageposbeforeprintlines; + for ($i = 0; $i < $nblignes; $i++) + { + + $curY = $nexY; + $pdf->SetFont('','', $default_font_size - 1); // Into loop to work with multipage + $pdf->SetTextColor(0,0,0); + + // Define size of image if we need it + $imglinesize=array(); + if (! empty($realpatharray[$i])) $imglinesize=pdf_getSizeForImage($realpatharray[$i]); + + $pdf->setTopMargin($tab_top_newpage); + $pdf->setPageOrientation('', 1, $heightforfooter+$heightforfreetext+$heightforinfotot); // The only function to edit the bottom margin of current page to set it. + $pageposbefore=$pdf->getPage(); + + $showpricebeforepagebreak=1; + $posYAfterImage=0; + $posYAfterDescription=0; + + if($this->getColumnStatus('photo')) + { + // We start with Photo of product line + if (isset($imglinesize['width']) && isset($imglinesize['height']) && ($curY + $imglinesize['height']) > ($this->page_hauteur-($heightforfooter+$heightforfreetext+$heightforinfotot))) // If photo too high, we moved completely on new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pdf->setPage($pageposbefore+1); + + $curY = $tab_top_newpage; + $showpricebeforepagebreak=0; + } + + if (!empty($this->cols['photo']) && isset($imglinesize['width']) && isset($imglinesize['height'])) + { + $pdf->Image($realpatharray[$i], $this->getColumnContentXStart('photo'), $curY, $imglinesize['width'], $imglinesize['height'], '', '', '', 2, 300); // Use 300 dpi + // $pdf->Image does not increase value return by getY, so we save it manually + $posYAfterImage=$curY+$imglinesize['height']; + } + } + + // Description of product line + if ($this->getColumnStatus('desc')) + { + $pdf->startTransaction(); + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + $pageposafter=$pdf->getPage(); + if ($pageposafter > $pageposbefore) // There is a pagebreak + { + $pdf->rollbackTransaction(true); + $pageposafter=$pageposbefore; + //print $pageposafter.'-'.$pageposbefore;exit; + $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + $pageposafter=$pdf->getPage(); + $posyafter=$pdf->GetY(); + //var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit; + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))) // There is no space left for total+free text + { + if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pdf->setPage($pageposafter+1); + } + } + else + { + // We found a page break + $showpricebeforepagebreak=0; + } + } + else // No pagebreak + { + $pdf->commitTransaction(); + } + $posYAfterDescription=$pdf->GetY(); + } + + $nexY = $pdf->GetY(); + $pageposafter=$pdf->getPage(); + $pdf->setPage($pageposbefore); + $pdf->setTopMargin($this->marge_haute); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + + // We suppose that a too long description or photo were moved completely on next page + if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) { + $pdf->setPage($pageposafter); $curY = $tab_top_newpage; + } + + $pdf->SetFont('','', $default_font_size - 1); // On repositionne la police par defaut + + // VAT Rate + if ($this->getColumnStatus('vat')) + { + $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'vat', $vat_rate); + $nexY = max($pdf->GetY(),$nexY); + } + + // Unit price before discount + if ($this->getColumnStatus('subprice')) + { + $up_excl_tax = pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'subprice', $up_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + // Quantity + // Enough for 6 chars + if ($this->getColumnStatus('qty')) + { + $qty = pdf_getlineqty($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'qty', $qty); + $nexY = max($pdf->GetY(),$nexY); + } + + // Situation progress + if ($this->getColumnStatus('progress')) + { + $progress = pdf_getlineprogress($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'progress', $progress); + $nexY = max($pdf->GetY(),$nexY); + } + + // Unit + if ($this->getColumnStatus('unit')) + { + $unit = pdf_getlineunit($object, $i, $outputlangs, $hidedetails, $hookmanager); + $this->printStdColumnContent($pdf, $curY, 'unit', $unit); + $nexY = max($pdf->GetY(),$nexY); + } + + // Discount on line + if ($this->getColumnStatus('discount') && $object->lines[$i]->remise_percent) + { + $remise_percent = pdf_getlineremisepercent($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'discount', $remise_percent); + $nexY = max($pdf->GetY(),$nexY); + } + + // Total HT line + if ($this->getColumnStatus('totalexcltax')) + { + $total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'totalexcltax', $total_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + + $parameters=array( + 'object' => $object, + 'i' => $i, + 'pdf' =>& $pdf, + 'curY' =>& $curY, + 'nexY' =>& $nexY, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails + ); + $reshook=$hookmanager->executeHooks('printPDFline',$parameters,$this); // Note that $object may have been modified by hook + + + + $sign=1; + if (isset($object->type) && $object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign=-1; + // Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva + $prev_progress = $object->lines[$i]->get_prev_progress($object->id); + if ($prev_progress > 0 && !empty($object->lines[$i]->situation_percent)) // Compute progress from previous situation + { + if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent; + else $tvaligne = $sign * $object->lines[$i]->total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent; + } else { + if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne= $sign * $object->lines[$i]->multicurrency_total_tva; + else $tvaligne= $sign * $object->lines[$i]->total_tva; + } + + $localtax1ligne=$object->lines[$i]->total_localtax1; + $localtax2ligne=$object->lines[$i]->total_localtax2; + $localtax1_rate=$object->lines[$i]->localtax1_tx; + $localtax2_rate=$object->lines[$i]->localtax2_tx; + $localtax1_type=$object->lines[$i]->localtax1_type; + $localtax2_type=$object->lines[$i]->localtax2_type; + + if ($object->remise_percent) $tvaligne-=($tvaligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax1ligne-=($localtax1ligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax2ligne-=($localtax2ligne*$object->remise_percent)/100; + + $vatrate=(string) $object->lines[$i]->tva_tx; + + // Retrieve type from database for backward compatibility with old records + if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined + && (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax + { + $localtaxtmp_array=getLocalTaxesFromRate($vatrate,0, $object->thirdparty, $mysoc); + $localtax1_type = $localtaxtmp_array[0]; + $localtax2_type = $localtaxtmp_array[2]; + } + + // retrieve global local tax + if ($localtax1_type && $localtax1ligne != 0) + $this->localtax1[$localtax1_type][$localtax1_rate]+=$localtax1ligne; + if ($localtax2_type && $localtax2ligne != 0) + $this->localtax2[$localtax2_type][$localtax2_rate]+=$localtax2ligne; + + if (($object->lines[$i]->info_bits & 0x01) == 0x01) $vatrate.='*'; + if (! isset($this->tva[$vatrate])) $this->tva[$vatrate]=0; + $this->tva[$vatrate] += $tvaligne; + + $nexY = max($nexY,$posYAfterImage); + + // Add line + if (! empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblignes - 1)) + { + $pdf->setPage($pageposafter); + $pdf->SetLineStyle(array('dash'=>'1,1','color'=>array(80,80,80))); + //$pdf->SetDrawColor(190,190,200); + $pdf->line($this->marge_gauche, $nexY+1, $this->page_largeur - $this->marge_droite, $nexY+1); + $pdf->SetLineStyle(array('dash'=>0)); + } + + $nexY+=2; // Passe espace entre les lignes + + // Detect if some page were added automatically and output _tableau for past pages + while ($pagenb < $pageposafter) + { + $pdf->setPage($pagenb); + if ($pagenb == $pageposbeforeprintlines) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + $pagenb++; + $pdf->setPage($pagenb); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + + if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak) + { + if ($pagenb == $pageposafter) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + + } + + // Show square + if ($pagenb == $pageposbeforeprintlines) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 0, 0, $object->multicurrency_code); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1; + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 1, 0, $object->multicurrency_code); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1; + } + + // Affiche zone infos + $posy=$this->_tableau_info($pdf, $object, $bottomlasttab, $outputlangs); + + // Affiche zone totaux + $posy=$this->_tableau_tot($pdf, $object, $deja_regle, $bottomlasttab, $outputlangs); + + // Affiche zone versements + if (($deja_regle || $amount_credit_notes_included || $amount_deposits_included) && empty($conf->global->INVOICE_NO_PAYMENT_DETAILS)) + { + $posy=$this->_tableau_versements($pdf, $object, $posy, $outputlangs); + } + + // Pied de page + $this->_pagefoot($pdf,$object,$outputlangs); + if (method_exists($pdf,'AliasNbPages')) $pdf->AliasNbPages(); + + $pdf->Close(); + + $pdf->Output($file,'F'); + + // Add pdfgeneration hook + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('afterPDFCreation',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + $this->result = array('fullpath'=>$file); + + return 1; // No error + } + else + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + } + else + { + $this->error=$langs->transnoentities("ErrorConstantNotDefined","FAC_OUTPUTDIR"); + return 0; + } + } + + + /** + * Show payments table + * + * @param PDF $pdf Object PDF + * @param Object $object Object invoice + * @param int $posy Position y in PDF + * @param Translate $outputlangs Object langs for output + * @return int <0 if KO, >0 if OK + */ + function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + { + global $conf; + + $sign=1; + if ($object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign=-1; + + $tab3_posx = 120; + $tab3_top = $posy + 8; + $tab3_width = 80; + $tab3_height = 4; + if ($this->page_largeur < 210) // To work with US executive format + { + $tab3_posx -= 20; + } + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $title=$outputlangs->transnoentities("PaymentsAlreadyDone"); + if ($object->type == 2) $title=$outputlangs->transnoentities("PaymentsBackAlreadyDone"); + + $pdf->SetFont('','', $default_font_size - 3); + $pdf->SetXY($tab3_posx, $tab3_top - 4); + $pdf->MultiCell(60, 3, $title, 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top, $tab3_posx+$tab3_width, $tab3_top); + + $pdf->SetFont('','', $default_font_size - 4); + $pdf->SetXY($tab3_posx, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Payment"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+21, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Amount"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+40, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Type"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+58, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Num"), 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top-1+$tab3_height, $tab3_posx+$tab3_width, $tab3_top-1+$tab3_height); + + $y=0; + + $pdf->SetFont('','', $default_font_size - 4); + + + // Loop on each deposits and credit notes included + $sql = "SELECT re.rowid, re.amount_ht, re.multicurrency_amount_ht, re.amount_tva, re.multicurrency_amount_tva, re.amount_ttc, re.multicurrency_amount_ttc,"; + $sql.= " re.description, re.fk_facture_source,"; + $sql.= " f.type, f.datef"; + $sql.= " FROM ".MAIN_DB_PREFIX ."societe_remise_except as re, ".MAIN_DB_PREFIX ."facture as f"; + $sql.= " WHERE re.fk_facture_source = f.rowid AND re.fk_facture = ".$object->id; + $resql=$this->db->query($sql); + if ($resql) + { + $num = $this->db->num_rows($resql); + $i=0; + $invoice=new Facture($this->db); + while ($i < $num) + { + $y+=3; + $obj = $this->db->fetch_object($resql); + + if ($obj->type == 2) $text=$outputlangs->trans("CreditNote"); + elseif ($obj->type == 3) $text=$outputlangs->trans("Deposit"); + else $text=$outputlangs->trans("UnknownType"); + + $invoice->fetch($obj->fk_facture_source); + + $pdf->SetXY($tab3_posx, $tab3_top+$y); + $pdf->MultiCell(20, 3, dol_print_date($obj->datef,'day',false,$outputlangs,true), 0, 'L', 0); + $pdf->SetXY($tab3_posx+21, $tab3_top+$y); + $pdf->MultiCell(20, 3, price(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? $obj->multicurrency_amount_ttc : $obj->amount_ttc, 0, $outputlangs), 0, 'L', 0); + $pdf->SetXY($tab3_posx+40, $tab3_top+$y); + $pdf->MultiCell(20, 3, $text, 0, 'L', 0); + $pdf->SetXY($tab3_posx+58, $tab3_top+$y); + $pdf->MultiCell(20, 3, $invoice->ref, 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top+$y+3, $tab3_posx+$tab3_width, $tab3_top+$y+3); + + $i++; + } + } + else + { + $this->error=$this->db->lasterror(); + return -1; + } + + // Loop on each payment + // TODO Call getListOfPaymentsgetListOfPayments instead of hard coded sql + $sql = "SELECT p.datep as date, p.fk_paiement, p.num_paiement as num, pf.amount as amount, pf.multicurrency_amount,"; + $sql.= " cp.code"; + $sql.= " FROM ".MAIN_DB_PREFIX."paiement_facture as pf, ".MAIN_DB_PREFIX."paiement as p"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as cp ON p.fk_paiement = cp.id"; + $sql.= " WHERE pf.fk_paiement = p.rowid AND pf.fk_facture = ".$object->id; + //$sql.= " WHERE pf.fk_paiement = p.rowid AND pf.fk_facture = 1"; + $sql.= " ORDER BY p.datep"; + + $resql=$this->db->query($sql); + if ($resql) + { + $num = $this->db->num_rows($resql); + $i=0; + while ($i < $num) { + $y+=3; + $row = $this->db->fetch_object($resql); + + $pdf->SetXY($tab3_posx, $tab3_top+$y); + $pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($row->date),'day',false,$outputlangs,true), 0, 'L', 0); + $pdf->SetXY($tab3_posx+21, $tab3_top+$y); + $pdf->MultiCell(20, 3, price($sign * (($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount), 0, $outputlangs), 0, 'L', 0); + $pdf->SetXY($tab3_posx+40, $tab3_top+$y); + $oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort" . $row->code); + + $pdf->MultiCell(20, 3, $oper, 0, 'L', 0); + $pdf->SetXY($tab3_posx+58, $tab3_top+$y); + $pdf->MultiCell(30, 3, $row->num, 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top+$y+3, $tab3_posx+$tab3_width, $tab3_top+$y+3); + + $i++; + } + } + else + { + $this->error=$this->db->lasterror(); + return -1; + } + + } + + + /** + * Show miscellaneous information (payment mode, payment term, ...) + * + * @param PDF $pdf Object PDF + * @param Object $object Object to show + * @param int $posy Y + * @param Translate $outputlangs Langs object + * @return void + */ + function _tableau_info(&$pdf, $object, $posy, $outputlangs) + { + global $conf; + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $pdf->SetFont('','', $default_font_size - 1); + + // If France, show VAT mention if not applicable + if ($this->emetteur->country_code == 'FR' && $this->franchise == 1) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("VATIsNotUsedForInvoice"), 0, 'L', 0); + + $posy=$pdf->GetY()+4; + } + + $posxval=52; + + // Show payments conditions + if ($object->type != 2 && ($object->cond_reglement_code || $object->cond_reglement)) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentConditions").':'; + $pdf->MultiCell(43, 4, $titre, 0, 'L'); + + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_condition_paiement=$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code)!=('PaymentCondition'.$object->cond_reglement_code)?$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code):$outputlangs->convToOutputCharset($object->cond_reglement_doc); + $lib_condition_paiement=str_replace('\n',"\n",$lib_condition_paiement); + $pdf->MultiCell(67, 4, $lib_condition_paiement,0,'L'); + + $posy=$pdf->GetY()+3; + } + + if ($object->type != 2) + { + // Check a payment mode is defined + if (empty($object->mode_reglement_code) + && empty($conf->global->FACTURE_CHQ_NUMBER) + && empty($conf->global->FACTURE_RIB_NUMBER)) + { + $this->error = $outputlangs->transnoentities("ErrorNoPaiementModeConfigured"); + } + // Avoid having any valid PDF with setup that is not complete + elseif (($object->mode_reglement_code == 'CHQ' && empty($conf->global->FACTURE_CHQ_NUMBER) && empty($object->fk_account) && empty($object->fk_bank)) + || ($object->mode_reglement_code == 'VIR' && empty($conf->global->FACTURE_RIB_NUMBER) && empty($object->fk_account) && empty($object->fk_bank))) + { + $outputlangs->load("errors"); + + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size - 2); + $this->error = $outputlangs->transnoentities("ErrorPaymentModeDefinedToWithoutSetup",$object->mode_reglement_code); + $pdf->MultiCell(80, 3, $this->error,0,'L',0); + $pdf->SetTextColor(0,0,0); + + $posy=$pdf->GetY()+1; + } + + // Show payment mode + if ($object->mode_reglement_code + && $object->mode_reglement_code != 'CHQ' + && $object->mode_reglement_code != 'VIR') + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentMode").':'; + $pdf->MultiCell(80, 5, $titre, 0, 'L'); + + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_mode_reg=$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code)!=('PaymentType'.$object->mode_reglement_code)?$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code):$outputlangs->convToOutputCharset($object->mode_reglement); + $pdf->MultiCell(80, 5, $lib_mode_reg,0,'L'); + + $posy=$pdf->GetY()+2; + } + + // Show payment mode CHQ + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'CHQ') + { + // Si mode reglement non force ou si force a CHQ + if (! empty($conf->global->FACTURE_CHQ_NUMBER)) + { + $diffsizetitle=(empty($conf->global->PDF_DIFFSIZE_TITLE)?3:$conf->global->PDF_DIFFSIZE_TITLE); + + if ($conf->global->FACTURE_CHQ_NUMBER > 0) + { + $account = new Account($this->db); + $account->fetch($conf->global->FACTURE_CHQ_NUMBER); + + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$account->proprio),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($account->owner_address), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + if ($conf->global->FACTURE_CHQ_NUMBER == -1) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$this->emetteur->name),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($this->emetteur->getFullAddress()), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + } + } + + // If payment mode not forced or forced to VIR, show payment with BAN + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'VIR') + { + if (! empty($object->fk_account) || ! empty($object->fk_bank) || ! empty($conf->global->FACTURE_RIB_NUMBER)) + { + $bankid=(empty($object->fk_account)?$conf->global->FACTURE_RIB_NUMBER:$object->fk_account); + if (! empty($object->fk_bank)) $bankid=$object->fk_bank; // For backward compatibility when object->fk_account is forced with object->fk_bank + $account = new Account($this->db); + $account->fetch($bankid); + + $curx=$this->marge_gauche; + $cury=$posy; + + $posy=pdf_bank($pdf,$outputlangs,$curx,$cury,$account,0,$default_font_size); + + $posy+=2; + } + } + } + + return $posy; + } + + + /** + * Show total to pay + * + * @param PDF $pdf Object PDF + * @param Facture $object Object invoice + * @param int $deja_regle Montant deja regle + * @param int $posy Position depart + * @param Translate $outputlangs Objet langs + * @return int Position pour suite + */ + function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + { + global $conf,$mysoc; + + $sign=1; + if ($object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign=-1; + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $tab2_top = $posy; + $tab2_hl = 4; + $pdf->SetFont('','', $default_font_size - 1); + + // Tableau total + $col1x = 120; $col2x = 170; + if ($this->page_largeur < 210) // To work with US executive format + { + $col2x-=20; + } + $largcol2 = ($this->page_largeur - $this->marge_droite - $col2x); + + $useborder=0; + $index = 0; + + // Total HT + $pdf->SetFillColor(255,255,255); + $pdf->SetXY($col1x, $tab2_top + 0); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1); + + $total_ht = ($conf->multicurrency->enabled && $object->mylticurrency_tx != 1 ? $object->multicurrency_total_ht : $object->total_ht); + $pdf->SetXY($col2x, $tab2_top + 0); + $pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($total_ht + (! empty($object->remise)?$object->remise:0)), 0, $outputlangs), 0, 'R', 1); + + // Show VAT by rates and total + $pdf->SetFillColor(248,248,248); + + $total_ttc = ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc; + + $this->atleastoneratenotnull=0; + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) + { + $tvaisnull=((! empty($this->tva) && count($this->tva) == 1 && isset($this->tva['0.000']) && is_float($this->tva['0.000'])) ? true : false); + if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_IFNULL) && $tvaisnull) + { + // Nothing to do + } + else + { + // FIXME amount of vat not supported with multicurrency + + //Local tax 1 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + + } + } + } + + //} + + // VAT + // Situations totals migth be wrong on huge amounts + if ($object->situation_cycle_ref && $object->situation_counter > 1) { + + $sum_pdf_tva = 0; + foreach($this->tva as $tvakey => $tvaval){ + $sum_pdf_tva+=$tvaval; // sum VAT amounts to compare to object + } + + if($sum_pdf_tva!=$object->total_tva) { // apply coef to recover the VAT object amount (the good one) + $coef_fix_tva = $object->total_tva / $sum_pdf_tva; + + foreach($this->tva as $tvakey => $tvaval) { + $this->tva[$tvakey]=$tvaval * $coef_fix_tva; + } + } + + } + + foreach($this->tva as $tvakey => $tvaval) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + $this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat =$outputlangs->transcountrynoentities("TotalVAT",$mysoc->country_code).' '; + $totalvat.=vatrate($tvakey,1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + + //Local tax 1 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + // retrieve global local tax + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + //} + } + + // Revenue stamp + if (price2num($object->revenuestamp) != 0) + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RevenueStamp"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($sign * $object->revenuestamp), $useborder, 'R', 1); + } + + // Total TTC + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($sign * $total_ttc, 0, $outputlangs), $useborder, 'R', 1); + } + } + + $pdf->SetTextColor(0,0,0); + + $creditnoteamount=$object->getSumCreditNotesUsed(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? 1 : 0); + $depositsamount=$object->getSumDepositsUsed(($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? 1 : 0); + //print "x".$creditnoteamount."-".$depositsamount;exit; + $resteapayer = price2num($total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 'MT'); + if ($object->paye) $resteapayer=0; + + if (($deja_regle > 0 || $creditnoteamount > 0 || $depositsamount > 0) && empty($conf->global->INVOICE_NO_PAYMENT_DETAILS)) + { + // Already paid + Deposits + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("Paid"), 0, 'L', 0); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($deja_regle + $depositsamount, 0, $outputlangs), 0, 'R', 0); + + // Credit note + if ($creditnoteamount) + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("CreditNotes"), 0, 'L', 0); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($creditnoteamount, 0, $outputlangs), 0, 'R', 0); + } + + // Escompte + if ($object->close_code == Facture::CLOSECODE_DISCOUNTVAT) + { + $index++; + $pdf->SetFillColor(255,255,255); + + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("EscompteOfferedShort"), $useborder, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 0, $outputlangs), $useborder, 'R', 1); + + $resteapayer=0; + } + + $index++; + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RemainderToPay"), $useborder, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($resteapayer, 0, $outputlangs), $useborder, 'R', 1); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetTextColor(0,0,0); + } + + $index++; + return ($tab2_top + ($tab2_hl * $index)); + } + + /** + * Show table for lines + * + * @param PDF $pdf Object PDF + * @param string $tab_top Top position of table + * @param string $tab_height Height of table (rectangle) + * @param int $nexY Y (not used) + * @param Translate $outputlangs Langs object + * @param int $hidetop 1=Hide top bar of array and title, 0=Hide nothing, -1=Hide only title + * @param int $hidebottom Hide bottom bar of array + * @param string $currency Currency code + * @return void + */ + function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0, $currency='') + { + global $conf; + + // Force to disable hidetop and hidebottom + $hidebottom=0; + if ($hidetop) $hidetop=-1; + + $currency = !empty($currency) ? $currency : $conf->currency; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + // Amount in (at tab_top - 1) + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + + if (empty($hidetop)) + { + $titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$currency)); + $pdf->SetXY($this->page_largeur - $this->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4); + $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); + + //$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR='230,230,230'; + if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_droite-$this->marge_gauche, 5, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)); + } + + $pdf->SetDrawColor(128,128,128); + $pdf->SetFont('','', $default_font_size - 1); + + // Output Rect + $this->printRect($pdf,$this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height, $hidetop, $hidebottom); // Rect prend une longueur en 3eme param et 4eme param + + + foreach ($this->cols as $colKey => $colDef) + { + if(!$this->getColumnStatus($colKey)) continue; + + // get title label + $colDef['title']['label'] = !empty($colDef['title']['label'])?$colDef['title']['label']:$outputlangs->transnoentities($colDef['title']['textkey']); + + // Add column separator + if(!empty($colDef['border-left'])){ + $pdf->line($colDef['xStartPos'], $tab_top, $colDef['xStartPos'], $tab_top + $tab_height); + } + + if (empty($hidetop)) + { + $pdf->SetXY($colDef['xStartPos'] + $colDef['title']['padding'][3], $tab_top + $colDef['title']['padding'][0] ); + + $textWidth = $colDef['width'] - $colDef['title']['padding'][3] -$colDef['title']['padding'][1]; + $pdf->MultiCell($textWidth,2,$colDef['title']['label'],'',$colDef['title']['align']); + } + } + + if (empty($hidetop)){ + $pdf->line($this->marge_gauche, $tab_top+5, $this->page_largeur-$this->marge_droite, $tab_top+5); // line prend une position y en 2eme param et 4eme param + } + + + } + + /** + * Show top header of page. + * + * @param PDF $pdf Object PDF + * @param Object $object Object to show + * @param int $showaddress 0=no, 1=yes + * @param Translate $outputlangs Object lang for output + * @return void + */ + function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + { + global $conf, $langs; + + // Translations + $outputlangs->loadLangs(array("main", "bills", "propal", "companies")); + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + pdf_pagehead($pdf,$outputlangs,$this->page_hauteur); + + // Show Draft Watermark + if($object->statut==Facture::STATUS_DRAFT && (! empty($conf->global->FACTURE_DRAFT_WATERMARK)) ) + { + pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->FACTURE_DRAFT_WATERMARK); + } + + $pdf->SetTextColor(0,0,60); + $pdf->SetFont('','B', $default_font_size + 3); + + $w = 110; + + $posy=$this->marge_haute; + $posx=$this->page_largeur-$this->marge_droite-$w; + + $pdf->SetXY($this->marge_gauche,$posy); + + // Logo + $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + if ($this->emetteur->logo) + { + if (is_readable($logo)) + { + $height=pdf_getHeightForLogo($logo); + $pdf->Image($logo, $this->marge_gauche, $posy, 0, $height); // width=0 (auto) + } + else + { + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B',$default_font_size - 2); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L'); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("ErrorGoToGlobalSetup"), 0, 'L'); + } + } + else + { + $text=$this->emetteur->name; + $pdf->MultiCell($w, 4, $outputlangs->convToOutputCharset($text), 0, 'L'); + } + + $pdf->SetFont('','B', $default_font_size + 3); + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $title=$outputlangs->transnoentities("PdfInvoiceTitle"); + if ($object->type == 1) $title=$outputlangs->transnoentities("InvoiceReplacement"); + if ($object->type == 2) $title=$outputlangs->transnoentities("InvoiceAvoir"); + if ($object->type == 3) $title=$outputlangs->transnoentities("InvoiceDeposit"); + if ($object->type == 4) $title=$outputlangs->transnoentities("InvoiceProForma"); + if ($this->situationinvoice) $title=$outputlangs->transnoentities("InvoiceSituation"); + $pdf->MultiCell($w, 3, $title, '', 'R'); + + $pdf->SetFont('','B',$default_font_size); + + $posy+=5; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $textref=$outputlangs->transnoentities("Ref")." : " . $outputlangs->convToOutputCharset($object->ref); + if ($object->statut == Facture::STATUS_DRAFT) + { + $pdf->SetTextColor(128,0,0); + $textref.=' - '.$outputlangs->transnoentities("NotValidated"); + } + $pdf->MultiCell($w, 4, $textref, '', 'R'); + + $posy+=1; + $pdf->SetFont('','', $default_font_size - 2); + + if ($object->ref_client) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("RefCustomer")." : " . $outputlangs->convToOutputCharset($object->ref_client), '', 'R'); + } + + $objectidnext=$object->getIdReplacingInvoice('validated'); + if ($object->type == 0 && $objectidnext) + { + $objectreplacing=new Facture($this->db); + $objectreplacing->fetch($objectidnext); + + $posy+=3; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("ReplacementByInvoice").' : '.$outputlangs->convToOutputCharset($objectreplacing->ref), '', 'R'); + } + if ($object->type == 1) + { + $objectreplaced=new Facture($this->db); + $objectreplaced->fetch($object->fk_facture_source); + + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("ReplacementInvoice").' : '.$outputlangs->convToOutputCharset($objectreplaced->ref), '', 'R'); + } + if ($object->type == 2 && !empty($object->fk_facture_source)) + { + $objectreplaced=new Facture($this->db); + $objectreplaced->fetch($object->fk_facture_source); + + $posy+=3; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("CorrectionInvoice").' : '.$outputlangs->convToOutputCharset($objectreplaced->ref), '', 'R'); + } + + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("DateInvoice")." : " . dol_print_date($object->date,"day",false,$outputlangs), '', 'R'); + + if (! empty($conf->global->INVOICE_POINTOFTAX_DATE)) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("DatePointOfTax")." : " . dol_print_date($object->date_pointoftax,"day",false,$outputlangs), '', 'R'); + } + + if ($object->type != 2) + { + $posy+=3; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("DateDue")." : " . dol_print_date($object->date_lim_reglement,"day",false,$outputlangs,true), '', 'R'); + } + + if ($object->thirdparty->code_client) + { + $posy+=3; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $outputlangs->transnoentities("CustomerCode")." : " . $outputlangs->transnoentities($object->thirdparty->code_client), '', 'R'); + } + + // Get contact + if (!empty($conf->global->DOC_SHOW_FIRST_SALES_REP)) + { + $arrayidcontact=$object->getIdContact('internal','SALESREPFOLL'); + if (count($arrayidcontact) > 0) + { + $usertmp=new User($this->db); + $usertmp->fetch($arrayidcontact[0]); + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell($w, 3, $langs->transnoentities("SalesRepresentative")." : ".$usertmp->getFullName($langs), '', 'R'); + } + } + + $posy+=1; + + $top_shift = 0; + // Show list of linked objects + $current_y = $pdf->getY(); + $posy = pdf_writeLinkedObjects($pdf, $object, $outputlangs, $posx, $posy, $w, 3, 'R', $default_font_size); + if ($current_y < $pdf->getY()) + { + $top_shift = $pdf->getY() - $current_y; + } + + if ($showaddress) + { + // Sender properties + $carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->thirdparty, '', 0, 'source', $object); + + // Show sender + $posy=!empty($conf->global->MAIN_PDF_USE_ISO_LOCATION) ? 40 : 42; + $posy+=$top_shift; + $posx=$this->marge_gauche; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80; + + $hautcadre=!empty($conf->global->MAIN_PDF_USE_ISO_LOCATION) ? 38 : 40; + $widthrecbox=!empty($conf->global->MAIN_PDF_USE_ISO_LOCATION) ? 92 : 82; + + + // Show sender frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx,$posy-5); + $pdf->MultiCell(66,5, $outputlangs->transnoentities("BillFrom").":", 0, 'L'); + $pdf->SetXY($posx,$posy); + $pdf->SetFillColor(230,230,230); + $pdf->MultiCell($widthrecbox, $hautcadre, "", 0, 'R', 1); + $pdf->SetTextColor(0,0,60); + + // Show sender name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell($widthrecbox-2, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); + $posy=$pdf->getY(); + + // Show sender information + $pdf->SetXY($posx+2,$posy); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell($widthrecbox-2, 4, $carac_emetteur, 0, 'L'); + + // If BILLING contact defined on invoice, we use it + $usecontact=false; + $arrayidcontact=$object->getIdContact('external','BILLING'); + if (count($arrayidcontact) > 0) + { + $usecontact=true; + $result=$object->fetch_contact($arrayidcontact[0]); + } + + //Recipient name + // On peut utiliser le nom de la societe du contact + if ($usecontact && !empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) { + $thirdparty = $object->contact; + } else { + $thirdparty = $object->thirdparty; + } + + $carac_client_name= pdfBuildThirdpartyName($thirdparty, $outputlangs); + + $carac_client=pdf_build_address($outputlangs,$this->emetteur,$object->thirdparty,($usecontact?$object->contact:''),$usecontact,'target',$object); + + // Show recipient + $widthrecbox=!empty($conf->global->MAIN_PDF_USE_ISO_LOCATION) ? 92 : 100; + if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format + $posy=!empty($conf->global->MAIN_PDF_USE_ISO_LOCATION) ? 40 : 42; + $posy+=$top_shift; + $posx=$this->page_largeur-$this->marge_droite-$widthrecbox; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche; + + // Show recipient frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx+2,$posy-5); + $pdf->MultiCell($widthrecbox, 5, $outputlangs->transnoentities("BillTo").":",0,'L'); + $pdf->Rect($posx, $posy, $widthrecbox, $hautcadre); + + // Show recipient name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell($widthrecbox, 2, $carac_client_name, 0, 'L'); + + $posy = $pdf->getY(); + + // Show recipient information + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($posx+2,$posy); + $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); + } + + $pdf->SetTextColor(0,0,0); + return $top_shift; + } + + /** + * Show footer of page. Need this->emetteur object + * + * @param PDF $pdf PDF + * @param Object $object Object to show + * @param Translate $outputlangs Object lang for output + * @param int $hidefreetext 1=Hide free text + * @return int Return height of bottom margin including footer text + */ + function _pagefoot(&$pdf,$object,$outputlangs,$hidefreetext=0) + { + global $conf; + $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; + return pdf_pagefoot($pdf,$outputlangs,'INVOICE_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + } + + + + + /** + * Define Array Column Field + * + * @param object $object common object + * @param outputlangs $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return null + */ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + + global $conf, $hookmanager; + + // Default field style for content + $this->defaultContentsFieldsStyle = array( + 'align' => 'R', // R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + // Default field style for content + $this->defaultTitlesFieldsStyle = array( + 'align' => 'C', // R,C,L + 'padding' => array(0.5,0,0.5,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + /* + * For exemple + $this->cols['theColKey'] = array( + 'rank' => $rank, // int : use for ordering columns + 'width' => 20, // the column width in mm + 'title' => array( + 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + 'label' => ' ', // the final label : used fore final generated text + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + ); + */ + + $rank=0; // do not use negative rank + $this->cols['desc'] = array( + 'rank' => $rank, + 'width' => false, // only for desc + 'status' => true, + 'title' => array( + 'textkey' => 'Designation', // use lang key is usefull in somme case with module + 'align' => 'L', + // 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + // 'label' => ' ', // the final label + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', + ), + ); + + // PHOTO + $rank = $rank + 10; + $this->cols['photo'] = array( + 'rank' => $rank, + 'width' => (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?20:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH), // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Photo', + 'label' => ' ' + ), + 'content' => array( + 'padding' => array(0,0,0,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'border-left' => false, // remove left line separator + ); + + if (! empty($conf->global->MAIN_GENERATE_INVOICES_WITH_PICTURE) && !empty($this->atleastonephoto)) + { + $this->cols['photo']['status'] = true; + } + + + $rank = $rank + 10; + $this->cols['vat'] = array( + 'rank' => $rank, + 'status' => false, + 'width' => 16, // in mm + 'title' => array( + 'textkey' => 'VAT' + ), + 'border-left' => true, // add left line separator + ); + + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) && empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_COLUMN)) + { + $this->cols['vat']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['subprice'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'PriceUHT' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['qty'] = array( + 'rank' => $rank, + 'width' => 16, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'Qty' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['progress'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Progress' + ), + 'border-left' => true, // add left line separator + ); + + if($this->situationinvoice) + { + $this->cols['progress']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['unit'] = array( + 'rank' => $rank, + 'width' => 11, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Unit' + ), + 'border-left' => true, // add left line separator + ); + if($conf->global->PRODUCT_USE_UNITS){ + $this->cols['unit']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['discount'] = array( + 'rank' => $rank, + 'width' => 13, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'ReductionShort' + ), + 'border-left' => true, // add left line separator + ); + if ($this->atleastonediscount){ + $this->cols['discount']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['totalexcltax'] = array( + 'rank' => $rank, + 'width' => 26, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'TotalHT' + ), + 'border-left' => true, // add left line separator + ); + + + $parameters=array( + 'object' => $object, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails, + 'hidedesc' => $hidedesc, + 'hideref' => $hideref + ); + + $reshook=$hookmanager->executeHooks('defineColumnField',$parameters,$this); // Note that $object may have been modified by hook + if ($reshook < 0) + { + setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + } + elseif (empty($reshook)) + { + $this->cols = array_replace($this->cols, $hookmanager->resArray); // array_replace is used to preserve keys + } + else + { + $this->cols = $hookmanager->resArray; + } + + } + + +} diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php new file mode 100644 index 00000000000..383f34acebd --- /dev/null +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -0,0 +1,1891 @@ + + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2008 Raphael Bertrand + * Copyright (C) 2010-2015 Juanjo Menent + * Copyright (C) 2012 Christophe Battarel + * Copyright (C) 2012 Cedric Salvador + * Copyright (C) 2015 Marcos García + * Copyright (C) 2017 Ferran Marcet + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/core/modules/propale/doc/pdf_cyan.modules.php + * \ingroup propale + * \brief Fichier de la classe permettant de generer les propales au modele Cyan + */ +require_once DOL_DOCUMENT_ROOT.'/core/modules/propale/modules_propale.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; + + +/** + * Class to generate PDF proposal Cyan + */ +class pdf_cyan extends ModelePDFPropales +{ + var $db; + var $name; + var $description; + var $update_main_doc_field; // Save the name of generated file as the main doc when generating a doc with this template + var $type; + + var $phpmin = array(4,3,0); // Minimum version of PHP required by module + var $version = 'dolibarr'; + + var $page_largeur; + var $page_hauteur; + var $format; + var $marge_gauche; + var $marge_droite; + var $marge_haute; + var $marge_basse; + + var $emetteur; // Objet societe qui emet + + + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + function __construct($db) + { + global $conf,$langs,$mysoc; + + // Translations + $langs->loadLangs(array("main", "bills")); + + $this->db = $db; + $this->name = "cyan"; + $this->description = $langs->trans('DocModelCyanDescription'); + $this->update_main_doc_field = 1; // Save the name of generated file as the main doc when generating a doc with this template + + // Dimension page + $this->type = 'pdf'; + $formatarray=pdf_getFormat(); + $this->page_largeur = $formatarray['width']; + $this->page_hauteur = $formatarray['height']; + $this->format = array($this->page_largeur,$this->page_hauteur); + $this->marge_gauche=isset($conf->global->MAIN_PDF_MARGIN_LEFT)?$conf->global->MAIN_PDF_MARGIN_LEFT:10; + $this->marge_droite=isset($conf->global->MAIN_PDF_MARGIN_RIGHT)?$conf->global->MAIN_PDF_MARGIN_RIGHT:10; + $this->marge_haute =isset($conf->global->MAIN_PDF_MARGIN_TOP)?$conf->global->MAIN_PDF_MARGIN_TOP:10; + $this->marge_basse =isset($conf->global->MAIN_PDF_MARGIN_BOTTOM)?$conf->global->MAIN_PDF_MARGIN_BOTTOM:10; + + $this->option_logo = 1; // Affiche logo + $this->option_tva = 1; // Gere option tva FACTURE_TVAOPTION + $this->option_modereg = 1; // Affiche mode reglement + $this->option_condreg = 1; // Affiche conditions reglement + $this->option_codeproduitservice = 1; // Affiche code produit-service + $this->option_multilang = 1; // Dispo en plusieurs langues + $this->option_escompte = 0; // Affiche si il y a eu escompte + $this->option_credit_note = 0; // Support credit notes + $this->option_freetext = 1; // Support add of a personalised text + $this->option_draft_watermark = 1; //Support add of a watermark on drafts + + $this->franchise=!$mysoc->tva_assuj; + + // Get source company + $this->emetteur=$mysoc; + if (empty($this->emetteur->country_code)) $this->emetteur->country_code=substr($langs->defaultlang,-2); // By default, if was not defined + + // Define position of columns + $this->posxdesc=$this->marge_gauche+1; + + + + $this->tva=array(); + $this->localtax1=array(); + $this->localtax2=array(); + $this->atleastoneratenotnull=0; + $this->atleastonediscount=0; + } + + /** + * Function to build pdf onto disk + * + * @param Object $object Object to generate + * @param Translate $outputlangs Lang output object + * @param string $srctemplatepath Full path of source filename for generator using a template file + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return int 1=OK, 0=KO + */ + function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0) + { + global $user,$langs,$conf,$mysoc,$db,$hookmanager,$nblignes; + + if (! is_object($outputlangs)) $outputlangs=$langs; + // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO + if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1'; + + $outputlangs->load("main"); + $outputlangs->load("dict"); + $outputlangs->load("companies"); + $outputlangs->load("bills"); + $outputlangs->load("propal"); + $outputlangs->load("products"); + + $nblignes = count($object->lines); + + // Loop on each lines to detect if there is at least one image to show + $realpatharray=array(); + $this->atleastonephoto = false; + if (! empty($conf->global->MAIN_GENERATE_PROPOSALS_WITH_PICTURE)) + { + $objphoto = new Product($this->db); + + for ($i = 0 ; $i < $nblignes ; $i++) + { + if (empty($object->lines[$i]->fk_product)) continue; + + $objphoto->fetch($object->lines[$i]->fk_product); + //var_dump($objphoto->ref);exit; + if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) + { + $pdir[0] = get_exdir($objphoto->id,2,0,0,$objphoto,'product') . $objphoto->id ."/photos/"; + $pdir[1] = get_exdir(0,0,0,0,$objphoto,'product') . dol_sanitizeFileName($objphoto->ref).'/'; + } + else + { + $pdir[0] = get_exdir(0,0,0,0,$objphoto,'product') . dol_sanitizeFileName($objphoto->ref).'/'; // default + $pdir[1] = get_exdir($objphoto->id,2,0,0,$objphoto,'product') . $objphoto->id ."/photos/"; // alternative + } + + $arephoto = false; + foreach ($pdir as $midir) + { + if (! $arephoto) + { + $dir = $conf->product->dir_output.'/'.$midir; + + foreach ($objphoto->liste_photos($dir,1) as $key => $obj) + { + if (empty($conf->global->CAT_HIGH_QUALITY_IMAGES)) // If CAT_HIGH_QUALITY_IMAGES not defined, we use thumb if defined and then original photo + { + if ($obj['photo_vignette']) + { + $filename= $obj['photo_vignette']; + } + else + { + $filename=$obj['photo']; + } + } + else + { + $filename=$obj['photo']; + } + + $realpath = $dir.$filename; + $arephoto = true; + $this->atleastonephoto = true; + } + } + } + + if ($realpath && $arephoto) $realpatharray[$i]=$realpath; + } + } + + if (count($realpatharray) == 0) $this->posxpicture=$this->posxtva; + + if ($conf->propal->multidir_output[$conf->entity]) + { + $object->fetch_thirdparty(); + + $deja_regle = 0; + + // Definition of $dir and $file + if ($object->specimen) + { + $dir = $conf->propal->multidir_output[$conf->entity]; + $file = $dir . "/SPECIMEN.pdf"; + } + else + { + $objectref = dol_sanitizeFileName($object->ref); + $dir = $conf->propal->multidir_output[$object->entity] . "/" . $objectref; + $file = $dir . "/" . $objectref . ".pdf"; + } + + if (! file_exists($dir)) + { + if (dol_mkdir($dir) < 0) + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + } + + if (file_exists($dir)) + { + // Add pdfgeneration hook + if (! is_object($hookmanager)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; + $hookmanager=new HookManager($this->db); + } + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('beforePDFCreation',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + + // Create pdf instance + $pdf=pdf_getInstance($this->format); + $default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance + $pdf->SetAutoPageBreak(1,0); + + if (class_exists('TCPDF')) + { + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + } + $pdf->SetFont(pdf_getPDFFont($outputlangs)); + // Set path to the background PDF File + if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) + { + $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $tplidx = $pdf->importPage(1); + } + + $pdf->Open(); + $pagenb=0; + $pdf->SetDrawColor(128,128,128); + + $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref)); + $pdf->SetSubject($outputlangs->transnoentities("PdfCommercialProposalTitle")); + $pdf->SetCreator("Dolibarr ".DOL_VERSION); + $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); + $pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("PdfCommercialProposalTitle")." ".$outputlangs->convToOutputCharset($object->thirdparty->name)); + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); + + $pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right + + // Does we have at least one line with discount $this->atleastonediscount + foreach ($object->lines as $line) { + if ($line->remise_percent){ + $this->atleastonediscount = true; + break; + } + } + + + + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + + $heightforinfotot = 40; // Height reserved to output the info and total part + $heightforsignature = empty($conf->global->PROPAL_DISABLE_SIGNATURE)?(pdfGetHeightForHtmlContent($pdf, $outputlangs->transnoentities("ProposalCustomerSignature"))+10):0; + $heightforfreetext= (isset($conf->global->MAIN_PDF_FREETEXT_HEIGHT)?$conf->global->MAIN_PDF_FREETEXT_HEIGHT:5); // Height reserved to output the free text on last page + $heightforfooter = $this->marge_basse + (empty($conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS)?12:22); // Height reserved to output the footer (value include bottom margin) + //print $heightforinfotot + $heightforsignature + $heightforfreetext + $heightforfooter;exit; + + $top_shift = $this->_pagehead($pdf, $object, 1, $outputlangs); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(0, 3, ''); // Set interline to 3 + $pdf->SetTextColor(0,0,0); + + + $tab_top = 90+$top_shift; + $tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)?42+$top_shift:10); + + + // Incoterm + $height_incoterms = 0; + if ($conf->incoterm->enabled) + { + $desc_incoterms = $object->getIncotermsForPDF(); + if ($desc_incoterms) + { + $tab_top -= 2; + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top-1, dol_htmlentitiesbr($desc_incoterms), 0, 1); + $nexY = $pdf->GetY(); + $height_incoterms=$nexY-$tab_top; + + // Rect prend une longueur en 3eme param + $pdf->SetDrawColor(192,192,192); + $pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_incoterms+1); + + $tab_top = $nexY+6; + } + } + + // Affiche notes + $notetoshow=empty($object->note_public)?'':$object->note_public; + if (! empty($conf->global->MAIN_ADD_SALE_REP_SIGNATURE_IN_NOTE)) + { + // Get first sale rep + if (is_object($object->thirdparty)) + { + $salereparray=$object->thirdparty->getSalesRepresentatives($user); + $salerepobj=new User($this->db); + $salerepobj->fetch($salereparray[0]['id']); + if (! empty($salerepobj->signature)) $notetoshow=dol_concatdesc($notetoshow, $salerepobj->signature); + } + } + if (! empty($conf->global->MAIN_ADD_CREATOR_IN_NOTE) && $object->user_author_id > 0) + { + $tmpuser=new User($this->db); + $tmpuser->fetch($object->user_author_id); + $notetoshow.='Affaire suivi par '.$tmpuser->getFullName($langs); + if ($tmpuser->email) $notetoshow.=', Mail: '.$tmpuser->email; + if ($tmpuser->office_phone) $notetoshow.=', Tel: '.$tmpuser->office_phone; + } + + $pagenb = $pdf->getPage(); + if ($notetoshow) + { + $tab_top -= 2; + + $tab_width = $this->page_largeur-$this->marge_gauche-$this->marge_droite; + $pageposbeforenote = $pagenb; + + $substitutionarray=pdf_getSubstitutionArray($outputlangs, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); + + + $pdf->startTransaction(); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + // Description + $pageposafternote=$pdf->getPage(); + $posyafter = $pdf->GetY(); + + if($pageposafternote>$pageposbeforenote ) + { + $pdf->rollbackTransaction(true); + + // prepar pages to receive notes + while ($pagenb < $pageposafternote) { + $pdf->AddPage(); + $pagenb++; + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + // $this->_pagefoot($pdf,$object,$outputlangs,1); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + } + + // back to start + $pdf->setPage($pageposbeforenote); + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($notetoshow), 0, 1); + $pageposafternote=$pdf->getPage(); + + $posyafter = $pdf->GetY(); + + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20))) // There is no space left for total+free text + { + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + $pdf->setTopMargin($tab_top_newpage); + // The only function to edit the bottom margin of current page to set it. + $pdf->setPageOrientation('', 1, $heightforfooter + $heightforfreetext); + //$posyafter = $tab_top_newpage; + } + + + // apply note frame to previus pages + $i = $pageposbeforenote; + while ($i < $pageposafternote) { + $pdf->setPage($i); + + + $pdf->SetDrawColor(128,128,128); + // Draw note frame + if($i>$pageposbeforenote){ + $height_note = $this->page_hauteur - ($tab_top_newpage + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note + 1); + } + else{ + $height_note = $this->page_hauteur - ($tab_top + $heightforfooter); + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note + 1); + } + + // Add footer + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + $this->_pagefoot($pdf,$object,$outputlangs,1); + + $i++; + } + + // apply note frame to last page + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $height_note=$posyafter-$tab_top_newpage; + $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); + + } + else // No pagebreak + { + $pdf->commitTransaction(); + $posyafter = $pdf->GetY(); + $height_note=$posyafter-$tab_top; + $pdf->Rect($this->marge_gauche, $tab_top-1, $tab_width, $height_note+1); + + + if($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+20)) ) + { + // not enough space, need to add page + $pdf->AddPage('','',true); + $pagenb++; + $pageposafternote++; + $pdf->setPage($pageposafternote); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + + $posyafter = $tab_top_newpage; + } + + } + + $tab_height = $tab_height - $height_note; + $tab_top = $posyafter +6; + } + else + { + $height_note=0; + } + + $iniY = $tab_top + 7; + $curY = $tab_top + 7; + $nexY = $tab_top + 7; + + // Use new auto collum system + $this->prepareArrayColumnField($object,$outputlangs,$hidedetails,$hidedesc,$hideref); + + // Loop on each lines + $pageposbeforeprintlines=$pdf->getPage(); + $pagenb = $pageposbeforeprintlines; + for ($i = 0; $i < $nblignes; $i++) + { + $curY = $nexY; + $pdf->SetFont('','', $default_font_size - 1); // Into loop to work with multipage + $pdf->SetTextColor(0,0,0); + + // Define size of image if we need it + $imglinesize=array(); + if (! empty($realpatharray[$i])) $imglinesize=pdf_getSizeForImage($realpatharray[$i]); + + $pdf->setTopMargin($tab_top_newpage); + $pdf->setPageOrientation('', 1, $heightforfooter+$heightforfreetext+$heightforsignature+$heightforinfotot); // The only function to edit the bottom margin of current page to set it. + $pageposbefore=$pdf->getPage(); + + $showpricebeforepagebreak=1; + $posYAfterImage=0; + $posYAfterDescription=0; + + if($this->getColumnStatus('photo')) + { + // We start with Photo of product line + if (isset($imglinesize['width']) && isset($imglinesize['height']) && ($curY + $imglinesize['height']) > ($this->page_hauteur-($heightforfooter+$heightforfreetext+$heightforsignature+$heightforinfotot))) // If photo too high, we moved completely on new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + //if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $pdf->setPage($pageposbefore+1); + + $curY = $tab_top_newpage; + $showpricebeforepagebreak=0; + } + + + if (!empty($this->cols['photo']) && isset($imglinesize['width']) && isset($imglinesize['height'])) + { + $pdf->Image($realpatharray[$i], $this->getColumnContentXStart('photo'), $curY, $imglinesize['width'], $imglinesize['height'], '', '', '', 2, 300); // Use 300 dpi + // $pdf->Image does not increase value return by getY, so we save it manually + $posYAfterImage=$curY+$imglinesize['height']; + } + } + + // Description of product line + if($this->getColumnStatus('desc')) + { + $pdf->startTransaction(); + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + $pageposafter=$pdf->getPage(); + if ($pageposafter > $pageposbefore) // There is a pagebreak + { + $pdf->rollbackTransaction(true); + $pageposafter=$pageposbefore; + //print $pageposafter.'-'.$pageposbefore;exit; + $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->getColumnContentWidth('desc'),3,$this->getColumnContentXStart('desc'),$curY,$hideref,$hidedesc); + + $pageposafter=$pdf->getPage(); + $posyafter=$pdf->GetY(); + //var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit; + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforsignature+$heightforinfotot))) // There is no space left for total+free text + { + if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + //if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $pdf->setPage($pageposafter+1); + } + } + else + { + // We found a page break + $showpricebeforepagebreak=0; + } + } + else // No pagebreak + { + $pdf->commitTransaction(); + } + $posYAfterDescription=$pdf->GetY(); + } + + $nexY = $pdf->GetY(); + $pageposafter=$pdf->getPage(); + + $pdf->setPage($pageposbefore); + $pdf->setTopMargin($this->marge_haute); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + + // We suppose that a too long description or photo were moved completely on next page + if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) { + $pdf->setPage($pageposafter); $curY = $tab_top_newpage; + } + + $pdf->SetFont('','', $default_font_size - 1); // On repositionne la police par defaut + + // VAT Rate + if ($this->getColumnStatus('vat')) + { + $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'vat', $vat_rate); + $nexY = max($pdf->GetY(),$nexY); + } + + // Unit price before discount + if ($this->getColumnStatus('subprice')) + { + $up_excl_tax = pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'subprice', $up_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + // Quantity + // Enough for 6 chars + if ($this->getColumnStatus('qty')) + { + $qty = pdf_getlineqty($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'qty', $qty); + $nexY = max($pdf->GetY(),$nexY); + } + + + // Unit + if ($this->getColumnStatus('unit')) + { + $unit = pdf_getlineunit($object, $i, $outputlangs, $hidedetails, $hookmanager); + $this->printStdColumnContent($pdf, $curY, 'unit', $unit); + $nexY = max($pdf->GetY(),$nexY); + } + + // Discount on line + if ($this->getColumnStatus('discount') && $object->lines[$i]->remise_percent) + { + $remise_percent = pdf_getlineremisepercent($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'discount', $remise_percent); + $nexY = max($pdf->GetY(),$nexY); + } + + // Total HT line + if ($this->getColumnStatus('totalexcltax')) + { + $total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs, $hidedetails); + $this->printStdColumnContent($pdf, $curY, 'totalexcltax', $total_excl_tax); + $nexY = max($pdf->GetY(),$nexY); + } + + + $parameters=array( + 'object' => $object, + 'i' => $i, + 'pdf' =>& $pdf, + 'curY' =>& $curY, + 'nexY' =>& $nexY, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails + ); + $reshook=$hookmanager->executeHooks('printPDFline',$parameters,$this); // Note that $object may have been modified by hook + + + + // Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva + if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne=$object->lines[$i]->multicurrency_total_tva; + else $tvaligne=$object->lines[$i]->total_tva; + + $localtax1ligne=$object->lines[$i]->total_localtax1; + $localtax2ligne=$object->lines[$i]->total_localtax2; + $localtax1_rate=$object->lines[$i]->localtax1_tx; + $localtax2_rate=$object->lines[$i]->localtax2_tx; + $localtax1_type=$object->lines[$i]->localtax1_type; + $localtax2_type=$object->lines[$i]->localtax2_type; + + if ($object->remise_percent) $tvaligne-=($tvaligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax1ligne-=($localtax1ligne*$object->remise_percent)/100; + if ($object->remise_percent) $localtax2ligne-=($localtax2ligne*$object->remise_percent)/100; + + $vatrate=(string) $object->lines[$i]->tva_tx; + + // Retrieve type from database for backward compatibility with old records + if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined + && (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax + { + $localtaxtmp_array=getLocalTaxesFromRate($vatrate,0,$object->thirdparty,$mysoc); + $localtax1_type = $localtaxtmp_array[0]; + $localtax2_type = $localtaxtmp_array[2]; + } + + // retrieve global local tax + if ($localtax1_type && $localtax1ligne != 0) + $this->localtax1[$localtax1_type][$localtax1_rate]+=$localtax1ligne; + if ($localtax2_type && $localtax2ligne != 0) + $this->localtax2[$localtax2_type][$localtax2_rate]+=$localtax2ligne; + + if (($object->lines[$i]->info_bits & 0x01) == 0x01) $vatrate.='*'; + if (! isset($this->tva[$vatrate])) $this->tva[$vatrate]=0; + $this->tva[$vatrate] += $tvaligne; + + if ($posYAfterImage > $posYAfterDescription) $nexY=$posYAfterImage; + + // Add line + if (! empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblignes - 1)) + { + $pdf->setPage($pageposafter); + $pdf->SetLineStyle(array('dash'=>'1,1','color'=>array(80,80,80))); + //$pdf->SetDrawColor(190,190,200); + $pdf->line($this->marge_gauche, $nexY+1, $this->page_largeur - $this->marge_droite, $nexY+1); + $pdf->SetLineStyle(array('dash'=>0)); + } + + $nexY+=2; // Passe espace entre les lignes + + // Detect if some page were added automatically and output _tableau for past pages + while ($pagenb < $pageposafter) + { + $pdf->setPage($pagenb); + if ($pagenb == $pageposbeforeprintlines) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + $pagenb++; + $pdf->setPage($pagenb); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak) + { + if ($pagenb == $pageposafter) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object->multicurrency_code); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + } + + // Show square + if ($pagenb == $pageposbeforeprintlines) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforsignature - $heightforfooter, 0, $outputlangs, 0, 0, $object->multicurrency_code); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforsignature - $heightforfooter + 1; + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforsignature - $heightforfooter, 0, $outputlangs, 1, 0, $object->multicurrency_code); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforsignature - $heightforfooter + 1; + } + + // Affiche zone infos + $posy=$this->_tableau_info($pdf, $object, $bottomlasttab, $outputlangs); + + // Affiche zone totaux + $posy=$this->_tableau_tot($pdf, $object, 0, $bottomlasttab, $outputlangs); + + // Affiche zone versements + /* + if ($deja_regle || $amount_credit_notes_included || $amount_deposits_included) + { + $posy=$this->_tableau_versements($pdf, $object, $posy, $outputlangs); + } + */ + + // Customer signature area + if (empty($conf->global->PROPAL_DISABLE_SIGNATURE)) + { + $posy=$this->_signature_area($pdf, $object, $posy, $outputlangs); + } + + // Pied de page + $this->_pagefoot($pdf,$object,$outputlangs); + if (method_exists($pdf,'AliasNbPages')) $pdf->AliasNbPages(); + + //If propal merge product PDF is active + if (!empty($conf->global->PRODUIT_PDF_MERGE_PROPAL)) + { + require_once DOL_DOCUMENT_ROOT.'/product/class/propalmergepdfproduct.class.php'; + + $already_merged = array (); + foreach ( $object->lines as $line ) { + if (! empty($line->fk_product) && ! (in_array($line->fk_product, $already_merged))) { + // Find the desire PDF + $filetomerge = new Propalmergepdfproduct($this->db); + + if ($conf->global->MAIN_MULTILANGS) { + $filetomerge->fetch_by_product($line->fk_product, $outputlangs->defaultlang); + } else { + $filetomerge->fetch_by_product($line->fk_product); + } + + $already_merged[] = $line->fk_product; + + $product = new Product($this->db); + $product->fetch($line->fk_product); + + if ($product->entity!=$conf->entity) { + $entity_product_file=$product->entity; + } else { + $entity_product_file=$conf->entity; + } + + // If PDF is selected and file is not empty + if (count($filetomerge->lines) > 0) { + foreach ( $filetomerge->lines as $linefile ) { + if (! empty($linefile->id) && ! empty($linefile->file_name)) { + + + if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) + { + if (! empty($conf->product->enabled)) { + $filetomerge_dir = $conf->product->multidir_output[$entity_product_file] . '/' . get_exdir($product->id,2,0,0,$product,'product') . $product->id ."/photos"; + } elseif (! empty($conf->service->enabled)) { + $filetomerge_dir = $conf->service->multidir_output[$entity_product_file] . '/' . get_exdir($product->id,2,0,0,$product,'product') . $product->id ."/photos"; + } + } + else + { + if (! empty($conf->product->enabled)) { + $filetomerge_dir = $conf->product->multidir_output[$entity_product_file] . '/' . get_exdir(0,0,0,0,$product,'product') . dol_sanitizeFileName($product->ref); + } elseif (! empty($conf->service->enabled)) { + $filetomerge_dir = $conf->service->multidir_output[$entity_product_file] . '/' . get_exdir(0,0,0,0,$product,'product') . dol_sanitizeFileName($product->ref); + } + } + + dol_syslog(get_class($this) . ':: upload_dir=' . $filetomerge_dir, LOG_DEBUG); + + $infile = $filetomerge_dir . '/' . $linefile->file_name; + if (file_exists($infile) && is_readable($infile)) { + $pagecount = $pdf->setSourceFile($infile); + for($i = 1; $i <= $pagecount; $i ++) { + $tplIdx = $pdf->importPage($i); + if ($tplIdx!==false) { + $s = $pdf->getTemplatesize($tplIdx); + $pdf->AddPage($s['h'] > $s['w'] ? 'P' : 'L'); + $pdf->useTemplate($tplIdx); + } else { + setEventMessages(null, array($infile.' cannot be added, probably protected PDF'),'warnings'); + } + } + } + } + } + } + } + } + } + + $pdf->Close(); + + $pdf->Output($file,'F'); + + //Add pdfgeneration hook + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('afterPDFCreation',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + $this->result = array('fullpath'=>$file); + + return 1; // Pas d'erreur + } + else + { + $this->error=$langs->trans("ErrorCanNotCreateDir",$dir); + return 0; + } + } + else + { + $this->error=$langs->trans("ErrorConstantNotDefined","PROP_OUTPUTDIR"); + return 0; + } + } + + /** + * Show payments table + * + * @param TCPDF $pdf Object PDF + * @param Object $object Object proposal + * @param int $posy Position y in PDF + * @param Translate $outputlangs Object langs for output + * @return int <0 if KO, >0 if OK + */ + function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + { + + } + + + /** + * Show miscellaneous information (payment mode, payment term, ...) + * + * @param TCPDF $pdf Object PDF + * @param Object $object Object to show + * @param int $posy Y + * @param Translate $outputlangs Langs object + * @return void + */ + function _tableau_info(&$pdf, $object, $posy, $outputlangs) + { + global $conf; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $pdf->SetFont('','', $default_font_size - 1); + + // If France, show VAT mention if not applicable + if ($this->emetteur->country_code == 'FR' && $this->franchise == 1) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("VATIsNotUsedForInvoice"), 0, 'L', 0); + + $posy=$pdf->GetY()+4; + } + + $posxval=52; + + // Show shipping date + if (! empty($object->date_livraison)) + { + $outputlangs->load("sendings"); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("DateDeliveryPlanned").':'; + $pdf->MultiCell(80, 4, $titre, 0, 'L'); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $dlp=dol_print_date($object->date_livraison,"daytext",false,$outputlangs,true); + $pdf->MultiCell(80, 4, $dlp, 0, 'L'); + + $posy=$pdf->GetY()+1; + } + elseif ($object->availability_code || $object->availability) // Show availability conditions + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("AvailabilityPeriod").':'; + $pdf->MultiCell(80, 4, $titre, 0, 'L'); + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_availability=$outputlangs->transnoentities("AvailabilityType".$object->availability_code)!=('AvailabilityType'.$object->availability_code)?$outputlangs->transnoentities("AvailabilityType".$object->availability_code):$outputlangs->convToOutputCharset($object->availability); + $lib_availability=str_replace('\n',"\n",$lib_availability); + $pdf->MultiCell(80, 4, $lib_availability, 0, 'L'); + + $posy=$pdf->GetY()+1; + } + + // Show payments conditions + if (empty($conf->global->PROPALE_PDF_HIDE_PAYMENTTERMCOND) && ($object->cond_reglement_code || $object->cond_reglement)) + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentConditions").':'; + $pdf->MultiCell(43, 4, $titre, 0, 'L'); + + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_condition_paiement=$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code)!=('PaymentCondition'.$object->cond_reglement_code)?$outputlangs->transnoentities("PaymentCondition".$object->cond_reglement_code):$outputlangs->convToOutputCharset($object->cond_reglement_doc); + $lib_condition_paiement=str_replace('\n',"\n",$lib_condition_paiement); + $pdf->MultiCell(67, 4, $lib_condition_paiement,0,'L'); + + $posy=$pdf->GetY()+3; + } + + if (empty($conf->global->PROPALE_PDF_HIDE_PAYMENTTERMMODE)) + { + // Check a payment mode is defined + /* Not required on a proposal + if (empty($object->mode_reglement_code) + && ! $conf->global->FACTURE_CHQ_NUMBER + && ! $conf->global->FACTURE_RIB_NUMBER) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->MultiCell(90, 3, $outputlangs->transnoentities("ErrorNoPaiementModeConfigured"),0,'L',0); + $pdf->SetTextColor(0,0,0); + + $posy=$pdf->GetY()+1; + } + */ + + // Show payment mode + if ($object->mode_reglement_code + && $object->mode_reglement_code != 'CHQ' + && $object->mode_reglement_code != 'VIR') + { + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->SetXY($this->marge_gauche, $posy); + $titre = $outputlangs->transnoentities("PaymentMode").':'; + $pdf->MultiCell(80, 5, $titre, 0, 'L'); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posxval, $posy); + $lib_mode_reg=$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code)!=('PaymentType'.$object->mode_reglement_code)?$outputlangs->transnoentities("PaymentType".$object->mode_reglement_code):$outputlangs->convToOutputCharset($object->mode_reglement); + $pdf->MultiCell(80, 5, $lib_mode_reg,0,'L'); + + $posy=$pdf->GetY()+2; + } + + // Show payment mode CHQ + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'CHQ') + { + // Si mode reglement non force ou si force a CHQ + if (! empty($conf->global->FACTURE_CHQ_NUMBER)) + { + $diffsizetitle=(empty($conf->global->PDF_DIFFSIZE_TITLE)?3:$conf->global->PDF_DIFFSIZE_TITLE); + + if ($conf->global->FACTURE_CHQ_NUMBER > 0) + { + $account = new Account($this->db); + $account->fetch($conf->global->FACTURE_CHQ_NUMBER); + + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$account->proprio),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($account->owner_address), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + if ($conf->global->FACTURE_CHQ_NUMBER == -1) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$this->emetteur->name),0,'L',0); + $posy=$pdf->GetY()+1; + + if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) + { + $pdf->SetXY($this->marge_gauche, $posy); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); + $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($this->emetteur->getFullAddress()), 0, 'L', 0); + $posy=$pdf->GetY()+2; + } + } + } + } + + // If payment mode not forced or forced to VIR, show payment with BAN + if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'VIR') + { + if (! empty($object->fk_account) || ! empty($object->fk_bank) || ! empty($conf->global->FACTURE_RIB_NUMBER)) + { + $bankid=(empty($object->fk_account)?$conf->global->FACTURE_RIB_NUMBER:$object->fk_account); + if (! empty($object->fk_bank)) $bankid=$object->fk_bank; // For backward compatibility when object->fk_account is forced with object->fk_bank + $account = new Account($this->db); + $account->fetch($bankid); + + $curx=$this->marge_gauche; + $cury=$posy; + + $posy=pdf_bank($pdf,$outputlangs,$curx,$cury,$account,0,$default_font_size); + + $posy+=2; + } + } + } + + return $posy; + } + + + /** + * Show total to pay + * + * @param PDF $pdf Object PDF + * @param Facture $object Object invoice + * @param int $deja_regle Montant deja regle + * @param int $posy Position depart + * @param Translate $outputlangs Objet langs + * @return int Position pour suite + */ + function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + { + global $conf,$mysoc; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $tab2_top = $posy; + $tab2_hl = 4; + $pdf->SetFont('','', $default_font_size - 1); + + // Tableau total + $col1x = 120; $col2x = 170; + if ($this->page_largeur < 210) // To work with US executive format + { + $col2x-=20; + } + $largcol2 = ($this->page_largeur - $this->marge_droite - $col2x); + + $useborder=0; + $index = 0; + + // Total HT + $pdf->SetFillColor(255,255,255); + $pdf->SetXY($col1x, $tab2_top + 0); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1); + + $total_ht = ($conf->multicurrency->enabled && $object->mylticurrency_tx != 1 ? $object->multicurrency_total_ht : $object->total_ht); + $pdf->SetXY($col2x, $tab2_top + 0); + $pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (! empty($object->remise)?$object->remise:0), 0, $outputlangs), 0, 'R', 1); + + // Show VAT by rates and total + $pdf->SetFillColor(248,248,248); + + $total_ttc = ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc; + + $this->atleastoneratenotnull=0; + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) + { + $tvaisnull=((! empty($this->tva) && count($this->tva) == 1 && isset($this->tva['0.000']) && is_float($this->tva['0.000'])) ? true : false); + if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_IFNULL) && $tvaisnull) + { + // Nothing to do + } + else + { + //Local tax 1 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 before VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('1','3','5'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey!=0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' '; + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + + } + } + } + //} + // VAT + foreach($this->tva as $tvakey => $tvaval) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + $this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat =$outputlangs->transcountrynoentities("TotalVAT",$mysoc->country_code).' '; + $totalvat.=vatrate($tvakey,1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + + //Local tax 1 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + foreach( $this->localtax1 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + //Local tax 2 after VAT + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + foreach( $this->localtax2 as $localtax_type => $localtax_rate ) + { + if (in_array((string) $localtax_type, array('2','4','6'))) continue; + + foreach( $localtax_rate as $tvakey => $tvaval ) + { + // retrieve global local tax + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + + $totalvat.=vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); + } + } + } + //} + + // Total TTC + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc, 0, $outputlangs), $useborder, 'R', 1); + } + } + + $pdf->SetTextColor(0,0,0); + + /* + $resteapayer = $object->total_ttc - $deja_regle; + if (! empty($object->paye)) $resteapayer=0; + */ + + if ($deja_regle > 0) + { + $index++; + + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("AlreadyPaid"), 0, 'L', 0); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($deja_regle, 0, $outputlangs), 0, 'R', 0); + + /* + if ($object->close_code == 'discount_vat') + { + $index++; + $pdf->SetFillColor(255,255,255); + + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("EscompteOfferedShort"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc - $deja_regle, 0, $outputlangs), $useborder, 'R', 1); + + $resteapayer=0; + } + */ + + $index++; + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RemainderToPay"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($resteapayer, 0, $outputlangs), $useborder, 'R', 1); + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetTextColor(0,0,0); + } + + $index++; + return ($tab2_top + ($tab2_hl * $index)); + } + + /** + * Show table for lines + * + * @param PDF $pdf Object PDF + * @param string $tab_top Top position of table + * @param string $tab_height Height of table (rectangle) + * @param int $nexY Y (not used) + * @param Translate $outputlangs Langs object + * @param int $hidetop 1=Hide top bar of array and title, 0=Hide nothing, -1=Hide only title + * @param int $hidebottom Hide bottom bar of array + * @param string $currency Currency code + * @return void + */ + function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0, $currency='') + { + global $conf; + + // Force to disable hidetop and hidebottom + $hidebottom=0; + if ($hidetop) $hidetop=-1; + + $currency = !empty($currency) ? $currency : $conf->currency; + $default_font_size = pdf_getPDFFontSize($outputlangs); + + // Amount in (at tab_top - 1) + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + + if (empty($hidetop)) + { + $titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$currency)); + $pdf->SetXY($this->page_largeur - $this->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4); + $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); + + //$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR='230,230,230'; + if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_droite-$this->marge_gauche, 5, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)); + } + + $pdf->SetDrawColor(128,128,128); + $pdf->SetFont('','', $default_font_size - 1); + + // Output Rect + $this->printRect($pdf,$this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height, $hidetop, $hidebottom); // Rect prend une longueur en 3eme param et 4eme param + + + foreach ($this->cols as $colKey => $colDef) + { + if(!$this->getColumnStatus($colKey)) continue; + + // get title label + $colDef['title']['label'] = !empty($colDef['title']['label'])?$colDef['title']['label']:$outputlangs->transnoentities($colDef['title']['textkey']); + + // Add column separator + if(!empty($colDef['border-left'])){ + $pdf->line($colDef['xStartPos'], $tab_top, $colDef['xStartPos'], $tab_top + $tab_height); + } + + if (empty($hidetop)) + { + $pdf->SetXY($colDef['xStartPos'] + $colDef['title']['padding'][3], $tab_top + $colDef['title']['padding'][0] ); + + $textWidth = $colDef['width'] - $colDef['title']['padding'][3] -$colDef['title']['padding'][1]; + $pdf->MultiCell($textWidth,2,$colDef['title']['label'],'',$colDef['title']['align']); + } + } + + if (empty($hidetop)){ + $pdf->line($this->marge_gauche, $tab_top+5, $this->page_largeur-$this->marge_droite, $tab_top+5); // line prend une position y en 2eme param et 4eme param + } + + + } + + /** + * Show top header of page. + * + * @param PDF $pdf Object PDF + * @param Object $object Object to show + * @param int $showaddress 0=no, 1=yes + * @param Translate $outputlangs Object lang for output + * @return void + */ + function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + { + global $conf,$langs; + + $outputlangs->load("main"); + $outputlangs->load("bills"); + $outputlangs->load("propal"); + $outputlangs->load("companies"); + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + pdf_pagehead($pdf,$outputlangs,$this->page_hauteur); + + // Show Draft Watermark + if($object->statut==0 && (! empty($conf->global->PROPALE_DRAFT_WATERMARK)) ) + { + pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->PROPALE_DRAFT_WATERMARK); + } + + $pdf->SetTextColor(0,0,60); + $pdf->SetFont('','B', $default_font_size + 3); + + $posy=$this->marge_haute; + $posx=$this->page_largeur-$this->marge_droite-100; + + $pdf->SetXY($this->marge_gauche,$posy); + + // Logo + $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + if ($this->emetteur->logo) + { + if (is_readable($logo)) + { + $height=pdf_getHeightForLogo($logo); + $pdf->Image($logo, $this->marge_gauche, $posy, 0, $height); // width=0 (auto) + } + else + { + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B',$default_font_size - 2); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L'); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorGoToGlobalSetup"), 0, 'L'); + } + } + else + { + $text=$this->emetteur->name; + $pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L'); + } + + $pdf->SetFont('','B',$default_font_size + 3); + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $title=$outputlangs->transnoentities("PdfCommercialProposalTitle"); + $pdf->MultiCell(100, 4, $title, '', 'R'); + + $pdf->SetFont('','B',$default_font_size); + + $posy+=5; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 4, $outputlangs->transnoentities("Ref")." : " . $outputlangs->convToOutputCharset($object->ref), '', 'R'); + + $posy+=1; + $pdf->SetFont('','', $default_font_size - 2); + + if ($object->ref_client) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("RefCustomer")." : " . $outputlangs->convToOutputCharset($object->ref_client), '', 'R'); + } + + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("Date")." : " . dol_print_date($object->date,"day",false,$outputlangs,true), '', 'R'); + + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("DateEndPropal")." : " . dol_print_date($object->fin_validite,"day",false,$outputlangs,true), '', 'R'); + + if ($object->thirdparty->code_client) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("CustomerCode")." : " . $outputlangs->transnoentities($object->thirdparty->code_client), '', 'R'); + } + + // Get contact + if (!empty($conf->global->DOC_SHOW_FIRST_SALES_REP)) + { + $arrayidcontact=$object->getIdContact('internal','SALESREPFOLL'); + if (count($arrayidcontact) > 0) + { + $usertmp=new User($this->db); + $usertmp->fetch($arrayidcontact[0]); + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $langs->trans("SalesRepresentative")." : ".$usertmp->getFullName($langs), '', 'R'); + } + } + + $posy+=2; + + $top_shift = 0; + // Show list of linked objects + $current_y = $pdf->getY(); + $posy = pdf_writeLinkedObjects($pdf, $object, $outputlangs, $posx, $posy, 100, 3, 'R', $default_font_size); + if ($current_y < $pdf->getY()) + { + $top_shift = $pdf->getY() - $current_y; + } + + if ($showaddress) + { + // Sender properties + $carac_emetteur=''; + // Add internal contact of proposal if defined + $arrayidcontact=$object->getIdContact('internal','SALESREPFOLL'); + if (count($arrayidcontact) > 0) + { + $object->fetch_user($arrayidcontact[0]); + $labelbeforecontactname=($outputlangs->transnoentities("FromContactName")!='FromContactName'?$outputlangs->transnoentities("FromContactName"):$outputlangs->transnoentities("Name")); + $carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$labelbeforecontactname." ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n"; + } + + $carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->thirdparty, '', 0, 'source', $object); + + // Show sender + $posy=42+$top_shift; + $posx=$this->marge_gauche; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80; + $hautcadre=40; + + // Show sender frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx,$posy-5); + $pdf->MultiCell(66,5, $outputlangs->transnoentities("BillFrom").":", 0, 'L'); + $pdf->SetXY($posx,$posy); + $pdf->SetFillColor(230,230,230); + $pdf->MultiCell(82, $hautcadre, "", 0, 'R', 1); + $pdf->SetTextColor(0,0,60); + + // Show sender name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); + $posy=$pdf->getY(); + + // Show sender information + $pdf->SetXY($posx+2,$posy); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(80, 4, $carac_emetteur, 0, 'L'); + + + // If CUSTOMER contact defined, we use it + $usecontact=false; + $arrayidcontact=$object->getIdContact('external','CUSTOMER'); + if (count($arrayidcontact) > 0) + { + $usecontact=true; + $result=$object->fetch_contact($arrayidcontact[0]); + } + + //Recipient name + // On peut utiliser le nom de la societe du contact + if ($usecontact && !empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) { + $thirdparty = $object->contact; + } else { + $thirdparty = $object->thirdparty; + } + + $carac_client_name= pdfBuildThirdpartyName($thirdparty, $outputlangs); + + $carac_client=pdf_build_address($outputlangs,$this->emetteur,$object->thirdparty,($usecontact?$object->contact:''),$usecontact,'target',$object); + + // Show recipient + $widthrecbox=100; + if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format + $posy=42+$top_shift; + $posx=$this->page_largeur-$this->marge_droite-$widthrecbox; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche; + + // Show recipient frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx+2,$posy-5); + $pdf->MultiCell($widthrecbox, 5, $outputlangs->transnoentities("BillTo").":", 0, 'L'); + $pdf->Rect($posx, $posy, $widthrecbox, $hautcadre); + + // Show recipient name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + + $posy = $pdf->getY(); + + // Show recipient information + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($posx+2,$posy); + $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); + } + + $pdf->SetTextColor(0,0,0); + return $top_shift; + } + + /** + * Show footer of page. Need this->emetteur object + * + * @param PDF $pdf PDF + * @param Object $object Object to show + * @param Translate $outputlangs Object lang for output + * @param int $hidefreetext 1=Hide free text + * @return int Return height of bottom margin including footer text + */ + function _pagefoot(&$pdf,$object,$outputlangs,$hidefreetext=0) + { + global $conf; + $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; + return pdf_pagefoot($pdf,$outputlangs,'PROPOSAL_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + } + + /** + * Show area for the customer to sign + * + * @param PDF $pdf Object PDF + * @param Facture $object Object invoice + * @param int $posy Position depart + * @param Translate $outputlangs Objet langs + * @return int Position pour suite + */ + function _signature_area(&$pdf, $object, $posy, $outputlangs) + { + global $conf; + $default_font_size = pdf_getPDFFontSize($outputlangs); + $tab_top = $posy + 4; + $tab_hl = 4; + + $posx = 120; + $largcol = ($this->page_largeur - $this->marge_droite - $posx); + $useborder=0; + $index = 0; + // Total HT + $pdf->SetFillColor(255,255,255); + $pdf->SetXY($posx, $tab_top + 0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->MultiCell($largcol, $tab_hl, $outputlangs->transnoentities("ProposalCustomerSignature"), 0, 'L', 1); + + $pdf->SetXY($posx, $tab_top + $tab_hl); + $pdf->MultiCell($largcol, $tab_hl*3, '', 1, 'R'); + if (! empty($conf->global->MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING)) { + $pdf->addEmptySignatureAppearance($posx, $tab_top + $tab_hl, $largcol, $tab_hl*3); + } + + return ($tab_hl*7); + } + + + /** + * Define Array Column Field + * + * @param object $object common object + * @param outputlangs $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return null + */ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + + global $conf, $hookmanager; + + // Default field style for content + $this->defaultContentsFieldsStyle = array( + 'align' => 'R', // R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + // Default field style for content + $this->defaultTitlesFieldsStyle = array( + 'align' => 'C', // R,C,L + 'padding' => array(0.5,0,0.5,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ); + + /* + * For exemple + $this->cols['theColKey'] = array( + 'rank' => $rank, // int : use for ordering columns + 'width' => 20, // the column width in mm + 'title' => array( + 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + 'label' => ' ', // the final label : used fore final generated text + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', // text alignement : R,C,L + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + ); + */ + + $rank=0; // do not use negative rank + $this->cols['desc'] = array( + 'rank' => $rank, + 'width' => false, // only for desc + 'status' => true, + 'title' => array( + 'textkey' => 'Designation', // use lang key is usefull in somme case with module + 'align' => 'L', + // 'textkey' => 'yourLangKey', // if there is no label, yourLangKey will be translated to replace label + // 'label' => ' ', // the final label + 'padding' => array(0.5,0.5,0.5,0.5), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'content' => array( + 'align' => 'L', + ), + ); + + $rank = $rank + 10; + $this->cols['photo'] = array( + 'rank' => $rank, + 'width' => (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?20:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH), // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Photo', + 'label' => ' ' + ), + 'content' => array( + 'padding' => array(0,0,0,0), // Like css 0 => top , 1 => right, 2 => bottom, 3 => left + ), + 'border-left' => false, // remove left line separator + ); + + if (! empty($conf->global->MAIN_GENERATE_PROPOSALS_WITH_PICTURE) && !empty($this->atleastonephoto)) + { + $this->cols['photo']['status'] = true; + } + + + $rank = $rank + 10; + $this->cols['vat'] = array( + 'rank' => $rank, + 'status' => false, + 'width' => 16, // in mm + 'title' => array( + 'textkey' => 'VAT' + ), + 'border-left' => true, // add left line separator + ); + + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) && empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT_COLUMN)) + { + $this->cols['vat']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['subprice'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'PriceUHT' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['qty'] = array( + 'rank' => $rank, + 'width' => 16, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'Qty' + ), + 'border-left' => true, // add left line separator + ); + + $rank = $rank + 10; + $this->cols['progress'] = array( + 'rank' => $rank, + 'width' => 19, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Progress' + ), + 'border-left' => false, // add left line separator + ); + + if($this->situationinvoice) + { + $this->cols['progress']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['unit'] = array( + 'rank' => $rank, + 'width' => 11, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'Unit' + ), + 'border-left' => true, // add left line separator + ); + if($conf->global->PRODUCT_USE_UNITS){ + $this->cols['unit']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['discount'] = array( + 'rank' => $rank, + 'width' => 13, // in mm + 'status' => false, + 'title' => array( + 'textkey' => 'ReductionShort' + ), + 'border-left' => true, // add left line separator + ); + if ($this->atleastonediscount){ + $this->cols['discount']['status'] = true; + } + + $rank = $rank + 10; + $this->cols['totalexcltax'] = array( + 'rank' => $rank, + 'width' => 26, // in mm + 'status' => true, + 'title' => array( + 'textkey' => 'TotalHT' + ), + 'border-left' => true, // add left line separator + ); + + + $parameters=array( + 'object' => $object, + 'outputlangs' => $outputlangs, + 'hidedetails' => $hidedetails, + 'hidedesc' => $hidedesc, + 'hideref' => $hideref + ); + + $reshook=$hookmanager->executeHooks('defineColumnField',$parameters,$this); // Note that $object may have been modified by hook + if ($reshook < 0) + { + setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + } + elseif (empty($reshook)) + { + $this->cols = array_replace($this->cols, $hookmanager->resArray); // array_replace is used to preserve keys + } + else + { + $this->cols = $hookmanager->resArray; + } + + } + +} diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index d06b1512cc6..3b60256c3ef 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -486,7 +486,8 @@ RevenueStamp=Revenue stamp YouMustCreateInvoiceFromThird=This option is only available when creating invoice from tab "customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating invoice from tab "supplier" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (recommended Template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (deprecated Template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template (recommended Template) PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 diff --git a/htdocs/langs/en_US/orders.lang b/htdocs/langs/en_US/orders.lang index 06191d9f7b7..30fb0aa1320 100644 --- a/htdocs/langs/en_US/orders.lang +++ b/htdocs/langs/en_US/orders.lang @@ -140,7 +140,8 @@ OrderByEMail=EMail OrderByWWW=Online OrderByPhone=Phone # Documents models -PDFEinsteinDescription=A complete order model (logo...) +PDFEinsteinDescription=A complete order model (logo...)(deprecated Template) +PDFEratostheneDescription=A complete order model (logo...)(recommended Template) PDFEdisonDescription=A simple order model PDFProformaDescription=A complete proforma invoice (logo…) CreateInvoiceForThisCustomer=Bill orders diff --git a/htdocs/langs/en_US/propal.lang b/htdocs/langs/en_US/propal.lang index 5a7169ac925..55fb6372d74 100644 --- a/htdocs/langs/en_US/propal.lang +++ b/htdocs/langs/en_US/propal.lang @@ -77,7 +77,8 @@ TypeContact_propal_external_BILLING=Customer invoice contact TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal TypeContact_propal_external_SHIPPING=Customer contact for delivery # Document models -DocModelAzurDescription=A complete proposal model (logo...) +DocModelAzurDescription=A complete proposal model (logo...)(deprecated Template) +DocModelCyanDescription=A complete proposal model (logo...)(recommended Template) DefaultModelPropalCreate=Default model creation DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) From 59220c05e4070efc304a03bde1d61277eab66b49 Mon Sep 17 00:00:00 2001 From: ATM-Nicolas Date: Thu, 5 Jul 2018 11:18:28 +0200 Subject: [PATCH 004/769] FIX : Select first mail model by default --- htdocs/core/class/html.formmail.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 2fd38d097c0..0e2f9176492 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -299,7 +299,7 @@ class FormMail extends Form { $model_id=$this->param["models_id"]; } - $arraydefaultmessage=$this->getEMailTemplate($this->db, $this->param["models"], $user, $outputlangs, ($model_id ? $model_id : -1)); // we set -1 if model_id empty + $arraydefaultmessage=$this->getEMailTemplate($this->db, $this->param["models"], $user, $outputlangs, $model_id); // If $model_id is empty, preselect the first one } //var_dump($this->param["models"]); //var_dump($model_id); From 844333688bf503b2d5e22a74e244f4dc5f25ca11 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Thu, 6 Sep 2018 14:33:22 +0200 Subject: [PATCH 005/769] typo --- htdocs/compta/facture/class/facture.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index c6e43206c78..27462f3be59 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -206,7 +206,7 @@ class Facture extends CommonInvoice * If paid partially, $this->close_code can be: * - CLOSECODE_DISCOUNTVAT * - CLOSECODE_BADDEBT - * If paid completelly, this->close_code will be null + * If paid completely, this->close_code will be null */ const STATUS_CLOSED = 2; @@ -2362,7 +2362,7 @@ class Facture extends CommonInvoice } } - // Set new ref and define current statut + // Set new ref and define current status if (! $error) { $this->ref = $num; @@ -4827,7 +4827,7 @@ class FactureLigne extends CommonInvoiceLine if (is_null($this->fk_prev_id) || empty($this->fk_prev_id) || $this->fk_prev_id == "") { return 0; } else { - // If invoice is a not a situation invoice, this->fk_prev_id is used for something else + // If invoice is not a situation invoice, this->fk_prev_id is used for something else $tmpinvoice=new Facture($this->db); $tmpinvoice->fetch($invoiceid); if ($tmpinvoice->type != Facture::TYPE_SITUATION) return 0; From 477acb2e4c6267971ca11c7a36889b6c5adf0204 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Fri, 14 Sep 2018 09:48:15 +0200 Subject: [PATCH 006/769] change new PDF version --- htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php | 2 +- htdocs/core/modules/propale/doc/pdf_azur.modules.php | 2 +- htdocs/core/modules/propale/doc/pdf_cyan.modules.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 58129bea6e2..039f29fa379 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -76,7 +76,7 @@ class pdf_eratosthene extends ModelePDFCommandes * Dolibarr version of the loaded document * @public string */ - public $version = 'dolibarr'; + public $version = 'development'; public $page_largeur; public $page_hauteur; diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index 6e72e757fb6..e25abd5bc9e 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -47,7 +47,7 @@ class pdf_azur extends ModelePDFPropales var $type; var $phpmin = array(4,3,0); // Minimum version of PHP required by module - var $version = 'dolibarr'; + var $version = 'development'; var $page_largeur; var $page_hauteur; diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 383f34acebd..c9bce8b07a4 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -47,7 +47,7 @@ class pdf_cyan extends ModelePDFPropales var $type; var $phpmin = array(4,3,0); // Minimum version of PHP required by module - var $version = 'dolibarr'; + var $version = 'development'; var $page_largeur; var $page_hauteur; From d1321e5a7b21ad5fa83ed03b494384d72a7487e5 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Fri, 14 Sep 2018 09:54:39 +0200 Subject: [PATCH 007/769] change new PDF version --- htdocs/core/modules/facture/doc/pdf_sponge.modules.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index 72c2a5aaca6..74f4bf34acf 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -77,7 +77,7 @@ class pdf_sponge extends ModelePDFFactures * Dolibarr version of the loaded document * @public string */ - public $version = 'dolibarr'; + public $version = 'development'; public $page_largeur; public $page_hauteur; From b17c44c6653a49256640742364934e27b7b96ed1 Mon Sep 17 00:00:00 2001 From: wdammak <26695620+wdammak@users.noreply.github.com> Date: Sun, 16 Sep 2018 16:53:35 +0100 Subject: [PATCH 008/769] Update html.form.class.php Add the ability to sort products by category --- htdocs/core/class/html.form.class.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index df485ea0ede..dce2192d10d 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2013,6 +2013,7 @@ class Form $selectFields = " p.rowid, p.label, p.ref, p.description, p.barcode, p.fk_product_type, p.price, p.price_ttc, p.price_base_type, p.tva_tx, p.duration, p.fk_price_expression"; (count($warehouseStatusArray)) ? $selectFieldsGrouped = ", sum(ps.reel) as stock" : $selectFieldsGrouped = ", p.stock"; + $selectFields .= ", pcat.fk_categorie as categorie_product_id"; $sql = "SELECT "; $sql.= $selectFields . $selectFieldsGrouped; @@ -2063,6 +2064,8 @@ class Form if (!empty($conf->global->PRODUIT_ATTRIBUTES_HIDECHILD)) { $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination pac ON pac.fk_product_child = p.rowid"; } + //Product category + $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_product as pcat ON pcat.fk_product=p.rowid"; $sql.= ' WHERE p.entity IN ('.getEntity('product').')'; if (count($warehouseStatusArray)) @@ -2113,9 +2116,10 @@ class Form { $sql.= ' GROUP BY'.$selectFields; } - $sql.= $db->order("p.ref"); - $sql.= $db->plimit($limit, 0); - + + (! empty($conf->global->PRODUIT_SORT_BY_CATEGORY)) ? $sql.= $db->order("pcat.fk_categorie") : $sql.= $db->order("p.ref"); + $sql.= $db->plimit($limit, 0) + // Build output string dol_syslog(get_class($this)."::select_produits_list search product", LOG_DEBUG); $result=$this->db->query($sql); From 3fb2d4c159bb3dd62b143ca3ca9584bb25cb2849 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Tue, 18 Sep 2018 15:52:57 +0200 Subject: [PATCH 009/769] remove change on text --- htdocs/langs/en_US/bills.lang | 4 ++-- htdocs/langs/en_US/orders.lang | 4 ++-- htdocs/langs/en_US/propal.lang | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index ab2adf33441..95114c96446 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -488,8 +488,8 @@ RevenueStamp=Revenue stamp YouMustCreateInvoiceFromThird=This option is only available when creating invoice from tab "customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating invoice from tab "supplier" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (deprecated Template) -PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template (recommended Template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (recommended Template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 diff --git a/htdocs/langs/en_US/orders.lang b/htdocs/langs/en_US/orders.lang index 1d286cc5ebd..77d2eda19a3 100644 --- a/htdocs/langs/en_US/orders.lang +++ b/htdocs/langs/en_US/orders.lang @@ -140,8 +140,8 @@ OrderByEMail=EMail OrderByWWW=Online OrderByPhone=Phone # Documents models -PDFEinsteinDescription=A complete order model (logo...)(deprecated Template) -PDFEratostheneDescription=A complete order model (logo...)(recommended Template) +PDFEinsteinDescription=A complete order model (logo...) +PDFEratostheneDescription=A complete order model (logo...) PDFEdisonDescription=A simple order model PDFProformaDescription=A complete proforma invoice (logo…) CreateInvoiceForThisCustomer=Bill orders diff --git a/htdocs/langs/en_US/propal.lang b/htdocs/langs/en_US/propal.lang index 44157780ce7..f336daa242d 100644 --- a/htdocs/langs/en_US/propal.lang +++ b/htdocs/langs/en_US/propal.lang @@ -77,8 +77,8 @@ TypeContact_propal_external_BILLING=Customer invoice contact TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal TypeContact_propal_external_SHIPPING=Customer contact for delivery # Document models -DocModelAzurDescription=A complete proposal model (logo...)(deprecated Template) -DocModelCyanDescription=A complete proposal model (logo...)(recommended Template) +DocModelAzurDescription=A complete proposal model (logo...) +DocModelCyanDescription=A complete proposal model (logo...) DefaultModelPropalCreate=Default model creation DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) From 23e4cd57f33f8575f2a52912569063e091ae9c7e Mon Sep 17 00:00:00 2001 From: atm-ph Date: Fri, 12 Oct 2018 23:27:38 +0200 Subject: [PATCH 010/769] Fix warnings PHP7 --- htdocs/product/reassort.php | 1 + htdocs/product/reassortlot.php | 1 + htdocs/product/stock/productlot_list.php | 3 ++- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 70dce7470cd..b1b612d1a39 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -54,6 +54,7 @@ $fourn_id = GETPOST("fourn_id",'int'); $sortfield = GETPOST("sortfield",'alpha'); $sortorder = GETPOST("sortorder",'alpha'); $page = GETPOST("page",'int'); +if (empty($page) || $page < 0) $page = 0; if (! $sortfield) $sortfield="p.ref"; if (! $sortorder) $sortorder="ASC"; $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index 490986b155e..e1b6c82c8f3 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -58,6 +58,7 @@ $fourn_id = GETPOST("fourn_id",'int'); $sortfield = GETPOST("sortfield",'alpha'); $sortorder = GETPOST("sortorder",'alpha'); $page = GETPOST("page",'int'); +if (empty($page) || $page < 0) $page = 0; if (! $sortfield) $sortfield="p.ref"; if (! $sortorder) $sortorder="ASC"; $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; diff --git a/htdocs/product/stock/productlot_list.php b/htdocs/product/stock/productlot_list.php index 325ddd5f796..8e5e5d925e9 100644 --- a/htdocs/product/stock/productlot_list.php +++ b/htdocs/product/stock/productlot_list.php @@ -47,6 +47,7 @@ $id = GETPOST('id','int'); $action = GETPOST('action','alpha'); $backtopage = GETPOST('backtopage'); $myparam = GETPOST('myparam','alpha'); +$toselect = GETPOST('toselect', 'array'); $search_entity=GETPOST('search_entity','int'); @@ -152,7 +153,7 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $search_import_key=''; $search_date_creation=''; $search_date_update=''; - $toselect=''; + $toselect=array(); $search_array_options=array(); } From 7b17b453bf38b0864cb7772effd1e1f25ef9026b Mon Sep 17 00:00:00 2001 From: atm-ph Date: Fri, 12 Oct 2018 23:29:35 +0200 Subject: [PATCH 011/769] Fix sort and switch page --- htdocs/product/reassort.php | 35 ++++++++++++++------------- htdocs/product/reassortlot.php | 43 +++++++++++++++++++--------------- 2 files changed, 43 insertions(+), 35 deletions(-) diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index b1b612d1a39..fe087fd16a3 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -92,11 +92,15 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $sref=""; $snom=""; $sall=""; + $tosell=""; + $tobuy=""; $search_sale=""; $search_categ=""; $type=""; $catid=''; $toolowstock=''; + $fourn_id=''; + $sbarcode=''; } @@ -183,6 +187,20 @@ if ($resql) } $texte.=' ('.$langs->trans("Stocks").')'; + $param=''; + if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; + if ($sall) $param.="&sall=".$sall; + if ($tosell) $param.="&tosell=".$tosell; + if ($tobuy) $param.="&tobuy=".$tobuy; + if ($type) $param.="&type=".$type; + if ($fourn_id) $param.="&fourn_id=".$fourn_id; + if ($snom) $param.="&snom=".$snom; + if ($sref) $param.="&sref=".$sref; + if ($search_sale) $param.="&search_sale=".$search_sale; + if ($search_categ) $param.="&search_categ=".$search_categ; + if ($toolowstock) $param.="&toolowstock=".$toolowstock; + if ($sbarcode) $param.="&sbarcode=".$sbarcode; + if ($catid) $param.="&catid=".$catid; llxHeader("", $texte, $helpurl); @@ -193,14 +211,7 @@ if ($resql) print ''; print ''; - if ($sref || $snom || $sall || GETPOST('search')) - { - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], "&sref=".$sref."&snom=".$snom."&sall=".$sall."&tosell=".$tosell."&tobuy=".$tobuy.(!empty($search_categ) ? '&search_categ='.$search_categ : '').(!empty($toolowstock) ? '&toolowstock='.$toolowstock : ''), $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); - } - else - { - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], "&sref=$sref&snom=$snom&fourn_id=$fourn_id".(isset($type)?"&type=$type":"").(!empty($search_categ) ? '&search_categ='.$search_categ : '').(!empty($toolowstock) ? '&toolowstock='.$toolowstock : ''), $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); - } + print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); if (! empty($catid)) { @@ -236,14 +247,6 @@ if ($resql) print ''; } - $param=''; - if ($tosell) $param.="&tosell=".$tosell; - if ($tobuy) $param.="&tobuy=".$tobuy; - if ($type) $param.="&type=".$type; - if ($fourn_id) $param.="&fourn_id=".$fourn_id; - if ($snom) $param.="&snom=".$snom; - if ($sref) $param.="&sref=".$sref; - $formProduct = new FormProduct($db); $formProduct->loadWarehouses(); $warehouses_list = $formProduct->cache_warehouses; diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index e1b6c82c8f3..7cedbcd3981 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -89,6 +89,8 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $sref=""; $snom=""; $sall=""; + $tosell=""; + $tobuy=""; $search_sale=""; $search_categ=""; $type=""; @@ -96,6 +98,8 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $toolowstock=''; $search_batch=''; $search_warehouse=''; + $fourn_id=''; + $sbarcode=''; } @@ -194,6 +198,24 @@ if ($resql) } $texte.=' ('.$langs->trans("StocksByLotSerial").')'; + $param=''; + if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; + if ($sall) $param.="&sall=".$sall; + if ($tosell) $param.="&tosell=".$tosell; + if ($tobuy) $param.="&tobuy=".$tobuy; + if ($type) $param.="&type=".$type; + if ($fourn_id) $param.="&fourn_id=".$fourn_id; + if ($snom) $param.="&snom=".$snom; + if ($sref) $param.="&sref=".$sref; + if ($search_batch) $param.="&search_batch=".$search_batch; + if ($sbarcode) $param.="&sbarcode=".$sbarcode; + if ($search_warehouse) $param.="&search_warehouse=".$search_warehouse; + if ($catid) $param.="&catid=".$catid; + if ($toolowstock) $param.="&toolowstock=".$toolowstock; + if ($search_sale) $param.="&search_sale=".$search_sale; + if ($search_categ) $param.="&search_categ=".$search_categ; + /*if ($eatby) $param.="&eatby=".$eatby; + if ($sellby) $param.="&sellby=".$sellby;*/ llxHeader("",$title,$helpurl,$texte); @@ -204,14 +226,8 @@ if ($resql) print ''; print ''; - if ($sref || $snom || $sall || GETPOST('search')) - { - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], "&sref=".$sref."&snom=".$snom."&sall=".$sall."&tosell=".$tosell."&tobuy=".$tobuy, $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); - } - else - { - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], "&sref=$sref&snom=$snom&fourn_id=$fourn_id".(isset($type)?"&type=$type":""), $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); - } + print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder,'',$num, $nbtotalofrecords, 'title_products', 0, '', '', $limit); + if (! empty($catid)) { @@ -245,17 +261,6 @@ if ($resql) } - $param=''; - if ($tosell) $param.="&tosell=".$tosell; - if ($tobuy) $param.="&tobuy=".$tobuy; - if ($type) $param.="&type=".$type; - if ($fourn_id) $param.="&fourn_id=".$fourn_id; - if ($snom) $param.="&snom=".$snom; - if ($sref) $param.="&sref=".$sref; - if ($search_batch) $param.="&search_batch=".$search_batch; - /*if ($eatby) $param.="&eatby=".$eatby; - if ($sellby) $param.="&sellby=".$sellby;*/ - print '
'; print ''; From 1f1a614b47d7a0e8a37f496920a2f15f2ab8a189 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sun, 14 Oct 2018 10:21:06 +0200 Subject: [PATCH 012/769] Update import.lib.php --- htdocs/core/lib/import.lib.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/htdocs/core/lib/import.lib.php b/htdocs/core/lib/import.lib.php index 89847d69c11..ea700c38845 100644 --- a/htdocs/core/lib/import.lib.php +++ b/htdocs/core/lib/import.lib.php @@ -1,8 +1,9 @@ - * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2010 Regis Houssin - * Copyright (C) 2010 Juanjo Menent +/* Copyright (C) 2006-2009 Laurent Destailleur + * Copyright (C) 2007 Rodolphe Quiedeville + * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Juanjo Menent + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,10 +21,9 @@ */ /** - * \file htdocs/core/lib/order.lib.php - * \brief Ensemble de fonctions de base pour le module commande - * \ingroup commande - */ + * \file htdocs/core/lib/import.lib.php + * \brief Ensemble de fonctions de base pour le module import + * \ingroup import /** * Function to return list of tabs for import pages From 70a98743e807a819fc8ec01fa92e5085f2d082c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sun, 14 Oct 2018 10:48:06 +0200 Subject: [PATCH 013/769] Update functions.lib.php --- htdocs/core/lib/functions.lib.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 9cbd8562949..cff0ef2b8ef 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -13,6 +13,7 @@ * Copyright (C) 2014 Cédric GROSS * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -5975,11 +5976,12 @@ function complete_head_from_modules($conf,$langs,$object,&$head,&$h,$type,$mode= // No need to make a return $head. Var is modified as a reference if (! empty($hookmanager)) { - $parameters=array('object' => $object, 'mode' => $mode, 'head'=>$head); - $reshook=$hookmanager->executeHooks('completeTabsHead',$parameters); + $parameters=array('object' => $object, 'mode' => $mode, 'head' => $head); + $reshook=$hookmanager->executeHooks('completeTabsHead', $parameters); if ($reshook > 0) { $head = $hookmanager->resArray; + $h = count($head); } } } From 787658ac98fcab578d70b69a2a64aff20f4f8015 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sun, 14 Oct 2018 10:56:03 +0200 Subject: [PATCH 014/769] reduce complexity of payments.lib.php --- htdocs/core/lib/payments.lib.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/htdocs/core/lib/payments.lib.php b/htdocs/core/lib/payments.lib.php index ffb0aba36ca..bd460f8d53e 100644 --- a/htdocs/core/lib/payments.lib.php +++ b/htdocs/core/lib/payments.lib.php @@ -1,6 +1,7 @@ + * Copyright (C) 2013 Marcos García + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -136,7 +137,7 @@ function getOnlinePaymentUrl($mode, $type, $ref='', $amount='9.99', $freetag='yo else $out.='&securekey='.dol_hash($conf->global->PAYMENT_SECURITY_TOKEN, 2); } } - if ($type == 'order') + elseif ($type == 'order') { $out=DOL_MAIN_URL_ROOT.'/public/payment/newpayment.php?source=order&ref='.($mode?'':''); if ($mode == 1) $out.='order_ref'; @@ -154,7 +155,7 @@ function getOnlinePaymentUrl($mode, $type, $ref='', $amount='9.99', $freetag='yo } } } - if ($type == 'invoice') + elseif ($type == 'invoice') { $out=DOL_MAIN_URL_ROOT.'/public/payment/newpayment.php?source=invoice&ref='.($mode?'':''); if ($mode == 1) $out.='invoice_ref'; @@ -172,7 +173,7 @@ function getOnlinePaymentUrl($mode, $type, $ref='', $amount='9.99', $freetag='yo } } } - if ($type == 'contractline') + elseif ($type == 'contractline') { $out=DOL_MAIN_URL_ROOT.'/public/payment/newpayment.php?source=contractline&ref='.($mode?'':''); if ($mode == 1) $out.='contractline_ref'; @@ -190,7 +191,7 @@ function getOnlinePaymentUrl($mode, $type, $ref='', $amount='9.99', $freetag='yo } } } - if ($type == 'membersubscription') + elseif ($type == 'membersubscription') { $out=DOL_MAIN_URL_ROOT.'/public/payment/newpayment.php?source=membersubscription&ref='.($mode?'':''); if ($mode == 1) $out.='member_ref'; @@ -289,14 +290,14 @@ function htmlPrintOnlinePaymentFooter($fromcompany,$langs,$addformmessage=0,$suf $parammessageform='ONLINE_PAYMENT_MESSAGE_FORM_'.$suffix; if (! empty($conf->global->$parammessageform)) print $langs->transnoentities($conf->global->$parammessageform); - else if (! empty($conf->global->ONLINE_PAYMENT_MESSAGE_FORM)) print $langs->transnoentities($conf->global->ONLINE_PAYMENT_MESSAGE_FORM); + elseif (! empty($conf->global->ONLINE_PAYMENT_MESSAGE_FORM)) print $langs->transnoentities($conf->global->ONLINE_PAYMENT_MESSAGE_FORM); // Add other message if VAT exists if ($object->total_vat != 0 || $object->total_tva != 0) { $parammessageform='ONLINE_PAYMENT_MESSAGE_FORMIFVAT_'.$suffix; if (! empty($conf->global->$parammessageform)) print $langs->transnoentities($conf->global->$parammessageform); - else if (! empty($conf->global->ONLINE_PAYMENT_MESSAGE_FORMIFVAT)) print $langs->transnoentities($conf->global->ONLINE_PAYMENT_MESSAGE_FORMIFVAT); + elseif (! empty($conf->global->ONLINE_PAYMENT_MESSAGE_FORMIFVAT)) print $langs->transnoentities($conf->global->ONLINE_PAYMENT_MESSAGE_FORMIFVAT); } } From af813f82145befb310c35973efac5ab97ff213ea Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sun, 14 Oct 2018 19:55:25 +0200 Subject: [PATCH 015/769] Fix missing status_batch var on product lists #9606 --- htdocs/product/index.php | 3 ++- htdocs/product/list.php | 1 + htdocs/product/reassortlot.php | 1 + htdocs/product/stock/productlot_list.php | 4 +++- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/product/index.php b/htdocs/product/index.php index 6eebc4d85e2..b998bdc3148 100644 --- a/htdocs/product/index.php +++ b/htdocs/product/index.php @@ -273,7 +273,7 @@ print '
'; */ $max=15; $sql = "SELECT p.rowid, p.label, p.price, p.ref, p.fk_product_type, p.tosell, p.tobuy, p.fk_price_expression,"; -$sql.= " p.entity,"; +$sql.= " p.entity, p.tobatch,"; $sql.= " p.tms as datem"; $sql.= " FROM ".MAIN_DB_PREFIX."product as p"; $sql.= " WHERE p.entity IN (".getEntity($product_static->element, 1).")"; @@ -337,6 +337,7 @@ if ($result) $product_static->label = $objp->label; $product_static->type=$objp->fk_product_type; $product_static->entity = $objp->entity; + $product_static->status_batch = $objp->tobatch; print $product_static->getNomUrl(1,'',16); print "\n"; print '
'; diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 178432addbc..071080edc58 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -700,6 +700,7 @@ else $product_static->status = $obj->tosell; $product_static->entity = $obj->entity; $product_static->pmp = $obj->pmp; + $product_static->status_batch = $obj->tobatch; if ((! empty($conf->stock->enabled) && $user->rights->stock->lire && $search_type != 1) || ! empty($conf->global->STOCK_DISABLE_OPTIM_LOAD)) // To optimize call of load_stock { diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index fc2632fe5e2..d737ecf8bb3 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -337,6 +337,7 @@ if ($resql) $product_static->label = $objp->label; $product_static->type=$objp->fk_product_type; $product_static->entity=$objp->entity; + $product_static->status_batch=$objp->tobatch; $product_lot_static->batch=$objp->batch; $product_lot_static->product_id=$objp->rowid; diff --git a/htdocs/product/stock/productlot_list.php b/htdocs/product/stock/productlot_list.php index 5934e8dff55..02260c8bf8b 100644 --- a/htdocs/product/stock/productlot_list.php +++ b/htdocs/product/stock/productlot_list.php @@ -216,7 +216,8 @@ $sql.= " t.fk_user_modif,"; $sql.= " t.import_key,"; $sql.= " p.fk_product_type as product_type,"; $sql.= " p.ref as product_ref,"; -$sql.= " p.label as product_label"; +$sql.= " p.label as product_label,"; +$sql.= " p.tobatch"; // Add fields for extrafields foreach ($extrafields->attribute_list as $key => $val) $sql.=",ef.".$key.' as options_'.$key; // Add fields from hooks @@ -430,6 +431,7 @@ if ($resql) $productstatic->type=$obj->product_type; $productstatic->ref=$obj->product_ref; $productstatic->label=$obj->product_label; + $productstatic->status_batch = $obj->tobatch; print ''; if (! $i) $totalarray['nbfield']++; } From 4d6d3afbea46a3873f37fd0972888c2a7c0f7cf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 15 Oct 2018 08:39:46 +0200 Subject: [PATCH 016/769] code comment --- htdocs/accountancy/class/accountancycategory.class.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index a7bab16b30d..db148cbac67 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -1,6 +1,7 @@ * Copyright (C) 2016-2017 Alexandre Spangaro + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -539,9 +540,9 @@ class AccountancyCategory /** * get cpts of category * - * @param int $cat_id Id accounting account category + * @param int $cat_id Id accounting account category * - * @return array Result in table + * @return array|int Result in table or -1 if error */ public function getCptsCat($cat_id) { global $mysoc; From 06477b40a093f57a3e41d180f97604a7e4bb1b9e Mon Sep 17 00:00:00 2001 From: atm-greg Date: Mon, 15 Oct 2018 12:34:14 +0200 Subject: [PATCH 017/769] modify parenting before task deletion --- htdocs/core/actions_massactions.inc.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index 32d80bef672..b7bbc402b09 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -598,6 +598,17 @@ if (! $error && $massaction == 'delete' && $permtodelete) $result=$objecttmp->fetch($toselectid); if ($result > 0) { + if ($objectclass == "Task" && $objecttmp->hasChildren() > 0) { + $sql = "UPDATE ".MAIN_DB_PREFIX."projet_task SET fk_task_parent = 0 WHERE fk_task_parent = ".$objecttmp->id; + $res = $db->query($sql); + + if (!$res) + { + setEventMessage('ErrorRecordParentingNotModified', 'errors'); + $error++; + } + } + if (in_array($objecttmp->element, array('societe','member'))) $result = $objecttmp->delete($objecttmp->id, $user, 1); else $result = $objecttmp->delete($user); if ($result <= 0) From dfe239bf8df84e079d938dd823890a02442133cd Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Mon, 15 Oct 2018 16:58:53 +0200 Subject: [PATCH 018/769] Fix refused proposals were counted in totals in project overview --- htdocs/projet/element.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 713e5ec74f1..130a0ad711e 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -609,6 +609,10 @@ foreach ($listofreferent as $key => $value) { if (! empty($element->close_code) && $element->close_code == 'replaced') $qualifiedfortotal=false; // Replacement invoice, do not include into total } + if ($key == 'propal') + { + if ($element->statut == Propal::STATUS_NOTSIGNED) $qualifiedfortotal=false; // Refused proposal must not be included in total + } if ($qualifiedfortotal) $total_ht = $total_ht + $total_ht_by_line; From 72dd182b1fed79a2fc8ad126c976e00b745a6a9c Mon Sep 17 00:00:00 2001 From: atm-ph Date: Tue, 16 Oct 2018 18:22:43 +0200 Subject: [PATCH 019/769] Fix list from 'Contacts/Addresses' on company may show duplicate value for extrafields --- htdocs/core/class/commonobject.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index b99c2f8ccd8..32a528c27dc 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -4459,6 +4459,7 @@ abstract class CommonObject $resql=$this->db->query($sql); if ($resql) { + $this->array_options = array(); $numrows=$this->db->num_rows($resql); if ($numrows) { From 4e14c2817c5c8522aa11e1c742c3f485fe5d46dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 22:09:11 +0200 Subject: [PATCH 020/769] add errors def to form class --- htdocs/core/class/html.form.class.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index edcb68ca3a7..1cc02f0939a 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -58,6 +58,11 @@ class Form */ public $error=''; + /** + * @var string[] Array of error strings + */ + public $errors = array(); + public $num; // Cache arrays From 2d542d028f88e157ab909c26b59506e80920edc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 22:22:57 +0200 Subject: [PATCH 021/769] Update html.formmail.class.php --- htdocs/core/class/html.formmail.class.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index c80358315c6..f9e5c111878 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -44,6 +44,14 @@ class FormMail extends Form public $fromname; public $frommail; + /** + * @var string user, company, robot + */ + public $fromtype; + /** + * @var int ID + */ + public $fromid; public $replytoname; public $replytomail; public $toname; @@ -91,11 +99,6 @@ class FormMail extends Form public $withtouser=array(); public $withtoccuser=array(); - /** - * @var string Error code (or message) - */ - public $error=''; - public $lines_model; From a5ebcff2eea5de9dd12ffe989967845c9cad3f8e Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Tue, 16 Oct 2018 22:27:34 +0200 Subject: [PATCH 022/769] Fix lettering function --- htdocs/accountancy/bookkeeping/list.php | 30 +++++++- ....php => thirdparty_lettering_customer.php} | 73 ++++--------------- ....php => thirdparty_lettering_supplier.php} | 52 ++----------- htdocs/accountancy/class/lettering.class.php | 16 ++-- htdocs/core/lib/company.lib.php | 18 ++--- htdocs/langs/en_US/accountancy.lang | 1 + htdocs/langs/en_US/main.lang | 2 + 7 files changed, 67 insertions(+), 125 deletions(-) rename htdocs/accountancy/bookkeeping/{thirdparty_lettrage.php => thirdparty_lettering_customer.php} (76%) rename htdocs/accountancy/bookkeeping/{thirdparty_lettrage_supplier.php => thirdparty_lettering_supplier.php} (82%) diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index 132aa4e0afa..dad4089b6d2 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -1,8 +1,8 @@ - * Copyright (C) 2013-2016 Florian Henry - * Copyright (C) 2013-2017 Alexandre Spangaro - * Copyright (C) 2016-2017 Laurent Destailleur +/* Copyright (C) 2013-2016 Olivier Geffroy + * Copyright (C) 2013-2016 Florian Henry + * Copyright (C) 2013-2018 Alexandre Spangaro + * Copyright (C) 2016-2017 Laurent Destailleur * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -79,6 +79,7 @@ $search_direction = GETPOST('search_direction', 'alpha'); $search_debit = GETPOST('search_debit', 'alpha'); $search_credit = GETPOST('search_credit', 'alpha'); $search_ledger_code = GETPOST('search_ledger_code', 'alpha'); +$search_lettering_code = GETPOST('search_lettering_code', 'alpha'); // Load variable for pagination $limit = GETPOST('limit','int')?GETPOST('limit', 'int'):(empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)?$conf->liste_limit:$conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION); @@ -138,6 +139,7 @@ $arrayfields=array( 't.label_operation'=>array('label'=>$langs->trans("Label"), 'checked'=>1), 't.debit'=>array('label'=>$langs->trans("Debit"), 'checked'=>1), 't.credit'=>array('label'=>$langs->trans("Credit"), 'checked'=>1), + 't.lettering_code'=>array('label'=>$langs->trans("LetteringCode"), 'checked'=>1), 't.code_journal'=>array('label'=>$langs->trans("Codejournal"), 'checked'=>1), 't.date_creation'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0), 't.tms'=>array('label'=>$langs->trans("DateModification"), 'checked'=>0), @@ -176,6 +178,7 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $search_date_modification_end = ''; $search_debit = ''; $search_credit = ''; + $search_lettering_code = ''; } // Must be after the remove filter action, before the export. @@ -272,6 +275,10 @@ if (! empty($search_credit)) { $filter['t.credit'] = $search_credit; $param .= '&search_credit=' . urlencode($search_credit); } +if (! empty($search_lettering_code)) { + $filter['t.lettering_code'] = $search_lettering_code; + $param .= '&search_lettering_code=' . urlencode($search_lettering_code); + } if ($action == 'delbookkeeping') { @@ -546,6 +553,13 @@ if (! empty($arrayfields['t.credit']['checked'])) print ''; print ''; } +// Lettering code +if (! empty($arrayfields['t.lettering_code']['checked'])) +{ + print ''; +} // Code journal if (! empty($arrayfields['t.code_journal']['checked'])) { @@ -595,6 +609,7 @@ if (! empty($arrayfields['t.subledger_account']['checked'])) print_liste_field_t if (! empty($arrayfields['t.label_operation']['checked'])) print_liste_field_titre($arrayfields['t.label_operation']['label'], $_SERVER['PHP_SELF'], "t.label_operation", "", $param, "", $sortfield, $sortorder); if (! empty($arrayfields['t.debit']['checked'])) print_liste_field_titre($arrayfields['t.debit']['label'], $_SERVER['PHP_SELF'], "t.debit", "", $param, 'align="right"', $sortfield, $sortorder); if (! empty($arrayfields['t.credit']['checked'])) print_liste_field_titre($arrayfields['t.credit']['label'], $_SERVER['PHP_SELF'], "t.credit", "", $param, 'align="right"', $sortfield, $sortorder); +if (! empty($arrayfields['t.lettering_code']['checked'])) print_liste_field_titre($arrayfields['t.lettering_code']['label'], $_SERVER['PHP_SELF'], "t.lettering_code", "", $param, 'align="center"', $sortfield, $sortorder); if (! empty($arrayfields['t.code_journal']['checked'])) print_liste_field_titre($arrayfields['t.code_journal']['label'], $_SERVER['PHP_SELF'], "t.code_journal", "", $param, 'align="center"', $sortfield, $sortorder); if (! empty($arrayfields['t.date_creation']['checked'])) print_liste_field_titre($arrayfields['t.date_creation']['label'], $_SERVER['PHP_SELF'], "t.date_creation", "", $param, 'align="center"', $sortfield, $sortorder); if (! empty($arrayfields['t.tms']['checked'])) print_liste_field_titre($arrayfields['t.tms']['label'], $_SERVER['PHP_SELF'], "t.tms", "", $param, 'align="center"', $sortfield, $sortorder); @@ -680,6 +695,13 @@ if ($num > 0) $totalarray['totalcredit'] += $line->credit; } + // Lettering code + if (! empty($arrayfields['t.lettering_code']['checked'])) + { + print ''; + if (! $i) $totalarray['nbfield']++; + } + // Journal code if (! empty($arrayfields['t.code_journal']['checked'])) { diff --git a/htdocs/accountancy/bookkeeping/thirdparty_lettrage.php b/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php similarity index 76% rename from htdocs/accountancy/bookkeeping/thirdparty_lettrage.php rename to htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php index be335107839..fa41b404f03 100644 --- a/htdocs/accountancy/bookkeeping/thirdparty_lettrage.php +++ b/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php @@ -1,9 +1,9 @@ - * Copyright (C) 2005 Laurent Destailleur - * Copyright (C) 2013 Olivier Geffroy - * Copyright (C) 2013 Florian Henry - * Copyright (C) 2013 Alexandre Spangaro +/* Copyright (C) 2004-2005 Rodolphe Quiedeville + * Copyright (C) 2005 Laurent Destailleur + * Copyright (C) 2013 Olivier Geffroy + * Copyright (C) 2013 Florian Henry + * Copyright (C) 2013-2018 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,9 +21,9 @@ */ /** - * \file accountancy/bookkeeping/thirdparty_lettrage.php - * \ingroup Advanced accountancy - * \brief Onglet de gestion de parametrages des ventilations + * \file accountancy/bookkeeping/thirdparty_lettering_customer.php + * \ingroup Advanced accountancy + * \brief Onglet de gestion de parametrages des ventilations */ require '../../main.inc.php'; @@ -107,7 +107,7 @@ if ($action == 'lettering') { if ($action == 'autolettrage') { - $result = $BookKeeping->lettrageTiers($socid); + $result = $BookKeeping->lettering_thirdparty($socid); if ($result < 0) { setEventMessages('', $BookKeeping->errors, 'errors'); @@ -124,55 +124,15 @@ $head = societe_prepare_head($object); dol_htmloutput_mesg(is_numeric($error) ? '' : $error, $errors, 'error'); -dol_fiche_head($head, 'accounting', $langs->trans("ThirdParty"), 0, 'company'); +dol_fiche_head($head, 'lettering_customer', $langs->trans("ThirdParty"), 0, 'company'); -print '
'.dol_trunc($objp->label,32).''.$productstatic->getNomUrl(1).''; + print ''; + print '' . $line->lettering_code . '
'; -print ''; +$linkback = ''.$langs->trans("BackToList").''; -if (! empty($conf->global->SOCIETE_USEPREFIX)) // Old not used prefix field -{ - print ''; -} +dol_banner_tab($object, 'socid', $linkback, ($user->societe_id?0:1), 'rowid', 'nom', '', '', 0, '', '', 'arearefnobottom'); -print ''; -print ''; -print ''; +dol_fiche_end(); -print ''; -print ''; -print ''; - -// Address -print ''; - -// Zip / Town -print ''; -print ''; - -// Country -print ''; - -print '
' . $langs->trans("ThirdPartyName") . ''; -$object->next_prev_filter = "te.fournisseur = 1"; -print $form->showrefnav($object, 'socid', '', ($user->societe_id ? 0 : 1), 'rowid', 'nom', '', ''); -print '
' . $langs->trans('Prefix') . '' . $object->prefix_comm . '
' . $langs->trans("CustomerCode") . ''; -print $object->code_client; -if ($object->check_codeclient() != 0) - print ' (' . $langs->trans("WrongCustomerCode") . ')'; -print '
'; -print $form->editfieldkey("CustomerAccountancyCode", 'customeraccountancycode', $object->code_compta, $object, $user->rights->societe->creer); -print ''; -print $form->editfieldval("CustomerAccountancyCode", 'customeraccountancycode', $object->code_compta, $object, $user->rights->societe->creer); -print '
' . $langs->trans("Address") . ''; -dol_print_address($object->address, 'gmap', 'thirdparty', $object->id); -print '
' . $langs->trans("Zip") . ' / ' . $langs->trans("Town") . '' . $object->zip . (($object->zip && $object->town) ? ' / ' : '') . $object->town . '
' . $langs->trans("Country") . ''; -// $img=picto_from_langcode($object->country_code); -$img = ''; -if ($object->isInEEC()) - print $form->textwithpicto(($img ? $img . ' ' : '') . $object->country, $langs->trans("CountryIsInEEC"), 1, 0); -else - print ($img ? $img . ' ' : '') . $object->country; -print '
'; +print '
'; $sql = "SELECT bk.rowid, bk.doc_date, bk.doc_type, bk.doc_ref, "; $sql .= " bk.subledger_account, bk.numero_compte , bk.label_compte, bk.debit, "; @@ -209,7 +169,7 @@ while ( $obj = $db->fetch_object($resql) ) { $sql .= $db->plimit($limit + 1, $offset); -dol_syslog("/accountancy/bookkeeping/thirdparty_lettrage.php", LOG_DEBUG); +dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_customer.php", LOG_DEBUG); $resql = $db->query($sql); if (! $resql) { dol_print_error($db); @@ -218,7 +178,7 @@ if (! $resql) { $num = $db->num_rows($resql); -dol_syslog("/accountancy/bookkeeping/thirdparty_lettrage.php", LOG_DEBUG); +dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_customer.php", LOG_DEBUG); if ($resql) { $i = 0; @@ -317,4 +277,3 @@ if ($resql) { // End of page llxFooter(); $db->close(); - diff --git a/htdocs/accountancy/bookkeeping/thirdparty_lettrage_supplier.php b/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php similarity index 82% rename from htdocs/accountancy/bookkeeping/thirdparty_lettrage_supplier.php rename to htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php index 905361b4c8e..b70d0a07242 100644 --- a/htdocs/accountancy/bookkeeping/thirdparty_lettrage_supplier.php +++ b/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php @@ -111,7 +111,7 @@ if ($action == 'lettering') { if ($action == 'autolettrage') { - $result = $BookKeeping->lettrageTiers($socid); + $result = $BookKeeping->lettering_thirdparty($socid); if ($result < 0) { setEventMessages('', $BookKeeping->errors, 'errors'); @@ -140,55 +140,13 @@ $head = societe_prepare_head($object); dol_htmloutput_mesg(is_numeric($error) ? '' : $error, $errors, 'error'); -dol_fiche_head($head, 'accounting_supplier', $langs->trans("ThirdParty"), 0, 'company'); +dol_fiche_head($head, 'lettering_supplier', $langs->trans("ThirdParty"), 0, 'company'); -print ''; -print ''; +$linkback = ''.$langs->trans("BackToList").''; -if (! empty($conf->global->SOCIETE_USEPREFIX)) // Old not used prefix field -{ - print ''; -} +dol_banner_tab($object, 'socid', $linkback, ($user->societe_id?0:1), 'rowid', 'nom', '', '', 0, '', '', 'arearefnobottom'); -print ''; -print ''; -print ''; - -print ''; -print ''; -print ''; - -// Address -print ''; - -// Zip / Town -print ''; -print ''; - -// Country -print ''; - -print '
' . $langs->trans("ThirdPartyName") . ''; -$object->next_prev_filter = "te.fournisseur = 1"; -print $form->showrefnav($object, 'socid', '', ($user->societe_id ? 0 : 1), 'rowid', 'nom', '', ''); -print '
' . $langs->trans('Prefix') . '' . $object->prefix_comm . '
' . $langs->trans("SupplierCode") . ''; -print $object->code_fournisseur; -if ($object->check_codefournisseur() != 0) - print ' (' . $langs->trans("WrongSupplierCode") . ')'; -print '
'; -print $form->editfieldkey("SupplierAccountancyCode", 'supplieraccountancycode', $object->code_compta_fournisseur, $object, $user->rights->societe->creer); -print ''; -print $form->editfieldval("SupplierAccountancyCode", 'supplieraccountancycode', $object->code_compta_fournisseur, $object, $user->rights->societe->creer); -print '
' . $langs->trans("Address") . ''; -dol_print_address($object->address, 'gmap', 'thirdparty', $object->id); -print '
' . $langs->trans("Zip") . ' / ' . $langs->trans("Town") . '' . $object->zip . (($object->zip && $object->town) ? ' / ' : '') . $object->town . '
' . $langs->trans("Country") . ''; -// $img=picto_from_langcode($object->country_code); -$img = ''; -if ($object->isInEEC()) - print $form->textwithpicto(($img ? $img . ' ' : '') . $object->country, $langs->trans("CountryIsInEEC"), 1, 0); -else - print ($img ? $img . ' ' : '') . $object->country; -print '
'; +dol_fiche_end(); $sql = "SELECT bk.rowid, bk.doc_date, bk.doc_type, bk.doc_ref, "; $sql .= " bk.subledger_account, bk.numero_compte , bk.label_compte, bk.debit, "; diff --git a/htdocs/accountancy/class/lettering.class.php b/htdocs/accountancy/class/lettering.class.php index 0ddbaeb5026..220ed24d5d6 100644 --- a/htdocs/accountancy/class/lettering.class.php +++ b/htdocs/accountancy/class/lettering.class.php @@ -1,7 +1,7 @@ - * Copyright (C) 2013 Olivier Geffroy - * Copyright (C) 2013 Alexandre Spangaro +/* Copyright (C) 2004-2005 Rodolphe Quiedeville + * Copyright (C) 2013 Olivier Geffroy + * Copyright (C) 2013-2018 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,9 +18,9 @@ */ /** - * \file accountancy/class/bookkeeping.class.php - * \ingroup Advanced accountancy - * \brief File of class for lettering + * \file accountancy/class/bookkeeping.class.php + * \ingroup Advanced accountancy + * \brief File of class for lettering */ include_once DOL_DOCUMENT_ROOT . "/accountancy/class/bookkeeping.class.php"; include_once DOL_DOCUMENT_ROOT . "/societe/class/societe.class.php"; @@ -32,12 +32,12 @@ include_once DOL_DOCUMENT_ROOT . "/core/lib/date.lib.php"; class lettering extends BookKeeping { /** - * lettrageTiers + * lettering_thirdparty * * @param int $socid Thirdparty id * @return int 1 OK, <0 error */ - public function lettrageTiers($socid) + public function lettering_thirdparty($socid) { global $conf; diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 0e2401434d7..46e3922a0d0 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -6,11 +6,11 @@ * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2013-2014 Juanjo Menent * Copyright (C) 2013 Christophe Battarel - * Copyright (C) 2013 Alexandre Spangaro + * Copyright (C) 2013-2018 Alexandre Spangaro * Copyright (C) 2015-2018 Frédéric France * Copyright (C) 2015 Raphaël Doursenaud - * Copyright (C) 2017 Rui Strecht - * Copyright (C) 2018 Ferran Marcet + * Copyright (C) 2017 Rui Strecht + * Copyright (C) 2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -154,18 +154,18 @@ function societe_prepare_head(Societe $object) // Tab to accountancy if (! empty($conf->accounting->enabled) && $object->client>0) { - $head[$h][0] = DOL_URL_ROOT.'/accountancy/bookkeeping/thirdparty_lettrage.php?socid='.$object->id; - $head[$h][1] = $langs->trans("TabAccountingCustomer"); - $head[$h][2] = 'accounting'; + $head[$h][0] = DOL_URL_ROOT.'/accountancy/bookkeeping/thirdparty_lettering_customer.php?socid='.$object->id; + $head[$h][1] = $langs->trans("TabLetteringCustomer"); + $head[$h][2] = 'lettering_customer'; $h++; } // Tab to accountancy if (! empty($conf->accounting->enabled) && $object->fournisseur>0) { - $head[$h][0] = DOL_URL_ROOT.'/accountancy/bookkeeping/thirdparty_lettrage_supplier.php?socid='.$object->id; - $head[$h][1] = $langs->trans("TabAccountingSupplier"); - $head[$h][2] = 'accounting_supplier'; + $head[$h][0] = DOL_URL_ROOT.'/accountancy/bookkeeping/thirdparty_lettering_supplier.php?socid='.$object->id; + $head[$h][1] = $langs->trans("TabLetteringSupplier"); + $head[$h][2] = 'lettering_supplier'; $h++; } } diff --git a/htdocs/langs/en_US/accountancy.lang b/htdocs/langs/en_US/accountancy.lang index 0e59bf9a5a3..e6215269512 100644 --- a/htdocs/langs/en_US/accountancy.lang +++ b/htdocs/langs/en_US/accountancy.lang @@ -160,6 +160,7 @@ Docref=Reference LabelAccount=Label account LabelOperation=Label operation Sens=Sens +LetteringCode=Lettering code Codejournal=Journal NumPiece=Piece number TransactionNumShort=Num. transaction diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index fb2f2a8e9fb..03d65917a97 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -870,6 +870,8 @@ NewLeadOrProject=New lead or project Rights=Permissions LineNb=Line no. IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Supplier lettering # Week day Monday=Monday Tuesday=Tuesday From cf1819ea0e05c7151953d6bdac87709f325f5be3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 22:27:34 +0200 Subject: [PATCH 023/769] Update html.formmail.class.php --- htdocs/core/class/html.formmail.class.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index f9e5c111878..68da2dce777 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -4,6 +4,7 @@ * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2015-2017 Marcos García * Copyright (C) 2015-2017 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -44,15 +45,28 @@ class FormMail extends Form public $fromname; public $frommail; + /** * @var string user, company, robot */ public $fromtype; + /** * @var int ID */ public $fromid; - public $replytoname; + + /** + * @var string thirdparty etc + */ + public $totype; + + /** + * @var int ID + */ + public $toid; + + public $replytoname; public $replytomail; public $toname; public $tomail; From 2e77b9fed9ef745a24d133d346478bfcc86aacd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 22:42:18 +0200 Subject: [PATCH 024/769] fix phpunit --- htdocs/compta/paiement/class/paiement.class.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php index cc60c2cba8e..50f7bc2c4e6 100644 --- a/htdocs/compta/paiement/class/paiement.class.php +++ b/htdocs/compta/paiement/class/paiement.class.php @@ -76,8 +76,8 @@ class Paiement extends CommonObject //paiement de llx_c_paiement public $num_paiement; // Numero du CHQ, VIR, etc... public $num_payment; // Numero du CHQ, VIR, etc... - public $payment_id; // Id of external modepayment - public $payment_site; // name of external modepayment + public $payment_id; // Id of external modepayment + public $payment_site; // name of external modepayment public $bank_account; // Id compte bancaire du paiement public $bank_line; // Id de la ligne d'ecriture bancaire // fk_paiement dans llx_paiement est l'id du type de paiement (7 pour CHQ, ...) @@ -233,11 +233,11 @@ class Paiement extends CommonObject $mtotal = $totalamount; } $note = ($this->note_public?$this->note_public:$this->note); - $payment_id = $this->payment_id ? $this->payment_id : null; - $payment_site = $this->payment_site ? $this->payment_site : null; + $payment_id = $this->payment_id ? $this->payment_id : null; + $payment_site = $this->payment_site ? $this->payment_site : null; $sql = "INSERT INTO ".MAIN_DB_PREFIX."paiement (entity, ref, datec, datep, amount, multicurrency_amount, fk_paiement, num_paiement, note, ext_payment_id, ext_payment_site, fk_user_creat)"; - $sql.= " VALUES (".$conf->entity.", '".$this->ref."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', '".$total."', '".$mtotal."', ".$this->paiementid.", '".$this->num_paiement."', '".$this->db->escape($note)."', '".$this->payment_id."', '".$this->payment_site."', ".$user->id.")"; + $sql.= " VALUES (".$conf->entity.", '".$this->ref."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', '".$total."', '".$mtotal."', ".$this->paiementid.", '".$this->num_paiement."', '".$this->db->escape($note)."', '".$this->db->escape($payment_id)."', '".$this->db->escape($payment_site)."', ".$user->id.")"; dol_syslog(get_class($this)."::Create insert paiement", LOG_DEBUG); $resql = $this->db->query($sql); From fa78ab7c66336ce6283d3274685d68a3ddb61978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 23:20:13 +0200 Subject: [PATCH 025/769] do not trim int --- htdocs/contrat/class/contrat.class.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 398da806c2d..7e0c2d13ca5 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -10,6 +10,7 @@ * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2015-2017 Ferran Marcet * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -2887,9 +2888,9 @@ class ContratLigne extends CommonObjectLine $error=0; // Clean parameters - $this->fk_contrat=trim($this->fk_contrat); - $this->fk_product=trim($this->fk_product); - $this->statut=(int) $this->statut; + $this->fk_contrat = (int) $this->fk_contrat; + $this->fk_product = (int) $this->fk_product; + $this->statut = (int) $this->statut; $this->label=trim($this->label); $this->description=trim($this->description); $this->vat_src_code=trim($this->vat_src_code); @@ -2899,7 +2900,7 @@ class ContratLigne extends CommonObjectLine $this->qty=trim($this->qty); $this->remise_percent=trim($this->remise_percent); $this->remise=trim($this->remise); - $this->fk_remise_except=trim($this->fk_remise_except); + $this->fk_remise_except = (int) $this->fk_remise_except; $this->subprice=price2num($this->subprice); $this->price_ht=price2num($this->price_ht); $this->total_ht=trim($this->total_ht); @@ -2908,9 +2909,9 @@ class ContratLigne extends CommonObjectLine $this->total_localtax2=trim($this->total_localtax2); $this->total_ttc=trim($this->total_ttc); $this->info_bits=trim($this->info_bits); - $this->fk_user_author=trim($this->fk_user_author); - $this->fk_user_ouverture=trim($this->fk_user_ouverture); - $this->fk_user_cloture=trim($this->fk_user_cloture); + $this->fk_user_author = (int) $this->fk_user_author; + $this->fk_user_ouverture = (int) $this->fk_user_ouverture; + $this->fk_user_cloture = (int) $this->fk_user_cloture; $this->commentaire=trim($this->commentaire); //if (empty($this->subprice)) $this->subprice = 0; if (empty($this->price_ht)) $this->price_ht = 0; From 27b7cf8beaa34985efc3c193504a9d9c0a16a3d0 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 16 Oct 2018 23:31:19 +0200 Subject: [PATCH 026/769] Fix uniformization dates of order in API --- htdocs/commande/class/commande.class.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index c588830d83d..7f2a8c98dbe 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -155,7 +155,10 @@ class Commande extends CommonOrder public $demand_reason_id; // Source reason. Why we receive order (after a phone campaign, ...) public $demand_reason_code; public $date; // Date commande - + public $date_creation; // Date commande + public $date_validation; // Date commande + public $date_modification; // Date commande + /** * @deprecated * @see date @@ -1620,7 +1623,7 @@ class Commande extends CommonOrder $sql = 'SELECT c.rowid, c.entity, c.date_creation, c.ref, c.fk_soc, c.fk_user_author, c.fk_user_valid, c.fk_statut'; $sql.= ', c.amount_ht, c.total_ht, c.total_ttc, c.tva as total_tva, c.localtax1 as total_localtax1, c.localtax2 as total_localtax2, c.fk_cond_reglement, c.fk_mode_reglement, c.fk_availability, c.fk_input_reason'; $sql.= ', c.fk_account'; - $sql.= ', c.date_commande'; + $sql.= ', c.date_commande, c.date_valid, c.tms'; $sql.= ', c.date_livraison'; $sql.= ', c.fk_shipping_method'; $sql.= ', c.fk_warehouse'; @@ -1673,6 +1676,9 @@ class Commande extends CommonOrder $this->total_ttc = $obj->total_ttc; $this->date = $this->db->jdate($obj->date_commande); $this->date_commande = $this->db->jdate($obj->date_commande); + $this->date_creation = $this->db->jdate($obj->date_creation); + $this->date_validation = $this->db->jdate($obj->date_valid); + $this->date_modification = $this->db->jdate($obj->tms); $this->remise = $obj->remise; $this->remise_percent = $obj->remise_percent; $this->remise_absolue = $obj->remise_absolue; From 70b6c502dab209a0db427df3e0132e7d1f975a3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 16 Oct 2018 23:36:00 +0200 Subject: [PATCH 027/769] Update menubase.class.php --- htdocs/core/class/menubase.class.php | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/htdocs/core/class/menubase.class.php b/htdocs/core/class/menubase.class.php index 0daf4fe56da..17ada096fd1 100644 --- a/htdocs/core/class/menubase.class.php +++ b/htdocs/core/class/menubase.class.php @@ -1,6 +1,7 @@ * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -59,15 +60,18 @@ class Menubase public $fk_menu; /** - * @var int ID + * @var string fk_mainmenu */ public $fk_mainmenu; /** - * @var int ID + * @var string fk_leftmenu */ public $fk_leftmenu; + /** + * @var int position + */ public $position; public $url; public $target; @@ -111,10 +115,10 @@ class Menubase $this->type=trim($this->type); $this->mainmenu=trim($this->mainmenu); $this->leftmenu=trim($this->leftmenu); - $this->fk_menu=trim($this->fk_menu); // If -1, fk_mainmenu and fk_leftmenu must be defined + $this->fk_menu = (int) $this->fk_menu; // If -1, fk_mainmenu and fk_leftmenu must be defined $this->fk_mainmenu=trim($this->fk_mainmenu); $this->fk_leftmenu=trim($this->fk_leftmenu); - $this->position=trim($this->position); + $this->position = (int) $this->position; $this->url=trim($this->url); $this->target=trim($this->target); $this->titre=trim($this->titre); @@ -155,7 +159,7 @@ class Menubase $sql = "SELECT count(*)"; $sql.= " FROM ".MAIN_DB_PREFIX."menu"; $sql.= " WHERE menu_handler = '".$this->db->escape($this->menu_handler)."'"; - $sql.= " AND fk_menu = ".((int) $this->db->escape($this->fk_menu)); + $sql.= " AND fk_menu = ".((int) $this->fk_menu); $sql.= " AND position = ".((int) $this->position); $sql.= " AND url = '".$this->db->escape($this->url)."'"; $sql.= " AND entity = ".$conf->entity; @@ -252,10 +256,10 @@ class Menubase $this->type=trim($this->type); $this->mainmenu=trim($this->mainmenu); $this->leftmenu=trim($this->leftmenu); - $this->fk_menu=trim($this->fk_menu); + $this->fk_menu = (int) $this->fk_menu; $this->fk_mainmenu=trim($this->fk_mainmenu); $this->fk_leftmenu=trim($this->fk_leftmenu); - $this->position=trim($this->position); + $this->position = (int) $this->position; $this->url=trim($this->url); $this->target=trim($this->target); $this->titre=trim($this->titre); @@ -274,7 +278,7 @@ class Menubase $sql.= " type='".$this->db->escape($this->type)."',"; $sql.= " mainmenu='".$this->db->escape($this->mainmenu)."',"; $sql.= " leftmenu='".$this->db->escape($this->leftmenu)."',"; - $sql.= " fk_menu='".$this->db->escape($this->fk_menu)."',"; + $sql.= " fk_menu=".$this->fk_menu.","; $sql.= " fk_mainmenu=".($this->fk_mainmenu?"'".$this->db->escape($this->fk_mainmenu)."'":"null").","; $sql.= " fk_leftmenu=".($this->fk_leftmenu?"'".$this->db->escape($this->fk_leftmenu)."'":"null").","; $sql.= " position=".($this->position > 0 ? $this->position : 0).","; From 3fdf3c95b449c8ef89454709089fc07dd387affb Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Wed, 17 Oct 2018 00:04:44 +0200 Subject: [PATCH 028/769] FIX harmony in date name with API --- htdocs/compta/facture/class/facture.class.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index e225d1468c4..d614447b189 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -112,6 +112,7 @@ class Facture extends CommonInvoice public $date; // Date invoice public $date_creation; // Creation date public $date_validation; // Validation date + public $date_modification; // Validation date public $datem; public $ref_client; public $ref_int; @@ -1361,6 +1362,7 @@ class Facture extends CommonInvoice $this->date_pointoftax = $this->db->jdate($obj->date_pointoftax); $this->date_creation = $this->db->jdate($obj->datec); $this->date_validation = $this->db->jdate($obj->datev); + $this->date_modification = $this->db->jdate($obj->datem); $this->datem = $this->db->jdate($obj->datem); $this->remise_percent = $obj->remise_percent; $this->remise_absolue = $obj->remise_absolue; From 7c35eae2026ac0eb96e1ed6f11acf71cf2981936 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Wed, 17 Oct 2018 00:06:24 +0200 Subject: [PATCH 029/769] Update commande.class.php --- htdocs/commande/class/commande.class.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 7f2a8c98dbe..4f5051f3411 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -155,9 +155,9 @@ class Commande extends CommonOrder public $demand_reason_id; // Source reason. Why we receive order (after a phone campaign, ...) public $demand_reason_code; public $date; // Date commande - public $date_creation; // Date commande - public $date_validation; // Date commande - public $date_modification; // Date commande + public $date_creation; // Date commande + public $date_validation; // Date commande + public $date_modification; // Date commande /** * @deprecated @@ -1676,9 +1676,9 @@ class Commande extends CommonOrder $this->total_ttc = $obj->total_ttc; $this->date = $this->db->jdate($obj->date_commande); $this->date_commande = $this->db->jdate($obj->date_commande); - $this->date_creation = $this->db->jdate($obj->date_creation); - $this->date_validation = $this->db->jdate($obj->date_valid); - $this->date_modification = $this->db->jdate($obj->tms); + $this->date_creation = $this->db->jdate($obj->date_creation); + $this->date_validation = $this->db->jdate($obj->date_valid); + $this->date_modification = $this->db->jdate($obj->tms); $this->remise = $obj->remise; $this->remise_percent = $obj->remise_percent; $this->remise_absolue = $obj->remise_absolue; From a77458cb36703ef4c7bb21993981a324c4dba6d7 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Wed, 17 Oct 2018 00:07:21 +0200 Subject: [PATCH 030/769] Update facture.class.php --- htdocs/compta/facture/class/facture.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index d614447b189..3f36cb72830 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -112,7 +112,7 @@ class Facture extends CommonInvoice public $date; // Date invoice public $date_creation; // Creation date public $date_validation; // Validation date - public $date_modification; // Validation date + public $date_modification; // Validation date public $datem; public $ref_client; public $ref_int; @@ -1362,7 +1362,7 @@ class Facture extends CommonInvoice $this->date_pointoftax = $this->db->jdate($obj->date_pointoftax); $this->date_creation = $this->db->jdate($obj->datec); $this->date_validation = $this->db->jdate($obj->datev); - $this->date_modification = $this->db->jdate($obj->datem); + $this->date_modification = $this->db->jdate($obj->datem); $this->datem = $this->db->jdate($obj->datem); $this->remise_percent = $obj->remise_percent; $this->remise_absolue = $obj->remise_absolue; From f2d0004a3e542afb3f520dccc9b0bf7eb9515821 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Wed, 17 Oct 2018 00:36:40 +0200 Subject: [PATCH 031/769] ADD civility list in API --- htdocs/api/class/api_setup.class.php | 60 ++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/htdocs/api/class/api_setup.class.php b/htdocs/api/class/api_setup.class.php index 3ec618dc92a..304abf46432 100644 --- a/htdocs/api/class/api_setup.class.php +++ b/htdocs/api/class/api_setup.class.php @@ -380,6 +380,66 @@ class Setup extends DolibarrApi return $list; } + /** + * Get the list of civility. + * + * @param string $sortfield Sort field + * @param string $sortorder Sort order + * @param int $limit Number of items per page + * @param int $page Page number (starting from zero) + * @param string $module To filter on module events + * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.code:like:'A%') and (t.active:>=:0)" + * @return List of events types + * + * @url GET dictionary/civility + * + * @throws RestException + */ + function getListOfCivility($sortfield = "code", $sortorder = 'ASC', $limit = 100, $page = 0, $module = '', $sqlfilters = '') + { + $list = array(); + + $sql = "SELECT rowid, code, label, module"; + $sql.= " FROM ".MAIN_DB_PREFIX."c_civility as t"; + $sql.= " WHERE t.active = 1"; + if ($module) $sql.=" AND t.module LIKE '%" . $this->db->escape($module) . "%'"; + // Add sql filters + if ($sqlfilters) + { + if (! DolibarrApi::_checkFilters($sqlfilters)) + { + throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters); + } + $regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)'; + $sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")"; + } + + + $sql.= $this->db->order($sortfield, $sortorder); + + if ($limit) { + if ($page < 0) { + $page = 0; + } + $offset = $limit * $page; + + $sql .= $this->db->plimit($limit, $offset); + } + + $result = $this->db->query($sql); + + if ($result) { + $num = $this->db->num_rows($result); + $min = min($num, ($limit <= 0 ? $num : $limit)); + for ($i = 0; $i < $min; $i++) { + $list[] = $this->db->fetch_object($result); + } + } else { + throw new RestException(503, 'Error when retrieving list of civility : '.$this->db->lasterror()); + } + + return $list; + } /** * Get the list of extra fields. From a466104b810db2caae6055dc034701bbbafcb66f Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Wed, 17 Oct 2018 07:20:04 +0200 Subject: [PATCH 032/769] Fix FEC on transaction card Fix for FEC compliance - Remove useless column label_compte - label_compte is generated with label of accounting account number - Insert also the label of the journal --- htdocs/accountancy/bookkeeping/card.php | 61 ++++++++++++++----------- 1 file changed, 35 insertions(+), 26 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/card.php b/htdocs/accountancy/bookkeeping/card.php index a8ff1e13338..09a3b7ef8f5 100644 --- a/htdocs/accountancy/bookkeeping/card.php +++ b/htdocs/accountancy/bookkeeping/card.php @@ -1,8 +1,8 @@ - * Copyright (C) 2013-2017 Florian Henry - * Copyright (C) 2013-2018 Alexandre Spangaro - * Copyright (C) 2017 Laurent Destailleur +/* Copyright (C) 2013-2017 Olivier Geffroy + * Copyright (C) 2013-2017 Florian Henry + * Copyright (C) 2013-2018 Alexandre Spangaro + * Copyright (C) 2017 Laurent Destailleur * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -32,6 +32,7 @@ require_once DOL_DOCUMENT_ROOT . '/core/class/html.formaccounting.class.php'; require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; // Load translation files required by the page $langs->loadLangs(array("accountancy", "bills", "compta")); @@ -49,12 +50,21 @@ if ($user->societe_id > 0) { $mesg = ''; -$account_number = GETPOST('account_number','alphanohtml'); +$accountingaccount = new AccountingAccount($db); +$accountingjournal = new AccountingJournal($db); + +$accountingaccount_number = GETPOST('accountingaccount_number','alphanohtml'); +$accountingaccount->fetch(null, $accountingaccount_number, true); +$accountingaccount_label = $accountingaccount->label; + +$journal_code = GETPOST('code_journal','alpha'); +$accountingjournal->fetch(null, $journal_code); +$journal_label = $accountingjournal->label; + $subledger_account = GETPOST('subledger_account','alphanohtml'); if ($subledger_account == - 1) { $subledger_account = null; } -$label_compte = GETPOST('label_compte','alphanohtml'); $label_operation= GETPOST('label_operation','alphanohtml'); $debit = price2num(GETPOST('debit','alpha')); $credit = price2num(GETPOST('credit','alpha')); @@ -80,7 +90,7 @@ if ($action == "confirm_update") { setEventMessages($langs->trans('ErrorDebitCredit'), null, 'errors'); $action='update'; } - if (empty($account_number) || $account_number == '-1') + if (empty($accountingaccount_number) || $accountingaccount_number == '-1') { $error++; setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("AccountAccountingShort")), null, 'errors'); @@ -96,9 +106,9 @@ if ($action == "confirm_update") { $error++; setEventMessages($object->error, $object->errors, 'errors'); } else { - $object->numero_compte = $account_number; + $object->numero_compte = $accountingaccount_number; $object->subledger_account = $subledger_account; - $object->label_compte = $label_compte; + $object->label_compte = $accountingaccount_label; $object->label_operation= $label_operation; $object->debit = $debit; $object->credit = $credit; @@ -139,7 +149,7 @@ else if ($action == "add") { setEventMessages($langs->trans('ErrorDebitCredit'), null, 'errors'); $action=''; } - if (empty($account_number) || $account_number == '-1') + if (empty($accountingaccount_number) || $accountingaccount_number == '-1') { $error++; setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("AccountAccountingShort")), null, 'errors'); @@ -149,9 +159,9 @@ else if ($action == "add") { if (! $error) { $object = new BookKeeping($db); - $object->numero_compte = $account_number; + $object->numero_compte = $accountingaccount_number; $object->subledger_account = $subledger_account; - $object->label_compte = $label_compte; + $object->label_compte = $accountingaccount_label; $object->label_operation= $label_operation; $object->debit = $debit; $object->credit = $credit; @@ -159,7 +169,8 @@ else if ($action == "add") { $object->doc_type = GETPOST('doc_type','alpha'); $object->piece_num = $piece_num; $object->doc_ref = GETPOST('doc_ref','alpha'); - $object->code_journal = GETPOST('code_journal','alpha'); + $object->code_journal = $journal_code; + $object->journal_label = $journal_label; $object->fk_doc = GETPOST('fk_doc','alpha'); $object->fk_docdet = GETPOST('fk_docdet','alpha'); @@ -212,7 +223,7 @@ else if ($action == "confirm_create") { $object = new BookKeeping($db); - if (! GETPOST('code_journal','alpha') || GETPOST('code_journal','alpha') == '-1') { + if (! $journal_code || $journal_code == '-1') { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Journal")), null, 'errors'); $action='create'; $error++; @@ -232,7 +243,8 @@ else if ($action == "confirm_create") { $object->doc_type = GETPOST('doc_type','alpha'); $object->piece_num = GETPOST('next_num_mvt','alpha'); $object->doc_ref = GETPOST('doc_ref','alpha'); - $object->code_journal = GETPOST('code_journal','alpha'); + $object->code_journal = $journal_code; + $object->journal_label = $journal_label; $object->fk_doc = 0; $object->fk_docdet = 0; $object->montant = 0; @@ -267,8 +279,8 @@ if ($action == 'setdate') { } if ($action == 'setjournal') { - $journaldoc = trim(GETPOST('code_journal','alpha')); - $result = $object->updateByMvt($piece_num, 'code_journal', $journaldoc, $mode); + $result = $object->updateByMvt($piece_num, 'code_journal', $journal_code, $mode); + $result = $object->updateByMvt($piece_num, 'journal_label', $journal_label, $mode); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } else { @@ -312,7 +324,6 @@ if ($action == 'valid') { $html = new Form($db); $formaccounting = new FormAccounting($db); -$accountjournal = new AccountingJournal($db); llxHeader('', $langs->trans("CreateMvts")); @@ -357,7 +368,7 @@ if ($action == 'create') print ''; print '' . $langs->trans("Codejournal") . ''; - print '' . $formaccounting->select_journal(GETPOST('code_journal', 'alpha'),'code_journal',0,1,array(),1,1) . ''; + print '' . $formaccounting->select_journal($journal_code,'code_journal',0,0,1,1) . ''; print ''; print ''; @@ -460,7 +471,7 @@ if ($action == 'create') print ''; print ''; } else { - print $object->code_journal ; + print $object->code_journal ; } print ''; print ''; @@ -590,7 +601,6 @@ if ($action == 'create') print_liste_field_titre("AccountAccountingShort"); print_liste_field_titre("SubledgerAccount"); - print_liste_field_titre("LabelAccount"); print_liste_field_titre("LabelOperation"); print_liste_field_titre("Debit", "", "", "", "", 'align="right"'); print_liste_field_titre("Credit", "", "", "", "", 'align="right"'); @@ -605,7 +615,7 @@ if ($action == 'create') if ($action == 'update' && $line->id == $id) { print ''; - print $formaccounting->select_account($line->numero_compte, 'account_number', 1, array (), 1, 1, ''); + print $formaccounting->select_account($line->numero_compte, 'accountingaccount_number', 1, array (), 1, 1, ''); print ''; print ''; // TODO For the moment we keep a free input text instead of a combo. The select_auxaccount has problem because it does not @@ -628,9 +638,9 @@ if ($action == 'create') print ''; print ''; } else { - print '' . length_accountg($line->numero_compte) . ''; + $accountingaccount->fetch(null, $line->numero_compte, true); + print '' . $accountingaccount->getNomUrl(0,1,1,'',0) . ''; print '' . length_accounta($line->subledger_account) . ''; - print '' . $line->label_compte . ''; print '' . $line->label_operation. ''; print '' . price($line->debit) . ''; print '' . price($line->credit) . ''; @@ -663,7 +673,7 @@ if ($action == 'create') if ($action == "" || $action == 'add') { print ''; print ''; - print $formaccounting->select_account($account_number, 'account_number', 1, array (), 1, 1, ''); + print $formaccounting->select_account($accountingaccount_number, 'accountingaccount_number', 1, array (), 1, 1, ''); print ''; print ''; // TODO For the moment we keep a fre input text instead of a combo. The select_auxaccount has problem because it does not @@ -677,7 +687,6 @@ if ($action == 'create') print ''; } print ''; - print ''; print ''; print ''; print ''; From 7d8ff0429251f4860ca70c8aa5226e8266a4e0e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 08:15:12 +0200 Subject: [PATCH 033/769] Update paiement.class.php --- htdocs/compta/paiement/class/paiement.class.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php index 50f7bc2c4e6..4fdc4a0ae63 100644 --- a/htdocs/compta/paiement/class/paiement.class.php +++ b/htdocs/compta/paiement/class/paiement.class.php @@ -138,8 +138,8 @@ class Paiement extends CommonObject $this->type_libelle = $obj->type_libelle; $this->type_code = $obj->type_code; $this->statut = $obj->statut; - $this->payment_id = $obj->ext_payment_id; - $this->payment_site = $obj->ext_payment_site; + $this->payment_id = $obj->ext_payment_id; + $this->payment_site = $obj->ext_payment_site; $this->bank_account = $obj->fk_account; // deprecated $this->fk_account = $obj->fk_account; @@ -233,11 +233,9 @@ class Paiement extends CommonObject $mtotal = $totalamount; } $note = ($this->note_public?$this->note_public:$this->note); - $payment_id = $this->payment_id ? $this->payment_id : null; - $payment_site = $this->payment_site ? $this->payment_site : null; $sql = "INSERT INTO ".MAIN_DB_PREFIX."paiement (entity, ref, datec, datep, amount, multicurrency_amount, fk_paiement, num_paiement, note, ext_payment_id, ext_payment_site, fk_user_creat)"; - $sql.= " VALUES (".$conf->entity.", '".$this->ref."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', '".$total."', '".$mtotal."', ".$this->paiementid.", '".$this->num_paiement."', '".$this->db->escape($note)."', '".$this->db->escape($payment_id)."', '".$this->db->escape($payment_site)."', ".$user->id.")"; + $sql.= " VALUES (".$conf->entity.", '".$this->ref."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', '".$total."', '".$mtotal."', ".$this->paiementid.", '".$this->num_paiement."', '".$this->db->escape($note)."', ".($this->payment_id?"'".$this->db->escape($this->payment_id)."'":"null").", ".($this->payment_site?"'".$this->db->escape($this->payment_site)."'":"null").", ".$user->id.")"; dol_syslog(get_class($this)."::Create insert paiement", LOG_DEBUG); $resql = $this->db->query($sql); From b462e7b2170e7de3114a4e12548f1f89ae17c2ca Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Wed, 17 Oct 2018 10:01:02 +0200 Subject: [PATCH 034/769] FIX When delete a product, llx_product_association rows are not deleted --- htdocs/product/class/product.class.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index f33029d368a..56227bc5266 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -12,7 +12,7 @@ * Copyright (C) 2014 Henry Florian * Copyright (C) 2014-2016 Philippe Grand * Copyright (C) 2014 Ion agorria - * Copyright (C) 2016-2017 Ferran Marcet + * Copyright (C) 2016-2018 Ferran Marcet * Copyright (C) 2017 Gustavo Novaro * * This program is free software; you can redistribute it and/or modify @@ -1114,6 +1114,19 @@ class Product extends CommonObject } } + // Delete from product_association + if (!$error){ + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_association"; + $sql.= " WHERE fk_product_pere = ".$this->rowid." OR fk_product_fils = ".$this->rowid; + dol_syslog(get_class($this).'::delete', LOG_DEBUG); + $result = $this->db->query($sql); + if (! $result) + { + $error++; + $this->errors[] = $this->db->lasterror(); + } + } + // Delete product if (! $error) { From bdae4e1c4dae0369ef3d0051cf5e8c53572bf7c3 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Wed, 17 Oct 2018 10:04:42 +0200 Subject: [PATCH 035/769] FIX When delete a product, llx_product_association rows are not deleted --- htdocs/product/class/product.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 56227bc5266..9a52722a3c9 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -1117,7 +1117,7 @@ class Product extends CommonObject // Delete from product_association if (!$error){ $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_association"; - $sql.= " WHERE fk_product_pere = ".$this->rowid." OR fk_product_fils = ".$this->rowid; + $sql.= " WHERE fk_product_pere = ".$this->id." OR fk_product_fils = ".$this->id; dol_syslog(get_class($this).'::delete', LOG_DEBUG); $result = $this->db->query($sql); if (! $result) From ffde3534419f28f37f57028405074b7b3a7fb5c2 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Wed, 17 Oct 2018 10:06:06 +0200 Subject: [PATCH 036/769] FIX When delete a product, llx_product_association rows are not deleted --- htdocs/product/class/product.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 9a52722a3c9..ce3658c9a72 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -1117,7 +1117,7 @@ class Product extends CommonObject // Delete from product_association if (!$error){ $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_association"; - $sql.= " WHERE fk_product_pere = ".$this->id." OR fk_product_fils = ".$this->id; + $sql.= " WHERE fk_product_pere = ".$id." OR fk_product_fils = ".$id; dol_syslog(get_class($this).'::delete', LOG_DEBUG); $result = $this->db->query($sql); if (! $result) From aea7299970f6bd48b101474074868f8f9c611e45 Mon Sep 17 00:00:00 2001 From: gauthier Date: Wed, 17 Oct 2018 15:49:08 +0200 Subject: [PATCH 037/769] FIX : use discount with multicurrency --- htdocs/compta/facture/card.php | 6 ++++++ htdocs/compta/facture/class/facture.class.php | 6 +++--- htdocs/core/class/discount.class.php | 4 +++- htdocs/societe/class/societe.class.php | 6 +++--- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 1d22d21d574..c92a182124e 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -693,6 +693,9 @@ if (empty($reshook)) $amount_ht[$line->tva_tx] += $line->total_ht; $amount_tva[$line->tva_tx] += $line->total_tva; $amount_ttc[$line->tva_tx] += $line->total_ttc; + $multicurrency_amount_ht[$line->tva_tx] += $line->multicurrency_total_ht; + $multicurrency_amount_tva[$line->tva_tx] += $line->multicurrency_total_tva; + $multicurrency_amount_ttc[$line->tva_tx] += $line->multicurrency_total_ttc; $i ++; } } @@ -748,6 +751,9 @@ if (empty($reshook)) $discount->amount_ht = abs($amount_ht[$tva_tx]); $discount->amount_tva = abs($amount_tva[$tva_tx]); $discount->amount_ttc = abs($amount_ttc[$tva_tx]); + $discount->multicurrency_amount_ht = abs($multicurrency_amount_ht[$tva_tx]); + $discount->multicurrency_amount_tva = abs($multicurrency_amount_tva[$tva_tx]); + $discount->multicurrency_amount_ttc = abs($multicurrency_amount_ttc[$tva_tx]); $discount->tva_tx = abs($tva_tx); $result = $discount->create($user); diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 9bf6d4b876c..f0601ba37af 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -1700,9 +1700,9 @@ class Facture extends CommonInvoice $facligne->total_ttc = -$remise->amount_ttc; $facligne->multicurrency_subprice = -$remise->multicurrency_subprice; - $facligne->multicurrency_total_ht = -$remise->multicurrency_total_ht; - $facligne->multicurrency_total_tva = -$remise->multicurrency_total_tva; - $facligne->multicurrency_total_ttc = -$remise->multicurrency_total_ttc; + $facligne->multicurrency_total_ht = -$remise->multicurrency_amount_ht; + $facligne->multicurrency_total_tva = -$remise->multicurrency_amount_tva; + $facligne->multicurrency_total_ttc = -$remise->multicurrency_amount_ttc; $lineid=$facligne->insert(); if ($lineid > 0) diff --git a/htdocs/core/class/discount.class.php b/htdocs/core/class/discount.class.php index 37dedea8b6b..e1796c38421 100644 --- a/htdocs/core/class/discount.class.php +++ b/htdocs/core/class/discount.class.php @@ -103,7 +103,7 @@ class DiscountAbsolute $this->amount_tva = $obj->amount_tva; $this->amount_ttc = $obj->amount_ttc; - $this->multicurrency_amount_ht = $obj->multicurrency_amount_ht; + $this->multicurrency_amount_ht = $this->multicurrency_subprice = $obj->multicurrency_amount_ht; $this->multicurrency_amount_tva = $obj->multicurrency_amount_tva; $this->multicurrency_amount_ttc = $obj->multicurrency_amount_ttc; @@ -161,10 +161,12 @@ class DiscountAbsolute $sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_remise_except"; $sql.= " (entity, datec, fk_soc, fk_user, description,"; $sql.= " amount_ht, amount_tva, amount_ttc, tva_tx,"; + $sql.= " multicurrency_amount_ht, multicurrency_amount_tva, multicurrency_amount_ttc,"; $sql.= " fk_facture_source"; $sql.= ")"; $sql.= " VALUES (".$conf->entity.", '".$this->db->idate($this->datec!=''?$this->datec:dol_now())."', ".$this->fk_soc.", ".$user->id.", '".$this->db->escape($this->description)."',"; $sql.= " ".$this->amount_ht.", ".$this->amount_tva.", ".$this->amount_ttc.", ".$this->tva_tx.","; + $sql.= " ".$this->multicurrency_amount_ht.", ".$this->multicurrency_amount_tva.", ".$this->multicurrency_amount_ttc.", "; $sql.= " ".($this->fk_facture_source ? "'".$this->db->escape($this->fk_facture_source)."'":"null"); $sql.= ")"; diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 843803abca8..2a488aacf44 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -1680,9 +1680,9 @@ class Societe extends CommonObject $discount = new DiscountAbsolute($this->db); $discount->fk_soc=$this->id; - $discount->amount_ht=price2num($remise,'MT'); - $discount->amount_tva=price2num($remise*$tva_tx/100,'MT'); - $discount->amount_ttc=price2num($discount->amount_ht+$discount->amount_tva,'MT'); + $discount->amount_ht=$discount->multicurrency_amount_ht=price2num($remise,'MT'); + $discount->amount_tva=$discount->multicurrency_amount_tva=price2num($remise*$tva_tx/100,'MT'); + $discount->amount_ttc=$discount->multicurrency_amount_ttc=price2num($discount->amount_ht+$discount->amount_tva,'MT'); $discount->tva_tx=price2num($tva_tx,'MT'); $discount->description=$desc; $result=$discount->create($user); From d86c44e641b336a46a6b673298db44704a019090 Mon Sep 17 00:00:00 2001 From: atm-greg Date: Wed, 17 Oct 2018 15:55:46 +0200 Subject: [PATCH 038/769] Add conf to disable a thirdparty type --- htdocs/langs/en_US/admin.lang | 1 + htdocs/societe/admin/societe.php | 34 ++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 4630757dbad..4054ca8c254 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1821,3 +1821,4 @@ DisabledResourceLinkUser=Disable feature to link a resource to users DisabledResourceLinkContact=Disable feature to link a resource to contacts ConfirmUnactivation=Confirm module reset OnMobileOnly=On small screen (smartphone) only +DisableProspectCustomerType=Disable the "Prospect/customer" thirdparty type diff --git a/htdocs/societe/admin/societe.php b/htdocs/societe/admin/societe.php index 3a7b26505c7..49a9538e225 100644 --- a/htdocs/societe/admin/societe.php +++ b/htdocs/societe/admin/societe.php @@ -211,6 +211,21 @@ if ($action=="setaskforshippingmet") { } } +//Activate "Disable prospect/customer type" +if ($action=="setdisableprospectcustomer") { + $setdisableprospectcustomer = GETPOST('value','int'); + $res = dolibarr_set_const($db, "SOCIETE_DISABLE_PROSPECTSCUSTOMERS", $setdisableprospectcustomer,'yesno',0,'',$conf->entity); + if (! $res > 0) $error++; + if (! $error) + { + setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); + } + else + { + setEventMessages($langs->trans("Error"), null, 'errors'); + } +} + //Activate ProfId unique if ($action == 'setprofid') { @@ -821,6 +836,25 @@ else print ''; print ''; +// Disable Prospect/Customer thirdparty type +print ''; +print ''.$langs->trans("DisableProspectCustomerType").''; +print ' '; +print ''; +if (!empty($conf->global->SOCIETE_DISABLE_PROSPECTSCUSTOMERS)) +{ + print ''; + print img_picto($langs->trans("Activated"),'switch_on'); + +} +else +{ + print ''; + print img_picto($langs->trans("Disabled"),'switch_off'); +} +print ''; +print ''; + /*print ''; print ''.$langs->trans("OnSearchAndListGoOnCustomerOrSupplierCard").''; print ' '; From 456bdb5b8c6020480899165f4cbb34ee8ce40fd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 20:04:48 +0200 Subject: [PATCH 039/769] do not trim int --- htdocs/ticket/class/ticketlogs.class.php | 33 ++++++++++++------------ 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/htdocs/ticket/class/ticketlogs.class.php b/htdocs/ticket/class/ticketlogs.class.php index 79a4c95efed..68ce6481b31 100644 --- a/htdocs/ticket/class/ticketlogs.class.php +++ b/htdocs/ticket/class/ticketlogs.class.php @@ -1,5 +1,6 @@ +/* Copyright (C) 2013-2016 Jean-François FERRY + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -63,12 +64,12 @@ class Ticketlogs// extends CommonObject public $id; /** - * @var int ID + * @var string trackid */ public $fk_track_id; /** - * @var int ID + * @var int user create ID */ public $fk_user_create; @@ -104,7 +105,7 @@ class Ticketlogs// extends CommonObject } if (isset($this->fk_user_create)) { - $this->fk_user_create = trim($this->fk_user_create); + $this->fk_user_create = (int) $this->fk_user_create; } if (isset($this->message)) { @@ -143,7 +144,7 @@ class Ticketlogs// extends CommonObject if (!$error) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX . "ticket_logs"); - if (!$notrigger) { + //if (!$notrigger) { // Uncomment this and change MYOBJECT to your own tag if you // want this action calls a trigger. @@ -153,7 +154,7 @@ class Ticketlogs// extends CommonObject //$result=$interface->run_triggers('MYOBJECT_CREATE',$this,$user,$langs,$conf); //if ($result < 0) { $error++; $this->errors=$interface->errors; } //// End call triggers - } + //} } // Commit or rollback @@ -232,7 +233,7 @@ class Ticketlogs// extends CommonObject } if (isset($this->fk_user_create)) { - $this->fk_user_create = trim($this->fk_user_create); + $this->fk_user_create = (int) $this->fk_user_create; } if (isset($this->message)) { @@ -261,8 +262,8 @@ class Ticketlogs// extends CommonObject $this->errors[] = "Error " . $this->db->lasterror(); } - if (!$error) { - if (!$notrigger) { + //if (!$error) { + //if (!$notrigger) { // Uncomment this and change MYOBJECT to your own tag if you // want this action calls a trigger. @@ -272,8 +273,8 @@ class Ticketlogs// extends CommonObject //$result=$interface->run_triggers('MYOBJECT_MODIFY',$this,$user,$langs,$conf); //if ($result < 0) { $error++; $this->errors=$interface->errors; } //// End call triggers - } - } + //} + //} // Commit or rollback if ($error) { @@ -303,8 +304,8 @@ class Ticketlogs// extends CommonObject $this->db->begin(); - if (!$error) { - if (!$notrigger) { + //if (!$error) { + //if (!$notrigger) { // Uncomment this and change MYOBJECT to your own tag if you // want this action calls a trigger. @@ -314,8 +315,8 @@ class Ticketlogs// extends CommonObject //$result=$interface->run_triggers('MYOBJECT_DELETE',$this,$user,$langs,$conf); //if ($result < 0) { $error++; $this->errors=$interface->errors; } //// End call triggers - } - } + //} + //} if (!$error) { $sql = "DELETE FROM " . MAIN_DB_PREFIX . "ticket_logs"; @@ -354,7 +355,7 @@ class Ticketlogs// extends CommonObject $this->id = 0; $this->fk_track_id = ''; - $this->fk_user_create = ''; + $this->fk_user_create = 1; $this->datec = ''; $this->message = ''; } From 47048baa36fbf642a23cb5c4c63cbcdf3da657ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 20:14:01 +0200 Subject: [PATCH 040/769] do not trim int --- htdocs/projet/class/task.class.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index 84829bf85cb..a4ef7965851 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -2,6 +2,7 @@ /* Copyright (C) 2008-2014 Laurent Destailleur * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2014 Marcos García + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -340,7 +341,7 @@ class Task extends CommonObject // Clean parameters if (isset($this->fk_project)) $this->fk_project=trim($this->fk_project); if (isset($this->ref)) $this->ref=trim($this->ref); - if (isset($this->fk_task_parent)) $this->fk_task_parent=trim($this->fk_task_parent); + if (isset($this->fk_task_parent)) $this->fk_task_parent = (int) $this->fk_task_parent; if (isset($this->label)) $this->label=trim($this->label); if (isset($this->description)) $this->description=trim($this->description); if (isset($this->duration_effective)) $this->duration_effective=trim($this->duration_effective); @@ -705,12 +706,12 @@ class Task extends CommonObject $this->fk_projet=''; $this->ref='TK01'; - $this->fk_task_parent=''; + $this->fk_task_parent=null; $this->label='Specimen task TK01'; $this->duration_effective=''; - $this->fk_user_creat=''; + $this->fk_user_creat=null; $this->progress='25'; - $this->fk_statut=''; + $this->fk_statut=null; $this->note='This is a specimen task not'; } @@ -1999,4 +2000,4 @@ class Task extends CommonObject return ($datetouse > 0 && ($datetouse < ($now - $conf->projet->task->warning_delay))); } -} \ No newline at end of file +} From 393303fe31d816cf8c0f4e8d0b79a08fa9d97b73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 20:17:43 +0200 Subject: [PATCH 041/769] do not trim int --- .../stock/class/productstockentrepot.class.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/product/stock/class/productstockentrepot.class.php b/htdocs/product/stock/class/productstockentrepot.class.php index 6b12af88c7a..740afcb5f04 100644 --- a/htdocs/product/stock/class/productstockentrepot.class.php +++ b/htdocs/product/stock/class/productstockentrepot.class.php @@ -93,8 +93,8 @@ class ProductStockEntrepot extends CommonObject // Clean parameters - if (isset($this->fk_product)) $this->fk_product = trim($this->fk_product); - if (isset($this->fk_entrepot)) $this->fk_entrepot = trim($this->fk_entrepot); + if (isset($this->fk_product)) $this->fk_product = (int) $this->fk_product; + if (isset($this->fk_entrepot)) $this->fk_entrepot = (int) $this->fk_entrepot; if (isset($this->seuil_stock_alerte)) $this->seuil_stock_alerte = trim($this->seuil_stock_alerte); if (isset($this->desiredstock)) $this->desiredstock = trim($this->desiredstock); if (isset($this->import_key)) $this->import_key = trim($this->import_key); @@ -317,8 +317,8 @@ class ProductStockEntrepot extends CommonObject // Clean parameters - if (isset($this->fk_product)) $this->fk_product = trim($this->fk_product); - if (isset($this->fk_entrepot)) $this->fk_entrepot = trim($this->fk_entrepot); + if (isset($this->fk_product)) $this->fk_product = (int) $this->fk_product; + if (isset($this->fk_entrepot)) $this->fk_entrepot = (int) $this->fk_entrepot; if (isset($this->seuil_stock_alerte)) $this->seuil_stock_alerte = trim($this->seuil_stock_alerte); if (isset($this->desiredstock)) $this->desiredstock = trim($this->desiredstock); if (isset($this->import_key)) $this->import_key = trim($this->import_key); @@ -575,8 +575,8 @@ class ProductStockEntrepot extends CommonObject $this->id = 0; $this->tms = ''; - $this->fk_product = ''; - $this->fk_entrepot = ''; + $this->fk_product = null; + $this->fk_entrepot = null; $this->seuil_stock_alerte = ''; $this->desiredstock = ''; $this->import_key = ''; From ebc5cb5a96d2e99de95202a6cadb8ed5561e5495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 20:24:43 +0200 Subject: [PATCH 042/769] do not trim int --- .../product/stock/class/productlot.class.php | 37 +++++++++---------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/htdocs/product/stock/class/productlot.class.php b/htdocs/product/stock/class/productlot.class.php index 1530e068856..d61630eb88e 100644 --- a/htdocs/product/stock/class/productlot.class.php +++ b/htdocs/product/stock/class/productlot.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2015 Florian Henry * Copyright (C) 2015 Raphaël Doursenaud - * Copyright (C) ---Put here your own copyright and developer email--- + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -115,19 +115,19 @@ class Productlot extends CommonObject // Clean parameters if (isset($this->entity)) { - $this->entity = trim($this->entity); + $this->entity = (int) $this->entity; } if (isset($this->fk_product)) { - $this->fk_product = trim($this->fk_product); + $this->fk_product = (int) $this->fk_product; } if (isset($this->batch)) { $this->batch = trim($this->batch); } if (isset($this->fk_user_creat)) { - $this->fk_user_creat = trim($this->fk_user_creat); + $this->fk_user_creat = (int) $this->fk_user_creat; } if (isset($this->fk_user_modif)) { - $this->fk_user_modif = trim($this->fk_user_modif); + $this->fk_user_modif = (int) $this->fk_user_modif; } if (isset($this->import_key)) { $this->import_key = trim($this->import_key); @@ -296,19 +296,19 @@ class Productlot extends CommonObject // Clean parameters if (isset($this->entity)) { - $this->entity = trim($this->entity); + $this->entity = (int) $this->entity; } if (isset($this->fk_product)) { - $this->fk_product = trim($this->fk_product); + $this->fk_product = (int) $this->fk_product; } if (isset($this->batch)) { $this->batch = trim($this->batch); } if (isset($this->fk_user_creat)) { - $this->fk_user_creat = trim($this->fk_user_creat); + $this->fk_user_creat = (int) $this->fk_user_creat; } if (isset($this->fk_user_modif)) { - $this->fk_user_modif = trim($this->fk_user_modif); + $this->fk_user_modif = (int) $this->fk_user_modif; } if (isset($this->import_key)) { $this->import_key = trim($this->import_key); @@ -358,9 +358,6 @@ class Productlot extends CommonObject } if (!$error && !$notrigger) { - // Uncomment this and change MYOBJECT to your own tag if you - // want this action calls a trigger. - // Call triggers $result=$this->call_trigger('PRODUCTLOT_MODIFY',$user); if ($result < 0) { $error++; } @@ -395,8 +392,8 @@ class Productlot extends CommonObject $this->db->begin(); - if (!$error) { - if (!$notrigger) { + //if (!$error) { + //if (!$notrigger) { // Uncomment this and change MYOBJECT to your own tag if you // want this action calls a trigger. @@ -404,8 +401,8 @@ class Productlot extends CommonObject //$result=$this->call_trigger('MYOBJECT_DELETE',$user); //if ($result < 0) { $error++; //Do also what you must do to rollback action if trigger fail} //// End call triggers - } - } + //} + //} if (!$error) { $sql = 'DELETE FROM ' . MAIN_DB_PREFIX . $this->table_element; @@ -587,15 +584,15 @@ class Productlot extends CommonObject { $this->id = 0; - $this->entity = ''; - $this->fk_product = ''; + $this->entity = null; + $this->fk_product = null; $this->batch = ''; $this->eatby = ''; $this->sellby = ''; $this->datec = ''; $this->tms = ''; - $this->fk_user_creat = ''; - $this->fk_user_modif = ''; + $this->fk_user_creat = null; + $this->fk_user_modif = null; $this->import_key = ''; } } From db732ddeddcfd3c6ae4d6ea56f5790eeb690d42e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 17 Oct 2018 20:36:45 +0200 Subject: [PATCH 043/769] code comment --- htdocs/categories/class/categorie.class.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index 15cb254ed7d..a9432234793 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -10,6 +10,7 @@ * Copyright (C) 2015 Marcos García * Copyright (C) 2015 Raphaël Doursenaud * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -805,7 +806,7 @@ class Categorie extends CommonObject * @param string $sortorder Sort order * @param int $limit Limit for list * @param int $page Page number - * @return array Array of categories + * @return array|int Array of categories, 0 if no cat, -1 on error */ function getListForItem($id, $type='customer', $sortfield = "s.rowid", $sortorder = 'ASC', $limit = 0, $page = 0) { @@ -974,7 +975,7 @@ class Categorie extends CommonObject * @param string $type Type of categories ('customer', 'supplier', 'contact', 'product', 'member') or (0, 1, 2, ...). * @param int $markafterid Removed all categories including the leaf $markafterid in category tree. * - * @return array Array of categories. this->cats and this->motherof are set. + * @return array|int Array of categories. this->cats and this->motherof are set, -1 on error */ function get_full_arbo($type, $markafterid=0) { @@ -1126,7 +1127,7 @@ class Categorie extends CommonObject * * @param int $type Type of category (0, 1, ...) * @param boolean $parent Just parent categories if true - * @return array Table of Object Category + * @return array|int Table of Object Category, -1 on error */ function get_all_categories($type=null, $parent=false) { @@ -1441,7 +1442,7 @@ class Categorie extends CommonObject * @param string $type Type of category ('member', 'customer', 'supplier', 'product', 'contact'). Old mode (0, 1, 2, ...) is deprecated. * @param boolean $exact Exact string search (true/false) * @param boolean $case Case sensitive (true/false) - * @return array Array of category id + * @return array|int Array of category id, -1 if error */ function rechercher($id, $nom, $type, $exact = false, $case = false) { From 3f136ee58d57c005de34c9781526f2433d2f10e5 Mon Sep 17 00:00:00 2001 From: Scott Albertson Date: Wed, 17 Oct 2018 12:28:05 -0700 Subject: [PATCH 044/769] Add "Reviewed by Hound" badge --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 776e2b02432..c38d0ca7dd1 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # DOLIBARR ERP & CRM ![Downloads per day](https://img.shields.io/sourceforge/dm/dolibarr.svg) +[![Reviewed by Hound](https://img.shields.io/badge/Reviewed_by-Hound-8E64B0.svg)](https://houndci.com) |6|7|8|develop| |----------|----------|----------|----------| From fd989230a4b439c90b3e5b88bf8d7cd5fda209f2 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Thu, 18 Oct 2018 09:09:42 +0200 Subject: [PATCH 045/769] New: works with variants: -Child label change if parent changes --- htdocs/variants/class/ProductCombination.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/variants/class/ProductCombination.class.php b/htdocs/variants/class/ProductCombination.class.php index 8908bfa4d2d..77acc80483c 100644 --- a/htdocs/variants/class/ProductCombination.class.php +++ b/htdocs/variants/class/ProductCombination.class.php @@ -330,6 +330,7 @@ class ProductCombination $child->price_autogen = $parent->price_autogen; $child->weight = $parent->weight + $this->variation_weight; $child->weight_units = $parent->weight_units; + $child->label = $parent->label; if ($child->update($child->id, $user) > 0) { From 6c76f9517f259c14a4dc89121b846aabed2c2dbf Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Thu, 18 Oct 2018 10:26:21 +0200 Subject: [PATCH 046/769] New: works with variants: -Child label with combination labels --- .../class/ProductCombination.class.php | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/htdocs/variants/class/ProductCombination.class.php b/htdocs/variants/class/ProductCombination.class.php index 77acc80483c..5385664abd4 100644 --- a/htdocs/variants/class/ProductCombination.class.php +++ b/htdocs/variants/class/ProductCombination.class.php @@ -330,7 +330,8 @@ class ProductCombination $child->price_autogen = $parent->price_autogen; $child->weight = $parent->weight + $this->variation_weight; $child->weight_units = $parent->weight_units; - $child->label = $parent->label; + $varlabel = $this->getLabelOfCombination($this->fk_product_child); + $child->label = $parent->label.$varlabel; if ($child->update($child->id, $user) > 0) { @@ -683,4 +684,39 @@ WHERE c.fk_product_parent = ".(int) $productid." AND p.tosell = 1"; return 1; } + + /** + * Return label for combinations + * @param int $prod_child id of child + * @return string combination label + */ + public function getLabelOfCombination($prod_child) + { + $label = ''; + $sql = 'SELECT pav.value AS label'; + $sql.= ' FROM llx_product_attribute_combination pac'; + $sql.= ' INNER JOIN llx_product_attribute_combination2val pac2v ON pac2v.fk_prod_combination=pac.rowid'; + $sql.= ' INNER JOIN llx_product_attribute_value pav ON pav.rowid=pac2v.fk_prod_attr_val'; + $sql.= ' WHERE pac.fk_product_child='.$prod_child; + + $resql = $this->db->query($sql); + if ($resql) { + $num = $this->db->num_rows($resql); + + $i = 0; + + while ($i < $num) + { + $obj = $this->db->fetch_object($resql); + + if ($obj->label) + { + $label.=' '.$obj->label; + } + $i++; + } + + } + return $label; + } } From c588f5e6c09ee98d586818dcdfe8f4bfae8599a6 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Thu, 18 Oct 2018 10:55:27 +0200 Subject: [PATCH 047/769] New: works with variants: -Child label with combination labels --- htdocs/variants/class/ProductCombination.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/variants/class/ProductCombination.class.php b/htdocs/variants/class/ProductCombination.class.php index 5385664abd4..130b18dafc5 100644 --- a/htdocs/variants/class/ProductCombination.class.php +++ b/htdocs/variants/class/ProductCombination.class.php @@ -694,9 +694,9 @@ WHERE c.fk_product_parent = ".(int) $productid." AND p.tosell = 1"; { $label = ''; $sql = 'SELECT pav.value AS label'; - $sql.= ' FROM llx_product_attribute_combination pac'; - $sql.= ' INNER JOIN llx_product_attribute_combination2val pac2v ON pac2v.fk_prod_combination=pac.rowid'; - $sql.= ' INNER JOIN llx_product_attribute_value pav ON pav.rowid=pac2v.fk_prod_attr_val'; + $sql.= ' FROM '.MAIN_DB_PREFIX.'product_attribute_combination pac'; + $sql.= ' INNER JOIN '.MAIN_DB_PREFIX.'product_attribute_combination2val pac2v ON pac2v.fk_prod_combination=pac.rowid'; + $sql.= ' INNER JOIN '.MAIN_DB_PREFIX.'product_attribute_value pav ON pav.rowid=pac2v.fk_prod_attr_val'; $sql.= ' WHERE pac.fk_product_child='.$prod_child; $resql = $this->db->query($sql); From 52ad5c5565a8b3eabb0e253d26fc2deec48a6dce Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Thu, 18 Oct 2018 12:21:39 +0200 Subject: [PATCH 048/769] New: works with variants: -To edit child price and weight impacts better to see in tab the father price and weight --- htdocs/variants/combinations.php | 60 ++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/htdocs/variants/combinations.php b/htdocs/variants/combinations.php index 848e5ee70fe..fb23921be25 100644 --- a/htdocs/variants/combinations.php +++ b/htdocs/variants/combinations.php @@ -318,6 +318,66 @@ if (! empty($id) || ! empty($ref)) dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref', '', '', '', 0, '', '', 1); + print '
'; + + print '
'; + print ''; + + // TVA + print ''; + + // Price + print ''; + + // Price minimum + print ''; + + // Weight + print '\n"; + + + + + print "
' . $langs->trans("DefaultTaxRate") . ''; + + $positiverates=''; + if (price2num($object->tva_tx)) $positiverates.=($positiverates?'/':'').price2num($object->tva_tx); + if (price2num($object->localtax1_type)) $positiverates.=($positiverates?'/':'').price2num($object->localtax1_tx); + if (price2num($object->localtax2_type)) $positiverates.=($positiverates?'/':'').price2num($object->localtax2_tx); + if (empty($positiverates)) $positiverates='0'; + echo vatrate($positiverates.($object->default_vat_code?' ('.$object->default_vat_code.')':''), '%', $object->tva_npr); + /* + if ($object->default_vat_code) + { + print vatrate($object->tva_tx, true) . ' ('.$object->default_vat_code.')'; + } + else print vatrate($object->tva_tx, true, $object->tva_npr, true);*/ + print '
' . $langs->trans("SellingPrice") . ''; + if ($object->price_base_type == 'TTC') { + print price($object->price_ttc) . ' ' . $langs->trans($object->price_base_type); + } else { + print price($object->price) . ' ' . $langs->trans($object->price_base_type); + } + print '
' . $langs->trans("MinPrice") . ''; + if ($object->price_base_type == 'TTC') { + print price($object->price_min_ttc) . ' ' . $langs->trans($object->price_base_type); + } else { + print price($object->price_min) . ' ' . $langs->trans($object->price_base_type); + } + print '
'.$langs->trans("Weight").''; + if ($object->weight != '') + { + print $object->weight." ".measuring_units_string($object->weight_units,"weight"); + } + else + { + print ' '; + } + print "
\n"; + + print '
'; + print '
'; + dol_fiche_end(); From b396aaebc5d54fb95d1d2a1cf7c7394fe5f9e62a Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Thu, 18 Oct 2018 16:31:37 +0200 Subject: [PATCH 049/769] Fix delete without any selected line --- htdocs/takepos/invoice.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index cdfe47a756f..c71f7f861a3 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -115,7 +115,7 @@ if ($action=="deleteline"){ $row = $db->fetch_array ($resql); $deletelineid=$row[0]; $invoice->deleteline($deletelineid); - $invoice->fetch($deletelineid); + $invoice->fetch($placeid); } } From 7cafdc4d9a1610a1a52c831cf8be85e3a1008a9d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 18 Oct 2018 16:56:43 +0200 Subject: [PATCH 050/769] Fix phpcs --- htdocs/compta/paiement/class/paiement.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php index cc60c2cba8e..a7e7c48a370 100644 --- a/htdocs/compta/paiement/class/paiement.class.php +++ b/htdocs/compta/paiement/class/paiement.class.php @@ -233,11 +233,11 @@ class Paiement extends CommonObject $mtotal = $totalamount; } $note = ($this->note_public?$this->note_public:$this->note); - $payment_id = $this->payment_id ? $this->payment_id : null; - $payment_site = $this->payment_site ? $this->payment_site : null; + $payment_id = $this->payment_id ? $this->payment_id : null; + $payment_site = $this->payment_site ? $this->payment_site : null; $sql = "INSERT INTO ".MAIN_DB_PREFIX."paiement (entity, ref, datec, datep, amount, multicurrency_amount, fk_paiement, num_paiement, note, ext_payment_id, ext_payment_site, fk_user_creat)"; - $sql.= " VALUES (".$conf->entity.", '".$this->ref."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', '".$total."', '".$mtotal."', ".$this->paiementid.", '".$this->num_paiement."', '".$this->db->escape($note)."', '".$this->payment_id."', '".$this->payment_site."', ".$user->id.")"; + $sql.= " VALUES (".$conf->entity.", '".$this->db->escape($this->ref)."', '". $this->db->idate($now)."', '".$this->db->idate($this->datepaye)."', ".$total.", ".$mtotal.", ".$this->paiementid.", '".$this->db->escape($this->num_paiement)."', '".$this->db->escape($note)."', '".$this->db->escape($this->payment_id)."', '".$this->db->escape($this->payment_site)."', ".$user->id.")"; dol_syslog(get_class($this)."::Create insert paiement", LOG_DEBUG); $resql = $this->db->query($sql); From 05326e271da8f2f0b2008bdfdc9d90f2ca957f09 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 18 Oct 2018 17:15:26 +0200 Subject: [PATCH 051/769] FIX Filter on invoice type --- htdocs/compta/facture/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 78576e4c00d..35338722353 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -422,7 +422,7 @@ if ($filtre) } if ($search_ref) $sql .= natural_search('f.facnumber', $search_ref); if ($search_refcustomer) $sql .= natural_search('f.ref_client', $search_refcustomer); -if ($search_type != '') $sql.=" AND f.type IN (".$db->escape($search_type).")"; +if ($search_type != '' && $search_type != '-1') $sql.=" AND f.type IN (".$db->escape($search_type).")"; if ($search_project) $sql .= natural_search('p.ref', $search_project); if ($search_societe) $sql .= natural_search('s.nom', $search_societe); if ($search_town) $sql.= natural_search('s.town', $search_town); From 66cb06eca9e876111cc27737e12cffc0a2fb93ae Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 18 Oct 2018 17:33:14 +0200 Subject: [PATCH 052/769] NEW Top menu is always on screen with MD theme. --- htdocs/theme/md/style.css.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 3b67c895e0d..2ec97ec7a9d 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1205,6 +1205,13 @@ td.showDragHandle { .side-nav-vert { margin-left: 228px; } +global->THEME_DISABLE_STICKY_TOPMENU)) { ?> +.side-nav-vert { + position: sticky; + top: 0px; + z-index: 210; +} + /* For smartphone (testmenuhider is on) */ browser->layout, array('phone','tablet')) && ((GETPOST('testmenuhider') || ! empty($conf->global->MAIN_TESTMENUHIDER)) && empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER))) { ?> From d4bc53660bf6daee7593d614a79576bfe0dfb568 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 18 Oct 2018 21:22:30 +0200 Subject: [PATCH 053/769] Code comment and debug filemanager --- htdocs/core/ajax/ajaxdirpreview.php | 24 ++++++- htdocs/core/ajax/ajaxdirtree.php | 82 ++++++++++++++++++----- htdocs/core/tpl/filemanager.tpl.php | 21 ++++-- htdocs/ecm/tpl/enablefiletreeajax.tpl.php | 8 ++- 4 files changed, 106 insertions(+), 29 deletions(-) diff --git a/htdocs/core/ajax/ajaxdirpreview.php b/htdocs/core/ajax/ajaxdirpreview.php index 8d1c5cd712c..82f83595537 100644 --- a/htdocs/core/ajax/ajaxdirpreview.php +++ b/htdocs/core/ajax/ajaxdirpreview.php @@ -82,9 +82,16 @@ else // For no ajax call dol_print_error($db,$ecmdir->error); exit; } + + $relativepath=$ecmdir->getRelativePath(); // Example 'mydir/' } - $relativepath=$ecmdir->getRelativePath(); - $upload_dir = $rootdirfordoc.'/'.$relativepath; + elseif (GETPOST('section_dir')) + { + $relativepath=GETPOST('section_dir'); + } + //var_dump($section.'-'.GETPOST('section_dir').'-'.$relativepath); + + $upload_dir = $rootdirfordoc.'/'.$relativepath; } if (empty($url)) @@ -226,7 +233,18 @@ if ($type == 'directory') { if ($module == 'medias') { - $relativepath=GETPOST('file','alpha'); + /* + $_POST is array like + 'token' => string '062380e11b7dcd009d07318b57b71750' (length=32) + 'action' => string 'file_manager' (length=12) + 'website' => string 'template' (length=8) + 'pageid' => string '124' (length=3) + 'section_dir' => string 'mydir/' (length=3) + 'section_id' => string '0' (length=1) + 'max_file_size' => string '2097152' (length=7) + 'sendit' => string 'Envoyer fichier' (length=15) + */ + $relativepath=GETPOST('file','alpha')?GETPOST('file','alpha'):GETPOST('section_dir','alpha'); if ($relativepath && $relativepath!= '/') $relativepath.='/'; $upload_dir = $dolibarr_main_data_root.'/'.$module.'/'.$relativepath; if (GETPOSTISSET('website') || GETPOSTISSET('file_manager')) diff --git a/htdocs/core/ajax/ajaxdirtree.php b/htdocs/core/ajax/ajaxdirtree.php index 4b588751829..a55df4a1038 100644 --- a/htdocs/core/ajax/ajaxdirtree.php +++ b/htdocs/core/ajax/ajaxdirtree.php @@ -30,6 +30,7 @@ if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU','1'); if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML','1'); if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); + if (! isset($mode) || $mode != 'noajax') // For ajax call { $res=@include '../../main.inc.php'; @@ -39,16 +40,26 @@ if (! isset($mode) || $mode != 'noajax') // For ajax call include_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php'; include_once DOL_DOCUMENT_ROOT.'/ecm/class/ecmdirectory.class.php'; + //if (GETPOST('preopened')) { $_GET['dir'] = $_POST['dir'] = '/bbb/'; } + $openeddir = GETPOST('openeddir'); $modulepart= GETPOST('modulepart'); $selecteddir = jsUnEscape(GETPOST('dir')); // relative path. We must decode using same encoding function used by javascript: escape() + + $preopened = GETPOST('preopened'); + if ($selecteddir != '/') $selecteddir = preg_replace('/\/$/','',$selecteddir); // We removed last '/' except if it is '/' } else // For no ajax call { + //if (GETPOST('preopened')) { $_GET['dir'] = $_POST['dir'] = GETPOST('preopened'); } + $openeddir = GETPOST('openeddir'); $modulepart= GETPOST('modulepart'); $selecteddir = GETPOST('dir'); + + $preopened = GETPOST('preopened'); + if ($selecteddir != '/') $selecteddir = preg_replace('/\/$/','',$selecteddir); // We removed last '/' except if it is '/' if (empty($url)) $url=DOL_URL_ROOT.'/ecm/index.php'; } @@ -58,8 +69,16 @@ $langs->load("ecm"); // Define fullpathselecteddir. $fullpathselecteddir=''; -if ($modulepart == 'ecm') $fullpathselecteddir=$conf->ecm->dir_output.'/'.($selecteddir != '/' ? $selecteddir : ''); -if ($modulepart == 'medias') $fullpathselecteddir=$dolibarr_main_data_root.'/medias/'.($selecteddir != '/' ? $selecteddir : ''); +if ($modulepart == 'ecm') +{ + $fullpathselecteddir=$conf->ecm->dir_output.'/'.($selecteddir != '/' ? $selecteddir : ''); + $fullpathopeneddir=$conf->ecm->dir_output.'/'.($openeddir != '/' ? $openeddir : ''); +} +if ($modulepart == 'medias') +{ + $fullpathselecteddir=$dolibarr_main_data_root.'/medias/'.($selecteddir != '/' ? $selecteddir : ''); + $fullpathopeneddir=$dolibarr_main_data_root.'/medias/'.($openeddir != '/' ? $openeddir : ''); +} // Security: @@ -87,20 +106,20 @@ if ($modulepart == 'medias') * View */ -if (! isset($mode) || $mode != 'noajax') +if (! isset($mode) || $mode != 'noajax') // if ajax mode { top_httphead(); } -//print ''."\n"; +//print ''."\n"; $userstatic=new User($db); $form=new Form($db); $ecmdirstatic = new EcmDirectory($db); -// Load full tree from database. We will use it to define nbofsubdir and nboffilesinsubdir +// Load full tree of ECM module from database. We will use it to define nbofsubdir and nboffilesinsubdir if (empty($sqltree)) $sqltree=$ecmdirstatic->get_full_arbo(0); -// Try to find key into $sqltree +// Try to find selected dir id into $sqltree and save it into $current_ecmdir_id $current_ecmdir_id=-1; foreach($sqltree as $keycursor => $val) { @@ -113,6 +132,25 @@ foreach($sqltree as $keycursor => $val) if (! empty($conf->use_javascript_ajax) && empty($conf->global->MAIN_ECM_DISABLE_JS)) { + +/** + * treeOutputForAbsoluteDir + * + * @param array $sqltree Sqltree + * @param string $selecteddir Selected dir + * @param string $fullpathselecteddir Full path of selected dir + * @param string $modulepart Modulepart + * @param string $websitekey Website key + * @param int $pageid Page id + * @return void + */ +function treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, $modulepart, $websitekey, $pageid) +{ + global $db, $langs, $form; + + $ecmdirstatic = new EcmDirectory($db); + $userstatic = new User($db); + if (file_exists($fullpathselecteddir)) { $files = @scandir($fullpathselecteddir); @@ -172,7 +210,7 @@ if (! empty($conf->use_javascript_ajax) && empty($conf->global->MAIN_ECM_DISABLE $nboffilesinsubdir=$langs->trans("Unknown"); } - print '
'; + if (0) + { + treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, $modulepart, $websitekey, $pageid); + } + //print '
 
'; print "\n"; } } - // Enable jquery handlers on new generated HTML objects (same code than into lib_footer.js.php) - // Because the content is reloaded by ajax call, we must also reenable some jquery hooks - print "\n\n"; - print ''; - echo "\n"; - - } - } - else print "PermissionDenied"; - } - // This ajax service is called only when a directory $selecteddir is opened but not when closed. //print ''; - $formconfirm.= "\n"; + $formconfirm.= "\n"; } else { - $formconfirm.= "\n\n"; + $formconfirm.= "\n\n"; if (empty($disableformtag)) $formconfirm.= '
'."\n"; @@ -4008,7 +4008,7 @@ class Form if (empty($disableformtag)) $formconfirm.= "
\n"; $formconfirm.= '
'; - $formconfirm.= "\n"; + $formconfirm.= "\n"; } return $formconfirm; From e49f2bc5624e75c73c0826721ded739846dbf9a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 22 Oct 2018 22:20:26 +0200 Subject: [PATCH 111/769] Update document_actions_post_headers.tpl.php --- htdocs/core/tpl/document_actions_post_headers.tpl.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/htdocs/core/tpl/document_actions_post_headers.tpl.php index aa7caaa1e87..429fe8ac682 100644 --- a/htdocs/core/tpl/document_actions_post_headers.tpl.php +++ b/htdocs/core/tpl/document_actions_post_headers.tpl.php @@ -52,7 +52,7 @@ if (in_array($modulepart, array('product', 'produit', 'societe', 'user', 'ticket if ($action == 'delete') { $langs->load("companies"); // Need for string DeleteFile+ConfirmDeleteFiles - $ret = $form->form_confirm( + print $form->formconfirm( $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&urlfile=' . urlencode(GETPOST("urlfile")) . '&linkid=' . GETPOST('linkid', 'int') . (empty($param)?'':$param), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), @@ -61,7 +61,6 @@ if ($action == 'delete') 0, 1 ); - if ($ret == 'html') print '
'; } $formfile=new FormFile($db); From 90b85c1106efc19855301f2186a97f3aa23f6db7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 22 Oct 2018 22:23:43 +0200 Subject: [PATCH 112/769] Update html.form.class.php --- htdocs/core/class/html.form.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 00184499a9f..03e339eebf4 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3722,6 +3722,7 @@ class Form function form_confirm($page, $title, $question, $action, $formquestion='', $selectedchoice="", $useajax=0, $height=170, $width=500) { // phpcs:enable + dol_syslog(__METHOD__ . ': using form_confirm is deprecated. Use formconfim instead.', LOG_WARNING); print $this->formconfirm($page, $title, $question, $action, $formquestion, $selectedchoice, $useajax, $height, $width); } From 85a94ec5779460b09b3c938969a32f33dd22d176 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 22 Oct 2018 22:40:18 +0200 Subject: [PATCH 113/769] Update view.php --- htdocs/public/ticket/view.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/htdocs/public/ticket/view.php b/htdocs/public/ticket/view.php index b2bb0100d6d..b5288b97a25 100644 --- a/htdocs/public/ticket/view.php +++ b/htdocs/public/ticket/view.php @@ -1,5 +1,6 @@ +/* Copyright (C) 2013-2016 Jean-François FERRY + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -145,10 +146,7 @@ if ($action == "view_ticket" || $action == "add_message" || $action == "close" | if ($display_ticket) { // Confirmation close if ($action == 'close') { - $ret = $form->form_confirm($_SERVER["PHP_SELF"] . "?track_id=" . $track_id, $langs->trans("CloseATicket"), $langs->trans("ConfirmCloseAticket"), "confirm_public_close", '', '', 1); - if ($ret == 'html') { - print '
'; - } + print $form->form_confirm($_SERVER["PHP_SELF"] . "?track_id=" . $track_id, $langs->trans("CloseATicket"), $langs->trans("ConfirmCloseAticket"), "confirm_public_close", '', '', 1); } print '
'; From 5bac6a92e66b2893e30aee4ec9e6d8416d2f9b70 Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Tue, 23 Oct 2018 00:00:05 +0100 Subject: [PATCH 114/769] Fix:empty value instead of 0 for empty links --- htdocs/core/class/commonobject.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 2650c48b573..197f61735c3 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -6219,6 +6219,7 @@ abstract class CommonObject return 'Error bad setup of extrafield'; } } + else $value=''; } elseif ($type == 'text' || $type == 'html') { From 7e7473e7df80d9e4696911b30d9aad9afd68f8ff Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Tue, 23 Oct 2018 01:25:26 +0100 Subject: [PATCH 115/769] New : parameter for getnomurl in field dpecification --- htdocs/core/class/commonobject.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 2650c48b573..bfb657f6216 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -6203,6 +6203,7 @@ abstract class CommonObject $InfoFieldList = explode(":", $param_list[0]); $classname=$InfoFieldList[0]; $classpath=$InfoFieldList[1]; + $getnomurlparam=$InfoFieldList[2]; if (! empty($classpath)) { dol_include_once($InfoFieldList[1]); @@ -6210,7 +6211,7 @@ abstract class CommonObject { $object = new $classname($this->db); $object->fetch($value); - $value=$object->getNomUrl(3); + $value=$object->getNomUrl(!empty($getnomurlparam)?$getnomurlparam:3); } } else From 7bb5e7c31f4a95c27bfbdb311d40312ae9b5bdd9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 11:52:21 +0200 Subject: [PATCH 116/769] Fix responsive --- htdocs/product/list.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/product/list.php b/htdocs/product/list.php index d1ea3d08a4c..7c7619fe0d5 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -866,7 +866,7 @@ if ($resql) // Stock real if (! empty($arrayfields['p.stock']['checked'])) { - print ''; + print ''; if ($obj->fk_product_type != 1) { if ($obj->seuil_stock_alerte != '' && $product_static->stock_reel < (float) $obj->seuil_stock_alerte) print img_warning($langs->trans("StockLowerThanLimit", $obj->seuil_stock_alerte)).' '; @@ -878,7 +878,7 @@ if ($resql) // Stock virtual if (! empty($arrayfields['stock_virtual']['checked'])) { - print ''; + print ''; if ($obj->fk_product_type != 1) { if ($obj->seuil_stock_alerte != '' && $product_static->stock_theorique < (float) $obj->seuil_stock_alerte) print img_warning($langs->trans("StockLowerThanLimit", $obj->seuil_stock_alerte)).' '; From b7d91c30d97823537538b4516d0c32e1b65b1a42 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 12:38:12 +0200 Subject: [PATCH 117/769] FIX missing symbol for indian rupies --- htdocs/install/mysql/data/llx_c_currencies.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/data/llx_c_currencies.sql b/htdocs/install/mysql/data/llx_c_currencies.sql index db1ba19aa6e..5f561f26ba0 100644 --- a/htdocs/install/mysql/data/llx_c_currencies.sql +++ b/htdocs/install/mysql/data/llx_c_currencies.sql @@ -80,7 +80,7 @@ INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'HNL' INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'HKD', '[36]', 1, 'Hong Kong Dollar'); INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'HUF', '[70,116]', 1, 'Hungary Forint'); INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'ISK', '[107,114]', 1, 'Iceland Krona'); -INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'INR', NULL, 1, 'India Rupee'); +INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'INR', '[8377]', 1, 'India Rupee'); INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'IDR', '[82,112]', 1, 'Indonesia Rupiah'); INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'IRR', '[65020]', 1, 'Iran Rial'); INSERT INTO llx_c_currencies ( code_iso, unicode, active, label ) VALUES ( 'IMP', '[163]', 1, 'Isle of Man Pound'); From e0b20c26329343df363624f09fa8a76a68feefd4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 12:49:48 +0200 Subject: [PATCH 118/769] Add holiday for India --- htdocs/core/lib/date.lib.php | 42 +++++++++++++----------------------- 1 file changed, 15 insertions(+), 27 deletions(-) diff --git a/htdocs/core/lib/date.lib.php b/htdocs/core/lib/date.lib.php index f75e53939a2..84048ac9c66 100644 --- a/htdocs/core/lib/date.lib.php +++ b/htdocs/core/lib/date.lib.php @@ -585,6 +585,7 @@ function num_public_holiday($timestampStart, $timestampEnd, $countrycode='FR', $ { $ferie=false; $countryfound=0; + $includesaturdayandsunday=1; $jour = date("d", $timestampStart); $mois = date("m", $timestampStart); @@ -671,12 +672,6 @@ function num_public_holiday($timestampStart, $timestampEnd, $countrycode='FR', $ $mois_pentecote = date("m", $date_pentecote); if($jour_pentecote == $jour && $mois_pentecote == $mois) $ferie=true; // "Pentecote" - - // Calul des samedis et dimanches - $jour_julien = unixtojd($timestampStart); - $jour_semaine = jddayofweek($jour_julien, 0); - if($jour_semaine == 0 || $jour_semaine == 6) $ferie=true; - // Samedi (6) et dimanche (0) } // Pentecoste and Ascensione in Italy go to the sunday after: isn't holiday. @@ -703,12 +698,18 @@ function num_public_holiday($timestampStart, $timestampEnd, $countrycode='FR', $ $mois_paques = date("m", $date_paques); if($jour_paques == $jour && $mois_paques == $mois) $ferie=true; // Paques + } - // Calul des samedis et dimanches - $jour_julien = unixtojd($timestampStart); - $jour_semaine = jddayofweek($jour_julien, 0); - if($jour_semaine == 0 || $jour_semaine == 6) $ferie=true; - //Samedi (6) et dimanche (0) + if ($countrycode == 'IN') + { + $countryfound=1; + + if($jour == 1 && $mois == 1) $ferie=true; // New Year's Day + if($jour == 26 && $mois == 1) $ferie=true; // Republic Day + if($jour == 1 && $mois == 5) $ferie=true; // May Day + if($jour == 15 && $mois == 8) $ferie=true; // Independence Day + if($jour == 2 && $mois == 10) $ferie=true; // Gandhi Jayanti + if($jour == 25 && $mois == 12) $ferie=true; // Christmas } if ($countrycode == 'ES') @@ -746,12 +747,6 @@ function num_public_holiday($timestampStart, $timestampEnd, $countrycode='FR', $ $mois_viernes = date("m", $date_viernes); if($jour_viernes == $jour && $mois_viernes == $mois) $ferie=true; //Viernes Santo - - // Calul des samedis et dimanches - $jour_julien = unixtojd($timestampStart); - $jour_semaine = jddayofweek($jour_julien, 0); - if($jour_semaine == 0 || $jour_semaine == 6) $ferie=true; - //Samedi (6) et dimanche (0) } if ($countrycode == 'AT') @@ -833,22 +828,15 @@ function num_public_holiday($timestampStart, $timestampEnd, $countrycode='FR', $ $mois_fronleichnam = date("m", $date_fronleichnam); if($jour_fronleichnam == $jour && $mois_fronleichnam == $mois) $ferie=true; // Fronleichnam - - // Calul des samedis et dimanches - $jour_julien = unixtojd($timestampStart); - $jour_semaine = jddayofweek($jour_julien, 0); - if($jour_semaine == 0 || $jour_semaine == 6) $ferie=true; - //Samedi (6) et dimanche (0) } - // Cas pays non defini - if (! $countryfound) + // If we have to include saturday and sunday + if ($includesaturdayandsunday) { - // Calul des samedis et dimanches $jour_julien = unixtojd($timestampStart); $jour_semaine = jddayofweek($jour_julien, 0); if($jour_semaine == 0 || $jour_semaine == 6) $ferie=true; - //Samedi (6) et dimanche (0) + //Saturday (6) and Sunday (0) } // On incremente compteur From e40ee879dcfa23cd96ff1da6f5a9d75fa918f863 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Tue, 23 Oct 2018 13:07:09 +0200 Subject: [PATCH 119/769] New: works with variants: - If product is variant disable prices modify - Add function isVariant for knowing if product is a Variant --- htdocs/langs/en_US/products.lang | 1 + htdocs/product/class/product.class.php | 30 ++++++++++++++++ htdocs/product/price.php | 47 ++++++++++++++------------ 3 files changed, 56 insertions(+), 22 deletions(-) diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index 8390eb5439d..95b93aba4e9 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -331,6 +331,7 @@ NbProducts=No. of products ParentProduct=Parent product HideChildProducts=Hide variant products ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? CloneDestinationReference=Destination product reference ErrorCopyProductCombinations=There was an error while copying the product variants diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 2d2e7b75ed2..f8326a60721 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -3529,6 +3529,36 @@ class Product extends CommonObject return $nb; } + + /** + * Return if loaded product is a variant + * + * @return int + */ + function isVariant() + { + global $conf; + if (!empty($conf->variants->enabled)) { + $sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . "product_attribute_combination WHERE fk_product_child = " . $this->id . " AND entity IN (" . getEntity('product') . ")"; + + $query = $this->db->query($sql); + + if ($query) { + if (!$this->db->num_rows($query)) { + return false; + } + return true; + } else { + dol_print_error($this->db); + return -1; + } + + } else { + return false; + } + + } + /** * Return all parent products for current product (first level only) * diff --git a/htdocs/product/price.php b/htdocs/product/price.php index a72ea28928b..9fb67aaa86c 100644 --- a/htdocs/product/price.php +++ b/htdocs/product/price.php @@ -5,7 +5,7 @@ * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2014 Florian Henry - * Copyright (C) 2014-2016 Juanjo Menent + * Copyright (C) 2014-2018 Juanjo Menent * Copyright (C) 2014-2018 Philippe Grand * Copyright (C) 2014 Ion agorria * Copyright (C) 2015 Alexandre Spangaro @@ -1109,30 +1109,33 @@ if (! $action || $action == 'delete' || $action == 'showlog_customer_price' || $ { print "\n" . '
' . "\n"; - if (empty($conf->global->PRODUIT_MULTIPRICES) && empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) - { - if ($user->rights->produit->creer || $user->rights->service->creer) { - print ''; - } - } + if ($object->isVariant()) { + if ($user->rights->produit->creer || $user->rights->service->creer) { + print ''; + } + } else { + if (empty($conf->global->PRODUIT_MULTIPRICES) && empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) { + if ($user->rights->produit->creer || $user->rights->service->creer) { + print ''; + } + } - if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) - { - if ($user->rights->produit->creer || $user->rights->service->creer) { - print ''; - } - } + if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { + if ($user->rights->produit->creer || $user->rights->service->creer) { + print ''; + } + } - if (! empty($conf->global->PRODUIT_MULTIPRICES) || ! empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) - { - if ($user->rights->produit->creer || $user->rights->service->creer) { - print ''; - } + if (!empty($conf->global->PRODUIT_MULTIPRICES) || !empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) { + if ($user->rights->produit->creer || $user->rights->service->creer) { + print ''; + } - if ($user->rights->produit->creer || $user->rights->service->creer) { - print ''; - } - } + if ($user->rights->produit->creer || $user->rights->service->creer) { + print ''; + } + } + } print "\n
\n"; } From c8aa884462776ebea16c0ade7dd0775bbc4eadd4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 17:16:46 +0200 Subject: [PATCH 120/769] Fix search all --- htdocs/asset/list.php | 2 +- htdocs/comm/propal/list.php | 2 +- htdocs/commande/list.php | 2 +- htdocs/compta/bank/list.php | 2 +- htdocs/product/reassort.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/asset/list.php b/htdocs/asset/list.php index bcc2329f870..5dc8b2c6866 100644 --- a/htdocs/asset/list.php +++ b/htdocs/asset/list.php @@ -317,7 +317,7 @@ include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php'; if ($sall) { foreach($fieldstosearchall as $key => $val) $fieldstosearchall[$key]=$langs->trans($val); - print '
'.$langs->trans("FilterOnInto", $all) . join(', ',$fieldstosearchall).'
'; + print '
'.$langs->trans("FilterOnInto", $sall) . join(', ',$fieldstosearchall).'
'; } $moreforfilter = ''; diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 65d132d5654..980615828a5 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -490,7 +490,7 @@ if ($resql) if ($sall) { foreach($fieldstosearchall as $key => $val) $fieldstosearchall[$key]=$langs->trans($val); - print '
'.$langs->trans("FilterOnInto", $all) . join(', ',$fieldstosearchall).'
'; + print '
'.$langs->trans("FilterOnInto", $sall) . join(', ',$fieldstosearchall).'
'; } $i = 0; diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 3734ab18a93..a9da48fd626 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -529,7 +529,7 @@ if ($resql) if ($sall) { foreach($fieldstosearchall as $key => $val) $fieldstosearchall[$key]=$langs->trans($val); - print '
'.$langs->trans("FilterOnInto", $all) . join(', ',$fieldstosearchall).'
'; + print '
'.$langs->trans("FilterOnInto", $sall) . join(', ',$fieldstosearchall).'
'; } $moreforfilter=''; diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index e52e285742c..3a67a3d5309 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -257,7 +257,7 @@ include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php'; if ($sall) { foreach($fieldstosearchall as $key => $val) $fieldstosearchall[$key]=$langs->trans($val); - print '
'.$langs->trans("FilterOnInto", $all) . join(', ',$fieldstosearchall).'
'; + print '
'.$langs->trans("FilterOnInto", $sall) . join(', ',$fieldstosearchall).'
'; } $moreforfilter=''; diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 6403878d853..9ee9ab0aead 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -127,7 +127,7 @@ $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_stock as s on p.rowid = s.fk_produc if ($search_categ) $sql.= ", ".MAIN_DB_PREFIX."categorie_product as cp"; $sql.= " WHERE p.entity IN (".getEntity('product').")"; if ($search_categ) $sql.= " AND p.rowid = cp.fk_product"; // Join for the needed table to filter by categ -if ($sall) $sql.=natural_search(array('p.ref', 'p.label', 'p.description', 'p.note'), $all); +if ($sall) $sql.=natural_search(array('p.ref', 'p.label', 'p.description', 'p.note'), $sall); // if the type is not 1, we show all products (type = 0,2,3) if (dol_strlen($type)) { From d9965d19864f7d0dda16b8aeb0710fb24023f581 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Tue, 23 Oct 2018 17:18:30 +0200 Subject: [PATCH 121/769] Fix travis messages --- .../commande/doc/pdf_eratosthene.modules.php | 17 +++++++++++------ .../modules/facture/doc/pdf_sponge.modules.php | 15 ++++++++++----- .../modules/propale/doc/pdf_cyan.modules.php | 13 ++++++++----- 3 files changed, 29 insertions(+), 16 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 89297d1bdc6..0a14e50326d 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -145,7 +145,7 @@ class pdf_eratosthene extends ModelePDFCommandes $this->atleastonediscount=0; } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Function to build pdf onto disk * * @param Object $object Object to generate @@ -158,6 +158,7 @@ class pdf_eratosthene extends ModelePDFCommandes */ function write_file($object, $outputlangs, $srctemplatepath='', $hidedetails=0, $hidedesc=0, $hideref=0) { + // phpcs:enable global $user, $langs, $conf, $mysoc, $db, $hookmanager, $nblignes; if (! is_object($outputlangs)) $outputlangs=$langs; @@ -711,7 +712,7 @@ class pdf_eratosthene extends ModelePDFCommandes } } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show payments table * * @param TCPDF $pdf Object PDF @@ -722,11 +723,12 @@ class pdf_eratosthene extends ModelePDFCommandes */ function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { - + // phpcs:enable + } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show miscellaneous information (payment mode, payment term, ...) * * @param TCPDF $pdf Object PDF @@ -737,6 +739,7 @@ class pdf_eratosthene extends ModelePDFCommandes */ function _tableau_info(&$pdf, $object, $posy, $outputlangs) { + // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -912,7 +915,7 @@ class pdf_eratosthene extends ModelePDFCommandes } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show total to pay * * @param TCPDF $pdf Object PDF @@ -924,6 +927,7 @@ class pdf_eratosthene extends ModelePDFCommandes */ function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { + // phpcs:enable global $conf,$mysoc; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1485,7 +1489,8 @@ class pdf_eratosthene extends ModelePDFCommandes * @param int $hideref Do not show ref * @return null */ - function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) + { global $conf, $hookmanager; diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index ca27bd09aff..2a5aeb3fadd 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -159,7 +159,7 @@ class pdf_sponge extends ModelePDFFactures } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Function to build pdf onto disk * * @param Object $object Object to generate @@ -172,6 +172,7 @@ class pdf_sponge extends ModelePDFFactures */ function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0) { + // phpcs:enable global $user,$langs,$conf,$mysoc,$db,$hookmanager,$nblignes; if (! is_object($outputlangs)) $outputlangs=$langs; @@ -846,7 +847,7 @@ class pdf_sponge extends ModelePDFFactures } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show payments table * * @param PDF $pdf Object PDF @@ -857,6 +858,7 @@ class pdf_sponge extends ModelePDFFactures */ function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { + // phpcs:enable global $conf; $sign=1; @@ -986,7 +988,7 @@ class pdf_sponge extends ModelePDFFactures } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show miscellaneous information (payment mode, payment term, ...) * * @param PDF $pdf Object PDF @@ -997,6 +999,7 @@ class pdf_sponge extends ModelePDFFactures */ function _tableau_info(&$pdf, $object, $posy, $outputlangs) { + // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1143,7 +1146,7 @@ class pdf_sponge extends ModelePDFFactures } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show total to pay * * @param PDF $pdf Object PDF @@ -1155,6 +1158,7 @@ class pdf_sponge extends ModelePDFFactures */ function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { + // phpcs:enable global $conf,$mysoc; $sign=1; @@ -1838,7 +1842,8 @@ class pdf_sponge extends ModelePDFFactures * @param int $hideref Do not show ref * @return null */ - function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) + { global $conf, $hookmanager; diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index e1f874b6853..509173a0aa7 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -117,7 +117,7 @@ class pdf_cyan extends ModelePDFPropales $this->atleastonediscount=0; } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Function to build pdf onto disk * * @param Object $object Object to generate @@ -130,6 +130,7 @@ class pdf_cyan extends ModelePDFPropales */ function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0) { + // phpcs:enable global $user,$langs,$conf,$mysoc,$db,$hookmanager,$nblignes; if (! is_object($outputlangs)) $outputlangs=$langs; @@ -872,7 +873,7 @@ class pdf_cyan extends ModelePDFPropales } } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show payments table * * @param TCPDF $pdf Object PDF @@ -883,11 +884,11 @@ class pdf_cyan extends ModelePDFPropales */ function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { - + // phpcs:enable } - /** + /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps * Show miscellaneous information (payment mode, payment term, ...) * * @param TCPDF $pdf Object PDF @@ -898,6 +899,7 @@ class pdf_cyan extends ModelePDFPropales */ function _tableau_info(&$pdf, $object, $posy, $outputlangs) { + // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1701,7 +1703,8 @@ class pdf_cyan extends ModelePDFPropales * @param int $hideref Do not show ref * @return null */ - function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ + function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) + { global $conf, $hookmanager; From 0ad991766cb3319a5c54f07740bff3d702d1ac97 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 17:53:01 +0200 Subject: [PATCH 122/769] Fix deletion of project when there is events --- htdocs/projet/class/project.class.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index a8b34e9c57d..eaf1ad6ea67 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -662,9 +662,10 @@ class Project extends CommonObject // Set fk_projet into elements to null $listoftables=array( - 'facture'=>'fk_projet','propal'=>'fk_projet','commande'=>'fk_projet', - 'facture_fourn'=>'fk_projet','commande_fournisseur'=>'fk_projet','supplier_proposal'=>'fk_projet', - 'expensereport_det'=>'fk_projet','contrat'=>'fk_projet','fichinter'=>'fk_projet','don'=>'fk_projet' + 'propal'=>'fk_projet', 'commande'=>'fk_projet', 'facture'=>'fk_projet', + 'supplier_proposal'=>'fk_projet', 'commande_fournisseur'=>'fk_projet', 'facture_fourn'=>'fk_projet', + 'expensereport_det'=>'fk_projet', 'contrat'=>'fk_projet', 'fichinter'=>'fk_projet', 'don'=>'fk_projet', + 'actioncomm'=>'fk_project' ); foreach($listoftables as $key => $value) { From bed5084bcfd2e5deab487e2034cbf064c08a7729 Mon Sep 17 00:00:00 2001 From: atm-john Date: Tue, 23 Oct 2018 21:44:45 +0200 Subject: [PATCH 123/769] Add missing Max payment date col --- htdocs/compta/paiement.php | 23 +++++++++++++++++++++-- htdocs/fourn/facture/paiement.php | 25 ++++++++++++++++++++++--- 2 files changed, 43 insertions(+), 5 deletions(-) diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php index 764ca818f7f..94cd53b5424 100644 --- a/htdocs/compta/paiement.php +++ b/htdocs/compta/paiement.php @@ -526,7 +526,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie */ $sql = 'SELECT f.rowid as facid, f.facnumber, f.total_ttc, f.multicurrency_code, f.multicurrency_total_ttc, f.type,'; - $sql.= ' f.datef as df, f.fk_soc as socid'; + $sql.= ' f.datef as df, f.fk_soc as socid, f.date_lim_reglement as dlr'; $sql.= ' FROM '.MAIN_DB_PREFIX.'facture as f'; $sql.= ' WHERE f.entity IN ('.getEntity('facture', $conf->entity).')'; $sql.= ' AND (f.fk_soc = '.$facture->socid; @@ -578,6 +578,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''; print ''.$arraytitle.''; print ''.$langs->trans('Date').''; + print ''.$langs->trans('DateMaxPayment').''; if (!empty($conf->multicurrency->enabled)) print ''.$langs->trans('Currency').''; if (!empty($conf->multicurrency->enabled)) print ''.$langs->trans('MulticurrencyAmountTTC').''; if (!empty($conf->multicurrency->enabled)) print ''.$multicurrencyalreadypayedlabel.''; @@ -629,7 +630,25 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie // Date print ''.dol_print_date($db->jdate($objp->df),'day')."\n"; - + + // Date Max Payment + if ($objp->dlr > 0 ) + { + print ''; + print dol_print_date($db->jdate($objp->dlr), 'day'); + + if ($invoice->hasDelay()) + { + print img_warning($langs->trans('Late')); + } + + print ''; + } + else + { + print '--'; + } + // Currency if (!empty($conf->multicurrency->enabled)) print ''.$objp->multicurrency_code."\n"; diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index fdd358933d9..20ef0d4b9aa 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -473,7 +473,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie * Autres factures impayees */ $sql = 'SELECT f.rowid as facid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.multicurrency_total_ttc, f.datef as df,'; - $sql.= ' SUM(pf.amount) as am, SUM(pf.multicurrency_amount) as multicurrency_am'; + $sql.= ' SUM(pf.amount) as am, SUM(pf.multicurrency_amount) as multicurrency_am, f.date_lim_reglement as dlr'; $sql.= ' FROM '.MAIN_DB_PREFIX.'facture_fourn as f'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn_facturefourn as pf ON pf.fk_facturefourn = f.rowid'; $sql.= " WHERE f.entity = ".$conf->entity; @@ -511,6 +511,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''.$langs->trans('Invoice').''; print ''.$langs->trans('RefSupplier').''; print ''.$langs->trans('Date').''; + print ''.$langs->trans('DateMaxPayment').''; if (!empty($conf->multicurrency->enabled)) print ''.$langs->trans('Currency').''; if (!empty($conf->multicurrency->enabled)) print ''.$langs->trans('MulticurrencyAmountTTC').''; if (!empty($conf->multicurrency->enabled)) print ''.$langs->trans('MulticurrencyAlreadyPaid').''; @@ -569,7 +570,25 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { print '!!!'; } - + + // Date Max Payment + if ($objp->dlr > 0 ) + { + print ''; + print dol_print_date($db->jdate($objp->dlr), 'day'); + + if ($invoice->hasDelay()) + { + print img_warning($langs->trans('Late')); + } + + print ''; + } + else + { + print '--'; + } + // Multicurrency if (!empty($conf->multicurrency->enabled)) { @@ -661,7 +680,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { // Print total print ''; - print ''.$langs->trans('TotalTTC').':'; + print ''.$langs->trans('TotalTTC').':'; if (!empty($conf->multicurrency->enabled)) print ' '; if (!empty($conf->multicurrency->enabled)) print ' '; if (!empty($conf->multicurrency->enabled)) print ' '; From 0fe2c63bc09e0094787ee874dc860900cfb665e0 Mon Sep 17 00:00:00 2001 From: atm-john Date: Tue, 23 Oct 2018 22:10:30 +0200 Subject: [PATCH 124/769] FIX missing print button for delivery form --- htdocs/core/actions_printing.inc.php | 18 ++++++++++++++---- htdocs/core/class/html.formfile.class.php | 2 +- htdocs/livraison/card.php | 1 + 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/htdocs/core/actions_printing.inc.php b/htdocs/core/actions_printing.inc.php index d2d34cd523a..d5c40c17ad0 100644 --- a/htdocs/core/actions_printing.inc.php +++ b/htdocs/core/actions_printing.inc.php @@ -47,11 +47,21 @@ if ($action == 'print_file' && $user->rights->printing->read) { { $printerfound++; - $subdir=(GETPOST('printer', 'alpha')=='expedition'?'sending':''); + $subdir=''; $module = GETPOST('printer', 'alpha'); - if ($module =='commande_fournisseur') { - $module = 'fournisseur'; - $subdir = 'commande'; + switch ($module ) + { + case 'livraison' : + $subdir = 'receipt'; + $module = 'expedition'; + break; + case 'expedition' : + $subdir = 'sending'; + break; + case 'commande_fournisseur' : + $module = 'fournisseur'; + $subdir = 'commande'; + break; } try { $ret = $printer->printFile(GETPOST('file', 'alpha'), $module, $subdir); diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index e4c5b9a84b5..bfc67880a96 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -310,7 +310,7 @@ class FormFile $param.= 'entity='.(!empty($object->entity)?$object->entity:$conf->entity); $printer=0; - if (in_array($modulepart,array('facture','supplier_proposal','propal','proposal','order','commande','expedition', 'commande_fournisseur', 'expensereport'))) // The direct print feature is implemented only for such elements + if (in_array($modulepart,array('facture','supplier_proposal','propal','proposal','order','commande','expedition', 'commande_fournisseur', 'expensereport','livraison'))) // The direct print feature is implemented only for such elements { $printer = (!empty($user->rights->printing->read) && !empty($conf->printing->enabled))?true:false; } diff --git a/htdocs/livraison/card.php b/htdocs/livraison/card.php index 44eb12299d9..2fee2e100ba 100644 --- a/htdocs/livraison/card.php +++ b/htdocs/livraison/card.php @@ -292,6 +292,7 @@ elseif ($action == 'remove_file') } */ +include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; /* * View From 82f40fb4b930ad83d9669ce98b80677493b38cb9 Mon Sep 17 00:00:00 2001 From: atm-john Date: Tue, 23 Oct 2018 23:21:30 +0200 Subject: [PATCH 125/769] NEW hidden conf to search by supplier ref --- htdocs/core/class/html.form.class.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 1cc02f0939a..5391dc0bd37 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2071,6 +2071,12 @@ class Form $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_stock as ps on ps.fk_product = p.rowid"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."entrepot as e on ps.fk_entrepot = e.rowid"; } + + // include search in supplier ref + if(!empty($conf->global->MAIN_SEARCH_PRODUCT_BY_FOURN_REF)) + { + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_fournisseur_price as pfp ON p.rowid = pfp.fk_product"; + } //Price by customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) { @@ -2124,6 +2130,7 @@ class Form if ($i > 0) $sql.=" AND "; $sql.="(p.ref LIKE '".$db->escape($prefix.$crit)."%' OR p.label LIKE '".$db->escape($prefix.$crit)."%'"; if (! empty($conf->global->MAIN_MULTILANGS)) $sql.=" OR pl.label LIKE '".$db->escape($prefix.$crit)."%'"; + if (! empty($conf->global->MAIN_SEARCH_PRODUCT_BY_FOURN_REF)) $sql.=" OR pfp.ref_fourn LIKE '".$db->escape($prefix.$crit)."%'"; $sql.=")"; $i++; } From 23a9416c193e79e5b1638a3a4845b5d228459950 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 23 Oct 2018 23:51:27 +0200 Subject: [PATCH 126/769] Fix deprecated field --- htdocs/comm/action/class/actioncomm.class.php | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index 969cb705bac..4a6cec809fe 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -88,13 +88,6 @@ class ActionComm extends CommonObject */ public $label; - /** - * @var string - * @deprecated Use $label - * @see label - */ - public $libelle; - public $datec; // Date creation record (datec) public $datem; // Date modification record (tms) @@ -351,7 +344,7 @@ class ActionComm extends CommonObject $sql.= ($code?("'".$code."'"):"null").", "; $sql.= ((isset($this->socid) && $this->socid > 0) ? $this->socid:"null").", "; $sql.= ((isset($this->fk_project) && $this->fk_project > 0) ? $this->fk_project:"null").", "; - $sql.= " '".$this->db->escape($this->note)."', "; + $sql.= " '".$this->db->escape($this->note_private?$this->note_private:$this->note)."', "; $sql.= ((isset($this->contactid) && $this->contactid > 0) ? $this->contactid:"null").", "; $sql.= (isset($user->id) && $user->id > 0 ? $user->id:"null").", "; $sql.= ($userownerid>0 ? $userownerid:"null").", "; @@ -621,6 +614,7 @@ class ActionComm extends CommonObject $this->datem = $this->db->jdate($obj->datem); $this->note = $obj->note; + $this->note_private = $obj->note; $this->percentage = $obj->percentage; $this->authorid = $obj->fk_user_author; @@ -870,7 +864,7 @@ class ActionComm extends CommonObject $sql.= ", datep = ".(strval($this->datep)!='' ? "'".$this->db->idate($this->datep)."'" : 'null'); $sql.= ", datep2 = ".(strval($this->datef)!='' ? "'".$this->db->idate($this->datef)."'" : 'null'); $sql.= ", durationp = ".(isset($this->durationp) && $this->durationp >= 0 && $this->durationp != ''?"'".$this->db->escape($this->durationp)."'":"null"); // deprecated - $sql.= ", note = ".($this->note ? "'".$this->db->escape($this->note)."'":"null"); + $sql.= ", note = '".$this->db->escape($this->note_private?$this->note_private:$this->note)."'"; $sql.= ", fk_project =". ($this->fk_project > 0 ? $this->fk_project:"null"); $sql.= ", fk_soc =". ($socid > 0 ? $socid:"null"); $sql.= ", fk_contact =". ($contactid > 0 ? $contactid:"null"); From d5285ca359365cd2a809e5fd5ae4d3bcf3eab163 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 01:53:07 +0200 Subject: [PATCH 127/769] Update commonobject.class.php --- htdocs/core/class/commonobject.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index bfb657f6216..ef42301b228 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -6203,7 +6203,7 @@ abstract class CommonObject $InfoFieldList = explode(":", $param_list[0]); $classname=$InfoFieldList[0]; $classpath=$InfoFieldList[1]; - $getnomurlparam=$InfoFieldList[2]; + $getnomurlparam=(empty($InfoFieldList[2]) ? 3 : $InfoFieldList[2]); if (! empty($classpath)) { dol_include_once($InfoFieldList[1]); @@ -6211,7 +6211,7 @@ abstract class CommonObject { $object = new $classname($this->db); $object->fetch($value); - $value=$object->getNomUrl(!empty($getnomurlparam)?$getnomurlparam:3); + $value=$object->getNomUrl($getnomurlparam); } } else From ae44c4c7f54218dd4109a436996f74fd9dad5e38 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:00:43 +0200 Subject: [PATCH 128/769] Disable duplicate feature with emailing module and field "unsubscribe requested" --- htdocs/core/modules/modDataPolicy.class.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/htdocs/core/modules/modDataPolicy.class.php b/htdocs/core/modules/modDataPolicy.class.php index 2ecb5da4336..ca53440a3b9 100644 --- a/htdocs/core/modules/modDataPolicy.class.php +++ b/htdocs/core/modules/modDataPolicy.class.php @@ -200,7 +200,7 @@ class modDataPolicy extends DolibarrModules { // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week $this->cronjobs = array( 0 => array('label' => 'DATAPOLICY Cron', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'RgpdCron', 'method' => 'exec', 'parameters' => '', 'comment' => 'Comment', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 1, 'test' => true), - 1 => array('label' => 'DATAPOLICY Mailing', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'RgpdCron', 'method' => 'sendMailing', 'parameters' => '', 'comment' => 'Comment', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 0, 'test' => true) + //1 => array('label' => 'DATAPOLICY Mailing', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'RgpdCron', 'method' => 'sendMailing', 'parameters' => '', 'comment' => 'Comment', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 0, 'test' => true) ); // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>true), // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>true) @@ -230,9 +230,8 @@ class modDataPolicy extends DolibarrModules { include_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php'; $extrafields = new ExtraFields($this->db); - + /* // Extrafield contact - //$result1=$extrafields->addExtraField('datapolicy_separate', "DATAPOLICY_BLOCKCHECKBOX", 'separate', 100, 1, 'thirdparty', 0, 0, '', '', 1, '', '1', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_consentement', $langs->trans("DATAPOLICY_consentement"), 'boolean', 101, 3, 'thirdparty', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_traitement', $langs->trans("DATAPOLICY_opposition_traitement"), 'boolean', 102, 3, 'thirdparty', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_prospection', $langs->trans("DATAPOLICY_opposition_prospection"), 'boolean', 103, 3, 'thirdparty', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); @@ -240,7 +239,6 @@ class modDataPolicy extends DolibarrModules { $result1 = $extrafields->addExtraField('datapolicy_send', $langs->trans("DATAPOLICY_send"), 'date', 105, 3, 'thirdparty', 0, 0, '', '', 0, '', '0', 0); // Extrafield Tiers - //$result1=$extrafields->addExtraField('datapolicy_separate', "DATAPOLICY_BLOCKCHECKBOX", 'separate', 100, 1, 'contact', 0, 0, '', '', 1, '', '1', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_consentement', $langs->trans("DATAPOLICY_consentement"), 'boolean', 101, 3, 'contact', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_traitement', $langs->trans("DATAPOLICY_opposition_traitement"), 'boolean', 102, 3, 'contact', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_prospection', $langs->trans("DATAPOLICY_opposition_prospection"), 'boolean', 103, 3, 'contact', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); @@ -248,12 +246,12 @@ class modDataPolicy extends DolibarrModules { $result1 = $extrafields->addExtraField('datapolicy_send', $langs->trans("DATAPOLICY_send"), 'date', 105, 3, 'contact', 0, 0, '', '', 0, '', '0', 0); // Extrafield Adherent - //$result1=$extrafields->addExtraField('datapolicy_separate', "DATAPOLICY_BLOCKCHECKBOX", 'separate', 100, 1, 'adherent', 0, 0, '', '', 1, '', '1', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_consentement', $langs->trans("DATAPOLICY_consentement"), 'boolean', 101, 3, 'adherent', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_traitement', $langs->trans("DATAPOLICY_opposition_traitement"), 'boolean', 102, 3, 'adherent', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_opposition_prospection', $langs->trans("DATAPOLICY_opposition_prospection"), 'boolean', 103, 3, 'adherent', 0, 0, '', '', 1, '', '3', 0, '', '', 'datapolicy@datapolicy', '$conf->datapolicy->enabled'); $result1 = $extrafields->addExtraField('datapolicy_date', $langs->trans("DATAPOLICY_date"), 'date', 104, 3, 'adherent', 0, 0, '', '', 1, '', '3', 0); $result1 = $extrafields->addExtraField('datapolicy_send', $langs->trans("DATAPOLICY_send"), 'date', 105, 3, 'adherent', 0, 0, '', '', 0, '', '0', 0); + */ $sql = array(); From 065d715d4197b25ef7f262e498bd5b18afbe4b8b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:20:07 +0200 Subject: [PATCH 129/769] FIX #9837 - The fetchAllXXX was not managing correctly the limit --- htdocs/accountancy/class/bookkeeping.class.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/htdocs/accountancy/class/bookkeeping.class.php index 0550fb5a438..fe3ef196d1b 100644 --- a/htdocs/accountancy/class/bookkeeping.class.php +++ b/htdocs/accountancy/class/bookkeeping.class.php @@ -785,7 +785,8 @@ class BookKeeping extends CommonObject if ($resql) { $num = $this->db->num_rows($resql); - while ( $obj = $this->db->fetch_object($resql) ) { + $i = 0; + while ($obj = $this->db->fetch_object($resql) && (empty($limit) || $i < min($limit, $num))) { $line = new BookKeepingLine(); $line->id = $obj->rowid; @@ -817,6 +818,8 @@ class BookKeeping extends CommonObject $line->date_creation = $obj->date_creation; $this->lines[] = $line; + + $i++; } $this->db->free($resql); @@ -914,7 +917,8 @@ class BookKeeping extends CommonObject if ($resql) { $num = $this->db->num_rows($resql); - while ( $obj = $this->db->fetch_object($resql) ) { + $i = 0; + while ($obj = $this->db->fetch_object($resql) && (empty($limit) || $i < min($limit, $num))) { $line = new BookKeepingLine(); $line->id = $obj->rowid; @@ -943,6 +947,8 @@ class BookKeeping extends CommonObject $line->date_modification = $this->db->jdate($obj->date_modification); $this->lines[] = $line; + + $i++; } $this->db->free($resql); @@ -1021,7 +1027,7 @@ class BookKeeping extends CommonObject $num = $this->db->num_rows($resql); $i = 0; - while (($obj = $this->db->fetch_object($resql)) && ($i < min($limit, $num))) + while (($obj = $this->db->fetch_object($resql)) && (empty($limit) || $i < min($limit, $num))) { $line = new BookKeepingLine(); From e39e57c5b9b51ba99d391703eac75ce119b1cb51 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:24:47 +0200 Subject: [PATCH 130/769] Update expeditionbatch.class.php --- htdocs/expedition/class/expeditionbatch.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/expedition/class/expeditionbatch.class.php b/htdocs/expedition/class/expeditionbatch.class.php index 3df77b509e7..520f760aee0 100644 --- a/htdocs/expedition/class/expeditionbatch.class.php +++ b/htdocs/expedition/class/expeditionbatch.class.php @@ -119,7 +119,7 @@ class ExpeditionLineBatch extends CommonObject $sql.= " ".(! isset($this->sellby) || dol_strlen($this->sellby)==0?'NULL':("'".$this->db->idate($this->sellby))."'").","; $sql.= " ".(! isset($this->eatby) || dol_strlen($this->eatby)==0?'NULL':("'".$this->db->idate($this->eatby))."'").","; $sql.= " ".(! isset($this->batch)?'NULL':("'".$this->db->escape($this->batch)."'")).","; - $sql.= " ".(! isset($this->qty)?(! isset($this->dluo_qty)?'NULL':$this->dluo_qty):$this->qty).","; // dluo_qty deprecated, use qty + $sql.= " ".(! isset($this->qty)?((! isset($this->dluo_qty))?'NULL':$this->dluo_qty):$this->qty).","; // dluo_qty deprecated, use qty $sql.= " ".(! isset($this->fk_origin_stock)?'NULL':$this->fk_origin_stock); $sql.= ")"; From 2ba6f967651e62c9f550e1b5e68fed6073978781 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:27:59 +0200 Subject: [PATCH 131/769] Update style.css.php --- htdocs/theme/md/style.css.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 84384a9130e..b27bf4ad99c 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -3018,7 +3018,7 @@ tr.box_titre { white-space: nowrap; } -tr.box_titre, td.boxclose { +tr.box_titre td.boxclose { width: 30px; } img.boxhandle, img.boxclose { From a3d6146bed5b44b396cfed86ed85cd036545f0c3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:32:01 +0200 Subject: [PATCH 132/769] Code comment --- dev/dolibarr_changes.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dev/dolibarr_changes.txt b/dev/dolibarr_changes.txt index 24832103c6c..37aef014e63 100644 --- a/dev/dolibarr_changes.txt +++ b/dev/dolibarr_changes.txt @@ -78,17 +78,24 @@ In htdocs/includes/tcpdf/tcpdf.php + protected $default_monospaced_font = 'freemono'; + TCPDI: ------ Add fpdf_tpl.php 1.2 Add tcpdi.php + Add tcpdi_parser.php and replace: require_once(dirname(__FILE__).'/include/tcpdf_filters.php'); with: require_once(dirname(__FILE__).'/../tecnickcom/tcpdf/include/tcpdf_filters.php'); +* Fix by replacing + } elseif (($key == '/Index') AND ($v[0] == PDF_TYPE_ARRAY AND count($v[1] >= 2))) { +with + } elseif (($key == '/Index') AND ($v[0] == PDF_TYPE_ARRAY AND count($v[1]) >= 2)) { + JSGANTT: From 769bae75e94c3030f326e599efb356a782eb7171 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 02:48:38 +0200 Subject: [PATCH 133/769] Update list.php --- htdocs/accountancy/bookkeeping/list.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index 9e696b9d2af..4a4630edfa5 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -145,6 +145,8 @@ $arrayfields=array( 't.tms'=>array('label'=>$langs->trans("DateModification"), 'checked'=>0), ); +if (empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) unset($arrayfields['t.lettering_code']); + /* * Actions From f0dc2df526b48a60e44204d91f268be44945121c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 03:30:06 +0200 Subject: [PATCH 134/769] Fix code comment --- htdocs/core/class/commondocgenerator.class.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index e944467ca27..18e2817f040 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -223,10 +223,10 @@ abstract class CommonDocGenerator /** * Define array with couple subtitution key => subtitution value * - * @param Contact $object contact + * @param Contact $object contact * @param Translate $outputlangs object for output - * @param array_key $array_key Name of the key for return array - * @return array of substitution key->code + * @param array $array_key Name of the key for return array + * @return array Array of substitution key->code */ function get_substitutionarray_contact($object, $outputlangs, $array_key = 'object') { global $conf; @@ -552,9 +552,9 @@ abstract class CommonDocGenerator /** * Define array with couple substitution key => substitution value * - * @param Expedition $object Main object to use as data source + * @param Expedition $object Main object to use as data source * @param Translate $outputlangs Lang object to use for output - * @param array_key $array_key Name of the key for return array + * @param array $array_key Name of the key for return array * @return array Array of substitution */ function get_substitutionarray_shipment($object,$outputlangs,$array_key='object') @@ -746,7 +746,7 @@ abstract class CommonDocGenerator /** * Rect pdf * - * @param PDF $pdf Object PDF + * @param TCPDF $pdf Object PDF * @param float $x Abscissa of first point * @param float $y Ordinate of first point * @param float $l ?? From 047d130081355df54c58b074d1a2911e45ad0885 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 03:38:12 +0200 Subject: [PATCH 135/769] Fix phpcs --- .../core/class/commondocgenerator.class.php | 83 +++++++++---------- 1 file changed, 41 insertions(+), 42 deletions(-) diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index dc4f1242894..003d9591712 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -823,8 +823,8 @@ abstract class CommonDocGenerator if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h); $pdf->line($x, $y+$h, $x, $y); } - - + + /** * uasort callback function to Sort colums fields * @@ -832,55 +832,54 @@ abstract class CommonDocGenerator * @param array $b PDF lines array fields configs * @return int Return compare result */ - function columnSort($a, $b) { - + function columnSort($a, $b) + { if(empty($a['rank'])){ $a['rank'] = 0; } if(empty($b['rank'])){ $b['rank'] = 0; } if ($a['rank'] == $b['rank']) { return 0; } return ($a['rank'] > $b['rank']) ? -1 : 1; - } - + /** * Prepare Array Column Field * - * @param object $object common object - * @param outputlangs $outputlangs langs - * @param int $hidedetails Do not show line details - * @param int $hidedesc Do not show desc - * @param int $hideref Do not show ref + * @param object $object common object + * @param Translate $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref * @return null */ - function prepareArrayColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0){ - + function prepareArrayColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) + { global $conf; - + $this->defineColumnField($object,$outputlangs,$hidedetails,$hidedesc,$hideref); - - + + // Sorting uasort ( $this->cols, array( $this, 'columnSort' ) ); - + // Positionning $curX = $this->page_largeur-$this->marge_droite; // start from right - + // Array witdh $arrayWidth = $this->page_largeur-$this->marge_droite-$this->marge_gauche; - + // Count flexible column $totalDefinedColWidth = 0; $countFlexCol = 0; foreach ($this->cols as $colKey =>& $colDef) { if(!$this->getColumnStatus($colKey)) continue; // continue if desable - + if(!empty($colDef['scale'])){ // In case of column widht is defined by percentage $colDef['width'] = abs($arrayWidth * $colDef['scale'] / 100 ); } - + if(empty($colDef['width'])){ $countFlexCol++; } @@ -888,7 +887,7 @@ abstract class CommonDocGenerator $totalDefinedColWidth += $colDef['width']; } } - + foreach ($this->cols as $colKey =>& $colDef) { // setting empty conf with default @@ -898,7 +897,7 @@ abstract class CommonDocGenerator else{ $colDef['title'] = $this->defaultTitlesFieldsStyle; } - + // setting empty conf with default if(!empty($colDef['content'])){ $colDef['content'] = array_replace($this->defaultContentsFieldsStyle, $colDef['content']); @@ -906,14 +905,14 @@ abstract class CommonDocGenerator else{ $colDef['content'] = $this->defaultContentsFieldsStyle; } - + if($this->getColumnStatus($colKey)) { // In case of flexible column if(empty($colDef['width'])){ $colDef['width'] = abs(($arrayWidth - $totalDefinedColWidth)) / $countFlexCol; } - + // Set positions $lastX = $curX; $curX = $lastX - $colDef['width']; @@ -922,7 +921,7 @@ abstract class CommonDocGenerator } } } - + /** * get column content width from column key * @@ -934,8 +933,8 @@ abstract class CommonDocGenerator $colDef = $this->cols[$colKey]; return $colDef['width'] - $colDef['content']['padding'][3] - $colDef['content']['padding'][1]; } - - + + /** * get column content X (abscissa) left position from column key * @@ -947,7 +946,7 @@ abstract class CommonDocGenerator $colDef = $this->cols[$colKey]; return $colDef['xStartPos'] + $colDef['content']['padding'][3]; } - + /** * get column position rank from column key * @@ -959,7 +958,7 @@ abstract class CommonDocGenerator if(!isset($this->cols[$colKey]['rank'])) return -1; return $this->cols[$colKey]['rank']; } - + /** * get column position rank from column key * @@ -973,21 +972,21 @@ abstract class CommonDocGenerator { // prepare wanted rank $rank = -1; - + // try to get rank from target column if(!empty($targetCol)){ $rank = $this->getColumnRank($targetCol); if($rank>=0 && $insertAfterTarget){ $rank++; } } - + // get rank from new column definition if($rank<0 && !empty($defArray['rank'])){ $rank = $defArray['rank']; } - + // error: no rank if($rank<0){ return -1; } - + foreach ($this->cols as $colKey =>& $colDef) { if( $rank <= $colDef['rank']) @@ -995,14 +994,14 @@ abstract class CommonDocGenerator $colDef['rank'] = $colDef['rank'] + 1; } } - + $defArray['rank'] = $rank; $this->cols[$newColKey] = $defArray; // array_replace is used to preserve keys - + return $rank; } - - + + /** * print standard column content * @@ -1015,7 +1014,7 @@ abstract class CommonDocGenerator function printStdColumnContent($pdf, &$curY, $colKey, $columnText = '') { global $hookmanager; - + $parameters=array( 'object' => $object, 'curY' =>& $curY, @@ -1031,10 +1030,10 @@ abstract class CommonDocGenerator $colDef = $this->cols[$colKey]; $pdf->MultiCell( $this->getColumnContentWidth($colKey),2, $columnText,'',$colDef['content']['align']); } - + } - - + + /** * get column status from column key * From eaab953ba2a23ff5c35c103977fb2f6a35c395e0 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 03:50:18 +0200 Subject: [PATCH 136/769] Renamed mouvement.php into movement_list.php to follow dev rules --- htdocs/core/lib/stock.lib.php | 2 +- htdocs/core/menus/init_menu_auguria.sql | 2 +- htdocs/core/menus/standard/eldy.lib.php | 2 +- htdocs/product/reassort.php | 2 +- htdocs/product/reassortlot.php | 2 +- htdocs/product/stock/card.php | 2 +- htdocs/product/stock/class/mouvementstock.class.php | 2 +- htdocs/product/stock/index.php | 2 +- htdocs/product/stock/{mouvement.php => movement_list.php} | 6 +++--- htdocs/product/stock/product.php | 4 ++-- htdocs/product/stock/productlot_card.php | 2 +- 11 files changed, 14 insertions(+), 14 deletions(-) rename htdocs/product/stock/{mouvement.php => movement_list.php} (99%) diff --git a/htdocs/core/lib/stock.lib.php b/htdocs/core/lib/stock.lib.php index ac59ab230c7..579944117ab 100644 --- a/htdocs/core/lib/stock.lib.php +++ b/htdocs/core/lib/stock.lib.php @@ -39,7 +39,7 @@ function stock_prepare_head($object) $head[$h][2] = 'card'; $h++; - $head[$h][0] = DOL_URL_ROOT.'/product/stock/mouvement.php?id='.$object->id; + $head[$h][0] = DOL_URL_ROOT.'/product/stock/movement_list.php?id='.$object->id; $head[$h][1] = $langs->trans("StockMovements"); $head[$h][2] = 'movements'; $h++; diff --git a/htdocs/core/menus/init_menu_auguria.sql b/htdocs/core/menus/init_menu_auguria.sql index afd7ba0ffcb..682746b3412 100644 --- a/htdocs/core/menus/init_menu_auguria.sql +++ b/htdocs/core/menus/init_menu_auguria.sql @@ -120,7 +120,7 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3100__+MAX_llx_menu__, 'products', 'stock', 3__+MAX_llx_menu__, '/product/stock/index.php?leftmenu=stock', 'Stock', 0, 'stocks', '$user->rights->stock->lire', '', 2, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3101__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/card.php?action=create', 'MenuNewWarehouse', 1, 'stocks', '$user->rights->stock->creer', '', 2, 0, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3102__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/list.php', 'List', 1, 'stocks', '$user->rights->stock->lire', '', 2, 1, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3104__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/mouvement.php', 'Movements', 1, 'stocks', '$user->rights->stock->mouvement->lire', '', 2, 3, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3104__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/movement_list.php', 'Movements', 1, 'stocks', '$user->rights->stock->mouvement->lire', '', 2, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled && $conf->supplier_order->enabled', __HANDLER__, 'left', 3105__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/replenish.php', 'Replenishments', 1, 'stocks', '$user->rights->stock->mouvement->creer && $user->rights->fournisseur->lire', '', 2, 4, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3106__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/massstockmove.php', 'MassStockTransferShort', 1, 'stocks', '$user->rights->stock->mouvement->creer', '', 2, 5, __ENTITY__); diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 51a9907a16e..562ed99a020 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -1310,7 +1310,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add("/product/stock/index.php?leftmenu=stock", $langs->trans("Warehouses"), 0, $user->rights->stock->lire, '', $mainmenu, 'stock'); $newmenu->add("/product/stock/card.php?action=create", $langs->trans("MenuNewWarehouse"), 1, $user->rights->stock->creer); $newmenu->add("/product/stock/list.php", $langs->trans("List"), 1, $user->rights->stock->lire); - $newmenu->add("/product/stock/mouvement.php", $langs->trans("Movements"), 1, $user->rights->stock->mouvement->lire); + $newmenu->add("/product/stock/movement_list.php", $langs->trans("Movements"), 1, $user->rights->stock->mouvement->lire); $newmenu->add("/product/stock/massstockmove.php", $langs->trans("MassStockTransferShort"), 1, $user->rights->stock->mouvement->creer); if ($conf->supplier_order->enabled) $newmenu->add("/product/stock/replenish.php", $langs->trans("Replenishment"), 1, $user->rights->stock->mouvement->creer && $user->rights->fournisseur->lire); diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 2aa8dc6fcc7..27ac0c4d522 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -381,7 +381,7 @@ if ($resql) print $product->stock_theorique; print ''; } - print ''.$langs->trans("Movements").''; + print ''.$langs->trans("Movements").''; print ''.$product->LibStatut($objp->statut,5,0).''; print ''.$product->LibStatut($objp->tobuy,5,1).''; print ''; diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index bad733979b4..518a19d8407 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -408,7 +408,7 @@ if ($resql) //if ($objp->seuil_stock_alerte && ($objp->stock_physique < $objp->seuil_stock_alerte)) print img_warning($langs->trans("StockTooLow")).' '; print $objp->stock_physique; print ''; - print ''.$langs->trans("Movements").''; + print ''.$langs->trans("Movements").''; print ''.$product_static->LibStatut($objp->statut,5,0).''; print ''.$product_static->LibStatut($objp->tobuy,5,1).''; print ''; diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index 334ccdb0b65..b24a37c4fe2 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -384,7 +384,7 @@ else if ($lastmovementdate) { print dol_print_date($lastmovementdate,'dayhour').' '; - print '('.$langs->trans("FullList").')'; + print '('.$langs->trans("FullList").')'; } else { diff --git a/htdocs/product/stock/class/mouvementstock.class.php b/htdocs/product/stock/class/mouvementstock.class.php index f5fad015636..9012262d163 100644 --- a/htdocs/product/stock/class/mouvementstock.class.php +++ b/htdocs/product/stock/class/mouvementstock.class.php @@ -1001,7 +1001,7 @@ class MouvementStock extends CommonObject $label.= '
' . $langs->trans('Qty') . ': ' .$this->qty; $label.= '
'; - $link = ''.$langs->trans("EatByDate").''; } print ''.$langs->trans("Warehouse").''; - print ''.$langs->trans("FullList").''; + print ''.$langs->trans("FullList").''; print "\n"; $i=0; diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/movement_list.php similarity index 99% rename from htdocs/product/stock/mouvement.php rename to htdocs/product/stock/movement_list.php index 8ee5383ded0..ec193e6dfc8 100644 --- a/htdocs/product/stock/mouvement.php +++ b/htdocs/product/stock/movement_list.php @@ -20,7 +20,7 @@ */ /** - * \file htdocs/product/stock/mouvement.php + * \file htdocs/product/stock/movement_list.php * \ingroup stock * \brief Page to list stock movements */ @@ -385,7 +385,7 @@ if ($action == "transfert_stock" && ! $cancel) } else { - header("Location: mouvement.php?id=".$object->id); + header("Location: movement_list.php?id=".$object->id); exit; } } @@ -1028,7 +1028,7 @@ if ($resql) { // Inventory code print ''.'' . $langs->trans("LastMovement") . ''; if ($lastmovementdate) { print dol_print_date($lastmovementdate, 'dayhour') . ' '; - print '(' . $langs->trans("FullList") . ')'; + print '(' . $langs->trans("FullList") . ')'; } else { - print '' . $langs->trans("None") . ''; + print '' . $langs->trans("None") . ''; } print ""; } diff --git a/htdocs/product/stock/productlot_card.php b/htdocs/product/stock/productlot_card.php index 08f28a7eb11..5ee52ce337a 100644 --- a/htdocs/product/stock/productlot_card.php +++ b/htdocs/product/stock/productlot_card.php @@ -388,7 +388,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''.$langs->trans("ShowCurrentStockOfLot").'
'; print '
'; - print ''.$langs->trans("ShowLogOfMovementIfLot").'
'; + print ''.$langs->trans("ShowLogOfMovementIfLot").'
'; print '
'; } From 2a6478a2c42c0fb2b0b90455664d809b1cc5bb65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 24 Oct 2018 08:15:00 +0200 Subject: [PATCH 137/769] fix phpcs --- htdocs/product/class/product.class.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index f8326a60721..24689e7b193 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -3556,7 +3556,6 @@ class Product extends CommonObject } else { return false; } - } /** @@ -4864,4 +4863,4 @@ class Product extends CommonObject dol_print_error($this->db); } } -} \ No newline at end of file +} From 4747e93e39df7a09f4867b9a57dfd45464dc01fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 24 Oct 2018 08:18:21 +0200 Subject: [PATCH 138/769] Update pdf_eratosthene.modules.php --- .../modules/commande/doc/pdf_eratosthene.modules.php | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 4b11c61b078..3c2189e05c4 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -714,7 +714,7 @@ class pdf_eratosthene extends ModelePDFCommandes } } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show payments table * * @param TCPDF $pdf Object PDF @@ -725,12 +725,10 @@ class pdf_eratosthene extends ModelePDFCommandes */ private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable - } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show miscellaneous information (payment mode, payment term, ...) * * @param TCPDF $pdf Object PDF @@ -741,7 +739,6 @@ class pdf_eratosthene extends ModelePDFCommandes */ private function drawInfoTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -917,7 +914,7 @@ class pdf_eratosthene extends ModelePDFCommandes } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show total to pay * * @param TCPDF $pdf Object PDF @@ -929,7 +926,6 @@ class pdf_eratosthene extends ModelePDFCommandes */ private function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) { - // phpcs:enable global $conf,$mysoc; $default_font_size = pdf_getPDFFontSize($outputlangs); From d9d346aab28ec1ebc4153fb6b63fde59a502cfb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 24 Oct 2018 08:22:17 +0200 Subject: [PATCH 139/769] Update pdf_sponge.modules.php --- .../core/modules/facture/doc/pdf_sponge.modules.php | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index 4032a6c41a5..d03d60f50fe 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -849,7 +849,7 @@ class pdf_sponge extends ModelePDFFactures } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show payments table * * @param PDF $pdf Object PDF @@ -860,7 +860,6 @@ class pdf_sponge extends ModelePDFFactures */ function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable global $conf; $sign=1; @@ -989,7 +988,7 @@ class pdf_sponge extends ModelePDFFactures } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show miscellaneous information (payment mode, payment term, ...) * * @param PDF $pdf Object PDF @@ -1000,7 +999,6 @@ class pdf_sponge extends ModelePDFFactures */ private function drawInfoTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1147,7 +1145,7 @@ class pdf_sponge extends ModelePDFFactures } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show total to pay * * @param PDF $pdf Object PDF @@ -1159,7 +1157,6 @@ class pdf_sponge extends ModelePDFFactures */ private function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) { - // phpcs:enable global $conf,$mysoc; $sign=1; @@ -1828,9 +1825,6 @@ class pdf_sponge extends ModelePDFFactures return pdf_pagefoot($pdf,$outputlangs,'INVOICE_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); } - - - /** * Define Array Column Field * From 2bc208675f88e282325395ba18d4efc5553e4c81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 24 Oct 2018 09:06:54 +0200 Subject: [PATCH 140/769] Update pdf_cyan.modules.php --- htdocs/core/modules/propale/doc/pdf_cyan.modules.php | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 9dcc14bf384..e43734039ca 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -875,7 +875,7 @@ class pdf_cyan extends ModelePDFPropales } } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show payments table * * @param TCPDF $pdf Object PDF @@ -886,11 +886,9 @@ class pdf_cyan extends ModelePDFPropales */ private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable } - - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show miscellaneous information (payment mode, payment term, ...) * * @param TCPDF $pdf Object PDF @@ -901,7 +899,6 @@ class pdf_cyan extends ModelePDFPropales */ function drawInfoTable(&$pdf, $object, $posy, $outputlangs) { - // phpcs:enable global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); From a380d3e89b09d7bc29e3517b35a56f0953d4b58a Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Wed, 24 Oct 2018 09:19:57 +0200 Subject: [PATCH 141/769] Fix missing group by in query --- htdocs/fourn/facture/paiement.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 20ef0d4b9aa..7946f98cb66 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -480,7 +480,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie $sql.= ' AND f.fk_soc = '.$object->socid; $sql.= ' AND f.paye = 0'; $sql.= ' AND f.fk_statut = 1'; // Statut=0 => non validee, Statut=2 => annulee - $sql.= ' GROUP BY f.rowid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.multicurrency_total_ttc, f.datef'; + $sql.= ' GROUP BY f.rowid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.multicurrency_total_ttc, f.datef, f.date_lim_reglement'; $resql = $db->query($sql); if ($resql) { From 036f70860e6440c3177439f6878de05ab2fefaff Mon Sep 17 00:00:00 2001 From: gauthier Date: Wed, 24 Oct 2018 10:17:21 +0200 Subject: [PATCH 142/769] FIX : wrong occurence number of contract on contact card, we must only count externals --- htdocs/contact/class/contact.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 036ee75a43d..bea6843de5f 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -860,6 +860,7 @@ class Contact extends CommonObject $sql.=" FROM ".MAIN_DB_PREFIX."element_contact as ec, ".MAIN_DB_PREFIX."c_type_contact as tc"; $sql.=" WHERE ec.fk_c_type_contact = tc.rowid"; $sql.=" AND fk_socpeople = ". $this->id; + $sql.=" AND tc.source = 'external'"; $sql.=" GROUP BY tc.element"; dol_syslog(get_class($this)."::load_ref_elements", LOG_DEBUG); From fccea99e23fd16f5cfed56db3f28b83e1bcfeae3 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Wed, 24 Oct 2018 10:23:27 +0200 Subject: [PATCH 143/769] FIX translation in select unit form --- htdocs/core/class/html.form.class.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 0ed036f1d1f..cebd49737e5 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3388,13 +3388,19 @@ class Form while($res = $this->db->fetch_object($resql)) { + $unitLabel = $res->label; + if (! empty($langs->tab_translate['unit'.$res->code])) // check if Translation is available before + { + $unitLabel = $langs->trans('unit'.$res->code)!=$res->label?$langs->trans('unit'.$res->code):$res->label; + } + if ($selected == $res->rowid) { - $return.=''; + $return.=''; } else { - $return.=''; + $return.=''; } } $return.=''; From d0ab12ba6e9b308567100cfeddb9f7b68fd9a618 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:10:55 +0200 Subject: [PATCH 144/769] Fix not used var --- htdocs/societe/class/societeaccount.class.php | 4 +--- htdocs/stripe/class/stripe.class.php | 2 -- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/htdocs/societe/class/societeaccount.class.php b/htdocs/societe/class/societeaccount.class.php index 12a664f2686..de228c576b5 100644 --- a/htdocs/societe/class/societeaccount.class.php +++ b/htdocs/societe/class/societeaccount.class.php @@ -288,8 +288,6 @@ class SocieteAccount extends CommonObject */ public function getCustomerAccount($id, $site, $status=0) { - global $conf; - $sql = "SELECT sa.key_account as key_account, sa.entity"; $sql.= " FROM " . MAIN_DB_PREFIX . "societe_account as sa"; $sql.= " WHERE sa.fk_soc = " . $id; @@ -298,7 +296,7 @@ class SocieteAccount extends CommonObject $sql.= " AND key_account IS NOT NULL AND key_account <> ''"; //$sql.= " ORDER BY sa.key_account DESC"; - dol_syslog(get_class($this) . "::getCustomerAccount Try to find the system customer id of thirdparty id=".$id." (exemple: cus_.... for stripe)", LOG_DEBUG); + dol_syslog(get_class($this) . "::getCustomerAccount Try to find the first system customer id for ".$site." of thirdparty id=".$id." (exemple: cus_.... for stripe)", LOG_DEBUG); $result = $this->db->query($sql); if ($result) { if ($this->db->num_rows($result)) { diff --git a/htdocs/stripe/class/stripe.class.php b/htdocs/stripe/class/stripe.class.php index cce7289fb48..0e9c3cbb4a8 100644 --- a/htdocs/stripe/class/stripe.class.php +++ b/htdocs/stripe/class/stripe.class.php @@ -122,8 +122,6 @@ class Stripe extends CommonObject */ public function getStripeCustomerAccount($id, $status=0) { - global $conf; - include_once DOL_DOCUMENT_ROOT.'/societe/class/societeaccount.class.php'; $societeaccount = new SocieteAccount($this->db); return $societeaccount->getCustomerAccount($id, 'stripe', $status); // Get thirdparty cus_... From 3e92582c1e2f9f05b4b7f719b887ba7e3ab921d4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:14:44 +0200 Subject: [PATCH 145/769] Fix phpcs --- .../modules/commande/doc/pdf_eratosthene.modules.php | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 4b11c61b078..ee465ae2b6f 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -726,7 +726,6 @@ class pdf_eratosthene extends ModelePDFCommandes private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable - } @@ -1181,7 +1180,7 @@ class pdf_eratosthene extends ModelePDFCommandes /** * Show table for lines * - * @param PDF $pdf Object PDF + * @param TCPDF $pdf Object PDF * @param string $tab_top Top position of table * @param string $tab_height Height of table (rectangle) * @param int $nexY Y (not used) @@ -1483,10 +1482,10 @@ class pdf_eratosthene extends ModelePDFCommandes * Define Array Column Field * * @param object $object common object - * @param outputlangs $outputlangs langs - * @param int $hidedetails Do not show line details - * @param int $hidedesc Do not show desc - * @param int $hideref Do not show ref + * @param Translate $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref * @return null */ public function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) From aa0bcc68781282d2cecfaf3ef8765cc849bff2b3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:14:44 +0200 Subject: [PATCH 146/769] Fix phpcs --- .../commande/doc/pdf_eratosthene.modules.php | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 4b11c61b078..96357cdf508 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -714,7 +714,8 @@ class pdf_eratosthene extends ModelePDFCommandes } } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show payments table * * @param TCPDF $pdf Object PDF @@ -726,11 +727,11 @@ class pdf_eratosthene extends ModelePDFCommandes private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable - } - /** phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** * Show miscellaneous information (payment mode, payment term, ...) * * @param TCPDF $pdf Object PDF @@ -1181,7 +1182,7 @@ class pdf_eratosthene extends ModelePDFCommandes /** * Show table for lines * - * @param PDF $pdf Object PDF + * @param TCPDF $pdf Object PDF * @param string $tab_top Top position of table * @param string $tab_height Height of table (rectangle) * @param int $nexY Y (not used) @@ -1483,10 +1484,10 @@ class pdf_eratosthene extends ModelePDFCommandes * Define Array Column Field * * @param object $object common object - * @param outputlangs $outputlangs langs - * @param int $hidedetails Do not show line details - * @param int $hidedesc Do not show desc - * @param int $hideref Do not show ref + * @param Translate $outputlangs langs + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref * @return null */ public function defineColumnField($object,$outputlangs,$hidedetails=0,$hidedesc=0,$hideref=0) From 1a4bb7ed120b4672bd3b897c8ea8baba83524354 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:23:21 +0200 Subject: [PATCH 147/769] FIX hover on line of movement list --- htdocs/product/stock/movement_list.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index ec193e6dfc8..d6ec1982569 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -579,8 +579,10 @@ if ($resql) print ''; + print ''; + // Description - print ''; + print ''; $calcproductsunique=$object->nb_different_products(); $calcproducts=$object->nb_products(); @@ -966,7 +968,7 @@ if ($resql) $origin = ''; } - print ""; + print ''; // Id movement if (! empty($arrayfields['m.rowid']['checked'])) { From f0743c55bb678d6546b8db516a7456bb24562e70 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:24:10 +0200 Subject: [PATCH 148/769] Fix phpcs --- htdocs/product/class/product.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index f8326a60721..49d4d9a290c 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -3556,7 +3556,6 @@ class Product extends CommonObject } else { return false; } - } /** From 2e0de15f958116f083950881231cc1d49345080d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:26:50 +0200 Subject: [PATCH 149/769] Add public --- htdocs/product/class/product.class.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 49d4d9a290c..6748ecdef69 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -3488,7 +3488,7 @@ class Product extends CommonObject * * @return int Nb of father + child */ - function hasFatherOrChild() + public function hasFatherOrChild() { $nb = 0; @@ -3514,7 +3514,7 @@ class Product extends CommonObject * * @return int Number of variants */ - function hasVariants() + public function hasVariants() { $nb = 0; $sql = "SELECT count(rowid) as nb FROM ".MAIN_DB_PREFIX."product_attribute_combination WHERE fk_product_parent = ".$this->id; @@ -3535,7 +3535,7 @@ class Product extends CommonObject * * @return int */ - function isVariant() + public function isVariant() { global $conf; if (!empty($conf->variants->enabled)) { @@ -3563,7 +3563,7 @@ class Product extends CommonObject * * @return array Array of product */ - function getFather() + public function getFather() { $sql = "SELECT p.rowid, p.label as label, p.ref as ref, pa.fk_product_pere as id, p.fk_product_type, pa.qty, pa.incdec, p.entity"; $sql.= " FROM ".MAIN_DB_PREFIX."product_association as pa,"; @@ -3604,7 +3604,7 @@ class Product extends CommonObject * @param int $level Level of recursing call (start to 1) * @return array Return array(prodid=>array(0=prodid, 1=>qty, 2=> ...) */ - function getChildsArbo($id, $firstlevelonly=0, $level=1) + public function getChildsArbo($id, $firstlevelonly=0, $level=1) { global $alreadyfound; @@ -3692,7 +3692,7 @@ class Product extends CommonObject * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking * @return string String with URL */ - function getNomUrl($withpicto=0, $option='', $maxlength=0, $save_lastsearch_value=-1) + public function getNomUrl($withpicto=0, $option='', $maxlength=0, $save_lastsearch_value=-1) { global $conf, $langs, $hookmanager; include_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php'; @@ -3848,7 +3848,7 @@ class Product extends CommonObject * @param int $type 0=Sell, 1=Buy, 2=Batch Number management * @return string Label of status */ - function getLibStatut($mode=0, $type=0) + public function getLibStatut($mode=0, $type=0) { switch ($type) { From 6d86727c0bd7da3c52d884f2e58f5f0f82791361 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:34:00 +0200 Subject: [PATCH 150/769] Lang not loaded --- htdocs/product/stock/movement_list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index d6ec1982569..31394144337 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -43,7 +43,7 @@ if (! empty($conf->projet->enabled)) } // Load translation files required by the page -$langs->loadLangs(array('products', 'stocks')); +$langs->loadLangs(array('products', 'stocks', 'orders')); if (! empty($conf->productbatch->enabled)) $langs->load("productbatch"); // Security check From c2c4366c629a64fa91fa47bc7c81bce66c900188 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 11:38:16 +0200 Subject: [PATCH 151/769] Removed duplicate translation --- htdocs/core/modules/modStock.class.php | 2 +- htdocs/langs/en_US/stocks.lang | 2 +- htdocs/product/stock/massstockmove.php | 4 ++-- htdocs/product/stock/movement_list.php | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/core/modules/modStock.class.php b/htdocs/core/modules/modStock.class.php index e9e33c8bbf3..d4f79f1efcf 100644 --- a/htdocs/core/modules/modStock.class.php +++ b/htdocs/core/modules/modStock.class.php @@ -273,7 +273,7 @@ class modStock extends DolibarrModules 'e.rowid'=>'IdWarehouse','e.ref'=>'LocationSummary','e.description'=>'DescWareHouse','e.lieu'=>'LieuWareHouse','e.address'=>'Address','e.zip'=>'Zip', 'e.town'=>'Town','p.rowid'=>"ProductId",'p.ref'=>"Ref",'p.fk_product_type'=>"Type",'p.label'=>"Label",'p.description'=>"Description",'p.note'=>"Note", 'p.price'=>"Price",'p.tva_tx'=>'VAT','p.tosell'=>"OnSell",'p.tobuy'=>'OnBuy','p.duration'=>"Duration",'p.datec'=>'DateCreation', - 'p.tms'=>'DateModification','sm.rowid'=>'MovementId','sm.value'=>'Qty','sm.datem'=>'DateMovement','sm.label'=>'LabelMovement', + 'p.tms'=>'DateModification','sm.rowid'=>'MovementId','sm.value'=>'Qty','sm.datem'=>'DateMovement','sm.label'=>'MovementLabel', 'sm.inventorycode'=>'InventoryCode' ); $this->export_TypeFields_array[$r]=array( diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index b3313f5ff73..57138a75153 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -44,7 +44,6 @@ TransferStock=Transfer stock MassStockTransferShort=Mass stock transfer StockMovement=Stock movement StockMovements=Stock movements -LabelMovement=Movement label NumberOfUnit=Number of units UnitPurchaseValue=Unit purchase price StockTooLow=Stock too low @@ -134,6 +133,7 @@ StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) MovementLabel=Label of movement +TypeMovement=Type of movement DateMovement=Date of movement InventoryCode=Movement or inventory code IsInPackage=Contained into package diff --git a/htdocs/product/stock/massstockmove.php b/htdocs/product/stock/massstockmove.php index c585b7a7e89..e456f966cf5 100644 --- a/htdocs/product/stock/massstockmove.php +++ b/htdocs/product/stock/massstockmove.php @@ -161,7 +161,7 @@ if ($action == 'createmovements') if (! GETPOST("label")) { $error++; - setEventMessages($langs->trans("ErrorFieldRequired"),$langs->transnoentitiesnoconv("LabelMovement"), null, 'errors'); + setEventMessages($langs->trans("ErrorFieldRequired"),$langs->transnoentitiesnoconv("MovementLabel"), null, 'errors'); } $db->begin(); @@ -451,7 +451,7 @@ print '
'.$langs->trans("Description").''.dol_htmlentitiesbr($object->description).'
'.$langs->trans("Description").''.dol_htmlentitiesbr($object->description).'
'; print ''; print ''; print ''; - print ''; + print ''; print ''; diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index 31394144337..053fe3a458b 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -103,7 +103,7 @@ $arrayfields=array( 'e.ref'=>array('label'=>$langs->trans("Warehouse"), 'checked'=>1, 'enabled'=>(! $id > 0)), // If we are on specific warehouse, we hide it 'm.fk_user_author'=>array('label'=>$langs->trans("Author"), 'checked'=>0), 'm.inventorycode'=>array('label'=>$langs->trans("InventoryCodeShort"), 'checked'=>1), - 'm.label'=>array('label'=>$langs->trans("LabelMovement"), 'checked'=>1), + 'm.label'=>array('label'=>$langs->trans("MovementLabel"), 'checked'=>1), 'm.type_mouvement'=>array('label'=>$langs->trans("TypeMovement"), 'checked'=>1), 'origin'=>array('label'=>$langs->trans("Origin"), 'checked'=>1), 'm.value'=>array('label'=>$langs->trans("Qty"), 'checked'=>1), From 36323752ed1e8d0611d27164d15440cae28601f2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 12:00:54 +0200 Subject: [PATCH 152/769] Project must be on a dedicated field --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 1 + .../install/mysql/tables/llx_stock_mouvement.sql | 1 + htdocs/langs/en_US/stocks.lang | 4 ++++ .../product/stock/class/mouvementstock.class.php | 7 +++++++ htdocs/product/stock/movement_list.php | 15 ++++++++------- 5 files changed, 21 insertions(+), 7 deletions(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 09908ac86f5..c29cc803836 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -54,6 +54,7 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN desc_fourn text after ref_f ALTER TABLE llx_user ADD COLUMN dateemploymentend date after dateemployment; +ALTER TABLE llx_stock_mouvement ADD COLUMN fk_project integer; ALTER TABLE llx_c_field_list ADD COLUMN visible tinyint DEFAULT 1 NOT NULL AFTER search; diff --git a/htdocs/install/mysql/tables/llx_stock_mouvement.sql b/htdocs/install/mysql/tables/llx_stock_mouvement.sql index 1e78e7a9820..fdeab913268 100644 --- a/htdocs/install/mysql/tables/llx_stock_mouvement.sql +++ b/htdocs/install/mysql/tables/llx_stock_mouvement.sql @@ -33,6 +33,7 @@ create table llx_stock_mouvement fk_user_author integer, -- Id user making movement label varchar(255), -- Comment on movement inventorycode varchar(128), -- Code used to group different movement line into one operation (may be an inventory, a mass picking) + fk_project integer, fk_origin integer, origintype varchar(32), model_pdf varchar(255) diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index 57138a75153..21ed7f4085e 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -204,3 +204,7 @@ ListInventory=List StockSupportServices=Stock management supports Services StockSupportServicesDesc=By default, you can stock only product with type "product". If on, and if module service is on, you can also stock a product with type "service" ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase after correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease after correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease diff --git a/htdocs/product/stock/class/mouvementstock.class.php b/htdocs/product/stock/class/mouvementstock.class.php index 9012262d163..395c192311f 100644 --- a/htdocs/product/stock/class/mouvementstock.class.php +++ b/htdocs/product/stock/class/mouvementstock.class.php @@ -44,6 +44,13 @@ class MouvementStock extends CommonObject public $product_id; public $warehouse_id; public $qty; + + /** + * @var int Type of movement + * 0=input (stock increase by a stock transfer), 1=output (stock decrease after by a stock transfer), + * 2=output (stock decrease), 3=input (stock increase) + * Note that qty should be > 0 with 0 or 3, < 0 with 1 or 2. + */ public $type; public $tms = ''; diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index 053fe3a458b..1d8999d319c 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -478,11 +478,11 @@ if (! empty($search_movement)) $sql.= natural_search('m.label', $search_mov if (! empty($search_inventorycode)) $sql.= natural_search('m.inventorycode', $search_inventorycode); if (! empty($search_product_ref)) $sql.= natural_search('p.ref', $search_product_ref); if (! empty($search_product)) $sql.= natural_search('p.label', $search_product); -if ($search_warehouse > 0) $sql.= " AND e.rowid = '".$db->escape($search_warehouse)."'"; +if ($search_warehouse != '' && $search_warehouse != '-1') $sql.= natural_search('e.rowid', $search_warehouse, 2); if (! empty($search_user)) $sql.= natural_search('u.login', $search_user); if (! empty($search_batch)) $sql.= natural_search('m.batch', $search_batch); if ($search_qty != '') $sql.= natural_search('m.value', $search_qty, 1); -if ($search_type_mouvement) $sql.= " AND m.type_mouvement = '".$db->escape($search_type_mouvement)."'"; +if ($search_type_mouvement != '' && $search_type_mouvement != '-1') $sql.= natural_search('m.type_mouvement', $search_type_mouvement, 2); // Add where from extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_sql.tpl.php'; // Add where from hooks @@ -843,13 +843,14 @@ if ($resql) // Type of movement print ''; From 24f37c7bd71c76a161e6cef75c3ea9b6ae9513a9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 12:12:06 +0200 Subject: [PATCH 153/769] CSS --- htdocs/langs/en_US/stocks.lang | 4 ++-- htdocs/product/stock/movement_list.php | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index 21ed7f4085e..fbbc00887aa 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -204,7 +204,7 @@ ListInventory=List StockSupportServices=Stock management supports Services StockSupportServicesDesc=By default, you can stock only product with type "product". If on, and if module service is on, you can also stock a product with type "service" ReceiveProducts=Receive items -StockIncreaseAfterCorrectTransfer=Increase after correction/transfer -StockDecreaseAfterCorrectTransfer=Decrease after correction/transfer +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer StockIncrease=Stock increase StockDecrease=Stock decrease diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index 1d8999d319c..27c50d075aa 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -983,7 +983,7 @@ if ($resql) if (! empty($arrayfields['p.ref']['checked'])) { // Product ref - print '\n"; } @@ -1000,7 +1000,7 @@ if ($resql) } if (! empty($arrayfields['m.batch']['checked'])) { - print ''; @@ -1053,7 +1053,7 @@ if ($resql) if (! empty($arrayfields['origin']['checked'])) { // Origin of movement - print ''; + print ''; } if (! empty($arrayfields['m.value']['checked'])) { From 8eb1af2b40f25831f0bf6d90b0c21e2760efb898 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 24 Oct 2018 13:29:59 +0200 Subject: [PATCH 154/769] Start beta --- htdocs/filefunc.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index 18c5dd4962a..f886266a701 100644 --- a/htdocs/filefunc.inc.php +++ b/htdocs/filefunc.inc.php @@ -31,7 +31,7 @@ */ if (! defined('DOL_APPLICATION_TITLE')) define('DOL_APPLICATION_TITLE','Dolibarr'); -if (! defined('DOL_VERSION')) define('DOL_VERSION','9.0.0-alpha'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c +if (! defined('DOL_VERSION')) define('DOL_VERSION','9.0.0-beta'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c if (! defined('EURO')) define('EURO',chr(128)); From 86d854f3f4918e001ba26c361f3a1b2a6cc8e445 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 24 Oct 2018 23:04:26 +0200 Subject: [PATCH 155/769] Squiz.WhiteSpace.ControlStructureSpacing.SpacingBeforeClose --- dev/initdata/generate-invoice.php | 3 -- dev/initdata/generate-proposal.php | 2 -- dev/setup/codesniffer/ruleset.xml | 1 + htdocs/accountancy/admin/accountmodel.php | 1 - htdocs/accountancy/admin/categories_list.php | 1 - htdocs/accountancy/admin/journals_list.php | 1 - htdocs/accountancy/admin/productaccount.php | 1 - htdocs/accountancy/bookkeeping/balance.php | 1 - htdocs/accountancy/bookkeeping/list.php | 1 - .../accountancy/class/bookkeeping.class.php | 1 - htdocs/accountancy/customer/lines.php | 1 - htdocs/accountancy/journal/sellsjournal.php | 1 - htdocs/adherents/card.php | 3 -- htdocs/adherents/cartes/carte.php | 1 - htdocs/adherents/class/adherent.class.php | 2 -- htdocs/adherents/class/subscription.class.php | 1 - htdocs/adherents/note.php | 1 - htdocs/adherents/type.php | 1 - htdocs/admin/barcode.php | 1 - htdocs/admin/chequereceipts.php | 1 - htdocs/admin/delais.php | 8 ----- htdocs/admin/dict.php | 1 - .../class/PSWebServiceLibrary.class.php | 1 - htdocs/admin/facture.php | 3 -- htdocs/admin/ldap.php | 1 - htdocs/admin/ldap_members.php | 1 - htdocs/admin/ldap_users.php | 1 - htdocs/admin/limits.php | 1 - htdocs/admin/modules.php | 6 ---- htdocs/admin/oauth.php | 1 - htdocs/admin/oauthlogintokens.php | 3 -- htdocs/admin/payment.php | 2 -- htdocs/admin/pdf.php | 1 - htdocs/admin/receiptprinter.php | 1 - htdocs/admin/supplier_payment.php | 1 - htdocs/admin/syslog.php | 2 -- htdocs/admin/tools/eaccelerator.php | 1 - htdocs/admin/tools/listsessions.php | 1 - htdocs/admin/translation.php | 1 - htdocs/admin/website.php | 1 - htdocs/asset/class/asset.class.php | 1 - htdocs/asset/type.php | 3 -- htdocs/blockedlog/admin/blockedlog_list.php | 2 -- htdocs/blockedlog/ajax/authority.php | 2 -- htdocs/blockedlog/ajax/check_signature.php | 1 - htdocs/blockedlog/class/authority.class.php | 4 --- htdocs/blockedlog/class/blockedlog.class.php | 3 -- htdocs/bookmarks/card.php | 1 - htdocs/cashdesk/class/Facturation.class.php | 32 ------------------- htdocs/cashdesk/facturation.php | 1 - htdocs/cashdesk/facturation_dhtml.php | 1 - htdocs/cashdesk/facturation_verif.php | 2 -- htdocs/cashdesk/tpl/facturation1.tpl.php | 1 - htdocs/cashdesk/tpl/liste_articles.tpl.php | 2 -- htdocs/cashdesk/tpl/validation1.tpl.php | 5 --- htdocs/cashdesk/validation_verif.php | 1 - htdocs/categories/class/categorie.class.php | 2 -- htdocs/categories/traduction.php | 1 - htdocs/categories/viewcat.php | 1 - htdocs/comm/action/card.php | 2 -- htdocs/comm/action/class/actioncomm.class.php | 2 -- .../action/class/api_agendaevents.class.php | 1 - htdocs/comm/action/index.php | 1 - htdocs/comm/action/list.php | 2 -- htdocs/comm/action/pertype.php | 1 - htdocs/comm/action/peruser.php | 2 -- htdocs/comm/address.php | 3 -- htdocs/comm/card.php | 2 -- htdocs/comm/index.php | 2 -- htdocs/comm/mailing/advtargetemailing.php | 1 - htdocs/comm/mailing/card.php | 1 - htdocs/comm/mailing/cibles.php | 1 - .../mailing/class/advtargetemailing.class.php | 9 ------ .../html.formadvtargetemailing.class.php | 3 -- htdocs/comm/mailing/class/mailing.class.php | 2 -- htdocs/comm/mailing/index.php | 1 - htdocs/comm/multiprix.php | 1 - htdocs/comm/propal/card.php | 3 -- .../comm/propal/class/api_proposals.class.php | 1 - htdocs/comm/propal/class/propal.class.php | 3 -- htdocs/comm/propal/list.php | 1 - htdocs/commande/card.php | 1 - htdocs/commande/class/api_orders.class.php | 2 -- htdocs/commande/class/commande.class.php | 1 - htdocs/commande/list.php | 1 - htdocs/commande/orderstoinvoice.php | 5 --- htdocs/compta/bank/annuel.php | 1 - htdocs/compta/bank/card.php | 3 -- .../bank/class/paymentvarious.class.php | 1 - htdocs/compta/bank/ligne.php | 2 -- htdocs/compta/compta-files.php | 2 -- htdocs/compta/deplacement/card.php | 1 - htdocs/compta/deplacement/document.php | 1 - htdocs/compta/deplacement/index.php | 1 - htdocs/compta/facture/card.php | 13 -------- htdocs/compta/facture/class/facture.class.php | 2 -- .../facture/class/paymentterm.class.php | 2 -- htdocs/compta/facture/contact.php | 1 - htdocs/compta/facture/fiche-rec.php | 4 --- .../compta/facture/invoicetemplate_list.php | 1 - htdocs/compta/facture/list.php | 4 --- htdocs/compta/index.php | 3 -- htdocs/compta/localtax/clients.php | 2 -- htdocs/compta/paiement/card.php | 2 -- htdocs/compta/paiement/cheque/card.php | 4 --- .../cheque/class/remisecheque.class.php | 1 - .../compta/paiement/class/cpaiement.class.php | 2 -- htdocs/compta/paiement_charge.php | 1 - htdocs/compta/payment_sc/card.php | 1 - .../class/bonprelevement.class.php | 4 --- .../class/rejetprelevement.class.php | 1 - htdocs/compta/prelevement/create.php | 1 - htdocs/compta/prelevement/factures.php | 1 - htdocs/compta/prelevement/fiche-rejet.php | 1 - htdocs/compta/prelevement/fiche-stat.php | 1 - htdocs/compta/prelevement/ligne.php | 1 - htdocs/compta/resultat/index.php | 3 -- .../salaries/class/paymentsalary.class.php | 1 - htdocs/compta/salaries/document.php | 1 - .../sociales/class/cchargesociales.class.php | 2 -- .../sociales/class/chargesociales.class.php | 2 -- .../class/paymentsocialcontribution.class.php | 1 - htdocs/compta/stats/byratecountry.php | 2 -- htdocs/compta/stats/casoc.php | 1 - htdocs/compta/tva/class/tva.class.php | 1 - htdocs/contact/card.php | 2 -- htdocs/contact/class/contact.class.php | 1 - htdocs/contrat/class/api_contracts.class.php | 2 -- htdocs/contrat/class/contrat.class.php | 3 -- htdocs/contrat/contact.php | 1 - htdocs/contrat/document.php | 1 - htdocs/contrat/index.php | 5 --- htdocs/contrat/note.php | 1 - htdocs/core/actions_sendmails.inc.php | 1 - htdocs/core/ajax/ajaxdirtree.php | 1 - htdocs/core/ajax/check_notifications.php | 1 - htdocs/core/ajax/price.php | 1 - htdocs/core/boxes/box_actions.php | 1 - htdocs/core/boxes/box_factures.php | 1 - .../boxes/box_graph_invoices_permonth.php | 1 - .../box_graph_invoices_supplier_permonth.php | 1 - .../core/boxes/box_graph_orders_permonth.php | 1 - .../box_graph_orders_supplier_permonth.php | 1 - .../boxes/box_graph_propales_permonth.php | 1 - htdocs/core/boxes/box_services_expired.php | 2 -- htdocs/core/class/comment.class.php | 1 - htdocs/core/class/commonobject.class.php | 6 ---- htdocs/core/class/ctyperesource.class.php | 4 --- htdocs/core/class/dolgraph.class.php | 1 - htdocs/core/class/dolreceiptprinter.class.php | 2 -- .../core/class/emailsenderprofile.class.php | 1 - htdocs/core/class/extrafields.class.php | 3 -- htdocs/core/class/html.form.class.php | 2 -- htdocs/core/class/html.formfile.class.php | 2 -- htdocs/core/class/html.formother.class.php | 1 - htdocs/core/class/notify.class.php | 2 -- htdocs/core/class/rssparser.class.php | 4 --- htdocs/core/class/utils.class.php | 1 - htdocs/core/db/mssql.class.php | 2 -- htdocs/core/db/sqlite3.class.php | 2 -- htdocs/core/lib/admin.lib.php | 1 - htdocs/core/lib/company.lib.php | 1 - htdocs/core/lib/emailing.lib.php | 1 - htdocs/core/lib/fichinter.lib.php | 1 - htdocs/core/lib/files.lib.php | 1 - htdocs/core/lib/functions.lib.php | 6 ---- htdocs/core/lib/xcal.lib.php | 1 - htdocs/core/login/functions_ldap.php | 1 - htdocs/core/menus/standard/eldy.lib.php | 6 ---- htdocs/core/menus/standard/eldy_menu.php | 2 -- htdocs/core/menus/standard/empty.php | 2 -- htdocs/core/modules/DolibarrModules.class.php | 4 --- .../modules/cheque/modules_chequereceipts.php | 1 - .../commande/doc/pdf_einstein.modules.php | 1 - .../commande/doc/pdf_eratosthene.modules.php | 3 -- .../expedition/doc/pdf_rouget.modules.php | 2 -- .../doc/pdf_standard.modules.php | 1 - .../modules/facture/doc/pdf_crabe.modules.php | 4 --- .../facture/doc/pdf_sponge.modules.php | 5 --- .../modules/import/import_csv.modules.php | 1 - .../modules/import/import_xlsx.modules.php | 1 - .../thirdparties_services_expired.modules.php | 1 - htdocs/core/modules/modStock.class.php | 1 - .../doc/doc_generic_project_odt.modules.php | 1 - .../task/doc/doc_generic_task_odt.modules.php | 1 - .../modules/propale/doc/pdf_azur.modules.php | 1 - .../modules/propale/doc/pdf_cyan.modules.php | 3 -- .../modGeneratePassStandard.class.php | 1 - .../stock/doc/pdf_stdmovement.modules.php | 1 - .../pdf/pdf_canelle.modules.php | 1 - .../pdf/pdf_muscadet.modules.php | 1 - .../doc/pdf_aurore.modules.php | 1 - htdocs/core/tpl/card_presend.tpl.php | 1 - htdocs/core/tpl/resource_view.tpl.php | 1 - .../interface_80_modStripe_Stripe.class.php | 1 - htdocs/cron/card.php | 1 - htdocs/datapolicy/admin/setup.php | 2 -- htdocs/datapolicy/class/datapolicy.class.php | 2 -- .../datapolicy/class/datapolicycron.class.php | 2 -- htdocs/datapolicy/mailing.php | 2 -- htdocs/don/card.php | 1 - htdocs/don/document.php | 1 - htdocs/don/payment/card.php | 2 -- htdocs/ecm/class/ecmdirectory.class.php | 1 - htdocs/ecm/dir_add_card.php | 1 - htdocs/ecm/dir_card.php | 1 - htdocs/ecm/file_card.php | 1 - htdocs/ecm/index_auto.php | 1 - htdocs/expedition/card.php | 9 ------ .../expedition/class/api_shipments.class.php | 1 - htdocs/expedition/class/expedition.class.php | 4 --- htdocs/expedition/contact.php | 1 - htdocs/expedition/list.php | 1 - htdocs/expedition/shipment.php | 3 -- htdocs/expensereport/card.php | 7 ---- .../class/api_expensereports.class.php | 1 - .../class/expensereport.class.php | 2 -- .../class/paymentexpensereport.class.php | 1 - htdocs/expensereport/document.php | 1 - htdocs/expensereport/export_csv.php | 4 --- htdocs/expensereport/index.php | 1 - htdocs/expensereport/payment/card.php | 2 -- htdocs/expensereport/payment/payment.php | 1 - htdocs/exports/export.php | 4 --- htdocs/fichinter/card-rec.php | 5 --- htdocs/fichinter/card.php | 8 ----- htdocs/fichinter/class/fichinter.class.php | 1 - htdocs/fichinter/contact.php | 1 - htdocs/fichinter/document.php | 1 - .../class/fournisseur.commande.class.php | 5 --- .../fournisseur.commande.dispatch.class.php | 2 -- .../fourn/class/fournisseur.facture.class.php | 2 -- htdocs/fourn/class/paiementfourn.class.php | 1 - htdocs/fourn/commande/card.php | 10 ------ htdocs/fourn/commande/contact.php | 1 - htdocs/fourn/commande/document.php | 1 - htdocs/fourn/commande/list.php | 1 - htdocs/fourn/commande/orderstoinvoice.php | 2 -- htdocs/fourn/contact.php | 1 - htdocs/fourn/facture/card.php | 9 ------ htdocs/fourn/facture/contact.php | 1 - htdocs/fourn/facture/document.php | 1 - htdocs/fourn/facture/impayees.php | 1 - htdocs/fourn/facture/list.php | 1 - htdocs/fourn/paiement/card.php | 3 -- htdocs/ftp/index.php | 5 --- htdocs/holiday/card.php | 5 --- htdocs/holiday/class/holiday.class.php | 2 -- htdocs/holiday/list.php | 1 - htdocs/holiday/month_report.php | 1 - htdocs/holiday/view_log.php | 1 - htdocs/hrm/admin/admin_establishment.php | 1 - htdocs/hrm/establishment/card.php | 1 - htdocs/hrm/index.php | 3 -- htdocs/imports/import.php | 4 --- htdocs/install/check.php | 2 -- htdocs/install/lib/repair.lib.php | 1 - htdocs/install/repair.php | 1 - htdocs/install/step2.php | 1 - htdocs/install/step4.php | 1 - htdocs/install/upgrade2.php | 4 --- htdocs/livraison/card.php | 3 -- htdocs/loan/class/loanschedule.class.php | 2 -- htdocs/loan/class/paymentloan.class.php | 1 - htdocs/margin/productMargins.php | 2 -- .../template/class/actions_mymodule.class.php | 1 - .../template/class/myobject.class.php | 1 - htdocs/opensurvey/results.php | 1 - htdocs/printing/admin/printing.php | 2 -- htdocs/product/admin/price_rules.php | 1 - htdocs/product/admin/product.php | 1 - htdocs/product/admin/product_tools.php | 1 - htdocs/product/card.php | 2 -- htdocs/product/class/product.class.php | 3 -- .../class/propalmergepdfproduct.class.php | 6 ---- htdocs/product/composition/card.php | 2 -- htdocs/product/document.php | 1 - htdocs/product/index.php | 2 -- .../inventory/class/inventory.class.php | 1 - .../product/inventory/tpl/inventory.tpl.php | 1 - htdocs/product/price.php | 2 -- htdocs/product/reassort.php | 2 -- htdocs/product/reassortlot.php | 1 - htdocs/product/stock/card.php | 3 -- htdocs/product/stock/class/entrepot.class.php | 2 -- .../stock/class/mouvementstock.class.php | 1 - .../class/productstockentrepot.class.php | 2 -- htdocs/product/stock/index.php | 1 - htdocs/product/stock/product.php | 8 ----- htdocs/product/stock/productlot_card.php | 2 -- htdocs/product/stock/productlot_document.php | 3 -- htdocs/product/stock/valo.php | 2 -- htdocs/product/traduction.php | 1 - htdocs/projet/activity/index.php | 3 -- htdocs/projet/card.php | 1 - htdocs/projet/class/api_projects.class.php | 1 - htdocs/projet/class/api_tasks.class.php | 1 - htdocs/projet/class/project.class.php | 2 -- htdocs/projet/class/projectstats.class.php | 1 - htdocs/projet/class/task.class.php | 1 - htdocs/projet/document.php | 1 - htdocs/projet/element.php | 1 - htdocs/projet/list.php | 1 - htdocs/projet/tasks.php | 1 - htdocs/projet/tasks/comment.php | 1 - htdocs/projet/tasks/contact.php | 1 - htdocs/public/cron/cron_run_jobs.php | 1 - htdocs/public/donations/donateurs_code.php | 1 - htdocs/public/emailing/mailing-read.php | 1 - htdocs/public/members/public_card.php | 1 - htdocs/public/onlinesign/newonlinesign.php | 3 -- htdocs/public/payment/newpayment.php | 1 - htdocs/public/stripe/ipn.php | 5 --- htdocs/resource/card.php | 1 - htdocs/resource/class/dolresource.class.php | 2 -- htdocs/resource/document.php | 1 - htdocs/resource/element_resource.php | 1 - htdocs/societe/admin/societe.php | 4 --- .../canvas/actions_card_common.class.php | 1 - .../company/actions_card_company.class.php | 1 - htdocs/societe/card.php | 7 ---- htdocs/societe/class/address.class.php | 2 -- .../societe/class/api_thirdparties.class.php | 2 -- .../class/companybankaccount.class.php | 1 - .../class/companypaymentmode.class.php | 1 - htdocs/societe/class/societe.class.php | 4 --- htdocs/societe/class/societeaccount.class.php | 1 - htdocs/societe/consumption.php | 1 - htdocs/societe/price.php | 1 - htdocs/stripe/charge.php | 1 - htdocs/stripe/class/actions_stripe.class.php | 1 - htdocs/stripe/class/stripe.class.php | 1 - htdocs/stripe/payment.php | 1 - htdocs/supplier_proposal/card.php | 1 - .../class/api_supplier_proposals.class.php | 1 - .../class/supplier_proposal.class.php | 4 --- htdocs/supplier_proposal/contact.php | 1 - htdocs/ticket/list.php | 1 - htdocs/user/card.php | 2 -- htdocs/user/class/user.class.php | 2 -- htdocs/user/clicktodial.php | 1 - htdocs/user/param_ihm.php | 2 -- htdocs/variants/admin/admin.php | 1 - htdocs/variants/card.php | 1 - .../class/ProductCombination.class.php | 1 - htdocs/variants/combinations.php | 4 --- htdocs/variants/generator.php | 1 - htdocs/webservices/server_actioncomm.php | 1 - htdocs/webservices/server_category.php | 2 -- htdocs/webservices/server_invoice.php | 2 -- htdocs/webservices/server_order.php | 6 ---- .../webservices/server_productorservice.php | 5 --- htdocs/webservices/server_thirdparty.php | 1 - htdocs/webservices/server_user.php | 1 - htdocs/website/index.php | 2 -- scripts/cron/cron_run_jobs.php | 1 - scripts/emailings/mailing-send.php | 2 -- .../members/sync_members_ldap2dolibarr.php | 1 - scripts/product/migrate_picture_path.php | 1 - test/phpunit/CodingSqlTest.php | 3 -- 360 files changed, 1 insertion(+), 720 deletions(-) diff --git a/dev/initdata/generate-invoice.php b/dev/initdata/generate-invoice.php index 4064336cbab..280518bd4e3 100755 --- a/dev/initdata/generate-invoice.php +++ b/dev/initdata/generate-invoice.php @@ -185,7 +185,4 @@ while ($i < GEN_NUMBER_FACTURE && $result >= 0) { dol_print_error($db,$object->error); } - } - - diff --git a/dev/initdata/generate-proposal.php b/dev/initdata/generate-proposal.php index 631b734fc9e..eb2bfe15a00 100755 --- a/dev/initdata/generate-proposal.php +++ b/dev/initdata/generate-proposal.php @@ -218,6 +218,4 @@ while ($i < GEN_NUMBER_PROPAL && $result >= 0) { dol_print_error($db,$object->error); } - } - diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index 79b16bdbf55..67bf58e51ed 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -173,6 +173,7 @@ 0 + diff --git a/htdocs/accountancy/admin/accountmodel.php b/htdocs/accountancy/admin/accountmodel.php index efa23a6a586..d3843763732 100644 --- a/htdocs/accountancy/admin/accountmodel.php +++ b/htdocs/accountancy/admin/accountmodel.php @@ -247,7 +247,6 @@ if (GETPOST('actionadd','alpha') || GETPOST('actionmodify','alpha')) { $obj = $db->fetch_object($result); $newid=($obj->newid + 1); - } else { dol_print_error($db); } diff --git a/htdocs/accountancy/admin/categories_list.php b/htdocs/accountancy/admin/categories_list.php index 14a6b56512d..9f6b0bf14fe 100644 --- a/htdocs/accountancy/admin/categories_list.php +++ b/htdocs/accountancy/admin/categories_list.php @@ -202,7 +202,6 @@ if (GETPOST('actionadd','alpha') || GETPOST('actionmodify','alpha')) { $obj = $db->fetch_object($result); $newid=($obj->newid + 1); - } else { dol_print_error($db); } diff --git a/htdocs/accountancy/admin/journals_list.php b/htdocs/accountancy/admin/journals_list.php index ae254788b08..3511ae431ec 100644 --- a/htdocs/accountancy/admin/journals_list.php +++ b/htdocs/accountancy/admin/journals_list.php @@ -202,7 +202,6 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { $obj = $db->fetch_object($result); $newid=($obj->newid + 1); - } else { dol_print_error($db); } diff --git a/htdocs/accountancy/admin/productaccount.php b/htdocs/accountancy/admin/productaccount.php index 0babd9aab5f..a84e2f6fcab 100644 --- a/htdocs/accountancy/admin/productaccount.php +++ b/htdocs/accountancy/admin/productaccount.php @@ -173,7 +173,6 @@ if ($action == 'update') { $cpt++; } - } if ($ko) setEventMessages($langs->trans("XLineFailedToBeBinded", $ko), null, 'errors'); diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index 161e3346b9c..9feb2a7c234 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -315,7 +315,6 @@ if ($action != 'export_csv') print "
'.$langs->trans("LabelMovement").''.$langs->trans("MovementLabel").''; print ''; print ''; //print ''; - print ''; print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; print ''; + print ajax_combobox('search_type_mouvement'); // TODO: add new function $formentrepot->selectTypeOfMovement(...) like // print $formproduct->selectWarehouses($search_warehouse, 'search_warehouse', 'warehouseopen,warehouseinternal', 1, 0, 0, '', 0, 0, null, 'maxwidth200'); print ''; + print ''; print $productstatic->getNomUrl(1,'stock',16); print "'; + print ''; if ($productlot->id > 0) print $productlot->getNomUrl(1); else print $productlot->batch; // the id may not be defined if movement was entered when lot was not saved or if lot was removed after movement. print ''.$origin.''.$origin.'
"; print ''; - } // End of page diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index 4a4630edfa5..46575c21143 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -760,7 +760,6 @@ if ($num > 0) else print ''; } print ''; - } } diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/htdocs/accountancy/class/bookkeeping.class.php index 0ce49e76f51..b07f76a22df 100644 --- a/htdocs/accountancy/class/bookkeeping.class.php +++ b/htdocs/accountancy/class/bookkeeping.class.php @@ -1841,7 +1841,6 @@ class BookKeeping extends CommonObject } return $obj->label; - } else { $this->error = "Error " . $this->db->lasterror(); dol_syslog(__METHOD__ . " " . $this->error, LOG_ERR); diff --git a/htdocs/accountancy/customer/lines.php b/htdocs/accountancy/customer/lines.php index af80d70f043..7d8599b683c 100644 --- a/htdocs/accountancy/customer/lines.php +++ b/htdocs/accountancy/customer/lines.php @@ -135,7 +135,6 @@ if (is_array($changeaccount) && count($changeaccount) > 0) { $account_parent = ''; // Protection to avoid to mass apply it a second time } - } diff --git a/htdocs/accountancy/journal/sellsjournal.php b/htdocs/accountancy/journal/sellsjournal.php index 10cb339c2d6..ee7d45d6c66 100644 --- a/htdocs/accountancy/journal/sellsjournal.php +++ b/htdocs/accountancy/journal/sellsjournal.php @@ -500,7 +500,6 @@ if ($action == 'writebookkeeping') { break; // Break in the foreach } } - } $tabpay = $tabfac; diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index 908a46c91d1..e7b36b77ad9 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -789,7 +789,6 @@ if (empty($reshook)) $mode='emailfrommember'; $trackid='mem'.$object->id; include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; - } @@ -1320,7 +1319,6 @@ else print ''; print ''; - } if ($id > 0 && $action != 'edit') @@ -1858,7 +1856,6 @@ else print '\n"; } } - } } print ''; diff --git a/htdocs/adherents/cartes/carte.php b/htdocs/adherents/cartes/carte.php index ff7e9c3be2e..c50de6f8c81 100644 --- a/htdocs/adherents/cartes/carte.php +++ b/htdocs/adherents/cartes/carte.php @@ -208,7 +208,6 @@ if ((! empty($foruserid) || ! empty($foruserlogin) || ! empty($mode)) && ! $mesg $mesg=$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("DescADHERENT_CARD_TYPE")); } if (! $mesg) $result=members_card_pdf_create($db, $arrayofmembers, $model, $outputlangs); - } elseif ($mode == 'label') { diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 317d7697231..3df36ef3eda 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -2509,7 +2509,6 @@ class Adherent extends CommonObject } $this->db->free($result); - } else { @@ -2738,7 +2737,6 @@ class Adherent extends CommonObject $nbok++; // TODO Add event email sent for member - } } else diff --git a/htdocs/adherents/class/subscription.class.php b/htdocs/adherents/class/subscription.class.php index 562b34af2b1..7b8f453c94c 100644 --- a/htdocs/adherents/class/subscription.class.php +++ b/htdocs/adherents/class/subscription.class.php @@ -416,7 +416,6 @@ class Subscription extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/adherents/note.php b/htdocs/adherents/note.php index 8cd12cd6ca2..c12c45de8b7 100644 --- a/htdocs/adherents/note.php +++ b/htdocs/adherents/note.php @@ -116,7 +116,6 @@ if ($id) dol_fiche_end(); - } // End of page diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php index e9ad0b91498..7e69d4fbc98 100644 --- a/htdocs/adherents/type.php +++ b/htdocs/adherents/type.php @@ -694,7 +694,6 @@ if ($rowid > 0) { dol_print_error($db); } - } /* ************************************************************************** */ diff --git a/htdocs/admin/barcode.php b/htdocs/admin/barcode.php index 519f2b42938..6a356843d6b 100644 --- a/htdocs/admin/barcode.php +++ b/htdocs/admin/barcode.php @@ -75,7 +75,6 @@ else if ($action == 'update') else if ($action == 'updateengine') { // TODO Update engines. - } if ($action && $action != 'setcoder' && $action != 'setModuleOptions') diff --git a/htdocs/admin/chequereceipts.php b/htdocs/admin/chequereceipts.php index 82b0ed3848c..f85018c03b8 100644 --- a/htdocs/admin/chequereceipts.php +++ b/htdocs/admin/chequereceipts.php @@ -217,7 +217,6 @@ foreach ($dirmodels as $reldir) print ''; print "\n"; - } } } diff --git a/htdocs/admin/delais.php b/htdocs/admin/delais.php index 19fa67abcff..add4e2aec80 100644 --- a/htdocs/admin/delais.php +++ b/htdocs/admin/delais.php @@ -155,7 +155,6 @@ if ($action == 'update') for($i=0; $i<4; $i++) { if(isset($_POST['MAIN_METEO'.$plus.'_LEVEL'.$i])) dolibarr_set_const($db, 'MAIN_METEO'.$plus.'_LEVEL'.$i, GETPOST('MAIN_METEO'.$plus.'_LEVEL'.$i, 'int'),'chaine',0,'',$conf->entity); } - } @@ -254,7 +253,6 @@ else print ''; print ''; - } print '
'; @@ -272,7 +270,6 @@ if($action == 'edit') { print ''; print '

'; - } else { if(empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) print $langs->trans('MeteoStdModEnabled'); else print $langs->trans('MeteoPercentageModEnabled'); @@ -362,7 +359,6 @@ if ($action == 'edit') { global->MAIN_USE_METEO_WITH_PERCENTAGE)) { @@ -385,7 +381,6 @@ if ($action == 'edit') { print '> '.$conf->global->MAIN_METEO_PERCENTAGE_LEVEL3.' %'; print ''; print ''; - } else { print '
'; @@ -406,7 +401,6 @@ if ($action == 'edit') { print '> '.$level3; print '
'; print ''; - } } @@ -416,13 +410,11 @@ if($action == 'edit') { print '
'; print '
'; - } else { // Boutons d'action print '
'; - } // End of page diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 0b5b63d35d6..4d5471b1aa8 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -705,7 +705,6 @@ if (GETPOST('actionadd') || GETPOST('actionmodify')) { $obj = $db->fetch_object($result); $newid=($obj->newid + 1); - } else { dol_print_error($db); } diff --git a/htdocs/admin/dolistore/class/PSWebServiceLibrary.class.php b/htdocs/admin/dolistore/class/PSWebServiceLibrary.class.php index 4617481d04d..c8fcd061689 100644 --- a/htdocs/admin/dolistore/class/PSWebServiceLibrary.class.php +++ b/htdocs/admin/dolistore/class/PSWebServiceLibrary.class.php @@ -177,7 +177,6 @@ class PrestaShopWebservice { $this->printDebug('HTTP REQUEST HEADER', curl_getinfo($session, CURLINFO_HEADER_OUT)); $this->printDebug('HTTP RESPONSE HEADER', $header); - } $status_code = curl_getinfo($session, CURLINFO_HTTP_CODE); if ($status_code === 0) diff --git a/htdocs/admin/facture.php b/htdocs/admin/facture.php index cd84dbf65a5..5cb093cc443 100644 --- a/htdocs/admin/facture.php +++ b/htdocs/admin/facture.php @@ -261,8 +261,6 @@ if ($action == 'setDefaultPDFModulesByType') setEventMessages($langs->trans("Error"), null, 'errors'); } } - - } @@ -436,7 +434,6 @@ foreach ($dirmodels as $reldir) print ''; print "\n"; - } } } diff --git a/htdocs/admin/ldap.php b/htdocs/admin/ldap.php index 052b2f38988..1f7b803a50e 100644 --- a/htdocs/admin/ldap.php +++ b/htdocs/admin/ldap.php @@ -336,7 +336,6 @@ if (function_exists("ldap_connect")) print $langs->trans("Error").' '.$ldap->error; print '
'; } - } } diff --git a/htdocs/admin/ldap_members.php b/htdocs/admin/ldap_members.php index 2f36f239257..61da334a90d 100644 --- a/htdocs/admin/ldap_members.php +++ b/htdocs/admin/ldap_members.php @@ -439,7 +439,6 @@ if (function_exists("ldap_connect")) print $langs->trans("ErrorLDAPMakeManualTest",$conf->ldap->dir_temp).'
'; } } - } // End of page diff --git a/htdocs/admin/ldap_users.php b/htdocs/admin/ldap_users.php index 513aa63f035..87df901cfa9 100644 --- a/htdocs/admin/ldap_users.php +++ b/htdocs/admin/ldap_users.php @@ -443,7 +443,6 @@ if (function_exists("ldap_connect")) } $liste[$key] = $label; } - } else { diff --git a/htdocs/admin/limits.php b/htdocs/admin/limits.php index f9fe219afef..ca4b8fca512 100644 --- a/htdocs/admin/limits.php +++ b/htdocs/admin/limits.php @@ -253,7 +253,6 @@ else print " x ".$langs->trans("Quantity").": ".$qty; print " - ".$langs->trans("VAT").": ".$vat.'%'; print "   ->   ".$langs->trans("TotalPriceAfterRounding").": ".$tmparray[0].' / '.$tmparray[1].' / '.$tmparray[2]."
\n"; - } // Important: can debug rounding, to simulate the rounded total diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index c089e9ef204..81eec5a4247 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -433,9 +433,7 @@ if ($action == 'reset_confirm' && $user->admin) $form = new Form($db); $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?value='.$value.'&mode='.$mode.$param, $langs->trans('ConfirmUnactivation'), $langs->trans(GETPOST('confirm_message_code')), 'reset', '', 'no', 1); - } - } print $formconfirm; @@ -711,16 +709,13 @@ if ($mode == 'common') print 'warnings_unactivation[$mysoc->country_code].'&value=' . $modName . '&mode=' . $mode . $param . '">'; print img_picto($langs->trans("Activated"),'switch_on'); print ''; - } else { print ''; print img_picto($langs->trans("Activated"),'switch_on'); print ''; - } - } print ''."\n"; @@ -775,7 +770,6 @@ if ($mode == 'common') { print ''.img_picto($langs->trans("NothingToSetup"),"setup",'class="opacitytransp" style="padding-right: 6px"').''; } - } else // Module not yet activated { diff --git a/htdocs/admin/oauth.php b/htdocs/admin/oauth.php index d18608feaf4..16827306bda 100644 --- a/htdocs/admin/oauth.php +++ b/htdocs/admin/oauth.php @@ -139,7 +139,6 @@ foreach ($list as $key) print ''; print ''; print ''; - } print ''."\n"; diff --git a/htdocs/admin/oauthlogintokens.php b/htdocs/admin/oauthlogintokens.php index fb9f2dd374e..f29c49e9f38 100644 --- a/htdocs/admin/oauthlogintokens.php +++ b/htdocs/admin/oauthlogintokens.php @@ -327,7 +327,6 @@ if ($mode == 'setup' && $user->admin) print ''; } - } if ($mode == 'test' && $user->admin) @@ -352,11 +351,9 @@ if ($mode == 'test' && $user->admin) else { print $langs->trans('PleaseConfigureDriverfromList'); } - } print ''; - } if ($mode == 'userconf' && $user->admin) diff --git a/htdocs/admin/payment.php b/htdocs/admin/payment.php index 4ca9411e105..816ab8344ce 100644 --- a/htdocs/admin/payment.php +++ b/htdocs/admin/payment.php @@ -83,7 +83,6 @@ if ($action == 'setparams') { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); } - } @@ -217,7 +216,6 @@ foreach ($dirmodels as $reldir) print ''; print "\n"; - } } } diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index 0dba6ea6700..50d8fb5b927 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -517,7 +517,6 @@ else // Show $text.= yn($conf->global->MAIN_PDF_MAIN_HIDE_THIRD_TAX,1); $text.= ''; } - } // Sales TAX / VAT information diff --git a/htdocs/admin/receiptprinter.php b/htdocs/admin/receiptprinter.php index 9205d49deae..b8d92687d84 100644 --- a/htdocs/admin/receiptprinter.php +++ b/htdocs/admin/receiptprinter.php @@ -438,7 +438,6 @@ if ($mode == 'template' && $user->admin) print ''; dol_fiche_end(); - } // to remove after test diff --git a/htdocs/admin/supplier_payment.php b/htdocs/admin/supplier_payment.php index 55fb311ccda..77f2a95070e 100644 --- a/htdocs/admin/supplier_payment.php +++ b/htdocs/admin/supplier_payment.php @@ -301,7 +301,6 @@ foreach ($dirmodels as $reldir) print ''; print "\n"; - } } } diff --git a/htdocs/admin/syslog.php b/htdocs/admin/syslog.php index e163fc83de5..d9ab678faa8 100644 --- a/htdocs/admin/syslog.php +++ b/htdocs/admin/syslog.php @@ -132,9 +132,7 @@ if ($action == 'set') { $db->rollback(); setEventMessages($error, $errors, 'errors'); - } - } // Set level diff --git a/htdocs/admin/tools/eaccelerator.php b/htdocs/admin/tools/eaccelerator.php index a3205c11a27..c6209cd7c34 100644 --- a/htdocs/admin/tools/eaccelerator.php +++ b/htdocs/admin/tools/eaccelerator.php @@ -168,7 +168,6 @@ function create_script_table($list) default: $sortby = "file"; ($order == "asc" ? uasort($list, 'compare') : uasort($list, 'revcompare')); - } foreach($list as $script) { diff --git a/htdocs/admin/tools/listsessions.php b/htdocs/admin/tools/listsessions.php index 643269bfacd..8ddc1d65525 100644 --- a/htdocs/admin/tools/listsessions.php +++ b/htdocs/admin/tools/listsessions.php @@ -170,7 +170,6 @@ if ($savehandler == 'files') print ''.$langs->trans("NoSessionFound",$savepath,$openbasedir).''; } print ""; - } else { diff --git a/htdocs/admin/translation.php b/htdocs/admin/translation.php index 4c215e9ae52..da26d6648cd 100644 --- a/htdocs/admin/translation.php +++ b/htdocs/admin/translation.php @@ -384,7 +384,6 @@ if ($mode == 'overwrite') print ''; print ''; - } if ($mode == 'searchkey') diff --git a/htdocs/admin/website.php b/htdocs/admin/website.php index fcdeee79249..e36b8d59df3 100644 --- a/htdocs/admin/website.php +++ b/htdocs/admin/website.php @@ -167,7 +167,6 @@ if (GETPOST('actionadd','alpha') || GETPOST('actionmodify','alpha')) { $obj = $db->fetch_object($result); $newid=($obj->newid + 1); - } else { dol_print_error($db); } diff --git a/htdocs/asset/class/asset.class.php b/htdocs/asset/class/asset.class.php index 8eeacdc1964..22e24703bc3 100644 --- a/htdocs/asset/class/asset.class.php +++ b/htdocs/asset/class/asset.class.php @@ -463,7 +463,6 @@ class Asset extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/asset/type.php b/htdocs/asset/type.php index 001912f7de3..9e06c4a765d 100644 --- a/htdocs/asset/type.php +++ b/htdocs/asset/type.php @@ -356,7 +356,6 @@ if ($action == 'create') print ''; print $formaccounting->select_account($object->accountancy_code_depreciation_expense, 'accountancy_code_depreciation_expense', 1, '', 1, 1); print ''; - } else // For external software { @@ -732,7 +731,6 @@ if ($rowid > 0) { dol_print_error($db); } - } /* ************************************************************************** */ @@ -782,7 +780,6 @@ if ($rowid > 0) print ''; print $formaccounting->select_account($object->accountancy_code_depreciation_expense, 'accountancy_code_depreciation_expense', 1, '', 1, 1); print ''; - } else // For external software { diff --git a/htdocs/blockedlog/admin/blockedlog_list.php b/htdocs/blockedlog/admin/blockedlog_list.php index cd558c020a6..734e9d31f67 100644 --- a/htdocs/blockedlog/admin/blockedlog_list.php +++ b/htdocs/blockedlog/admin/blockedlog_list.php @@ -444,7 +444,6 @@ if (! empty($conf->global->BLOCKEDLOG_SCAN_ALL_FOR_LOWERIDINERROR)) // TODO Make a full scan of table in reverse order of id of $block, so we can use the parameter $previoushash into checkSignature to save requests // to find the $loweridinerror. - } else { @@ -538,7 +537,6 @@ if (is_array($blocks)) print ''; print ''; - } } } diff --git a/htdocs/blockedlog/ajax/authority.php b/htdocs/blockedlog/ajax/authority.php index 7bde15aa879..1104eeb3c02 100644 --- a/htdocs/blockedlog/ajax/authority.php +++ b/htdocs/blockedlog/ajax/authority.php @@ -53,7 +53,6 @@ if($auth->fetch(0, $signature)<=0) { if(!empty($hash)) { echo $auth->checkBlockchain($hash) ? 'hashisok' : 'hashisjunk'; - } elseif(!empty($newblock)){ if($auth->checkBlock($newblock)) { @@ -65,7 +64,6 @@ elseif(!empty($newblock)){ else{ echo 'blockalreadyadded'; - } } else{ diff --git a/htdocs/blockedlog/ajax/check_signature.php b/htdocs/blockedlog/ajax/check_signature.php index 199f9051e07..9617e6cd1ef 100644 --- a/htdocs/blockedlog/ajax/check_signature.php +++ b/htdocs/blockedlog/ajax/check_signature.php @@ -49,7 +49,6 @@ $auth->signature = $block_static->getSignature(); foreach($blocks as &$b) { $auth->blockchain.=$b->signature; - } $hash = $auth->getBlockchainHash(); diff --git a/htdocs/blockedlog/class/authority.class.php b/htdocs/blockedlog/class/authority.class.php index 0102a5d88d6..0d0fc183b6c 100644 --- a/htdocs/blockedlog/class/authority.class.php +++ b/htdocs/blockedlog/class/authority.class.php @@ -73,7 +73,6 @@ class BlockedLogAuthority foreach($blocks as &$b) { $this->blockchain.=$b->signature; - } return $this->blockchain; @@ -319,15 +318,12 @@ class BlockedLogAuthority if($res === 'blockalreadyadded' || $res === 'blockadded') { $block->setCertified(); - } else { $this->error = $langs->trans('ImpossibleToContactAuthority ',$url); return -1; } - - } return 1; diff --git a/htdocs/blockedlog/class/blockedlog.class.php b/htdocs/blockedlog/class/blockedlog.class.php index eb2070d703a..46766277669 100644 --- a/htdocs/blockedlog/class/blockedlog.class.php +++ b/htdocs/blockedlog/class/blockedlog.class.php @@ -947,17 +947,14 @@ class BlockedLog $sql="SELECT rowid FROM ".MAIN_DB_PREFIX."blockedlog WHERE entity=".$conf->entity; - } else if ($element=='not_certified') { $sql="SELECT rowid FROM ".MAIN_DB_PREFIX."blockedlog WHERE entity=".$conf->entity." AND certified = 0"; - } else if ($element=='just_certified') { $sql="SELECT rowid FROM ".MAIN_DB_PREFIX."blockedlog WHERE entity=".$conf->entity." AND certified = 1"; - } else{ $sql="SELECT rowid FROM ".MAIN_DB_PREFIX."blockedlog diff --git a/htdocs/bookmarks/card.php b/htdocs/bookmarks/card.php index b82c2b11b6c..1d10dc7ca34 100644 --- a/htdocs/bookmarks/card.php +++ b/htdocs/bookmarks/card.php @@ -333,7 +333,6 @@ if ($id > 0 && ! preg_match('/^add/i',$action)) } print ''; - } // End of page diff --git a/htdocs/cashdesk/class/Facturation.class.php b/htdocs/cashdesk/class/Facturation.class.php index 3051035813a..18487619a76 100644 --- a/htdocs/cashdesk/class/Facturation.class.php +++ b/htdocs/cashdesk/class/Facturation.class.php @@ -290,19 +290,16 @@ class Facturation if ( !$aId ) { return $this->id; - } else if ( $aId == 'RESET' ) { $this->id = null; - } else { $this->id = $aId; - } } @@ -410,15 +407,12 @@ class Facturation if (is_null($aMontantRemise)) { return $this->montant_remise; - } else if ( $aMontantRemise == 'RESET' ) { $this->montant_remise = null; - } else { $this->montant_remise = $aMontantRemise; - } } @@ -434,15 +428,12 @@ class Facturation if (is_null($aPrix)) { return $this->prix; - } else if ( $aPrix == 'RESET' ) { $this->prix = null; - } else { $this->prix = $aPrix; - } } @@ -457,15 +448,12 @@ class Facturation if (is_null($aTva)) { return $this->tva; - } else if ( $aTva == 'RESET' ) { $this->tva = null; - } else { $this->tva = $aTva; - } } @@ -480,15 +468,12 @@ class Facturation if (is_null($aNumFacture)) { return $this->num_facture; - } else if ( $aNumFacture == 'RESET' ) { $this->num_facture = null; - } else { $this->num_facture = $aNumFacture; - } } @@ -504,15 +489,12 @@ class Facturation if (is_null($aModeReglement)) { return $this->mode_reglement; - } else if ( $aModeReglement == 'RESET' ) { $this->mode_reglement = null; - } else { $this->mode_reglement = $aModeReglement; - } } @@ -528,15 +510,12 @@ class Facturation if (is_null($aMontantEncaisse)) { return $this->montant_encaisse; - } else if ( $aMontantEncaisse == 'RESET' ) { $this->montant_encaisse = null; - } else { $this->montant_encaisse = $aMontantEncaisse; - } } @@ -555,11 +534,9 @@ class Facturation } else if ( $aMontantRendu == 'RESET' ) { $this->montant_rendu = null; - } else { $this->montant_rendu = $aMontantRendu; - } } @@ -574,15 +551,12 @@ class Facturation if (is_null($aPaiementLe)) { return $this->paiement_le; - } else if ( $aPaiementLe == 'RESET' ) { $this->paiement_le = null; - } else { $this->paiement_le = $aPaiementLe; - } } @@ -597,15 +571,12 @@ class Facturation if (is_null($aTotalHt)) { return $this->prix_total_ht; - } else if ( $aTotalHt == 'RESET' ) { $this->prix_total_ht = null; - } else { $this->prix_total_ht = $aTotalHt; - } } @@ -620,15 +591,12 @@ class Facturation if (is_null($aMontantTva)) { return $this->montant_tva; - } else if ( $aMontantTva == 'RESET' ) { $this->montant_tva = null; - } else { $this->montant_tva = $aMontantTva; - } } diff --git a/htdocs/cashdesk/facturation.php b/htdocs/cashdesk/facturation.php index 6a2889f6e71..4ca8a562659 100644 --- a/htdocs/cashdesk/facturation.php +++ b/htdocs/cashdesk/facturation.php @@ -137,7 +137,6 @@ if ( $nbr_enreg > 1 ) { $top_liste_produits = '----- '.$nbr_enreg.' '.$langs->transnoentitiesnoconv("CashDeskProducts").' '.$langs->trans("CashDeskOn").' '.$nbr_enreg.' -----'; } - } else if ( $nbr_enreg == 1 ) { diff --git a/htdocs/cashdesk/facturation_dhtml.php b/htdocs/cashdesk/facturation_dhtml.php index e1a1dcc6bc8..bcfc1e82f82 100644 --- a/htdocs/cashdesk/facturation_dhtml.php +++ b/htdocs/cashdesk/facturation_dhtml.php @@ -108,5 +108,4 @@ if (dol_strlen($search) >= 0) // If search criteria is on char length at least print ''; } } - } diff --git a/htdocs/cashdesk/facturation_verif.php b/htdocs/cashdesk/facturation_verif.php index cdeeaf6c424..6aa81d991df 100644 --- a/htdocs/cashdesk/facturation_verif.php +++ b/htdocs/cashdesk/facturation_verif.php @@ -216,7 +216,6 @@ switch($action) $obj_facturation->remisePercent($_POST['txtRemise']); $obj_facturation->ajoutArticle(); // This add an entry into $_SESSION['poscart'] // We update prixTotalTtc - } $redirection = DOL_URL_ROOT.'/cashdesk/affIndex.php?menutpl=facturation'; @@ -227,7 +226,6 @@ switch($action) $redirection = DOL_URL_ROOT.'/cashdesk/affIndex.php?menutpl=facturation'; break; - } // We saved object obj_facturation diff --git a/htdocs/cashdesk/tpl/facturation1.tpl.php b/htdocs/cashdesk/tpl/facturation1.tpl.php index 4ddafd17c44..2ff71e2a359 100644 --- a/htdocs/cashdesk/tpl/facturation1.tpl.php +++ b/htdocs/cashdesk/tpl/facturation1.tpl.php @@ -89,7 +89,6 @@ $langs->loadLangs(array("main","bills","cashdesk")); print ''."\n"; - } ?> diff --git a/htdocs/cashdesk/tpl/liste_articles.tpl.php b/htdocs/cashdesk/tpl/liste_articles.tpl.php index 266c5e5840b..53209d735c4 100644 --- a/htdocs/cashdesk/tpl/liste_articles.tpl.php +++ b/htdocs/cashdesk/tpl/liste_articles.tpl.php @@ -60,11 +60,9 @@ else if ( $tab[$i]['remise_percent'] > 0 ) { $remise_percent = ' -'.$tab[$i]['remise_percent'].'%'; - } else { $remise_percent = ''; - } $remise = $tab[$i]['remise']; diff --git a/htdocs/cashdesk/tpl/validation1.tpl.php b/htdocs/cashdesk/tpl/validation1.tpl.php index 957d2d6b843..750831cead8 100644 --- a/htdocs/cashdesk/tpl/validation1.tpl.php +++ b/htdocs/cashdesk/tpl/validation1.tpl.php @@ -41,13 +41,11 @@ $langs->loadLangs(array("main","bills","banks")); if ( $obj_facturation->montantTva() ) { echo (''.$langs->trans("VAT").''.price(price2num($obj_facturation->montantTva(),'MT'),0,$langs,0,0,-1,$conf->currency).''); - } else { echo (''.$langs->trans("VAT").''.$langs->trans("NoVAT").''); - } ?> trans("TotalTTC"); ?> prixTotalTtc(),'MT'),0,$langs,0,0,-1,$conf->currency); ?> @@ -91,18 +89,15 @@ $langs->loadLangs(array("main","bills","banks")); if ( $obj_facturation->getsetPaymentMode() == 'DIF' ) { echo (''.$langs->trans("DateDue").''.$obj_facturation->paiementLe().''); - } else { echo (''.$langs->trans("Received").''.price(price2num($obj_facturation->montantEncaisse(),'MT'),0,$langs,0,0,-1,$conf->currency).''); - } // Affichage du montant rendu (reglement en especes) if ( $obj_facturation->montantRendu() ) { echo (''.$langs->trans("Change").''.price(price2num($obj_facturation->montantRendu(),'MT'),0,$langs,0,0,-1,$conf->currency).''); - } ?> diff --git a/htdocs/cashdesk/validation_verif.php b/htdocs/cashdesk/validation_verif.php index b42bc90d8fb..be1f201a8fe 100644 --- a/htdocs/cashdesk/validation_verif.php +++ b/htdocs/cashdesk/validation_verif.php @@ -328,7 +328,6 @@ switch ($action) $result=$invoice->set_paid($user); //print 'set paid';exit; } - } } else diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index a7ddab761e0..480edb83390 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -665,7 +665,6 @@ class Categorie extends CommonObject $this->db->rollback(); return -2; } - } else { @@ -1810,7 +1809,6 @@ class Categorie extends CommonObject { $this->label = $obj->label; $this->description = $obj->description; - } $this->multilangs["$obj->lang"]["label"] = $obj->label; $this->multilangs["$obj->lang"]["description"] = $obj->description; diff --git a/htdocs/categories/traduction.php b/htdocs/categories/traduction.php index dbcfca198d2..d3287703695 100644 --- a/htdocs/categories/traduction.php +++ b/htdocs/categories/traduction.php @@ -269,7 +269,6 @@ if ($action == 'edit') print ''; print ''; - } else if ($action != 'add') { diff --git a/htdocs/categories/viewcat.php b/htdocs/categories/viewcat.php index ba3580cea87..560cb4613be 100644 --- a/htdocs/categories/viewcat.php +++ b/htdocs/categories/viewcat.php @@ -168,7 +168,6 @@ if ($type == Categorie::TYPE_PRODUCT && $elemid && $action == 'addintocategory' setEventMessages($object->error,$object->errors,'errors'); } } - } diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php index fd0a4a2b430..4e8b87eb591 100644 --- a/htdocs/comm/action/card.php +++ b/htdocs/comm/action/card.php @@ -597,7 +597,6 @@ if (GETPOST('actionmove','alpha') == 'mupdate') { $action=''; } - } // Actions to delete doc @@ -873,7 +872,6 @@ if ($action == 'create') } else { print $form->select_company('', 'socid', '', 'SelectThirdParty', 1, 0, $events, 0, 'minwidth300'); } - } print ''; diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index 4a6cec809fe..92af9fef6da 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -401,7 +401,6 @@ class ActionComm extends CommonObject $error++; $this->errors[]=$this->db->lasterror(); } - } } } @@ -937,7 +936,6 @@ class ActionComm extends CommonObject $error++; $this->errors[]=$this->db->lasterror(); } - } } } diff --git a/htdocs/comm/action/class/api_agendaevents.class.php b/htdocs/comm/action/class/api_agendaevents.class.php index 677e477cd89..1e9dde34bde 100644 --- a/htdocs/comm/action/class/api_agendaevents.class.php +++ b/htdocs/comm/action/class/api_agendaevents.class.php @@ -309,7 +309,6 @@ class AgendaEvents extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $event[$field] = $data[$field]; - } return $event; } diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php index 4ffa4298d20..0bc022956b1 100644 --- a/htdocs/comm/action/index.php +++ b/htdocs/comm/action/index.php @@ -666,7 +666,6 @@ if ($resql) //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; } $i++; - } } else diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php index 5628e65c6d9..02d3a16c7f3 100644 --- a/htdocs/comm/action/list.php +++ b/htdocs/comm/action/list.php @@ -643,7 +643,6 @@ if ($resql) print " "; } print ''; - } // Extra fields @@ -668,7 +667,6 @@ if ($resql) print ''; $db->free($resql); - } else { diff --git a/htdocs/comm/action/pertype.php b/htdocs/comm/action/pertype.php index 31f22420cb8..0347f73a453 100644 --- a/htdocs/comm/action/pertype.php +++ b/htdocs/comm/action/pertype.php @@ -543,7 +543,6 @@ if ($resql) //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; } $i++; - } } else diff --git a/htdocs/comm/action/peruser.php b/htdocs/comm/action/peruser.php index 7b02857becf..b145dfa54ed 100644 --- a/htdocs/comm/action/peruser.php +++ b/htdocs/comm/action/peruser.php @@ -571,7 +571,6 @@ if ($resql) //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; } $i++; - } $db->free($resql); } @@ -798,7 +797,6 @@ while($currentdaytoshow<$lastdaytoshow) { echo "
"; $currentdaytoshow = dol_time_plus_duree($currentdaytoshow, 7, 'd'); - } echo ''; diff --git a/htdocs/comm/address.php b/htdocs/comm/address.php index 9c8b275d198..4b32eea153a 100644 --- a/htdocs/comm/address.php +++ b/htdocs/comm/address.php @@ -151,7 +151,6 @@ if ($action == 'add' || $action == 'update') $action= "edit"; } } - } else if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->societe->supprimer) @@ -291,7 +290,6 @@ if ($action == 'create') print ''."\n"; print ''."\n"; - } } elseif ($action == 'edit') @@ -486,7 +484,6 @@ else } print ''; } - } diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php index 596c3cb3c5b..d11a81f5bdb 100644 --- a/htdocs/comm/card.php +++ b/htdocs/comm/card.php @@ -1301,7 +1301,6 @@ if ($object->id > 0) if ($object->client != 0 && $object->client != 2) print ''; else print ''; - } } } @@ -1344,7 +1343,6 @@ if ($object->id > 0) // List of done actions show_actions_done($conf,$langs,$db,$object); } - } else { diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php index 92757dcac36..cb384408e91 100644 --- a/htdocs/comm/index.php +++ b/htdocs/comm/index.php @@ -521,7 +521,6 @@ if (! empty($conf->societe->enabled) && $user->rights->societe->lire) print ''.dol_print_date($db->jdate($objp->tms),'day').""; print ''; $i++; - } $db->free($resql); @@ -580,7 +579,6 @@ if (! empty($conf->fournisseur->enabled) && $user->rights->societe->lire) $i++; } - } else { diff --git a/htdocs/comm/mailing/advtargetemailing.php b/htdocs/comm/mailing/advtargetemailing.php index 72058578db7..8aa14a45b85 100644 --- a/htdocs/comm/mailing/advtargetemailing.php +++ b/htdocs/comm/mailing/advtargetemailing.php @@ -467,7 +467,6 @@ if ($object->fetch($id) >= 0) { if ($object->statut == 0 && $user->rights->mailing->creer) { include DOL_DOCUMENT_ROOT . '/core/tpl/advtarget.tpl.php'; - } } diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php index a2e63da99cc..28e49e9d171 100644 --- a/htdocs/comm/mailing/card.php +++ b/htdocs/comm/mailing/card.php @@ -1165,7 +1165,6 @@ else print ''; dol_fiche_end(); - } else { diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index f07f308e74a..761a2bcc41d 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -643,7 +643,6 @@ if ($object->fetch($id) >= 0) } print "\n\n"; - } // End of page diff --git a/htdocs/comm/mailing/class/advtargetemailing.class.php b/htdocs/comm/mailing/class/advtargetemailing.class.php index c862b8392fd..baf48447bad 100644 --- a/htdocs/comm/mailing/class/advtargetemailing.class.php +++ b/htdocs/comm/mailing/class/advtargetemailing.class.php @@ -240,7 +240,6 @@ class AdvanceTargetingMailing extends CommonObject $this->datec = $this->db->jdate($obj->datec); $this->fk_user_mod = $obj->fk_user_mod; $this->tms = $this->db->jdate($obj->tms); - } $this->db->free($resql); @@ -304,7 +303,6 @@ class AdvanceTargetingMailing extends CommonObject $this->datec = $this->db->jdate($obj->datec); $this->fk_user_mod = $obj->fk_user_mod; $this->tms = $this->db->jdate($obj->tms); - } $this->db->free($resql); @@ -372,7 +370,6 @@ class AdvanceTargetingMailing extends CommonObject $this->datec = $this->db->jdate($obj->datec); $this->fk_user_mod = $obj->fk_user_mod; $this->tms = $this->db->jdate($obj->tms); - } $this->db->free($resql); @@ -664,14 +661,10 @@ class AdvanceTargetingMailing extends CommonObject $sqlwhere[]= " (te.".$key." LIKE '".$arrayquery['options_'.$key]."')"; } } - } - - } if (count($sqlwhere)>0) $sql.= " WHERE ".implode(" AND ",$sqlwhere); - } @@ -803,7 +796,6 @@ class AdvanceTargetingMailing extends CommonObject $sqlwhere[]= " (te.".$key." LIKE '".$arrayquery['options_'.$key.'_cnct']."')"; } } - } if (! empty($withThirdpartyFilter)) { @@ -969,7 +961,6 @@ class AdvanceTargetingMailing extends CommonObject if (count($return_sql_not_like)>0) { $return_sql_criteria .= ' AND (' . implode (' AND ', $return_sql_not_like).')'; } - }else { $return_sql_criteria .= $column_to_test . ' LIKE \''.$this->db->escape($criteria).'\''; } diff --git a/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php b/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php index 3fdcd6178b0..19b1ce3e9b4 100644 --- a/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php +++ b/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php @@ -178,7 +178,6 @@ class FormAdvTargetEmailing extends Form $label = $obj_usr->firstname . " " . $obj_usr->name . " (" . $obj_usr->login . ')'; $options_array [$obj_usr->rowid] = $label; - } $this->db->free ( $resql_usr ); } else { @@ -323,7 +322,6 @@ class FormAdvTargetEmailing extends Form $i++; } } - } else { @@ -411,7 +409,6 @@ class FormAdvTargetEmailing extends Form $i++; } } - } else { diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php index bb6ac93d1c2..bc6f3beabd2 100644 --- a/htdocs/comm/mailing/class/mailing.class.php +++ b/htdocs/comm/mailing/class/mailing.class.php @@ -362,7 +362,6 @@ class Mailing extends CommonObject 'source_id'=>$obj->source_id, 'source_type'=>$obj->source_type); } - } } else @@ -373,7 +372,6 @@ class Mailing extends CommonObject $mailing_target->add_to_target($object->id, $target_array); } - } unset($object->context['createfromclone']); diff --git a/htdocs/comm/mailing/index.php b/htdocs/comm/mailing/index.php index 9cd1e8546d0..f1745b406fd 100644 --- a/htdocs/comm/mailing/index.php +++ b/htdocs/comm/mailing/index.php @@ -182,7 +182,6 @@ if ($result) print ''; $i++; } - } else { diff --git a/htdocs/comm/multiprix.php b/htdocs/comm/multiprix.php index 55f49c44cfd..7bbf727a517 100644 --- a/htdocs/comm/multiprix.php +++ b/htdocs/comm/multiprix.php @@ -174,7 +174,6 @@ if ($_socid > 0) { dol_print_error($db); } - } // End of page diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index 1e6df0b014f..f07a5cdfac8 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -1364,7 +1364,6 @@ if (empty($reshook)) $upload_dir = $conf->propal->multidir_output[$object->entity]; $permissioncreate=$usercancreate; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; - } @@ -1777,7 +1776,6 @@ if ($action == 'create') print ''; } - } elseif ($object->id > 0) { /* * Show object in view mode @@ -1825,7 +1823,6 @@ if ($action == 'create') } $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $object->id, $langs->trans('SetAcceptedRefused'), $text, 'setstatut', $formquestion, '', 1, 250); - } // Confirm delete diff --git a/htdocs/comm/propal/class/api_proposals.class.php b/htdocs/comm/propal/class/api_proposals.class.php index fc721912462..a03624f3122 100644 --- a/htdocs/comm/propal/class/api_proposals.class.php +++ b/htdocs/comm/propal/class/api_proposals.class.php @@ -700,7 +700,6 @@ class Proposals extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $propal[$field] = $data[$field]; - } return $propal; } diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 16a19d1b41f..e11f62bb446 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -3127,11 +3127,8 @@ class Propal extends CommonObject $cluser->fetch($obj->fk_user_cloture); $this->user_cloture = $cluser; } - - } $this->db->free($result); - } else { diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index bc45d022e4d..b0cc04702db 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -227,7 +227,6 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $toselect=''; $search_array_options=array(); $search_categ_cus=0; - } if ($object_statut != '') $viewstatut=$object_statut; diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 75b949ff203..f468bd4b146 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -423,7 +423,6 @@ if (empty($reshook)) // modified by hook if ($reshook < 0) $error++; - } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; diff --git a/htdocs/commande/class/api_orders.class.php b/htdocs/commande/class/api_orders.class.php index 60011592afe..1135a5c2502 100644 --- a/htdocs/commande/class/api_orders.class.php +++ b/htdocs/commande/class/api_orders.class.php @@ -297,7 +297,6 @@ class Orders extends DolibarrApi if ($updateRes > 0) { return $updateRes; - } else { throw new RestException(400, $this->commande->error); } @@ -793,7 +792,6 @@ class Orders extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, $field ." field missing"); $commande[$field] = $data[$field]; - } return $commande; } diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 1925b71992e..2428e6052eb 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -3616,7 +3616,6 @@ class Commande extends CommonOrder } $this->db->free($result); - } else { diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 0e851c78cff..2a9e215faa4 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -214,7 +214,6 @@ if (empty($reshook)) $uploaddir = $conf->commande->dir_output; $trigger_name='ORDER_SENTBYMAIL'; include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php'; - } diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php index 3335cf93276..a8da25e07f9 100644 --- a/htdocs/commande/orderstoinvoice.php +++ b/htdocs/commande/orderstoinvoice.php @@ -118,7 +118,6 @@ if (($action == 'create' || $action == 'add') && !$error) $originid=$orders_id[0]; $_GET['originid']=$orders_id[0]; - } if (isset($_POST['orders_to_invoice'])) { @@ -128,7 +127,6 @@ if (($action == 'create' || $action == 'add') && !$error) $originid=$orders_id[0]; $_POST['originid']=$orders_id[0]; - } $projectid = GETPOST('projectid','int')?GETPOST('projectid','int'):0; @@ -531,8 +529,6 @@ if ($action == 'create' && !$error) print ''; print "\n"; - - } // Mode liste @@ -737,7 +733,6 @@ if (($action != 'create' && $action != 'add') || ($action == 'create' && $error) { dol_print_error($db); } - } // End of page diff --git a/htdocs/compta/bank/annuel.php b/htdocs/compta/bank/annuel.php index 5e1a10390e2..47f31eac308 100644 --- a/htdocs/compta/bank/annuel.php +++ b/htdocs/compta/bank/annuel.php @@ -339,7 +339,6 @@ else $i++; } $db->free($resql); - } else { diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php index 2325d30a26a..6d2fa406ea7 100644 --- a/htdocs/compta/bank/card.php +++ b/htdocs/compta/bank/card.php @@ -576,7 +576,6 @@ else if ($action == 'delete') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id,$langs->trans("DeleteAccount"),$langs->trans("ConfirmDeleteAccount"),"confirm_delete"); - } // Print form confirm @@ -766,7 +765,6 @@ else } print ''; - } /* ************************************************************************** */ @@ -1033,7 +1031,6 @@ else print ''; } - } // End of page diff --git a/htdocs/compta/bank/class/paymentvarious.class.php b/htdocs/compta/bank/class/paymentvarious.class.php index c997ff1a4f7..47edacb2410 100644 --- a/htdocs/compta/bank/class/paymentvarious.class.php +++ b/htdocs/compta/bank/class/paymentvarious.class.php @@ -452,7 +452,6 @@ class PaymentVarious extends CommonObject $result=$this->call_trigger('PAYMENT_VARIOUS_CREATE',$user); if ($result < 0) $error++; // End call triggers - } else $error++; diff --git a/htdocs/compta/bank/ligne.php b/htdocs/compta/bank/ligne.php index 85cd839fd44..1587c5c10e8 100644 --- a/htdocs/compta/bank/ligne.php +++ b/htdocs/compta/bank/ligne.php @@ -451,7 +451,6 @@ if ($result) $receipt=new RemiseCheque($db); $receipt->fetch($objp->receiptid); print '     '.$langs->trans("CheckReceipt").': '.$receipt->getNomUrl(2); - } print ''; } @@ -682,7 +681,6 @@ if ($result) print ''; } - } $db->free($result); diff --git a/htdocs/compta/compta-files.php b/htdocs/compta/compta-files.php index 9e00bf10ae0..d8f4885a3b2 100644 --- a/htdocs/compta/compta-files.php +++ b/htdocs/compta/compta-files.php @@ -184,7 +184,6 @@ if(($action=="searchfiles"||$action=="dl" ) && $date_start && $date_stop){ } } $db->free($resd); - } /* * cleanup of old ZIP @@ -293,7 +292,6 @@ if ($result) print ''; print "\n"; } - } print ""; print '
'."\n\t\t\t"; diff --git a/htdocs/compta/deplacement/card.php b/htdocs/compta/deplacement/card.php index 861ee6e897f..383ff1c571a 100644 --- a/htdocs/compta/deplacement/card.php +++ b/htdocs/compta/deplacement/card.php @@ -421,7 +421,6 @@ else if ($id) if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$id,$langs->trans("DeleteTrip"),$langs->trans("ConfirmDeleteTrip"),"confirm_delete"); - } $soc = new Societe($db); diff --git a/htdocs/compta/deplacement/document.php b/htdocs/compta/deplacement/document.php index e34a2aedb21..7ec837c81f2 100644 --- a/htdocs/compta/deplacement/document.php +++ b/htdocs/compta/deplacement/document.php @@ -122,7 +122,6 @@ if ($object->id) $permission = $user->rights->deplacement->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/compta/deplacement/index.php b/htdocs/compta/deplacement/index.php index 98c939965a3..84c0c718c70 100644 --- a/htdocs/compta/deplacement/index.php +++ b/htdocs/compta/deplacement/index.php @@ -191,7 +191,6 @@ if ($result) $i++; } - } else { diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index a9fe72da41f..050f8786c3a 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -744,7 +744,6 @@ if (empty($reshook)) { $error++; } - } if ($object->type == Facture::TYPE_CREDIT_NOTE || $object->type == Facture::TYPE_DEPOSIT) { @@ -765,7 +764,6 @@ if (empty($reshook)) break; } } - } if (empty($error)) @@ -1000,15 +998,11 @@ if (empty($reshook)) $line->multicurrency_total_ht = $line->multicurrency_total_ht - $prevLine->multicurrency_total_ht; $line->multicurrency_total_tva = $line->multicurrency_total_tva - $prevLine->multicurrency_total_tva; $line->multicurrency_total_ttc = $line->multicurrency_total_ttc - $prevLine->multicurrency_total_ttc; - - } } // prorata $line->situation_percent = $maxPrevSituationPercent - $line->situation_percent; - - } } @@ -1040,7 +1034,6 @@ if (empty($reshook)) $object->update_price(1); } - } if(GETPOST('invoiceAvoirWithPaymentRestAmount', 'int')==1 && $id>0) @@ -1342,7 +1335,6 @@ if (empty($reshook)) $subprice_diff = $object->lines[0]->subprice - $diff / (1 + $object->lines[0]->tva_tx / 100); $object->updateline($object->lines[0]->id, $object->lines[0]->desc, $subprice_diff, $object->lines[0]->qty, $object->lines[0]->remise_percent, $object->lines[0]->date_start, $object->lines[0]->date_end, $object->lines[0]->tva_tx, 0, 0, 'HT', $object->lines[0]->info_bits, $object->lines[0]->product_type, 0, 0, 0, $object->lines[0]->pa_ht, $object->lines[0]->label, 0, array(), 100); } - } else { @@ -1489,7 +1481,6 @@ if (empty($reshook)) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); $error++; } - } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; @@ -2363,7 +2354,6 @@ if (empty($reshook)) $line->situation_percent = $line->situation_percent - $maxPrevSituationPercent; if($line->update()<0) $errors++; - } } } @@ -2693,7 +2683,6 @@ if ($action == 'create') print ajax_combobox('fac_replacement'); print ajax_combobox('fac_avoir'); print ajax_combobox('situations'); - } if ($origin == 'contrat') @@ -3660,7 +3649,6 @@ else if ($id > 0 || ! empty($ref)) { $payment_id = GETPOST('paiement_id'); $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&paiement_id='.$payment_id, $langs->trans('DeletePayment'), $langs->trans('ConfirmDeletePayment'), 'confirm_delete_paiement', '', 'no', 1); - } // Confirmation de la suppression d'une ligne produit @@ -4236,7 +4224,6 @@ else if ($id > 0 || ! empty($ref)) print '' . price($next_invoice->total_ttc) . ''; print '' . $next_invoice->getLibStatut(3, $totalpaye) . ''; print ''; - } $total_global_ht += $total_next_ht; diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 20983ebd3c9..3d98271bb26 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -2465,7 +2465,6 @@ class Facture extends CommonInvoice else $this->situation_final = 1; $this->setFinal($user); - } } } @@ -4713,7 +4712,6 @@ class FactureLigne extends CommonInvoiceLine $this->db->commit(); return $this->id; - } else { diff --git a/htdocs/compta/facture/class/paymentterm.class.php b/htdocs/compta/facture/class/paymentterm.class.php index 31e362445f0..a3168db40d2 100644 --- a/htdocs/compta/facture/class/paymentterm.class.php +++ b/htdocs/compta/facture/class/paymentterm.class.php @@ -211,8 +211,6 @@ class PaymentTerm // extends CommonObject $this->type_cdr = $obj->type_cdr; $this->nbjour = $obj->nbjour; $this->decalage = $obj->decalage; - - } $this->db->free($resql); diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php index ab96700fc53..948056fe404 100644 --- a/htdocs/compta/facture/contact.php +++ b/htdocs/compta/facture/contact.php @@ -206,7 +206,6 @@ if ($id > 0 || ! empty($ref)) $res=@include dol_buildpath($reldir.'/contacts.tpl.php'); if ($res) break; } - } else { diff --git a/htdocs/compta/facture/fiche-rec.php b/htdocs/compta/facture/fiche-rec.php index a8eadd76a93..d9ce0137f04 100644 --- a/htdocs/compta/facture/fiche-rec.php +++ b/htdocs/compta/facture/fiche-rec.php @@ -263,7 +263,6 @@ if (empty($reshook)) if ($action == 'setconditions' && $user->rights->facture->creer) { $result=$object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); - } // Set mode elseif ($action == 'setmode' && $user->rights->facture->creer) @@ -629,12 +628,10 @@ if (empty($reshook)) $tmptxt .= $langs->transnoentitiesnoconv("CountryOrigin") . ': ' . getCountry($prod->country_code, 0, $db, $langs, 0); $tmptxt .= ')'; $desc = dol_concatdesc($desc, $tmptxt); - } $type = $prod->type; $fk_unit = $prod->fk_unit; - } else { @@ -1730,7 +1727,6 @@ else print ''; - } } diff --git a/htdocs/compta/facture/invoicetemplate_list.php b/htdocs/compta/facture/invoicetemplate_list.php index cf41f864f05..c61836e1b1b 100644 --- a/htdocs/compta/facture/invoicetemplate_list.php +++ b/htdocs/compta/facture/invoicetemplate_list.php @@ -190,7 +190,6 @@ if (empty($reshook)) $permtodelete = $user->rights->mymodule->delete; $uploaddir = $conf->mymodule->dir_output; include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';*/ - } diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 35338722353..553c6c9028a 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -230,7 +230,6 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter','a $toselect=''; $search_array_options=array(); $search_categ_cus=0; - } if (empty($reshook)) @@ -310,7 +309,6 @@ if ($massaction == 'withdrawrequest') else { $listofbills[] = $objecttmp; // $listofbills will only contains invoices with good payment method and no request already done } - } } @@ -340,7 +338,6 @@ if ($massaction == 'withdrawrequest') } } } - } @@ -1229,7 +1226,6 @@ if ($resql) else print ''; } print ''; - } } diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php index eec0c640b67..692849d2fa6 100644 --- a/htdocs/compta/index.php +++ b/htdocs/compta/index.php @@ -204,7 +204,6 @@ if (! empty($conf->facture->enabled) && $user->rights->facture->lire) print ''; $tot_ttc+=$obj->total_ttc; $i++; - } print ''.$langs->trans("Total").''; @@ -596,7 +595,6 @@ if (! empty($conf->don->enabled) && $user->rights->societe->lire) $i++; } - } else { @@ -789,7 +787,6 @@ if (! empty($conf->facture->enabled) && ! empty($conf->commande->enabled) && $us //print "x".$tot_ttc."z".$obj->tot_fttc; $tot_tobill += ($obj->total_ttc-$obj->tot_fttc); $i++; - } print ''.$langs->trans("Total").'   ('.$langs->trans("RemainderToBill").': '.price($tot_tobill).') '; diff --git a/htdocs/compta/localtax/clients.php b/htdocs/compta/localtax/clients.php index 8f986697a01..ff89a95414e 100644 --- a/htdocs/compta/localtax/clients.php +++ b/htdocs/compta/localtax/clients.php @@ -299,7 +299,6 @@ if($calc ==0 || $calc == 1){ print ''; print ''; - } else { @@ -322,7 +321,6 @@ if($calc ==0){ print ''.$langs->trans("TotalToPay").($q?', '.$langs->trans("Quadri").' '.$q:'').''; print ''.price(price2num($diff,'MT'))."\n"; print "\n"; - } print ''; diff --git a/htdocs/compta/paiement/card.php b/htdocs/compta/paiement/card.php index 31c557373d0..1475cfd6e45 100644 --- a/htdocs/compta/paiement/card.php +++ b/htdocs/compta/paiement/card.php @@ -197,7 +197,6 @@ dol_fiche_head($head, 'payment', $langs->trans("PaymentCustomerInvoice"), -1, 'p if ($action == 'delete') { print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2); - } /* @@ -207,7 +206,6 @@ if ($action == 'valide') { $facid = $_GET['facid']; print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2); - } $linkback = '' . $langs->trans("BackToList") . ''; diff --git a/htdocs/compta/paiement/cheque/card.php b/htdocs/compta/paiement/cheque/card.php index 1f7b344f62d..9f42ef9b16c 100644 --- a/htdocs/compta/paiement/cheque/card.php +++ b/htdocs/compta/paiement/cheque/card.php @@ -340,7 +340,6 @@ else if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans("DeleteCheckReceipt"), $langs->trans("ConfirmDeleteCheckReceipt"), 'confirm_delete','','',1); - } /* @@ -349,7 +348,6 @@ else if ($action == 'valide') { print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans("ValidateCheckReceipt"), $langs->trans("ConfirmValidateCheckReceipt"), 'confirm_valide','','',1); - } /* @@ -553,7 +551,6 @@ if ($action == 'new') print '
'; print '
'; } - } else { @@ -787,7 +784,6 @@ if ($user->societe_id == 0 && ! empty($object->id) && $object->statut == 0 && $u if ($user->societe_id == 0 && ! empty($object->id) && $user->rights->banque->cheque) { print ''.$langs->trans('Delete').''; - } print ''; diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index 64d0f8601fa..d190beffae2 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -121,7 +121,6 @@ class RemiseCheque extends CommonObject { $this->ref = $obj->ref; } - } $this->db->free($resql); diff --git a/htdocs/compta/paiement/class/cpaiement.class.php b/htdocs/compta/paiement/class/cpaiement.class.php index 1f0175bd370..26d4ea0510e 100644 --- a/htdocs/compta/paiement/class/cpaiement.class.php +++ b/htdocs/compta/paiement/class/cpaiement.class.php @@ -200,8 +200,6 @@ class Cpaiement $this->active = $obj->active; $this->accountancy_code = $obj->accountancy_code; $this->module = $obj->module; - - } $this->db->free($resql); diff --git a/htdocs/compta/paiement_charge.php b/htdocs/compta/paiement_charge.php index 9b605e68929..38cee6b8434 100644 --- a/htdocs/compta/paiement_charge.php +++ b/htdocs/compta/paiement_charge.php @@ -147,7 +147,6 @@ if ($action == 'add_payment' || ($action == 'confirm_paiement' && $confirm=='yes } } } - } diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php index b4a21e198de..12cd2a0aa0e 100644 --- a/htdocs/compta/payment_sc/card.php +++ b/htdocs/compta/payment_sc/card.php @@ -146,7 +146,6 @@ dol_fiche_head($head, $hselected, $langs->trans("PaymentSocialContribution"), -1 if ($action == 'delete') { print $form->formconfirm('card.php?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2); - } /* diff --git a/htdocs/compta/prelevement/class/bonprelevement.class.php b/htdocs/compta/prelevement/class/bonprelevement.class.php index 7b93966aa8b..9d2b828b3eb 100644 --- a/htdocs/compta/prelevement/class/bonprelevement.class.php +++ b/htdocs/compta/prelevement/class/bonprelevement.class.php @@ -247,7 +247,6 @@ class BonPrelevement extends CommonObject dol_syslog(get_class($this)."::addline Error -2"); $result = -2; } - } return $result; @@ -515,7 +514,6 @@ class BonPrelevement extends CommonObject dol_syslog(get_class($this)."::set_infocredit Update lines Error"); $error++; } - } else { @@ -1058,10 +1056,8 @@ class BonPrelevement extends CommonObject $error++; dol_syslog(__METHOD__."::Update Orders::Error=".$this->db->error(), LOG_ERR); } - } } - } if (!$error) diff --git a/htdocs/compta/prelevement/class/rejetprelevement.class.php b/htdocs/compta/prelevement/class/rejetprelevement.class.php index 6e3cfe499a8..ebe76a6aab3 100644 --- a/htdocs/compta/prelevement/class/rejetprelevement.class.php +++ b/htdocs/compta/prelevement/class/rejetprelevement.class.php @@ -175,7 +175,6 @@ class RejetPrelevement $error++; dol_syslog("RejetPrelevement::Create Error payment validation"); } - } //Tag invoice as unpaid dol_syslog("RejetPrelevement::Create set_unpaid fac ".$fac->ref); diff --git a/htdocs/compta/prelevement/create.php b/htdocs/compta/prelevement/create.php index 3dccc0ff912..dff5ab39f3d 100644 --- a/htdocs/compta/prelevement/create.php +++ b/htdocs/compta/prelevement/create.php @@ -161,7 +161,6 @@ if ($nb) { } else { print '' . $langs->trans("CreateAll") . "\n"; } - } else { diff --git a/htdocs/compta/prelevement/factures.php b/htdocs/compta/prelevement/factures.php index df71dcb3f31..a53db70544b 100644 --- a/htdocs/compta/prelevement/factures.php +++ b/htdocs/compta/prelevement/factures.php @@ -134,7 +134,6 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } else { diff --git a/htdocs/compta/prelevement/fiche-rejet.php b/htdocs/compta/prelevement/fiche-rejet.php index 3819c145851..7cb862389d7 100644 --- a/htdocs/compta/prelevement/fiche-rejet.php +++ b/htdocs/compta/prelevement/fiche-rejet.php @@ -135,7 +135,6 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } else { diff --git a/htdocs/compta/prelevement/fiche-stat.php b/htdocs/compta/prelevement/fiche-stat.php index a3a1d06e322..731bc1dc81d 100644 --- a/htdocs/compta/prelevement/fiche-stat.php +++ b/htdocs/compta/prelevement/fiche-stat.php @@ -132,7 +132,6 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } else { diff --git a/htdocs/compta/prelevement/ligne.php b/htdocs/compta/prelevement/ligne.php index 8dd1c87069a..30cc21ae977 100644 --- a/htdocs/compta/prelevement/ligne.php +++ b/htdocs/compta/prelevement/ligne.php @@ -89,7 +89,6 @@ if ($action == 'confirm_rejet') header("Location: ligne.php?id=".$id); exit; } - } else { diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php index 5fc58955b60..1e2719eac81 100644 --- a/htdocs/compta/resultat/index.php +++ b/htdocs/compta/resultat/index.php @@ -688,7 +688,6 @@ if (! empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' $column='p.date_valid'; if (! empty($date_start) && ! empty($date_end)) $sql.= " AND ".$column." >= '".$db->idate($date_start)."' AND ".$column." <= '".$db->idate($date_end)."'"; - } elseif ($modecompta == 'RECETTES-DEPENSES') { $sql = "SELECT date_format(pe.datep,'%Y-%m') as dm, sum(p.total_ht) as amount_ht,sum(p.total_ttc) as amount_ttc"; $sql.= " FROM ".MAIN_DB_PREFIX."expensereport as p"; @@ -721,7 +720,6 @@ if (! empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' if (! isset($decaiss_ttc[$obj->dm])) $decaiss_ttc[$obj->dm]=0; $decaiss_ttc[$obj->dm] += $obj->amount_ttc; - } } } @@ -729,7 +727,6 @@ if (! empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' { dol_print_error($db); } - } elseif ($modecompta == 'BOOKKEEPING') { // Nothing from this table diff --git a/htdocs/compta/salaries/class/paymentsalary.class.php b/htdocs/compta/salaries/class/paymentsalary.class.php index 4da78cb492d..0be0f4f3694 100644 --- a/htdocs/compta/salaries/class/paymentsalary.class.php +++ b/htdocs/compta/salaries/class/paymentsalary.class.php @@ -487,7 +487,6 @@ class PaymentSalary extends CommonObject $result=$this->call_trigger('PAYMENT_SALARY_CREATE',$user); if ($result < 0) $error++; // End call triggers - } else $error++; diff --git a/htdocs/compta/salaries/document.php b/htdocs/compta/salaries/document.php index 59ca8389193..1059c765df3 100644 --- a/htdocs/compta/salaries/document.php +++ b/htdocs/compta/salaries/document.php @@ -127,7 +127,6 @@ if ($object->id) $permission = $user->rights->salaries->write; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/compta/sociales/class/cchargesociales.class.php b/htdocs/compta/sociales/class/cchargesociales.class.php index a8f5c430691..710bea7def2 100644 --- a/htdocs/compta/sociales/class/cchargesociales.class.php +++ b/htdocs/compta/sociales/class/cchargesociales.class.php @@ -201,8 +201,6 @@ class Cchargesociales $this->fk_pays = $obj->fk_pays; $this->module = $obj->module; $this->accountancy_code = $obj->accountancy_code; - - } $this->db->free($resql); diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index e44d02f83e2..cca5a4d7dd2 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -368,7 +368,6 @@ class ChargeSociales extends CommonObject { return 0; } - } else { @@ -627,7 +626,6 @@ class ChargeSociales extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php index b6ff4a49337..d3c265150d4 100644 --- a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php +++ b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php @@ -195,7 +195,6 @@ class PaymentSocialContribution extends CommonObject { $error++; } - } $result = $this->call_trigger('PAYMENTSOCIALCONTRIBUTION_CREATE',$user); diff --git a/htdocs/compta/stats/byratecountry.php b/htdocs/compta/stats/byratecountry.php index 5c9366037ed..99d6bb8b49d 100644 --- a/htdocs/compta/stats/byratecountry.php +++ b/htdocs/compta/stats/byratecountry.php @@ -322,7 +322,6 @@ if ($resql) { } print '' . price($totalpermonth['total']) . ''; print ''; - } else { print $db->lasterror(); // Show last sql error } @@ -406,7 +405,6 @@ if ($resql2) { print $db->lasterror(); // Show last sql error } print "\n"; - } else { // $modecompta != 'CREANCES-DETTES' // "Calculation of part of each product for accountancy in this mode is not possible. When a partial payment (for example 5 euros) is done on an diff --git a/htdocs/compta/stats/casoc.php b/htdocs/compta/stats/casoc.php index 309737111f5..fb53989fe74 100644 --- a/htdocs/compta/stats/casoc.php +++ b/htdocs/compta/stats/casoc.php @@ -313,7 +313,6 @@ if ($result) { $catotal_ht+=$obj->amount; $catotal+=$obj->amount_ttc; $i++; - } } else { dol_print_error($db); diff --git a/htdocs/compta/tva/class/tva.class.php b/htdocs/compta/tva/class/tva.class.php index c78e0d8dd7a..33d48de8bfc 100644 --- a/htdocs/compta/tva/class/tva.class.php +++ b/htdocs/compta/tva/class/tva.class.php @@ -800,7 +800,6 @@ class Tva extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php index babc7e1453a..a43127c9a32 100644 --- a/htdocs/contact/card.php +++ b/htdocs/contact/card.php @@ -1113,7 +1113,6 @@ else else $text.=$langs->trans("UserWillBeInternalUser"); } print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id,$langs->trans("CreateDolibarrLogin"),$text,"confirm_create_user",$formquestion,'yes'); - } $linkback = ''.$langs->trans("BackToList").''; @@ -1282,7 +1281,6 @@ else } print ""; - } } diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index b5d17676d8d..b1d83abac77 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -1246,7 +1246,6 @@ class Contact extends CommonObject { if ($statut==0 || $statut==5) return img_picto($langs->trans('Disabled'),'statut5', 'class="pictostatus"').' '.$langs->trans('Disabled'); elseif ($statut==1 || $statut==4) return img_picto($langs->trans('Enabled'),'statut4', 'class="pictostatus"').' '.$langs->trans('Enabled'); - } elseif ($mode == 3) { diff --git a/htdocs/contrat/class/api_contracts.class.php b/htdocs/contrat/class/api_contracts.class.php index 04252433824..35ec5842e4b 100644 --- a/htdocs/contrat/class/api_contracts.class.php +++ b/htdocs/contrat/class/api_contracts.class.php @@ -287,7 +287,6 @@ class Contracts extends DolibarrApi if ($updateRes > 0) { return $updateRes; - } return false; } @@ -673,7 +672,6 @@ class Contracts extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $contrat[$field] = $data[$field]; - } return $contrat; } diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 7e0c2d13ca5..8d2194bb60a 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -2006,7 +2006,6 @@ class Contrat extends CommonObject } $this->db->free($result); - } else { @@ -2476,7 +2475,6 @@ class Contrat extends CommonObject if ($reshook < 0) $error ++; } - } unset($this->context['createfromclone']); @@ -2860,7 +2858,6 @@ class ContratLigne extends CommonObjectLine $marginInfos = getMarginInfos($obj->subprice, $obj->remise_percent, $obj->tva_tx, $obj->localtax1_tx, $obj->localtax2_tx, $this->fk_fournprice, $obj->pa_ht); $this->pa_ht = $marginInfos[0]; $this->fk_unit = $obj->fk_unit; - } $this->db->free($resql); diff --git a/htdocs/contrat/contact.php b/htdocs/contrat/contact.php index f34eb1b5bdb..b659aa01aab 100644 --- a/htdocs/contrat/contact.php +++ b/htdocs/contrat/contact.php @@ -240,7 +240,6 @@ if ($id > 0 || ! empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } else { print "ErrorRecordNotFound"; } diff --git a/htdocs/contrat/document.php b/htdocs/contrat/document.php index 4b7a9b4faf5..cd98f787ff6 100644 --- a/htdocs/contrat/document.php +++ b/htdocs/contrat/document.php @@ -192,7 +192,6 @@ if ($object->id) $permtoedit = $user->rights->contrat->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php index f348cab8234..c0404b5cf3f 100644 --- a/htdocs/contrat/index.php +++ b/htdocs/contrat/index.php @@ -279,7 +279,6 @@ if (! empty($conf->contrat->enabled) && $user->rights->contrat->lire) print ''; //$tot_ttc+=$obj->total_ttc; $i++; - } } else @@ -365,7 +364,6 @@ if ($result) $db->free($result); print ""; - } else { @@ -444,7 +442,6 @@ if ($resql) $db->free(); print ""; - } else { @@ -523,7 +520,6 @@ if ($resql) $db->free(); print ""; - } else { @@ -603,7 +599,6 @@ if ($resql) $db->free(); print ""; - } else { diff --git a/htdocs/contrat/note.php b/htdocs/contrat/note.php index a5ea40e146c..ec93d112ef4 100644 --- a/htdocs/contrat/note.php +++ b/htdocs/contrat/note.php @@ -177,7 +177,6 @@ if ($id > 0 || ! empty($ref)) include DOL_DOCUMENT_ROOT.'/core/tpl/notes.tpl.php'; dol_fiche_end(); - } diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index 153c5ca9364..0715a78495e 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -496,5 +496,4 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO dol_syslog('Failed to read data of object id='.$object->id.' element='.$object->element); $action = 'presend'; } - } diff --git a/htdocs/core/ajax/ajaxdirtree.php b/htdocs/core/ajax/ajaxdirtree.php index a1fafa80559..749f81f1197 100644 --- a/htdocs/core/ajax/ajaxdirtree.php +++ b/htdocs/core/ajax/ajaxdirtree.php @@ -487,7 +487,6 @@ function treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, } echo "\n"; - } } else print "PermissionDenied"; diff --git a/htdocs/core/ajax/check_notifications.php b/htdocs/core/ajax/check_notifications.php index 642dc1038d9..a5c73655bab 100644 --- a/htdocs/core/ajax/check_notifications.php +++ b/htdocs/core/ajax/check_notifications.php @@ -113,7 +113,6 @@ if ($time >= $_SESSION['auto_check_events_not_before']) { dol_syslog("Error sql = ".$db->lasterror(), LOG_ERR); } - } print json_encode($eventfound); diff --git a/htdocs/core/ajax/price.php b/htdocs/core/ajax/price.php index 453fdc7bc82..86073a5a409 100644 --- a/htdocs/core/ajax/price.php +++ b/htdocs/core/ajax/price.php @@ -52,7 +52,6 @@ if (! empty($output) && isset($amount) && isset($tva_tx)) $price = price2num($amount * (1 + ($tva_tx/100)), 'MU'); $return['price_ht'] = $amount; $return['price_ttc'] = (isset($price) && $price != '' ? price($price) : ''); - } else if ($output == 'price_ht') { diff --git a/htdocs/core/boxes/box_actions.php b/htdocs/core/boxes/box_actions.php index 9bcfb002bb6..05bbdba3831 100644 --- a/htdocs/core/boxes/box_actions.php +++ b/htdocs/core/boxes/box_actions.php @@ -232,7 +232,6 @@ class box_actions extends ModeleBoxes } } $out.= ''; - } $out.= ''; if ($actioncejour) diff --git a/htdocs/core/boxes/box_factures.php b/htdocs/core/boxes/box_factures.php index e281fbe5c60..36c472cfc22 100644 --- a/htdocs/core/boxes/box_factures.php +++ b/htdocs/core/boxes/box_factures.php @@ -193,7 +193,6 @@ class box_factures extends ModeleBoxes 'text' => ($db->error().' sql='.$sql), ); } - } else { $this->info_box_contents[0][0] = array( 'td' => 'align="left" class="nohover opacitymedium"', diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index c22163779a8..fd0b4e593c0 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -258,7 +258,6 @@ class box_graph_invoices_permonth extends ModeleBoxes { $this->info_box_contents[0][0] = array('tr'=>'class="oddeven nohover"', 'td' => 'align="left" class="nohover"', 'maxlength'=>500, 'text' => $mesg); } - } else { $this->info_box_contents[0][0] = array( diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index a7f504b2d01..f13b19259c9 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -257,7 +257,6 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes 'maxlength'=>500, 'text' => $mesg); } - } else { $this->info_box_contents[0][0] = array( diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index 329fef77fba..fefa90c5fea 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -256,7 +256,6 @@ class box_graph_orders_permonth extends ModeleBoxes 'maxlength'=>500, 'text' => $mesg); } - } else { $this->info_box_contents[0][0] = array( diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index de962149cdf..e388d226fd2 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -255,7 +255,6 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes 'maxlength'=>500, 'text' => $mesg); } - } else { $this->info_box_contents[0][0] = array( diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index c19235c2fb2..f28b0ec2c99 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -259,7 +259,6 @@ class box_graph_propales_permonth extends ModeleBoxes 'maxlength'=>500, 'text' => $mesg); } - } else { $this->info_box_contents[0][0] = array( diff --git a/htdocs/core/boxes/box_services_expired.php b/htdocs/core/boxes/box_services_expired.php index c23e9940377..ed62e127816 100644 --- a/htdocs/core/boxes/box_services_expired.php +++ b/htdocs/core/boxes/box_services_expired.php @@ -167,8 +167,6 @@ class box_services_expired extends ModeleBoxes 'maxlength'=>500, 'text' => ($db->error().' sql='.$sql)); } - - } else { diff --git a/htdocs/core/class/comment.class.php b/htdocs/core/class/comment.class.php index 161ce438e29..b731eb77169 100644 --- a/htdocs/core/class/comment.class.php +++ b/htdocs/core/class/comment.class.php @@ -360,7 +360,6 @@ class Comment extends CommonObject $error++; $this->errors[]="Error ".$this->db->lasterror(); return -1; } - } return count($this->comments); diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 4729e11ff85..aa318a48bcc 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1925,7 +1925,6 @@ abstract class CommonObject dol_syslog(get_class($this).'::setMulticurrencyRate no updateline defined', LOG_DEBUG); break; } - } } @@ -2815,7 +2814,6 @@ abstract class CommonObject $this->total_ttc -= $diff; $total_tva_by_vats[$obj->vatrate] -= $diff; $total_ttc_by_vats[$obj->vatrate] -= $diff; - } } @@ -4630,7 +4628,6 @@ abstract class CommonObject dol_print_error($this->db, "Error generating document for ".__CLASS__.". Error: ".$obj->error, $obj->errors); return -1; } - } else { @@ -5777,7 +5774,6 @@ abstract class CommonObject } $data[$obj->rowid]=$labeltoshow; - } else { if (! $notrans) { $translabel = $langs->trans($obj->{$InfoFieldList[1]}); @@ -5806,7 +5802,6 @@ abstract class CommonObject $this->db->free($resql); $out=$form->multiselectarray($keyprefix.$key.$keysuffix, $data, $value_arr, '', 0, '', 0, '100%'); - } else { print 'Error in request ' . $sql . ' ' . $this->db->lasterror() . '. Check setup of extra parameters.
'; } @@ -6186,7 +6181,6 @@ abstract class CommonObject } } $value='
    '.implode(' ', $toprint).'
'; - } else { dol_syslog(get_class($this) . '::showOutputField error ' . $this->db->lasterror(), LOG_WARNING); } diff --git a/htdocs/core/class/ctyperesource.class.php b/htdocs/core/class/ctyperesource.class.php index 297e48a940b..f4e74128747 100644 --- a/htdocs/core/class/ctyperesource.class.php +++ b/htdocs/core/class/ctyperesource.class.php @@ -188,8 +188,6 @@ class Ctyperesource $this->code = $obj->code; $this->label = $obj->label; $this->active = $obj->active; - - } // Retrieve all extrafields for invoice @@ -269,8 +267,6 @@ class Ctyperesource $line->code = $obj->code; $line->label = $obj->label; $line->active = $obj->active; - - } $this->db->free($resql); diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index ad7b900b033..1cf347af6a3 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -1108,7 +1108,6 @@ class DolGraph //$this->stringtoshow.=', shadowSize: 20'."\n"; TODO Uncommet this $this->stringtoshow.='});'."\n"; $this->stringtoshow.='}'."\n"; - } $this->stringtoshow.='plotWithOptions_'.$tag.'();'."\n"; diff --git a/htdocs/core/class/dolreceiptprinter.class.php b/htdocs/core/class/dolreceiptprinter.class.php index 8734c4126e7..f38afc67807 100644 --- a/htdocs/core/class/dolreceiptprinter.class.php +++ b/htdocs/core/class/dolreceiptprinter.class.php @@ -484,7 +484,6 @@ class dolReceiptPrinter extends Escpos $this->printer->cut(); //print '
'.print_r($this->connector, true).'
'; $this->printer->close(); - } catch (Exception $e) { $this->errors[] = $e->getMessage(); $error++; @@ -621,7 +620,6 @@ class dolReceiptPrinter extends Escpos // uncomment next line to see content sent to printer //print '
'.print_r($this->connector, true).'
'; $this->printer->close(); - } return $error; } diff --git a/htdocs/core/class/emailsenderprofile.class.php b/htdocs/core/class/emailsenderprofile.class.php index c5304fec31c..b30f79f0bba 100644 --- a/htdocs/core/class/emailsenderprofile.class.php +++ b/htdocs/core/class/emailsenderprofile.class.php @@ -413,7 +413,6 @@ class EmailSenderProfile extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php index 3f5b515e725..9ebdbd22836 100644 --- a/htdocs/core/class/extrafields.class.php +++ b/htdocs/core/class/extrafields.class.php @@ -1392,7 +1392,6 @@ class ExtraFields } $data[$obj->rowid]=$labeltoshow; - } else { if (! $notrans) { $translabel = $langs->trans($obj->{$InfoFieldList[1]}); @@ -1421,7 +1420,6 @@ class ExtraFields $this->db->free($resql); $out=$form->multiselectarray($keyprefix.$key.$keysuffix, $data, $value_arr, '', 0, '', 0, '100%'); - } else { print 'Error in request ' . $sql . ' ' . $this->db->lasterror() . '. Check setup of extra parameters.
'; } @@ -1715,7 +1713,6 @@ class ExtraFields } } $value='
    '.implode(' ', $toprint).'
'; - } else { dol_syslog(get_class($this) . '::showOutputField error ' . $this->db->lasterror(), LOG_WARNING); } diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index d42d1dde48f..c30dcec6e01 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -4685,7 +4685,6 @@ class Form $out.= ''; } } - } $out.= ''; @@ -6958,7 +6957,6 @@ class Form $ret.=''; $ret.=''; } - } else dol_print_error('','Call of showphoto with wrong parameters modulepart='.$modulepart); diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index bfc67880a96..34f0b9ab750 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -718,7 +718,6 @@ class FormFile $reshook = $hookmanager->executeHooks('formBuilddocOptions',$parameters,$GLOBALS['object']); $out.= $hookmanager->resPrint; } - } // Get list of files @@ -848,7 +847,6 @@ class FormFile { $out.=''.$langs->trans("None").''."\n"; } - } if ($headershown) diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php index f79e9eea53d..d2800ce1906 100644 --- a/htdocs/core/class/html.formother.class.php +++ b/htdocs/core/class/html.formother.class.php @@ -1212,7 +1212,6 @@ class FormOther } $boxlistb.= "\n"; - } return array('selectboxlist'=>count($boxactivated)?$selectboxlist:'', 'boxactivated'=>$boxactivated, 'boxlista'=>$boxlista, 'boxlistb'=>$boxlistb); diff --git a/htdocs/core/class/notify.class.php b/htdocs/core/class/notify.class.php index 344b8050b65..08917a8d3a3 100644 --- a/htdocs/core/class/notify.class.php +++ b/htdocs/core/class/notify.class.php @@ -519,12 +519,10 @@ class Notify if ($obj->type_target == 'touserid') { $sql = "INSERT INTO ".MAIN_DB_PREFIX."notify (daten, fk_action, fk_soc, fk_user, type, objet_type, type_target, objet_id, email)"; $sql.= " VALUES ('".$this->db->idate(dol_now())."', ".$notifcodedefid.", ".($object->socid?$object->socid:'null').", ".$obj->cid.", '".$obj->type."', '".$object_type."', '".$obj->type_target."', ".$object->id.", '".$this->db->escape($obj->email)."')"; - } else { $sql = "INSERT INTO ".MAIN_DB_PREFIX."notify (daten, fk_action, fk_soc, fk_contact, type, objet_type, type_target, objet_id, email)"; $sql.= " VALUES ('".$this->db->idate(dol_now())."', ".$notifcodedefid.", ".($object->socid?$object->socid:'null').", ".$obj->cid.", '".$obj->type."', '".$object_type."', '".$obj->type_target."', ".$object->id.", '".$this->db->escape($obj->email)."')"; - } if (! $this->db->query($sql)) { diff --git a/htdocs/core/class/rssparser.class.php b/htdocs/core/class/rssparser.class.php index bad8d7ffdca..fd37476a26e 100644 --- a/htdocs/core/class/rssparser.class.php +++ b/htdocs/core/class/rssparser.class.php @@ -545,8 +545,6 @@ class RssParser } $this->incontent = $el; - - } // if inside an Atom content construct (e.g. content or summary) field treat tags as text @@ -734,7 +732,6 @@ class RssParser elseif ($this->inchannel) { $this->concat($this->channel[ $el ], $text); } - } } } @@ -759,7 +756,6 @@ function xml2php($xml) foreach($value->attributes() as $ak=>$av) { $child[$ak] = (string) $av; - } //Let see if the new child is not in the array diff --git a/htdocs/core/class/utils.class.php b/htdocs/core/class/utils.class.php index 7904f485d6a..e3b151f9874 100644 --- a/htdocs/core/class/utils.class.php +++ b/htdocs/core/class/utils.class.php @@ -343,7 +343,6 @@ class Utils elseif (preg_match('/'.preg_quote('SET SQL_NOTES=@OLD_SQL_NOTES').'/i',$read)) $ok=1; } pclose($handlein); - } diff --git a/htdocs/core/db/mssql.class.php b/htdocs/core/db/mssql.class.php index dd1553ec12f..a8483ec1401 100644 --- a/htdocs/core/db/mssql.class.php +++ b/htdocs/core/db/mssql.class.php @@ -374,7 +374,6 @@ class DoliDBMssql extends DoliDB $query="ALTER TABLE [".$matches[1]."] ADD CONSTRAINT [".$matches[2]."] PRIMARY KEY CLUSTERED (".$matches[3].")"; } } - } if ($type=="auto" || $type='ddl') @@ -416,7 +415,6 @@ class DoliDBMssql extends DoliDB $sql='SET IDENTITY_INSERT ['.trim($matches[1]).'] ON;'; @mssql_query($sql, $this->db); $post_query='SET IDENTITY_INSERT ['.trim($matches[1]).'] OFF;'; - } } //print ""; diff --git a/htdocs/core/db/sqlite3.class.php b/htdocs/core/db/sqlite3.class.php index 6babfd881d4..97e799a2b69 100644 --- a/htdocs/core/db/sqlite3.class.php +++ b/htdocs/core/db/sqlite3.class.php @@ -260,7 +260,6 @@ class DoliDBSqlite3 extends DoliDB // Pour l'instant les contraintes ne sont pas créées dol_syslog(get_class().'::query line emptied'); $line = 'SELECT 0;'; - } //if (preg_match('/rowid\s+.*\s+PRIMARY\s+KEY,/i', $line)) { @@ -445,7 +444,6 @@ class DoliDBSqlite3 extends DoliDB // dummy statement $query="SELECT 0"; - } else { $query=$this->convertSQLFromMysql($query,$type); } diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index 4014adfc272..f92fd56a87b 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -1233,7 +1233,6 @@ function activateModulesRequiredByCountry($country_code) setEventMessages($objMod->automatic_activation[$country_code], null, 'warnings'); } - } else dol_syslog("Module ".get_class($objMod)." not qualified"); } diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 46e3922a0d0..fe9d15c8322 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -634,7 +634,6 @@ function getFormeJuridiqueLabel($code) { return $langs->trans("NotDefined"); } - } } diff --git a/htdocs/core/lib/emailing.lib.php b/htdocs/core/lib/emailing.lib.php index d9cad7f1c1e..06ceb2c96b0 100644 --- a/htdocs/core/lib/emailing.lib.php +++ b/htdocs/core/lib/emailing.lib.php @@ -46,7 +46,6 @@ function emailing_prepare_head(Mailing $object) if ($object->nbemail > 0) $head[$h][1].= ' '.$object->nbemail.''; $head[$h][2] = 'targets'; $h++; - } if (! empty($conf->global->EMAILING_USE_ADVANCED_SELECTOR)) diff --git a/htdocs/core/lib/fichinter.lib.php b/htdocs/core/lib/fichinter.lib.php index e55aaeb7516..20e257eee2f 100644 --- a/htdocs/core/lib/fichinter.lib.php +++ b/htdocs/core/lib/fichinter.lib.php @@ -76,7 +76,6 @@ function fichinter_prepare_head($object) foreach($resources as $resource_obj) { $linked_resources = $object->getElementResources('fichinter',$object->id,$resource_obj); - } } } diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 7897041ebbf..1a114c62a01 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -781,7 +781,6 @@ function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists, $arrayrep $result=$tmpresult; } if ($result < 0) break; - } } closedir($dir_handle); diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 7888338cdc2..9efc66030d2 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -1223,7 +1223,6 @@ function dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $pi $outmore.=''.$links[$i][1].''."\n"; else $outmore.=''.$links[$i][1].''."\n"; - } else if (! empty($links[$i][1])) { @@ -3932,7 +3931,6 @@ function dol_print_error($db='',$error='',$errors=null) $out.='> '.$langs->transnoentities("RequestLastAccessInError").":\n".($db->lastqueryerror()?$db->lastqueryerror():$langs->transnoentities("ErrorNoRequestInError"))."\n"; $out.='> '.$langs->transnoentities("ReturnCodeLastAccessInError").":\n".($db->lasterrno()?$db->lasterrno():$langs->transnoentities("ErrorNoRequestInError"))."\n"; $out.='> '.$langs->transnoentities("InformationLastAccessInError").":\n".($db->lasterror()?$db->lasterror():$langs->transnoentities("ErrorNoRequestInError"))."\n"; - } $syslog.=", sql=".$db->lastquery(); $syslog.=", db_error=".$db->lasterror(); @@ -4994,7 +4992,6 @@ function getLocalTaxesFromRate($vatrate, $local, $buyer, $seller, $firstparamisi else { return array($obj->localtax1_type, get_localtax($vatrate, 1, $buyer, $seller), $obj->localtax2_type, get_localtax($vatrate, 2, $buyer, $seller), $obj->accountancy_code_sell,$obj->accountancy_code_buy); - } } @@ -5116,8 +5113,6 @@ function get_product_localtax_for_country($idprod, $local, $thirdparty_seller) else { // TODO Read default product vat according to countrycode and product - - } } @@ -5600,7 +5595,6 @@ function dolGetFirstLineOfText($text, $nboflines=1) { $firstline=preg_replace('/]*>.*$/s','',$text); // The s pattern modifier means the . can match newline characters $firstline=preg_replace('/]*>.*$/s','',$firstline); // The s pattern modifier means the . can match newline characters - } else { diff --git a/htdocs/core/lib/xcal.lib.php b/htdocs/core/lib/xcal.lib.php index 3f09bd3410a..10d68475c97 100644 --- a/htdocs/core/lib/xcal.lib.php +++ b/htdocs/core/lib/xcal.lib.php @@ -263,7 +263,6 @@ function build_calfile($format,$title,$desc,$events_array,$outputfile) $comment ['enddate'] = $enddate; fwrite($calfileh,"COMMENT:" . serialize ($comment) . "\n"); */ - } } diff --git a/htdocs/core/login/functions_ldap.php b/htdocs/core/login/functions_ldap.php index 6e13d55171c..4587dbae11b 100644 --- a/htdocs/core/login/functions_ldap.php +++ b/htdocs/core/login/functions_ldap.php @@ -203,7 +203,6 @@ function check_user_password_ldap($usertotest,$passwordtotest,$entitytotest) } unset($usertmp); } - } if ($result == 1) { diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 562ed99a020..968048a15aa 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -626,7 +626,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add("/user/group/list.php?leftmenu=users", $langs->trans("ListOfGroups"), 2, (($conf->global->MAIN_USE_ADVANCED_PERMS?$user->rights->user->group_advance->read:$user->rights->user->user->lire) || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)); } } - } @@ -807,7 +806,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add("/fichinter/card-red.php?leftmenu=ficheinter", $langs->trans("ModelList"), 1, $user->rights->ficheinter->lire, '', '', '', 203); $newmenu->add("/fichinter/stats/index.php?leftmenu=ficheinter", $langs->trans("Statistics"), 1, $user->rights->fournisseur->commande->lire); } - } @@ -1242,7 +1240,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (preg_match('/checks/',$leftmenu)) $newmenu->add("/compta/paiement/cheque/card.php?leftmenu=checks_bis&action=new&mainmenu=bank",$langs->trans("NewChequeDeposit"),1,$user->rights->banque->cheque); if (preg_match('/checks/',$leftmenu)) $newmenu->add("/compta/paiement/cheque/list.php?leftmenu=checks_bis&mainmenu=bank",$langs->trans("List"),1,$user->rights->banque->cheque); } - } /* @@ -1349,7 +1346,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if ($usemenuhider || empty($leftmenu) || $leftmenu=="sendings") $newmenu->add("/expedition/list.php?leftmenu=sendings&viewstatut=2", $langs->trans("StatusSendingProcessedShort"), 2, $user->rights->expedition->lire); $newmenu->add("/expedition/stats/index.php?leftmenu=sendings", $langs->trans("Statistics"), 1, $user->rights->expedition->lire); } - } /* @@ -1571,7 +1567,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members&action=create",$langs->trans("New"),1,$user->rights->adherent->configurer); $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members",$langs->trans("List"),1,$user->rights->adherent->configurer); } - } // Add personalized menus and modules menus @@ -1631,7 +1626,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $i++; } } - } // Build final $menu_array = $menu_array_before +$newmenu->liste + $menu_array_after diff --git a/htdocs/core/menus/standard/eldy_menu.php b/htdocs/core/menus/standard/eldy_menu.php index fa6e1b3084d..543dbd111bb 100644 --- a/htdocs/core/menus/standard/eldy_menu.php +++ b/htdocs/core/menus/standard/eldy_menu.php @@ -315,8 +315,6 @@ class MenuManager } print ''."\n"; } - - } //var_dump($submenu); print ''; diff --git a/htdocs/core/menus/standard/empty.php b/htdocs/core/menus/standard/empty.php index 172b6c483c5..4d7296b276b 100644 --- a/htdocs/core/menus/standard/empty.php +++ b/htdocs/core/menus/standard/empty.php @@ -311,8 +311,6 @@ class MenuManager } print ''."\n"; } - - } //var_dump($submenu); print ''; diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index 9f94288809d..dfaaa6b26b4 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -1175,7 +1175,6 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it dol_syslog(get_class($this)."::insert_boxes", LOG_DEBUG); $resql=$this->db->query($sql); if (! $resql) $err++; - } if (! $err && ! preg_match('/newboxdefonly/',$option)) { @@ -1384,7 +1383,6 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it $resql=$this->db->query($sql); if (! $resql) $err++; - } if (! $err) @@ -1739,7 +1737,6 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it break; } else dol_syslog(get_class($this)."::insert_permissions record already exists", LOG_INFO); - } $this->db->free($resqlinsert); @@ -1791,7 +1788,6 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it $user->clearrights(); $user->getrights(); } - } $this->db->free($resql); } diff --git a/htdocs/core/modules/cheque/modules_chequereceipts.php b/htdocs/core/modules/cheque/modules_chequereceipts.php index 9af073267ae..f2841a7ec8e 100644 --- a/htdocs/core/modules/cheque/modules_chequereceipts.php +++ b/htdocs/core/modules/cheque/modules_chequereceipts.php @@ -209,7 +209,6 @@ function chequereceipt_pdf_create($db, $id, $message, $modele, $outputlangs) dol_print_error($db,"chequereceipt_pdf_create Error: ".$obj->error); return -1; } - } else { diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index ad77e9bea32..6047caa55b3 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -967,7 +967,6 @@ class pdf_einstein extends ModelePDFCommandes $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 1c85adddfcc..0bf4b91365e 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -402,7 +402,6 @@ class pdf_eratosthene extends ModelePDFCommandes if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); $height_note=$posyafter-$tab_top_newpage; $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); - } else // No pagebreak { @@ -424,7 +423,6 @@ class pdf_eratosthene extends ModelePDFCommandes $posyafter = $tab_top_newpage; } - } $tab_height = $tab_height - $height_note; @@ -1028,7 +1026,6 @@ class pdf_eratosthene extends ModelePDFCommandes $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index 5c663e61348..daa8d67e5d1 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -730,7 +730,6 @@ class pdf_rouget extends ModelePdfExpedition $pdf->SetXY($this->posxtotalht, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->posxtotalht, $tab2_hl, price($object->total_ht, 0, $outputlangs), 0, 'C', 1); - } // Total Weight @@ -834,7 +833,6 @@ class pdf_rouget extends ModelePdfExpedition $pdf->SetXY($this->posxtotalht-1, $tab_top+1); $pdf->MultiCell(($this->page_largeur - $this->marge_droite - $this->posxtotalht), 2, $outputlangs->transnoentities("TotalHT"),'','C'); } - } } diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index f05c19885da..d98801ab7e2 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -479,7 +479,6 @@ class pdf_standard extends ModeleExpenseReport $pagenb++; if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); } - } // Show square diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index c4d69424cb2..797b48865c6 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -1202,7 +1202,6 @@ class pdf_crabe extends ModelePDFFactures $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } @@ -1225,7 +1224,6 @@ class pdf_crabe extends ModelePDFFactures $this->tva[$tvakey]=$tvaval * $coef_fix_tva; } } - } foreach($this->tva as $tvakey => $tvaval) @@ -1516,9 +1514,7 @@ class pdf_crabe extends ModelePDFFactures { $pdf->MultiCell($this->postotalht-$this->posxprogress,2, $outputlangs->transnoentities("Progress"),'','C'); } - } - } if($conf->global->PRODUCT_USE_UNITS) { diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index d03d60f50fe..439f81ab02e 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -487,7 +487,6 @@ class pdf_sponge extends ModelePDFFactures if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); $height_note=$posyafter-$tab_top_newpage; $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); - } else // No pagebreak { @@ -509,7 +508,6 @@ class pdf_sponge extends ModelePDFFactures $posyafter = $tab_top_newpage; } - } $tab_height = $tab_height - $height_note; @@ -787,7 +785,6 @@ class pdf_sponge extends ModelePDFFactures $pagenb++; if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); } - } // Show square @@ -1268,7 +1265,6 @@ class pdf_sponge extends ModelePDFFactures $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } @@ -1291,7 +1287,6 @@ class pdf_sponge extends ModelePDFFactures $this->tva[$tvakey]=$tvaval * $coef_fix_tva; } } - } foreach($this->tva as $tvakey => $tvaval) diff --git a/htdocs/core/modules/import/import_csv.modules.php b/htdocs/core/modules/import/import_csv.modules.php index 34bff81e55c..6b2e480db86 100644 --- a/htdocs/core/modules/import/import_csv.modules.php +++ b/htdocs/core/modules/import/import_csv.modules.php @@ -466,7 +466,6 @@ class ImportCsv extends ModeleImports } } } - } elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='zeroifnull') { diff --git a/htdocs/core/modules/import/import_xlsx.modules.php b/htdocs/core/modules/import/import_xlsx.modules.php index 2c37caa5d40..f8b6aa99a82 100644 --- a/htdocs/core/modules/import/import_xlsx.modules.php +++ b/htdocs/core/modules/import/import_xlsx.modules.php @@ -493,7 +493,6 @@ class ImportXlsx extends ModeleImports } } } - } elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='zeroifnull') { diff --git a/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php b/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php index 4f6f3c4ecdb..91bd5127c1f 100644 --- a/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php +++ b/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php @@ -69,7 +69,6 @@ class mailing_thirdparties_services_expired extends MailingTargets $i++; $this->arrayofproducts[$i]=$obj->ref; } - } else { diff --git a/htdocs/core/modules/modStock.class.php b/htdocs/core/modules/modStock.class.php index d4f79f1efcf..01b4e9d4474 100644 --- a/htdocs/core/modules/modStock.class.php +++ b/htdocs/core/modules/modStock.class.php @@ -173,7 +173,6 @@ class modStock extends DolibarrModules $this->rights[9][3] = 0; // Permission by default for new user (0/1) $this->rights[9][4] = 'inventory_advance'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) $this->rights[9][5] = 'changePMP'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) - } // Main menu entries diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index a350f643e9e..bc5da5e306b 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -1144,7 +1144,6 @@ class doc_generic_project_odt extends ModelePDFProjects } $listlines->merge(); } - } } $odfHandler->mergeSegment($listlines); diff --git a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php index 7df62bec482..46f0fdacbbb 100644 --- a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php +++ b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php @@ -720,7 +720,6 @@ class doc_generic_task_odt extends ModelePDFTask //$listlines->merge(); $odfHandler->mergeSegment($listtasksfiles); - } catch(OdfException $e) { diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index adb52867a36..8c2dfd21a89 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -1146,7 +1146,6 @@ class pdf_azur extends ModelePDFPropales $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index e43734039ca..464bef3da96 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -446,7 +446,6 @@ class pdf_cyan extends ModelePDFPropales if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); $height_note=$posyafter-$tab_top_newpage; $pdf->Rect($this->marge_gauche, $tab_top_newpage-1, $tab_width, $height_note+1); - } else // No pagebreak { @@ -468,7 +467,6 @@ class pdf_cyan extends ModelePDFPropales $posyafter = $tab_top_newpage; } - } $tab_height = $tab_height - $height_note; @@ -1183,7 +1181,6 @@ class pdf_cyan extends ModelePDFPropales $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } diff --git a/htdocs/core/modules/security/generate/modGeneratePassStandard.class.php b/htdocs/core/modules/security/generate/modGeneratePassStandard.class.php index d051c173c6d..0ecf7d7ef38 100644 --- a/htdocs/core/modules/security/generate/modGeneratePassStandard.class.php +++ b/htdocs/core/modules/security/generate/modGeneratePassStandard.class.php @@ -117,7 +117,6 @@ class modGeneratePassStandard extends ModeleGenPassword $password .= $char; $i++; } - } // done! diff --git a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php index 2fd86069d01..3c0d62be848 100644 --- a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php @@ -713,7 +713,6 @@ class pdf_stdmovement extends ModelePDFMovement // Total Qty $pdf->SetXY($this->postotalht, $curY); $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $totalunit, 0, 'R', 0); - } else { diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php index e7d47f67bda..dec36d5adbd 100644 --- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -243,7 +243,6 @@ class pdf_canelle extends ModelePDFSuppliersInvoices $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); return 0; } - } if (file_exists($dir)) diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index 8478fd70e89..d869b5dd72d 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -291,7 +291,6 @@ class pdf_muscadet extends ModelePDFSuppliersOrders $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); return 0; } - } if (file_exists($dir)) diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php index 31097dd8c34..544a1040c9f 100644 --- a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php @@ -997,7 +997,6 @@ class pdf_aurore extends ModelePDFSupplierProposal $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1); - } } } diff --git a/htdocs/core/tpl/card_presend.tpl.php b/htdocs/core/tpl/card_presend.tpl.php index 4a4301c5a5f..0d1fd84923c 100644 --- a/htdocs/core/tpl/card_presend.tpl.php +++ b/htdocs/core/tpl/card_presend.tpl.php @@ -169,7 +169,6 @@ if ($action == 'presend') $formmail->withtouser = $listeuser; $formmail->withtoccuser = $listeuser; } - } $formmail->withto = GETPOST('sendto') ? GETPOST('sendto') : $liste; diff --git a/htdocs/core/tpl/resource_view.tpl.php b/htdocs/core/tpl/resource_view.tpl.php index aff342191cb..59491c01b6f 100644 --- a/htdocs/core/tpl/resource_view.tpl.php +++ b/htdocs/core/tpl/resource_view.tpl.php @@ -98,7 +98,6 @@ if( (array) $linked_resources && count($linked_resources) > 0) print ''; } } - } else { print '
'; diff --git a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php index cb03315496a..8282a09a43d 100644 --- a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php +++ b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php @@ -200,7 +200,6 @@ class InterfaceStripe if ($action == 'COMPANYPAYMENTMODE_MODIFY' && $object->type == 'card') { // For creation of credit card, we do not create in Stripe automatically - } if ($action == 'COMPANYPAYMENTMODE_MODIFY' && $object->type == 'card') { dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id); diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php index 2d4b74a3b5a..152657e216a 100644 --- a/htdocs/cron/card.php +++ b/htdocs/cron/card.php @@ -546,7 +546,6 @@ if (($action=="create") || ($action=="edit")) print ""; print "
\n"; - } else { diff --git a/htdocs/datapolicy/admin/setup.php b/htdocs/datapolicy/admin/setup.php index 777fa6cb893..8e92e1e6231 100644 --- a/htdocs/datapolicy/admin/setup.php +++ b/htdocs/datapolicy/admin/setup.php @@ -159,7 +159,6 @@ if ($action == 'edit') print ''; print ''; } - } print ''; @@ -185,7 +184,6 @@ else print $form->textwithpicto($langs->trans($key),$langs->trans('DATAPOLICY_Tooltip_SETUP')); print '' . ($conf->global->$key == '' ? $langs->trans('None') : $valTab[$conf->global->$key]) . ''; } - } print ''; diff --git a/htdocs/datapolicy/class/datapolicy.class.php b/htdocs/datapolicy/class/datapolicy.class.php index 3bebdff9302..4914d248490 100644 --- a/htdocs/datapolicy/class/datapolicy.class.php +++ b/htdocs/datapolicy/class/datapolicy.class.php @@ -204,7 +204,6 @@ Class DataPolicy extends Contact $resultmasssend .= $langs->trans("MailSent") . ': ' . $sendto . "
"; $contact->array_options['options_datapolicy_send'] = date('Y-m-d', time()); $contact->update($contact->id); - } else { dol_print_error($db); } @@ -348,7 +347,6 @@ Class DataPolicy extends Contact $resultmasssend .= $langs->trans("MailSent") . ': ' . $sendto . "
"; $adherent->array_options['options_datapolicy_send'] = date('Y-m-d', time()); $adherent->update($user); - } else { dol_print_error($db); } diff --git a/htdocs/datapolicy/class/datapolicycron.class.php b/htdocs/datapolicy/class/datapolicycron.class.php index f6de8b9b498..ab4b55b35dc 100644 --- a/htdocs/datapolicy/class/datapolicycron.class.php +++ b/htdocs/datapolicy/class/datapolicycron.class.php @@ -488,14 +488,12 @@ class DataPolicyCron $ret = $object->delete(); } } - } $i++; } } } - } return true; } diff --git a/htdocs/datapolicy/mailing.php b/htdocs/datapolicy/mailing.php index d65b2bdced4..e3f38b269be 100644 --- a/htdocs/datapolicy/mailing.php +++ b/htdocs/datapolicy/mailing.php @@ -31,8 +31,6 @@ if(!empty($idcontact)){ $contact = new Contact($db); $contact->fetch($idcontact); DataPolicy::sendMailDataPolicyContact($contact); - - }else{ $contacts = new DataPolicy($db); diff --git a/htdocs/don/card.php b/htdocs/don/card.php index d9542dcaaf0..38465de95ca 100644 --- a/htdocs/don/card.php +++ b/htdocs/don/card.php @@ -375,7 +375,6 @@ if ($action == 'create') print ''; } print '' . "\n"; - } // Date diff --git a/htdocs/don/document.php b/htdocs/don/document.php index 177b2b82d8b..01aab513a6a 100644 --- a/htdocs/don/document.php +++ b/htdocs/don/document.php @@ -184,7 +184,6 @@ if ($object->id) $permtoedit = $user->rights->don->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/don/payment/card.php b/htdocs/don/payment/card.php index dde03cb461d..1c3a60e7e78 100644 --- a/htdocs/don/payment/card.php +++ b/htdocs/don/payment/card.php @@ -133,7 +133,6 @@ dol_fiche_head($head, $hselected, $langs->trans("DonationPayment"), -1, 'payment if ($action == 'delete') { print $form->formconfirm('card.php?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2); - } /* @@ -143,7 +142,6 @@ if ($action == 'valide') { $facid = GETPOST('facid','int'); print $form->formconfirm('card.php?id='.$object->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2); - } diff --git a/htdocs/ecm/class/ecmdirectory.class.php b/htdocs/ecm/class/ecmdirectory.class.php index 9038b74cb2a..d3fdd115ffa 100644 --- a/htdocs/ecm/class/ecmdirectory.class.php +++ b/htdocs/ecm/class/ecmdirectory.class.php @@ -680,7 +680,6 @@ class EcmDirectory // extends CommonObject } } $i++; - } } else diff --git a/htdocs/ecm/dir_add_card.php b/htdocs/ecm/dir_add_card.php index 5dab56b29a0..922c06f0cc2 100644 --- a/htdocs/ecm/dir_add_card.php +++ b/htdocs/ecm/dir_add_card.php @@ -290,7 +290,6 @@ if (empty($action) || $action == 'delete_section') if ($action == 'delete_section') { print $form->formconfirm($_SERVER["PHP_SELF"].'?section='.$section, $langs->trans('DeleteSection'), $langs->trans('ConfirmDeleteSection',$ecmdir->label), 'confirm_deletesection'); - } // Construit fiche rubrique diff --git a/htdocs/ecm/dir_card.php b/htdocs/ecm/dir_card.php index 982fa045d32..7c3473117fc 100644 --- a/htdocs/ecm/dir_card.php +++ b/htdocs/ecm/dir_card.php @@ -271,7 +271,6 @@ if ($action == 'update' && ! GETPOST('cancel','alpha')) $upload_dir = $conf->medias->multidir_output[$conf->entity].'/'.$relativepath; $section = $relativepath; } - } } diff --git a/htdocs/ecm/file_card.php b/htdocs/ecm/file_card.php index b1b45141f4f..959a4bc5b8d 100644 --- a/htdocs/ecm/file_card.php +++ b/htdocs/ecm/file_card.php @@ -390,7 +390,6 @@ if ($action == 'edit') if ($action == 'delete_file') { print $form->formconfirm($_SERVER["PHP_SELF"].'?section='.urlencode($section), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile',$urlfile), 'confirm_deletefile', '', 1, 1); - } if ($action != 'edit') diff --git a/htdocs/ecm/index_auto.php b/htdocs/ecm/index_auto.php index 382312e4434..ea5e5c13ff2 100644 --- a/htdocs/ecm/index_auto.php +++ b/htdocs/ecm/index_auto.php @@ -343,7 +343,6 @@ dol_fiche_head($head, 'index_auto', $langs->trans("ECMArea").' - '.$langs->trans if ($action == 'delete' && empty($conf->use_javascript_ajax)) { print $form->formconfirm($_SERVER["PHP_SELF"].'?section='.$section.'&urlfile='.urlencode($_GET["urlfile"]), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile','','',1); - } // Start container of all panels diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index 69deecdf4c0..292bf5e1de8 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -316,7 +316,6 @@ if (empty($reshook)) unset($_POST["options_" . $key]); } } - } //var_dump($batch_line[2]); @@ -859,7 +858,6 @@ if (empty($reshook)) $mode='emailfromshipment'; $trackid='shi'.$object->id; include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; - } @@ -1421,7 +1419,6 @@ if ($action == 'create') print ''; print '('.$stock.')'; - } else { @@ -1522,7 +1519,6 @@ if ($action == 'create') } } } - } if ($subj == 0) // Line not shown yet, we show it { @@ -1669,13 +1665,11 @@ else if ($id || $ref) } $formconfirm=$form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id,$langs->trans('ValidateSending'),$text,'confirm_valid','',0,1); - } // Confirm cancelation if ($action == 'annuler') { $formconfirm=$form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id,$langs->trans('CancelSending'),$langs->trans("ConfirmCancelSending",$object->ref),'confirm_cancel','',0,1); - } // Call Hook formConfirm @@ -1826,7 +1820,6 @@ else if ($id || $ref) print ' '; print ' '; print ''; - } else { @@ -1864,7 +1857,6 @@ else if ($id || $ref) print ' '; print ' '; print ''; - } else { @@ -2536,7 +2528,6 @@ else if ($id || $ref) { print ''.$langs->trans("Delete").''; } - } print ''; diff --git a/htdocs/expedition/class/api_shipments.class.php b/htdocs/expedition/class/api_shipments.class.php index 109b847fc62..834c0bf2bda 100644 --- a/htdocs/expedition/class/api_shipments.class.php +++ b/htdocs/expedition/class/api_shipments.class.php @@ -661,7 +661,6 @@ class Shipments extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $shipment[$field] = $data[$field]; - } return $shipment; } diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 77df09ee276..751516fc18d 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -383,7 +383,6 @@ class Expedition extends CommonObject $this->db->rollback(); return -1*$error; } - } else { @@ -760,7 +759,6 @@ class Expedition extends CommonObject $this->error=$this->db->error(); return -2; } - } // Change status of order to "shipment in process" @@ -2129,7 +2127,6 @@ class Expedition extends CommonObject if ($result < 0) { $error++; } - } else { $error++; $this->errors[]=$this->db->lasterror; @@ -2256,7 +2253,6 @@ class Expedition extends CommonObject $error++; } } - } else { $error++; $this->errors[]=$this->db->lasterror(); diff --git a/htdocs/expedition/contact.php b/htdocs/expedition/contact.php index acc2b5e1142..ce31e760b7f 100644 --- a/htdocs/expedition/contact.php +++ b/htdocs/expedition/contact.php @@ -265,7 +265,6 @@ if ($id > 0 || ! empty($ref)) $res=@include dol_buildpath($reldir.'/contacts.tpl.php'); if ($res) break; } - } // End of page diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php index 327a9394b77..c3632ca57fd 100644 --- a/htdocs/expedition/list.php +++ b/htdocs/expedition/list.php @@ -160,7 +160,6 @@ if (empty($reshook)) setEventMessages($langs->trans('TooManyRecordForMassAction',$maxformassaction), null, 'errors'); $error++; } - } diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php index 33e1dd97f7b..920b5508e59 100644 --- a/htdocs/expedition/shipment.php +++ b/htdocs/expedition/shipment.php @@ -215,7 +215,6 @@ if (empty($reshook)) } include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; - } /* @@ -257,7 +256,6 @@ if ($id > 0 || ! empty($ref)) if ($action == 'cloture') { $formconfirm = $form->formconfirm($_SERVER['PHP_SELF']."?id=".$id,$langs->trans("CloseShipment"),$langs->trans("ConfirmCloseShipment"),"confirm_cloture"); - } // Call Hook formConfirm @@ -908,7 +906,6 @@ if ($id > 0 || ! empty($ref)) print ''; $somethingshown=1; - } else { diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index d877ad00b2f..7174e42f363 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -1160,7 +1160,6 @@ if (empty($reshook)) unset($fk_projet); unset($date); - } else { setEventMessages($object->error, $object->errors, 'errors'); } @@ -1552,7 +1551,6 @@ else $userfee->fetch($user->id); print $userfee->getNomUrl(-1); print ''; - } // Other attributes @@ -2225,17 +2223,13 @@ else print ''; dol_fiche_end(); - } // end edit or not edit - } // end of if result else { dol_print_error($db); } - } //fin si id > 0 - } /* @@ -2449,7 +2443,6 @@ if ($action != 'presend') $somethingshown = $formactions->showactions($object, 'expensereport', null); print ''; - } // Presend form diff --git a/htdocs/expensereport/class/api_expensereports.class.php b/htdocs/expensereport/class/api_expensereports.class.php index 80c22fb961a..e6475665fb8 100644 --- a/htdocs/expensereport/class/api_expensereports.class.php +++ b/htdocs/expensereport/class/api_expensereports.class.php @@ -522,7 +522,6 @@ class ExpenseReports extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $expensereport[$field] = $data[$field]; - } return $expensereport; } diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index 6cc7b13ee7c..2b343dd0074 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -719,7 +719,6 @@ class ExpenseReport extends CommonObject $auser->fetch($obj->fk_user_approve); $this->user_approve = $auser; } - } $this->db->free($resql); } @@ -891,7 +890,6 @@ class ExpenseReport extends CommonObject print ''.$langs->trans("TotalTTC").' : '.price($total_TTC).''; print ' '; print ''; - } else { diff --git a/htdocs/expensereport/class/paymentexpensereport.class.php b/htdocs/expensereport/class/paymentexpensereport.class.php index 35f1fef7b5b..605affed253 100644 --- a/htdocs/expensereport/class/paymentexpensereport.class.php +++ b/htdocs/expensereport/class/paymentexpensereport.class.php @@ -165,7 +165,6 @@ class PaymentExpenseReport extends CommonObject { $error++; } - } if ($totalamount != 0 && ! $error) diff --git a/htdocs/expensereport/document.php b/htdocs/expensereport/document.php index 16db5311028..6cfb3a2f7bc 100644 --- a/htdocs/expensereport/document.php +++ b/htdocs/expensereport/document.php @@ -132,7 +132,6 @@ if ($object->id) $permtoedit = $user->rights->expensereport->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/expensereport/export_csv.php b/htdocs/expensereport/export_csv.php index f018a23e478..3a104ca77b4 100644 --- a/htdocs/expensereport/export_csv.php +++ b/htdocs/expensereport/export_csv.php @@ -60,7 +60,6 @@ if($num < 1) { $insert.= ")"; $req = $db->query($insert); - } @@ -176,7 +175,6 @@ if (isset($_POST['action'])) $ligne.= "--->, {$objet2->rowid}, {$objet2->libelle}, {$objet2->comments}, {$objet2->total_ht}, {$objet2->total_tva}, {$objet2->total_ttc}\n"; } } - } $ligne = $outputlangs->convToOutputCharset($ligne); @@ -185,11 +183,9 @@ if (isset($_POST['action'])) fclose($open); print 'Télécharger le fichier expensereport-'.$dateselected.'.csv'; - } else { print ''.$langs->trans('NoTripsToExportCSV').''; - } } } diff --git a/htdocs/expensereport/index.php b/htdocs/expensereport/index.php index 758dd89afe2..9a947b8596e 100644 --- a/htdocs/expensereport/index.php +++ b/htdocs/expensereport/index.php @@ -219,7 +219,6 @@ if ($result) $i++; } - } else { diff --git a/htdocs/expensereport/payment/card.php b/htdocs/expensereport/payment/card.php index 88272072ada..f75a0f8bb31 100644 --- a/htdocs/expensereport/payment/card.php +++ b/htdocs/expensereport/payment/card.php @@ -129,7 +129,6 @@ dol_fiche_head($head, 'payment', $langs->trans("ExpenseReportPayment"), -1, 'pay if ($action == 'delete') { print $form->formconfirm('card.php?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2); - } /* @@ -139,7 +138,6 @@ if ($action == 'valide') { $facid = $_GET['facid']; print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2); - } $linkback = ''; diff --git a/htdocs/expensereport/payment/payment.php b/htdocs/expensereport/payment/payment.php index 5136dff3cce..046bb522ae2 100644 --- a/htdocs/expensereport/payment/payment.php +++ b/htdocs/expensereport/payment/payment.php @@ -150,7 +150,6 @@ if ($action == 'add_payment') $error++; } } - } if (! $error) diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php index 6d65418be3c..f0060ffd029 100644 --- a/htdocs/exports/export.php +++ b/htdocs/exports/export.php @@ -208,7 +208,6 @@ if ($action=='selectfield') // Selection of field at step 2 setEventMessages($warnings, null, 'warnings'); } - } if ($action=='unselectfield') { @@ -683,7 +682,6 @@ if ($step == 2 && $datatoexport) } print ''; - } if ($step == 3 && $datatoexport) @@ -858,7 +856,6 @@ if ($step == 3 && $datatoexport) // il n'est pas obligatoire de filtrer les champs print ''.$langs->trans("NextStep").''; print ''; - } if ($step == 4 && $datatoexport) @@ -1162,7 +1159,6 @@ if ($step == 5 && $datatoexport) if ($action == 'remove_file') { print $form->formconfirm($_SERVER["PHP_SELF"].'?step=5&datatoexport='.$datatoexport.'&file='.urlencode(GETPOST("file")), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile', '', 0, 1); - } print '
'; diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php index 66f693858c9..0113f7fbea6 100644 --- a/htdocs/fichinter/card-rec.php +++ b/htdocs/fichinter/card-rec.php @@ -420,7 +420,6 @@ if ($action == 'create') { $i++; } $db->free($result); - } else print $db->error(); print ""; @@ -439,7 +438,6 @@ if ($action == 'create') { } else dol_print_error('', "Error, no invoice ".$object->id); - } elseif ($action == 'selsocforcreatefrommodel') { print load_fiche_titre($langs->trans("CreateRepeatableIntervention"), '', 'title_commercial.png'); dol_fiche_head(''); @@ -574,11 +572,9 @@ if ($action == 'create') { print $contratstatic->getNomUrl(0, '', 1); } else print " "; - } print ''; print ''; - } print ""; print '
'; @@ -775,7 +771,6 @@ if ($action == 'create') { print ''; } else print $langs->trans("ErrorRecordNotFound"); - } else { /* * List mode diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 75866d586f6..5896a5c5723 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -378,10 +378,8 @@ if (empty($reshook)) $error++; break; } - } } - } else { @@ -1099,7 +1097,6 @@ if ($action == 'create') print ''; } - } else if ($id > 0 || ! empty($ref)) { @@ -1471,8 +1468,6 @@ else if ($id > 0 || ! empty($ref)) $line->fetch_optionals(); print $line->showOptionals($extrafieldsline, 'view', array('style'=>$bc[$var], 'colspan'=>5)); - - } // Line in update mode @@ -1519,8 +1514,6 @@ else if ($id > 0 || ! empty($ref)) $line->fetch_optionals(); print $line->showOptionals($extrafieldsline, 'edit', array('style'=>$bc[$var], 'colspan'=>5)); - - } $i++; @@ -1711,7 +1704,6 @@ else if ($id > 0 || ! empty($ref)) print ''; } - } } } diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php index d8be14c298a..05a139e2a9a 100644 --- a/htdocs/fichinter/class/fichinter.class.php +++ b/htdocs/fichinter/class/fichinter.class.php @@ -882,7 +882,6 @@ class Fichinter extends CommonObject $muser->fetch($obj->fk_user_modification); $this->user_modification = $muser; } - } $this->db->free($resql); } diff --git a/htdocs/fichinter/contact.php b/htdocs/fichinter/contact.php index d3b2ea6f78e..b69aa5952fa 100644 --- a/htdocs/fichinter/contact.php +++ b/htdocs/fichinter/contact.php @@ -185,7 +185,6 @@ if ($id > 0 || ! empty($ref)) $res=@include dol_buildpath($reldir.'/contacts.tpl.php'); if ($res) break; } - } diff --git a/htdocs/fichinter/document.php b/htdocs/fichinter/document.php index d52ed81da48..42273785a61 100644 --- a/htdocs/fichinter/document.php +++ b/htdocs/fichinter/document.php @@ -168,7 +168,6 @@ if ($object->id) $permtoedit = $user->rights->ficheinter->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index ce9665cc6c8..ced75842606 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -2132,7 +2132,6 @@ class CommandeFournisseur extends CommonOrder $this->errors[]='ErrorCantSetReceptionToTotalDoneWithReceptionToApprove'; dol_syslog('ErrorCantSetReceptionToTotalDoneWithReceptionToApprove', LOG_DEBUG); } - } if (! $error && ! empty($conf->global->SUPPLIER_ORDER_USE_DISPATCH_STATUS_NEED_APPROVE) && ($type == 'tot')) // Accept to move to reception done, only if status of all line are ok (refuse denied) { @@ -3088,7 +3087,6 @@ class CommandeFournisseur extends CommonOrder { $close++; } - } } @@ -3112,8 +3110,6 @@ class CommandeFournisseur extends CommonOrder } return 4; } - - } else {//all the products are not received @@ -3123,7 +3119,6 @@ class CommandeFournisseur extends CommonOrder } return 4; } - } else { diff --git a/htdocs/fourn/class/fournisseur.commande.dispatch.class.php b/htdocs/fourn/class/fournisseur.commande.dispatch.class.php index 2bcdce36b3c..c7b5d00c797 100644 --- a/htdocs/fourn/class/fournisseur.commande.dispatch.class.php +++ b/htdocs/fourn/class/fournisseur.commande.dispatch.class.php @@ -279,8 +279,6 @@ class CommandeFournisseurDispatch extends CommonObject $this->batch = $obj->batch; $this->eatby = $this->db->jdate($obj->eatby); $this->sellby = $this->db->jdate($obj->sellby); - - } $this->db->free($resql); diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index f4c37a1113c..58230038fcc 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -680,7 +680,6 @@ class FactureFournisseur extends CommonInvoice $this->error=$this->db->lasterror(); return -3; } - } else { @@ -3152,7 +3151,6 @@ class SupplierInvoiceLine extends CommonObjectLine $this->db->commit(); return $this->id; - } else { diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php index fcf7332dbd0..a366faa0400 100644 --- a/htdocs/fourn/class/paiementfourn.class.php +++ b/htdocs/fourn/class/paiementfourn.class.php @@ -262,7 +262,6 @@ class PaiementFourn extends Paiement $this->error=$this->db->lasterror(); $error++; } - } else { diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php index 134856112d4..70fcaf004fb 100644 --- a/htdocs/fourn/commande/card.php +++ b/htdocs/fourn/commande/card.php @@ -221,7 +221,6 @@ if (empty($reshook)) //$newstatus=3; // Submited // TODO If there is at least one reception, we can set to Received->Received partially $newstatus=4; // Received partially - } else if ($object->statut == 6) $newstatus=2; // Canceled->Approved else if ($object->statut == 7) $newstatus=3; // Canceled->Process running @@ -700,7 +699,6 @@ if (empty($reshook)) dol_print_error($db,$object->error); exit; } - } // Remove a product line @@ -1443,7 +1441,6 @@ if ($action=='create') // Object source contacts list $srccontactslist = $objectsrc->liste_contact(- 1, 'external', 1); - } else { @@ -1700,7 +1697,6 @@ elseif (! empty($object->id)) if ($action == 'delete') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteOrder'), $langs->trans('ConfirmDeleteOrder'), 'confirm_delete', '', 0, 2); - } // Clone confirmation @@ -1712,7 +1708,6 @@ elseif (! empty($object->id)) ); // Paiement incomplet. On demande si motif = escompte ou autre $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id,$langs->trans('CloneOrder'),$langs->trans('ConfirmCloneOrder',$object->ref),'confirm_clone',$formquestion,'yes',1); - } // Confirmation de la validation @@ -1791,14 +1786,12 @@ elseif (! empty($object->id)) if ($action == 'refuse') { $formconfirm = $form->formconfirm($_SERVER['PHP_SELF']."?id=$object->id",$langs->trans("DenyingThisOrder"),$langs->trans("ConfirmDenyingThisOrder",$object->ref),"confirm_refuse", '', 0, 1); - } // Confirmation de l'annulation if ($action == 'cancel') { $formconfirm = $form->formconfirm($_SERVER['PHP_SELF']."?id=$object->id",$langs->trans("Cancel"),$langs->trans("ConfirmCancelThisOrder",$object->ref),"confirm_cancel", '', 0, 1); - } // Confirmation de l'envoi de la commande @@ -1806,7 +1799,6 @@ elseif (! empty($object->id)) { $date_com = dol_mktime(GETPOST('rehour'),GETPOST('remin'),GETPOST('resec'),GETPOST("remonth"),GETPOST("reday"),GETPOST("reyear")); $formconfirm = $form->formconfirm($_SERVER['PHP_SELF']."?id=".$object->id."&datecommande=".$date_com."&methode=".$_POST["methodecommande"]."&comment=".urlencode($_POST["comment"]), $langs->trans("MakeOrder"),$langs->trans("ConfirmMakeOrder",dol_print_date($date_com,'day')),"confirm_commande",'',0,2); - } // Confirmation to delete line @@ -2449,7 +2441,6 @@ elseif (! empty($object->id)) { print ''.$langs->trans("Delete").''; } - } print ""; @@ -2724,7 +2715,6 @@ elseif (! empty($object->id)) } } } - } elseif ($user_status_code == "PERMISSION_DENIED") { diff --git a/htdocs/fourn/commande/contact.php b/htdocs/fourn/commande/contact.php index 85739bdb6ef..c69c92ead29 100644 --- a/htdocs/fourn/commande/contact.php +++ b/htdocs/fourn/commande/contact.php @@ -192,7 +192,6 @@ if ($id > 0 || ! empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } else { diff --git a/htdocs/fourn/commande/document.php b/htdocs/fourn/commande/document.php index 8aa4da9c307..eb299d6a94d 100644 --- a/htdocs/fourn/commande/document.php +++ b/htdocs/fourn/commande/document.php @@ -175,7 +175,6 @@ if ($object->id > 0) $permtoedit = $user->rights->fournisseur->commande->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index 06857526731..7158d7b2c0e 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -263,7 +263,6 @@ if (empty($reshook)) $res = $object->create($user); if($res > 0) $nb_bills_created++; - } if ($object->id > 0) diff --git a/htdocs/fourn/commande/orderstoinvoice.php b/htdocs/fourn/commande/orderstoinvoice.php index 9b9743f201f..5456627384e 100644 --- a/htdocs/fourn/commande/orderstoinvoice.php +++ b/htdocs/fourn/commande/orderstoinvoice.php @@ -261,7 +261,6 @@ if (($action == 'create' || $action == 'add') && ! $error) { $error++; break; } - } } @@ -270,7 +269,6 @@ if (($action == 'create' || $action == 'add') && ! $error) { header('Location: ' . DOL_URL_ROOT . '/fourn/facture/card.php?facid=' . $id); exit(); } - } else { $db->rollback(); $action = 'create'; diff --git a/htdocs/fourn/contact.php b/htdocs/fourn/contact.php index a6adb0bad27..3225ce63714 100644 --- a/htdocs/fourn/contact.php +++ b/htdocs/fourn/contact.php @@ -123,7 +123,6 @@ if ($result) } print ""; $db->free($result); - } else { diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index af7f21f3628..9df540da197 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -525,7 +525,6 @@ if (empty($reshook)) { $error++; } - } if ($object->type == FactureFournisseur::TYPE_CREDIT_NOTE || $object->type == FactureFournisseur::TYPE_DEPOSIT) { @@ -543,7 +542,6 @@ if (empty($reshook)) break; } } - } if (empty($error)) @@ -757,7 +755,6 @@ if (empty($reshook)) $object->update_price(1); } - } if(GETPOST('invoiceAvoirWithPaymentRestAmount', 'int')==1 && $id>0) @@ -1669,7 +1666,6 @@ if ($action == 'create') // Replicate extrafields $objectsrc->fetch_optionals($originid); $object->array_options = $objectsrc->array_options; - } } else @@ -2257,7 +2253,6 @@ else } $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ValidateBill'), $text, 'confirm_valid', $formquestion, 1, 1); - } // Confirmation edit (back to draft) @@ -2293,27 +2288,23 @@ else ); } $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('UnvalidateBill'), $langs->trans('ConfirmUnvalidateBill', $object->ref), 'confirm_edit', $formquestion, 1, 1); - } // Confirmation set paid if ($action == 'paid') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ClassifyPaid'), $langs->trans('ConfirmClassifyPaidBill', $object->ref), 'confirm_paid', '', 0, 1); - } // Confirmation de la suppression de la facture fournisseur if ($action == 'delete') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteBill'), $langs->trans('ConfirmDeleteBill'), 'confirm_delete', '', 0, 1); - } if ($action == 'deletepaiement') { $payment_id = GETPOST('paiement_id'); $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&paiement_id='.$payment_id, $langs->trans('DeletePayment'), $langs->trans('ConfirmDeletePayment'), 'confirm_delete_paiement', '', 0, 1); - } // Confirmation to delete line diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php index cb17be828ca..58e5630c0d6 100644 --- a/htdocs/fourn/facture/contact.php +++ b/htdocs/fourn/facture/contact.php @@ -266,7 +266,6 @@ if ($id > 0 || ! empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } else { diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php index 4239331d0a6..d38a7992bd8 100644 --- a/htdocs/fourn/facture/document.php +++ b/htdocs/fourn/facture/document.php @@ -157,7 +157,6 @@ if ($object->id > 0) if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&urlfile='.urlencode($_GET["urlfile"]), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile', '', 0, 1); - } print ''; diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 2e14a5187e4..4582f403b02 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -294,7 +294,6 @@ if ($user->rights->fournisseur->facture->lire) { dol_print_error($db); } - } // End of page diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index 3fa525415bb..e1bd120b0b4 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -1132,7 +1132,6 @@ if ($resql) else print ''; } print ''; - } } diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php index 22b3e307ab3..9cc5fb27b84 100644 --- a/htdocs/fourn/paiement/card.php +++ b/htdocs/fourn/paiement/card.php @@ -166,7 +166,6 @@ if ($result > 0) if ($action == 'delete') { print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete'); - } /* @@ -175,7 +174,6 @@ if ($result > 0) if ($action == 'valide') { print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide'); - } $linkback = '' . $langs->trans("BackToList") . ''; @@ -345,7 +343,6 @@ if ($result > 0) || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->fournisseur->supplier_invoice_advance->validate))) { print ''.$langs->trans('Valid').''; - } } } diff --git a/htdocs/ftp/index.php b/htdocs/ftp/index.php index 7c9527f3a9a..64b9fb0a8ea 100644 --- a/htdocs/ftp/index.php +++ b/htdocs/ftp/index.php @@ -235,7 +235,6 @@ if ($_POST["const"] && $_POST["delete"] && $_POST["delete"] == $langs->trans("De $action=''; } } - } else { @@ -339,7 +338,6 @@ if ($action == 'download') { setEventMessages($langs->transnoentitiesnoconv('FailedToGetFile',$remotefile), null, 'errors'); } - } else { @@ -408,7 +406,6 @@ else if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"].'?numero_ftp='.$numero_ftp.'§ion='.urlencode($_REQUEST["section"]).'&file='.urlencode($_GET["file"]), $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile','','',1); - } // Confirmation de la suppression d'une ligne categorie @@ -610,7 +607,6 @@ else $i++; $nbofentries++; } - } print "
"; @@ -808,7 +804,6 @@ function ftp_isdir($connect_id,$dir) { ftp_cdup($connect_id); return 1; - } else { diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index be365c52351..db5189ceac2 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -741,7 +741,6 @@ if ($action == 'confirm_cancel' && GETPOST('confirm') == 'yes') } } } - } @@ -1342,23 +1341,19 @@ else print ''; } - } else { print '
'; print $langs->trans('ErrorUserViewCP'); print '

'; print '
'; } - } else { print '
'; print $langs->trans('ErrorIDFicheCP'); print '

'; print '
'; } - } - } // End of page diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index a888a4919a6..9b42655fe5f 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -1468,7 +1468,6 @@ class Holiday extends CommonObject $this->error="Error ".$this->db->lasterror(); return -1; } - } else { @@ -1510,7 +1509,6 @@ class Holiday extends CommonObject return -1; } } - } else { // Si faux donc return array diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php index fcd5cc9d8b0..d4abba41c02 100644 --- a/htdocs/holiday/list.php +++ b/htdocs/holiday/list.php @@ -605,7 +605,6 @@ elseif (! empty($holiday->holiday) && !empty($mysoc->country_id)) print ''; print ''."\n"; - } } diff --git a/htdocs/holiday/month_report.php b/htdocs/holiday/month_report.php index e9b98deb1f9..53fab6a825f 100644 --- a/htdocs/holiday/month_report.php +++ b/htdocs/holiday/month_report.php @@ -189,7 +189,6 @@ else print '' . dol_escape_htmltag(dolGetFirstLineOfText($obj->description)) . ''; print ''; } - } print ''; print ''; diff --git a/htdocs/holiday/view_log.php b/htdocs/holiday/view_log.php index c9cc2e6c16f..124d26baf92 100644 --- a/htdocs/holiday/view_log.php +++ b/htdocs/holiday/view_log.php @@ -124,7 +124,6 @@ foreach($cp->logs as $logs_CP) print ''.price2num($logs_CP['prev_solde'],5).' '.$langs->trans('days').''; print ''.price2num($logs_CP['new_solde'],5).' '.$langs->trans('days').''; print ''."\n"; - } if ($log_holiday == '2') diff --git a/htdocs/hrm/admin/admin_establishment.php b/htdocs/hrm/admin/admin_establishment.php index f7ebef5e623..5b15c1fb8bc 100644 --- a/htdocs/hrm/admin/admin_establishment.php +++ b/htdocs/hrm/admin/admin_establishment.php @@ -124,7 +124,6 @@ if ($result) $i++; } - } else { diff --git a/htdocs/hrm/establishment/card.php b/htdocs/hrm/establishment/card.php index 56a6c20176a..d7f591da027 100644 --- a/htdocs/hrm/establishment/card.php +++ b/htdocs/hrm/establishment/card.php @@ -334,7 +334,6 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$id,$langs->trans("DeleteEstablishment"),$langs->trans("ConfirmDeleteEstablishment"),"confirm_delete"); - } diff --git a/htdocs/hrm/index.php b/htdocs/hrm/index.php index 6d1e16433cf..45d10d16d8b 100644 --- a/htdocs/hrm/index.php +++ b/htdocs/hrm/index.php @@ -236,7 +236,6 @@ if (! empty($conf->holiday->enabled) && $user->rights->holiday->read) $i++; } - } else { @@ -309,7 +308,6 @@ if (! empty($conf->deplacement->enabled) && $user->rights->deplacement->lire) $i++; } - } else { @@ -382,7 +380,6 @@ if (! empty($conf->expensereport->enabled) && $user->rights->expensereport->lire $i++; } - } else { diff --git a/htdocs/imports/import.php b/htdocs/imports/import.php index a9c1fc2317a..54aaa8a60a5 100644 --- a/htdocs/imports/import.php +++ b/htdocs/imports/import.php @@ -488,7 +488,6 @@ if ($step == 3 && $datatoimport) if ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"].'?urlfile='.urlencode(GETPOST('urlfile')).'&step=3'.$param, $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile', '', 0, 1); - } print '
'; @@ -662,7 +661,6 @@ if ($step == 4 && $datatoimport) header("Location: ".$_SERVER["PHP_SELF"].'?step=3'.$param.'&filetoimport='.urlencode($relativepath)); exit; } - } if (GETPOST('update')) { @@ -1162,7 +1160,6 @@ if ($step == 4 && $datatoimport) print ''; print ''; } - } @@ -1609,7 +1606,6 @@ if ($step == 5 && $datatoimport) print ''.$langs->trans("RunImportFile").''; } print ''; - } print ''; diff --git a/htdocs/install/check.php b/htdocs/install/check.php index f220978e4db..c2eb06bffb7 100644 --- a/htdocs/install/check.php +++ b/htdocs/install/check.php @@ -568,9 +568,7 @@ else print ''."\n"; print ''; } - } - } print ''; print ' '.$langs->trans("Link").''; - } print ''; diff --git a/htdocs/printing/admin/printing.php b/htdocs/printing/admin/printing.php index 529ad7e33ec..c4b2bb12111 100644 --- a/htdocs/printing/admin/printing.php +++ b/htdocs/printing/admin/printing.php @@ -313,7 +313,6 @@ if ($mode == 'test' && $user->admin) else { print $langs->trans('PleaseConfigureDriverfromList'); } - } else { print $langs->trans('PleaseSelectaDriverfromList'); } @@ -357,7 +356,6 @@ if ($mode == 'userconf' && $user->admin) print ''; dol_fiche_end(); - } // End of page diff --git a/htdocs/product/admin/price_rules.php b/htdocs/product/admin/price_rules.php index e0faaaf83e5..730a8fd31f2 100644 --- a/htdocs/product/admin/price_rules.php +++ b/htdocs/product/admin/price_rules.php @@ -92,7 +92,6 @@ if ($_POST) { setEventMessages($langs->trans('ErrorSavingChanges'), null, 'errors'); } } - } setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index 2cdb5c1ca52..45f938431c3 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -127,7 +127,6 @@ if ($action == 'other') $res = dolibarr_set_const($db, $rule, 0, 'chaine', 0, '', $conf->entity); } } - } $value = GETPOST('PRODUIT_SOUSPRODUITS','alpha'); diff --git a/htdocs/product/admin/product_tools.php b/htdocs/product/admin/product_tools.php index a153e9f1ab6..b0c62c81d4f 100644 --- a/htdocs/product/admin/product_tools.php +++ b/htdocs/product/admin/product_tools.php @@ -267,7 +267,6 @@ if ($action == 'convert') { setEventMessages($langs->trans("Error"), null, 'errors'); } - } } diff --git a/htdocs/product/card.php b/htdocs/product/card.php index d51a4fa494c..31d2d7509c9 100644 --- a/htdocs/product/card.php +++ b/htdocs/product/card.php @@ -477,7 +477,6 @@ if (empty($reshook)) $action = 'edit'; } } - } } @@ -1943,7 +1942,6 @@ else dol_fiche_end(); } - } else if ($action != 'create') { diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 44222dc3c9e..805d5d214a2 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2387,7 +2387,6 @@ class Product extends CommonObject $this->stats_commande['nb']+=$pFather->stats_commande['nb']; $this->stats_commande['rows']+=$pFather->stats_commande['rows']; $this->stats_commande['qty']+=$pFather->stats_commande['qty'] * $qtyCoef; - } } } @@ -3552,7 +3551,6 @@ class Product extends CommonObject dol_print_error($this->db); return -1; } - } else { return false; } @@ -4856,7 +4854,6 @@ class Product extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/product/class/propalmergepdfproduct.class.php b/htdocs/product/class/propalmergepdfproduct.class.php index f2aabb86876..b5d2d639ae4 100644 --- a/htdocs/product/class/propalmergepdfproduct.class.php +++ b/htdocs/product/class/propalmergepdfproduct.class.php @@ -207,8 +207,6 @@ class Propalmergepdfproduct extends CommonObject $this->datec = $this->db->jdate($obj->datec); $this->tms = $this->db->jdate($obj->tms); $this->import_key = $obj->import_key; - - } $this->db->free($resql); @@ -283,11 +281,7 @@ class Propalmergepdfproduct extends CommonObject }else { $this->lines[$obj->file_name]=$line; } - - } - - } $this->db->free($resql); diff --git a/htdocs/product/composition/card.php b/htdocs/product/composition/card.php index 5f91a0e369e..d2ef4210e9c 100644 --- a/htdocs/product/composition/card.php +++ b/htdocs/product/composition/card.php @@ -407,7 +407,6 @@ if ($id > 0 || ! empty($ref)) { print ''; print ''; - } else{ print ''.$nb_of_subproduct.''; @@ -634,7 +633,6 @@ if ($id > 0 || ! empty($ref)) } $i++; } - } else { diff --git a/htdocs/product/document.php b/htdocs/product/document.php index 0b5b7fa6f16..d0bc7b3f9be 100644 --- a/htdocs/product/document.php +++ b/htdocs/product/document.php @@ -113,7 +113,6 @@ if (empty($reshook)) // Action submit/delete file/link include_once DOL_DOCUMENT_ROOT.'/core/actions_linkedfiles.inc.php'; - } if ($action=='filemerge') diff --git a/htdocs/product/index.php b/htdocs/product/index.php index 71cf2636661..2089193e208 100644 --- a/htdocs/product/index.php +++ b/htdocs/product/index.php @@ -152,7 +152,6 @@ if (! empty($conf->product->enabled)) $statProducts.= ''; $statProducts.= ''.$langs->trans("ProductsOnSellAndOnBuy").''.round($prodser[0][3]).''; $statProducts.= ""; - } if (! empty($conf->service->enabled)) { @@ -168,7 +167,6 @@ if (! empty($conf->service->enabled)) $statServices.= ''; $statServices.= ''.$langs->trans("ServicesOnSellAndOnBuy").''.round($prodser[1][3]).''; $statServices.= ""; - } $total=0; if ($type == '0') diff --git a/htdocs/product/inventory/class/inventory.class.php b/htdocs/product/inventory/class/inventory.class.php index 39df52a8208..1bc98d32d93 100644 --- a/htdocs/product/inventory/class/inventory.class.php +++ b/htdocs/product/inventory/class/inventory.class.php @@ -477,7 +477,6 @@ class Inventory extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/product/inventory/tpl/inventory.tpl.php b/htdocs/product/inventory/tpl/inventory.tpl.php index 1946e63918d..30dc02a17d6 100644 --- a/htdocs/product/inventory/tpl/inventory.tpl.php +++ b/htdocs/product/inventory/tpl/inventory.tpl.php @@ -165,7 +165,6 @@ if (empty($conf) || ! is_object($conf)) global->PRODUIT_MULTIPRICES) || ! empty($conf->global->PRODUI else print vatrate($object->tva_tx . ($object->tva_npr ? '*' : ''), true);*/ print ''; } - } else { @@ -1410,7 +1409,6 @@ if ($action == 'edit_price' && $object->getRights()->creer) print '   '; print ''; print ''; - } } diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 27ac0c4d522..662873b7cf8 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -317,7 +317,6 @@ if ($resql) foreach($warehouses_list as &$wh) { print_liste_field_titre($wh['label'], '', '','','','align="right"'); } - } } if ($virtualdiffersfromphysical) print_liste_field_titre("VirtualStock",$_SERVER["PHP_SELF"], "",$param,"",'align="right"',$sortfield,$sortorder); @@ -395,7 +394,6 @@ if ($resql) print ''; $db->free($resql); - } else { diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index 518a19d8407..24aa1864a02 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -421,7 +421,6 @@ if ($resql) print ''; $db->free($resql); - } else { diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index b24a37c4fe2..25e22faabcc 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -332,7 +332,6 @@ else print ''.$langs->trans("ParentWarehouse").''; print $e->getNomUrl(3); print ''; - } // Description @@ -567,7 +566,6 @@ else print ' '; print ' '; print ''; - } else { @@ -658,7 +656,6 @@ else print ''; print ''; - } } } diff --git a/htdocs/product/stock/class/entrepot.class.php b/htdocs/product/stock/class/entrepot.class.php index b2a78a9cd3e..3f298aed85d 100644 --- a/htdocs/product/stock/class/entrepot.class.php +++ b/htdocs/product/stock/class/entrepot.class.php @@ -416,11 +416,9 @@ class Entrepot extends CommonObject $this->date_creation = $this->db->jdate($obj->datec); $this->date_modification = $this->db->jdate($obj->datem); - } $this->db->free($result); - } else { diff --git a/htdocs/product/stock/class/mouvementstock.class.php b/htdocs/product/stock/class/mouvementstock.class.php index 395c192311f..7991477e146 100644 --- a/htdocs/product/stock/class/mouvementstock.class.php +++ b/htdocs/product/stock/class/mouvementstock.class.php @@ -469,7 +469,6 @@ class MouvementStock extends CommonObject { $fk_product_stock = $this->db->last_insert_id(MAIN_DB_PREFIX."product_stock"); } - } // Update detail stock for batch product diff --git a/htdocs/product/stock/class/productstockentrepot.class.php b/htdocs/product/stock/class/productstockentrepot.class.php index 740afcb5f04..aaae328de48 100644 --- a/htdocs/product/stock/class/productstockentrepot.class.php +++ b/htdocs/product/stock/class/productstockentrepot.class.php @@ -202,8 +202,6 @@ class ProductStockEntrepot extends CommonObject $this->seuil_stock_alerte = $obj->seuil_stock_alerte; $this->desiredstock = $obj->desiredstock; $this->import_key = $obj->import_key; - - } // Retreive all extrafield diff --git a/htdocs/product/stock/index.php b/htdocs/product/stock/index.php index 20054d8896b..c85f40ef9c2 100644 --- a/htdocs/product/stock/index.php +++ b/htdocs/product/stock/index.php @@ -97,7 +97,6 @@ if ($result) $i++; } $db->free($result); - } print ""; } diff --git a/htdocs/product/stock/product.php b/htdocs/product/stock/product.php index 07b4f5dcac3..beb3135d9f4 100644 --- a/htdocs/product/stock/product.php +++ b/htdocs/product/stock/product.php @@ -88,7 +88,6 @@ $extralabels=$extrafields->fetch_name_optionals_label($object->table_element); if ($id > 0 || ! empty($ref)) { $result = $object->fetch($id, $ref); - } if(empty($id) && !empty($object->id)) $id = $object->id; @@ -144,7 +143,6 @@ if ($action == 'addlimitstockwarehouse' && !empty($user->rights->produit->creer) $pse->seuil_stock_alerte = $seuil_stock_alerte; $pse->desiredstock = $desiredstock; if($pse->update($user) > 0) setEventMessages($langs->trans('ProductStockWarehouseUpdated'), null, 'mesgs'); - } else { // Create @@ -153,14 +151,11 @@ if ($action == 'addlimitstockwarehouse' && !empty($user->rights->produit->creer) $pse->seuil_stock_alerte = GETPOST('seuil_stock_alerte'); $pse->desiredstock = GETPOST('desiredstock'); if($pse->create($user) > 0) setEventMessages($langs->trans('ProductStockWarehouseCreated'), null, 'mesgs'); - } - } header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } if($action == 'delete_productstockwarehouse' && !empty($user->rights->produit->creer)) @@ -171,7 +166,6 @@ if($action == 'delete_productstockwarehouse' && !empty($user->rights->produit->c if($pse->delete($user) > 0) setEventMessages($langs->trans('ProductStockWarehouseDeleted'), null, 'mesgs'); $action = ''; - } // Set stock limit @@ -799,7 +793,6 @@ if (empty($reshook)) print ''; } - } @@ -927,7 +920,6 @@ if (! $variants) { } } $i++; - } } else dol_print_error($db); diff --git a/htdocs/product/stock/productlot_card.php b/htdocs/product/stock/productlot_card.php index 5ee52ce337a..f72a28dbc90 100644 --- a/htdocs/product/stock/productlot_card.php +++ b/htdocs/product/stock/productlot_card.php @@ -256,7 +256,6 @@ if (empty($reshook)) $upload_dir = $conf->productbatch->multidir_output[$conf->entity]; $permissioncreate = $usercancreate; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; - } @@ -414,7 +413,6 @@ if (empty($action)) $somethingshown=$formfile->numoffiles; print ''; - } // End of page diff --git a/htdocs/product/stock/productlot_document.php b/htdocs/product/stock/productlot_document.php index 6a3925c4a55..1ce4f9ba224 100644 --- a/htdocs/product/stock/productlot_document.php +++ b/htdocs/product/stock/productlot_document.php @@ -95,7 +95,6 @@ if (empty($reshook)) // Action submit/delete file/link include_once DOL_DOCUMENT_ROOT.'/core/actions_linkedfiles.inc.php'; - } $permtoedit = $user->rights->produit->creer; @@ -156,8 +155,6 @@ if ($object->id) $permission = ( $user->rights->produit->creer ); $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - - } else { diff --git a/htdocs/product/stock/valo.php b/htdocs/product/stock/valo.php index 4e3a245060c..09524c5066a 100644 --- a/htdocs/product/stock/valo.php +++ b/htdocs/product/stock/valo.php @@ -128,7 +128,6 @@ if ($result) print ''.price(price2num($totalsell,'MT'),1,$langs,0,0,-1,$conf->currency).''; print ' '; print "\n"; - } $db->free($result); @@ -150,7 +149,6 @@ if ($result) $url=DOL_URL_ROOT.'/viewimage.php?modulepart=graph_stock&file='.$file; print '
'; } - } else { diff --git a/htdocs/product/traduction.php b/htdocs/product/traduction.php index 4c344786553..9f18f644e4c 100644 --- a/htdocs/product/traduction.php +++ b/htdocs/product/traduction.php @@ -276,7 +276,6 @@ if ($action == 'edit') print ''; print ''; - } else if ($action != 'add') { diff --git a/htdocs/projet/activity/index.php b/htdocs/projet/activity/index.php index 2ed1bb1498f..e43700287cb 100644 --- a/htdocs/projet/activity/index.php +++ b/htdocs/projet/activity/index.php @@ -325,7 +325,6 @@ if (! empty($conf->global->PROJECT_TASK_TIME_MONTH)) print ''; print ''.convertSecondToTime($row->nb, 'allhourmin').''; print "\n"; - } $db->free($resql); } @@ -376,7 +375,6 @@ if (! empty($conf->global->PROJECT_TASK_TIME_YEAR)) print ''; print ''.convertSecondToTime($row->nb, 'allhourmin').''; print "\n"; - } $db->free($resql); } @@ -570,7 +568,6 @@ if (empty($conf->global->PROJECT_HIDE_TASKS) && ! empty($conf->global->PROJECT_S { dol_print_error($db); } - } diff --git a/htdocs/projet/card.php b/htdocs/projet/card.php index e2632fe244e..7aaa6805189 100644 --- a/htdocs/projet/card.php +++ b/htdocs/projet/card.php @@ -333,7 +333,6 @@ if (empty($reshook)) if (GETPOST('socid','int') > 0) $object->fetch_thirdparty(GETPOST('socid','int')); else unset($object->thirdparty); } - } // Build doc diff --git a/htdocs/projet/class/api_projects.class.php b/htdocs/projet/class/api_projects.class.php index 6deacab7204..a1f2ce6d26c 100644 --- a/htdocs/projet/class/api_projects.class.php +++ b/htdocs/projet/class/api_projects.class.php @@ -598,7 +598,6 @@ class Projects extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $object[$field] = $data[$field]; - } return $object; } diff --git a/htdocs/projet/class/api_tasks.class.php b/htdocs/projet/class/api_tasks.class.php index 294c0f0faae..050e7313e95 100644 --- a/htdocs/projet/class/api_tasks.class.php +++ b/htdocs/projet/class/api_tasks.class.php @@ -610,7 +610,6 @@ class Tasks extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $object[$field] = $data[$field]; - } return $object; } diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index eaf1ad6ea67..ab47079c9d0 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -1501,7 +1501,6 @@ class Project extends CommonObject $tab_conv_child_parent[$tasktoclone->id] = $new_task_id; } } - } //Parse all clone node to be sure to update new parent @@ -1959,7 +1958,6 @@ class Project extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/projet/class/projectstats.class.php b/htdocs/projet/class/projectstats.class.php index 472fb26eaf0..9766935d4d0 100644 --- a/htdocs/projet/class/projectstats.class.php +++ b/htdocs/projet/class/projectstats.class.php @@ -498,7 +498,6 @@ class ProjectStats extends Stats } else { $res[$key]=array($total_row[0],0); } - } // var_dump($res);print '
'; return $res; diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index a4ef7965851..c5a7a334eb0 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -1568,7 +1568,6 @@ class Task extends CommonObject { $clone_task->date_end = $now + $clone_task->date_end - $orign_project_dt_start; } - } if (!$clone_prog) diff --git a/htdocs/projet/document.php b/htdocs/projet/document.php index e585acd7d85..af9f7c2d8fc 100644 --- a/htdocs/projet/document.php +++ b/htdocs/projet/document.php @@ -152,7 +152,6 @@ if ($object->id > 0) $permission = ($userWrite > 0); $permtoedit = ($userWrite > 0); include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 489c5d04be4..2c64826853c 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -489,7 +489,6 @@ $resHook = $hookmanager->executeHooks('completeListOfReferent', $parameters, $ob if(!empty($hookmanager->resArray)) { $listofreferent = array_merge($listofreferent, $hookmanager->resArray); - } if ($action=="addelement") diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index a93fac0edbd..5a13b16560d 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -888,7 +888,6 @@ while ($i < min($num,$limit)) if (! $i) $totalarray['nbfield']++; print "\n"; - } $i++; diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index bffe5f4a373..d9fcc8b642a 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -524,7 +524,6 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third print ''; print ''; - } else if ($id > 0 || ! empty($ref)) { diff --git a/htdocs/projet/tasks/comment.php b/htdocs/projet/tasks/comment.php index 19ba461fbe4..ba54b35a59e 100644 --- a/htdocs/projet/tasks/comment.php +++ b/htdocs/projet/tasks/comment.php @@ -275,7 +275,6 @@ if ($id > 0 || ! empty($ref)) // Include comment tpl view include DOL_DOCUMENT_ROOT . '/core/tpl/bloc_comment.tpl.php'; - } } diff --git a/htdocs/projet/tasks/contact.php b/htdocs/projet/tasks/contact.php index 3272c43ad10..d86c8b469ae 100644 --- a/htdocs/projet/tasks/contact.php +++ b/htdocs/projet/tasks/contact.php @@ -518,7 +518,6 @@ if ($id > 0 || ! empty($ref)) } } print ""; - } else { diff --git a/htdocs/public/cron/cron_run_jobs.php b/htdocs/public/cron/cron_run_jobs.php index 320a8e3895a..df207e87d85 100644 --- a/htdocs/public/cron/cron_run_jobs.php +++ b/htdocs/public/cron/cron_run_jobs.php @@ -169,7 +169,6 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs)>0)) dol_syslog("cron_run_jobs.php::reprogram_jobs Error".$cronjob->error, LOG_ERR); exit; } - } } echo "Result: ".($nbofjobs)." jobs - ".($nbofjobslaunchedok+$nbofjobslaunchedko)." launched = ".$nbofjobslaunchedok." OK + ".$nbofjobslaunchedko." KO"; diff --git a/htdocs/public/donations/donateurs_code.php b/htdocs/public/donations/donateurs_code.php index 9f03f9e293e..86db4b089aa 100644 --- a/htdocs/public/donations/donateurs_code.php +++ b/htdocs/public/donations/donateurs_code.php @@ -99,7 +99,6 @@ if ($resql) $i++; } print ""; - } else { diff --git a/htdocs/public/emailing/mailing-read.php b/htdocs/public/emailing/mailing-read.php index 23511974137..0b79f656450 100644 --- a/htdocs/public/emailing/mailing-read.php +++ b/htdocs/public/emailing/mailing-read.php @@ -86,7 +86,6 @@ if (! empty($tag)) dol_syslog("public/emailing/mailing-read.php : Mail read contact : ".$sql, LOG_DEBUG); $resql=$db->query($sql); - } $db->close(); diff --git a/htdocs/public/members/public_card.php b/htdocs/public/members/public_card.php index eda1aaf2c68..bc8fd0cde17 100644 --- a/htdocs/public/members/public_card.php +++ b/htdocs/public/members/public_card.php @@ -113,7 +113,6 @@ if ($id > 0) print ''; } - } diff --git a/htdocs/public/onlinesign/newonlinesign.php b/htdocs/public/onlinesign/newonlinesign.php index e8db916ad91..277cd1ada78 100644 --- a/htdocs/public/onlinesign/newonlinesign.php +++ b/htdocs/public/onlinesign/newonlinesign.php @@ -120,7 +120,6 @@ $creditor = $mysoc->name; if ($action == 'dosign') { // TODO - } @@ -256,8 +255,6 @@ if ($source == 'proposal') print ''; print ''; print ''."\n"; - - } diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 47cdc8bb31e..0975186eb03 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -620,7 +620,6 @@ if ($action == 'charge' && ! empty($conf->stripe->enabled)) header("Location: ".$urlok); exit; } - } diff --git a/htdocs/public/stripe/ipn.php b/htdocs/public/stripe/ipn.php index e1b160541b2..45fd6489f92 100644 --- a/htdocs/public/stripe/ipn.php +++ b/htdocs/public/stripe/ipn.php @@ -234,28 +234,23 @@ elseif ($event->type == 'payout.paid') { elseif ($event->type == 'charge.succeeded') { //TODO: create fees - } elseif ($event->type == 'customer.source.created') { //TODO: save customer's source - } elseif ($event->type == 'customer.source.updated') { //TODO: update customer's source - } elseif ($event->type == 'customer.source.delete') { //TODO: delete customer's source - } elseif ($event->type == 'charge.failed') { $subject = 'Your payment has been received: '.$event->data->object->id.''; $headers = 'From: "'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'" <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; - } elseif (($event->type == 'source.chargeable') && ($event->data->object->type == 'three_d_secure') && ($event->data->object->three_d_secure->authenticated==true)) { diff --git a/htdocs/resource/card.php b/htdocs/resource/card.php index 5ba98ae9f69..49cad87e990 100644 --- a/htdocs/resource/card.php +++ b/htdocs/resource/card.php @@ -171,7 +171,6 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } else { diff --git a/htdocs/resource/class/dolresource.class.php b/htdocs/resource/class/dolresource.class.php index c6e25c4d837..ad3355e3972 100644 --- a/htdocs/resource/class/dolresource.class.php +++ b/htdocs/resource/class/dolresource.class.php @@ -384,7 +384,6 @@ class Dolresource extends CommonObject if($obj->element_id && $obj->element_type) { $this->objelement = fetchObjectByElement($obj->element_id,$obj->element_type); } - } $this->db->free($resql); @@ -646,7 +645,6 @@ class Dolresource extends CommonObject if($obj->element_id && $obj->element_type) $line->objelement = fetchObjectByElement($obj->element_id,$obj->element_type); $this->lines[] = $line; - } $this->db->free($resql); } diff --git a/htdocs/resource/document.php b/htdocs/resource/document.php index 6a32ba9f645..85ec5b96c79 100644 --- a/htdocs/resource/document.php +++ b/htdocs/resource/document.php @@ -135,7 +135,6 @@ if ($object->id) $permission = $user->rights->resource->write; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; - } else { diff --git a/htdocs/resource/element_resource.php b/htdocs/resource/element_resource.php index adbd8eec87f..a83e37bc0b4 100644 --- a/htdocs/resource/element_resource.php +++ b/htdocs/resource/element_resource.php @@ -462,7 +462,6 @@ else if(file_exists(dol_buildpath($path.'/core/tpl/resource_'.$element_prop['element'].'_view.tpl.php'))) { $res=@include dol_buildpath($path.'/core/tpl/resource_'.$element_prop['element'].'_view.tpl.php'); - } else { diff --git a/htdocs/societe/admin/societe.php b/htdocs/societe/admin/societe.php index 49a9538e225..0166b6a233a 100644 --- a/htdocs/societe/admin/societe.php +++ b/htdocs/societe/admin/societe.php @@ -788,7 +788,6 @@ if (!empty($conf->global->SOCIETE_ADD_REF_IN_LIST)) { print ''; print img_picto($langs->trans("Activated"),'switch_on'); - } else { @@ -806,7 +805,6 @@ if (!empty($conf->global->COMPANY_SHOW_ADDRESS_SELECTLIST)) { print ''; print img_picto($langs->trans("Activated"),'switch_on'); - } else { @@ -826,7 +824,6 @@ if (!empty($conf->global->SOCIETE_ASK_FOR_SHIPPING_METHOD)) { print ''; print img_picto($langs->trans("Activated"),'switch_on'); - } else { @@ -845,7 +842,6 @@ if (!empty($conf->global->SOCIETE_DISABLE_PROSPECTSCUSTOMERS)) { print ''; print img_picto($langs->trans("Activated"),'switch_on'); - } else { diff --git a/htdocs/societe/canvas/actions_card_common.class.php b/htdocs/societe/canvas/actions_card_common.class.php index 2577f5bed5d..92d009db604 100644 --- a/htdocs/societe/canvas/actions_card_common.class.php +++ b/htdocs/societe/canvas/actions_card_common.class.php @@ -258,7 +258,6 @@ abstract class ActionsCardCommon $this->tpl['localtax'].= ''; } } - } else { diff --git a/htdocs/societe/canvas/company/actions_card_company.class.php b/htdocs/societe/canvas/company/actions_card_company.class.php index 3e18b7944f2..09172f1ea5a 100644 --- a/htdocs/societe/canvas/company/actions_card_company.class.php +++ b/htdocs/societe/canvas/company/actions_card_company.class.php @@ -181,7 +181,6 @@ class ActionsCardCompany extends ActionsCardCommon { $this->tpl['tva_intra'] = $s; } - } else { diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 1fbabc01462..e20e37e5cdc 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -371,7 +371,6 @@ if (empty($reshook)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Supplier")), null, 'errors'); $error++; - } if (! $error) @@ -1377,7 +1376,6 @@ else print ''.$langs->transcountry("LocalTax2IsUsed",$mysoc->country_code).''; print $form->selectyesno('localtax2assuj_value',(isset($conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2)?$conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2:0),1); print ''; - } elseif($mysoc->localtax1_assuj=="1") { @@ -1973,7 +1971,6 @@ else print ''; } print ''; - } elseif($mysoc->localtax1_assuj=="1" && $mysoc->localtax2_assuj!="1") { @@ -1986,7 +1983,6 @@ else print ''; } print ''; - } elseif($mysoc->localtax2_assuj=="1" && $mysoc->localtax1_assuj!="1") { @@ -2380,7 +2376,6 @@ else print ''.$object->localtax1_value.''; } print ''; - } } elseif($mysoc->localtax2_assuj=="1" && $mysoc->localtax1_assuj!="1") @@ -2403,7 +2398,6 @@ else print ''.$object->localtax2_value.''; } print ''; - } } } @@ -2729,7 +2723,6 @@ else $trackid = 'thi'.$object->id; include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php'; - } } diff --git a/htdocs/societe/class/address.class.php b/htdocs/societe/class/address.class.php index 63b23d42f9e..4f9915a844c 100644 --- a/htdocs/societe/class/address.class.php +++ b/htdocs/societe/class/address.class.php @@ -138,7 +138,6 @@ class Address $this->db->rollback(); return -2; } - } else { @@ -496,7 +495,6 @@ class Address } $this->db->free($result); - } else { diff --git a/htdocs/societe/class/api_thirdparties.class.php b/htdocs/societe/class/api_thirdparties.class.php index 365073726bc..42d1d616852 100644 --- a/htdocs/societe/class/api_thirdparties.class.php +++ b/htdocs/societe/class/api_thirdparties.class.php @@ -1070,7 +1070,6 @@ class Thirdparties extends DolibarrApi foreach($account as $key => $value) if(in_array($key, $fields)){ $object[$key] = $value; - } $returnAccounts[] = $object; } @@ -1332,7 +1331,6 @@ class Thirdparties extends DolibarrApi foreach($account as $key => $value) if(in_array($key, $fields)){ $object[$key] = $value; - } $returnAccounts[] = $object; } diff --git a/htdocs/societe/class/companybankaccount.class.php b/htdocs/societe/class/companybankaccount.class.php index 3a3b9126b7b..73210ade104 100644 --- a/htdocs/societe/class/companybankaccount.class.php +++ b/htdocs/societe/class/companybankaccount.class.php @@ -184,7 +184,6 @@ class CompanyBankAccount extends Account { return 1; } - } else { diff --git a/htdocs/societe/class/companypaymentmode.class.php b/htdocs/societe/class/companypaymentmode.class.php index 83303a3a41d..73242c9aa32 100644 --- a/htdocs/societe/class/companypaymentmode.class.php +++ b/htdocs/societe/class/companypaymentmode.class.php @@ -561,7 +561,6 @@ class CompanyPaymentMode extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index c91593b079f..758b91aaec9 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -611,7 +611,6 @@ class Societe extends CommonObject $this->db->rollback(); return $result; } - } else { @@ -1001,7 +1000,6 @@ class Societe extends CommonObject $sql .=",localtax1_value =".$this->localtax1_value; } else $sql .=",localtax1_value =0.000"; - } else $sql .=",localtax1_value =0.000"; @@ -1012,7 +1010,6 @@ class Societe extends CommonObject $sql .=",localtax2_value =".$this->localtax2_value; } else $sql .=",localtax2_value =0.000"; - } else $sql .=",localtax2_value =0.000"; @@ -3177,7 +3174,6 @@ class Societe extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/societe/class/societeaccount.class.php b/htdocs/societe/class/societeaccount.class.php index de228c576b5..78f934ecf2f 100644 --- a/htdocs/societe/class/societeaccount.class.php +++ b/htdocs/societe/class/societeaccount.class.php @@ -518,7 +518,6 @@ class SocieteAccount extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/societe/consumption.php b/htdocs/societe/consumption.php index b74b66a1a44..3a3fb8507c9 100644 --- a/htdocs/societe/consumption.php +++ b/htdocs/societe/consumption.php @@ -554,7 +554,6 @@ if ($sql_select) { print (! empty($objp->description) && $objp->description!=$objp->product_label)?'
'.dol_htmlentitiesbr($objp->description):''; } - } else { if (! empty($objp->label) || ! empty($objp->description)) diff --git a/htdocs/societe/price.php b/htdocs/societe/price.php index 0fbc4368a87..a9b280a3f47 100644 --- a/htdocs/societe/price.php +++ b/htdocs/societe/price.php @@ -609,7 +609,6 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { print ""; print ""; - } } diff --git a/htdocs/stripe/charge.php b/htdocs/stripe/charge.php index 0f26bf0e11a..73c1f7b86c8 100644 --- a/htdocs/stripe/charge.php +++ b/htdocs/stripe/charge.php @@ -221,7 +221,6 @@ if (!$rowid) } elseif ($charge->paid=='1'){ print img_picto($langs->trans("".$charge->status.""),'statut4'); - } else { $label="Message: ".$charge->failure_message."
"; $label.="Réseau: ".$charge->outcome->network_status."
"; diff --git a/htdocs/stripe/class/actions_stripe.class.php b/htdocs/stripe/class/actions_stripe.class.php index f3c76be9d35..a74b2d52eef 100644 --- a/htdocs/stripe/class/actions_stripe.class.php +++ b/htdocs/stripe/class/actions_stripe.class.php @@ -109,7 +109,6 @@ class ActionsStripeconnect $this->resprints.= $langs->trans("NoStripe"); } $this->resprints.= ''; - } elseif (is_object($object) && $object->element == 'member'){ $this->resprints.= ''; diff --git a/htdocs/stripe/class/stripe.class.php b/htdocs/stripe/class/stripe.class.php index 0e9c3cbb4a8..d8e7168e5c0 100644 --- a/htdocs/stripe/class/stripe.class.php +++ b/htdocs/stripe/class/stripe.class.php @@ -284,7 +284,6 @@ class Stripe extends CommonObject $this->error = $e->getMessage(); dol_syslog($this->error, LOG_WARNING); } - } elseif ($createifnotlinkedtostripe) { diff --git a/htdocs/stripe/payment.php b/htdocs/stripe/payment.php index fbf9784a6b3..9a7ecfd5470 100644 --- a/htdocs/stripe/payment.php +++ b/htdocs/stripe/payment.php @@ -350,7 +350,6 @@ if (empty($reshook)) $facture->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } if (! $error) diff --git a/htdocs/supplier_proposal/card.php b/htdocs/supplier_proposal/card.php index 2f765c6c75f..248165727cf 100644 --- a/htdocs/supplier_proposal/card.php +++ b/htdocs/supplier_proposal/card.php @@ -1303,7 +1303,6 @@ if ($action == 'create') print ''; } - } else { /* * Show object in view mode diff --git a/htdocs/supplier_proposal/class/api_supplier_proposals.class.php b/htdocs/supplier_proposal/class/api_supplier_proposals.class.php index 3d10c47f6a1..fd490902049 100644 --- a/htdocs/supplier_proposal/class/api_supplier_proposals.class.php +++ b/htdocs/supplier_proposal/class/api_supplier_proposals.class.php @@ -185,7 +185,6 @@ class Supplierproposals extends DolibarrApi if (!isset($data[$field])) throw new RestException(400, "$field field missing"); $propal[$field] = $data[$field]; - } return $propal; } diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index adc2c8643ac..a05d0485aaf 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -1730,7 +1730,6 @@ class SupplierProposal extends CommonObject { $result = $this->updateOrCreatePriceFournisseur($user); } - } if ($statut == 4) { @@ -2138,11 +2137,8 @@ class SupplierProposal extends CommonObject $cluser->fetch($obj->fk_user_cloture); $this->user_cloture = $cluser; } - - } $this->db->free($result); - } else { diff --git a/htdocs/supplier_proposal/contact.php b/htdocs/supplier_proposal/contact.php index 7be0dcbc78a..881fae4d1a7 100644 --- a/htdocs/supplier_proposal/contact.php +++ b/htdocs/supplier_proposal/contact.php @@ -193,7 +193,6 @@ if ($id > 0 || ! empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } else { diff --git a/htdocs/ticket/list.php b/htdocs/ticket/list.php index b1fb2d31cef..1b43d0054b7 100644 --- a/htdocs/ticket/list.php +++ b/htdocs/ticket/list.php @@ -409,7 +409,6 @@ if ($projectid > 0) { dol_fiche_end(); $object = $savobject; - } else { print "ErrorRecordNotFound"; } diff --git a/htdocs/user/card.php b/htdocs/user/card.php index 6a8e0d4f14a..a87438eda95 100644 --- a/htdocs/user/card.php +++ b/htdocs/user/card.php @@ -696,7 +696,6 @@ if ($action == 'create' || $action == 'adduserldap') } $liste[$key] = $label; } - } else { @@ -2593,7 +2592,6 @@ else if (! empty($conf->ldap->enabled) && ! empty($object->ldap_sid)) $ldap->close(); } - } if (! empty($conf->api->enabled) && ! empty($conf->use_javascript_ajax)) diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index d2afacce54a..d1a8cae636b 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -870,7 +870,6 @@ class User extends CommonObject // if we have already define a subperm like this $this->rights->$module->level1->level2 with llx_user_rights, we don't want override level1 because the level2 can be not define on user group if (!is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = 1; } - } $i++; } @@ -2671,7 +2670,6 @@ class User extends CommonObject } $this->db->free($result); - } else { diff --git a/htdocs/user/clicktodial.php b/htdocs/user/clicktodial.php index 6719d6ca120..918d8c394ca 100644 --- a/htdocs/user/clicktodial.php +++ b/htdocs/user/clicktodial.php @@ -213,7 +213,6 @@ if ($id > 0) } print "\n"; - } // End of page diff --git a/htdocs/user/param_ihm.php b/htdocs/user/param_ihm.php index 521b0e4022e..e0e6935bc48 100644 --- a/htdocs/user/param_ihm.php +++ b/htdocs/user/param_ihm.php @@ -316,7 +316,6 @@ if ($action == 'edit') print '     '; print ''; print ''; - } else { @@ -403,7 +402,6 @@ else } print ''; - } if ($action == 'edit') diff --git a/htdocs/variants/admin/admin.php b/htdocs/variants/admin/admin.php index 0110d9db789..43700b281c7 100644 --- a/htdocs/variants/admin/admin.php +++ b/htdocs/variants/admin/admin.php @@ -41,7 +41,6 @@ if ($_POST) { } else { setEventMessages($langs->trans('CoreErrorMessage'), null, 'errors'); } - } $title = $langs->trans('ModuleSetup').' '.$langs->trans('ProductAttributes'); diff --git a/htdocs/variants/card.php b/htdocs/variants/card.php index 8cb4e13b33e..1f04e5edb87 100644 --- a/htdocs/variants/card.php +++ b/htdocs/variants/card.php @@ -88,7 +88,6 @@ if ($_POST) { header('Location: '.dol_buildpath('/variants/card.php?id='.$object->id, 2)); exit(); } - } if ($confirm == 'yes') { diff --git a/htdocs/variants/class/ProductCombination.class.php b/htdocs/variants/class/ProductCombination.class.php index a0aed832eac..ef9ec4997f3 100644 --- a/htdocs/variants/class/ProductCombination.class.php +++ b/htdocs/variants/class/ProductCombination.class.php @@ -736,7 +736,6 @@ WHERE c.fk_product_parent = ".(int) $productid." AND p.tosell = 1"; } $i++; } - } return $label; } diff --git a/htdocs/variants/combinations.php b/htdocs/variants/combinations.php index fb23921be25..79076e8ac50 100644 --- a/htdocs/variants/combinations.php +++ b/htdocs/variants/combinations.php @@ -210,12 +210,10 @@ if ($_POST) { } else { setEventMessages($langs->trans('CoreErrorMessage'), null, 'errors'); } - } else { $db->commit(); setEventMessages($langs->trans('RecordSaved'), null, 'mesgs'); } - } elseif ($valueid > 0) { @@ -286,11 +284,9 @@ if ($action === 'confirm_deletecombination') { setEventMessages($langs->trans('ErrorCopyProductCombinations'), null, 'errors'); } } - } else { setEventMessages($langs->trans('ErrorDestinationProductNotFound'), null, 'errors'); } - } diff --git a/htdocs/variants/generator.php b/htdocs/variants/generator.php index afed5c98b16..420c90147ea 100644 --- a/htdocs/variants/generator.php +++ b/htdocs/variants/generator.php @@ -123,7 +123,6 @@ if ($_POST) { } $db->rollback(); - } else { setEventMessages($langs->trans('ErrorFieldsRequired'), null, 'errors'); } diff --git a/htdocs/webservices/server_actioncomm.php b/htdocs/webservices/server_actioncomm.php index 6a581b2ca0d..a9edcb0557a 100644 --- a/htdocs/webservices/server_actioncomm.php +++ b/htdocs/webservices/server_actioncomm.php @@ -378,7 +378,6 @@ function getListActionCommType($authentication) $objectresp = array( 'result'=>array('result_code'=>'OK', 'result_label'=>''), 'actioncommtypes'=>$resultarray); - } else { diff --git a/htdocs/webservices/server_category.php b/htdocs/webservices/server_category.php index 685579c6674..a941c2aceff 100644 --- a/htdocs/webservices/server_category.php +++ b/htdocs/webservices/server_category.php @@ -250,9 +250,7 @@ function getCategory($authentication,$id) 'dir' => $pdir, 'photos' => $fille->liste_photos($dir,$nbmax=10) ); - } - } // Create diff --git a/htdocs/webservices/server_invoice.php b/htdocs/webservices/server_invoice.php index aed031fa9ca..03931701659 100644 --- a/htdocs/webservices/server_invoice.php +++ b/htdocs/webservices/server_invoice.php @@ -635,7 +635,6 @@ function createInvoice($authentication,$invoice) $errorlabel=$new_invoice->error; dol_syslog("Function: createInvoice error while creating".$errorlabel); } - } if ($error) @@ -707,7 +706,6 @@ function createInvoiceFromOrder($authentication,$id_order='', $ref_order='', $re $error++; dol_syslog("Webservice server_invoice:: invoice creation from order failed", LOG_ERR); } - } } else diff --git a/htdocs/webservices/server_order.php b/htdocs/webservices/server_order.php index 8cbe54e0b29..d41b2880210 100644 --- a/htdocs/webservices/server_order.php +++ b/htdocs/webservices/server_order.php @@ -749,7 +749,6 @@ function createOrder($authentication,$order) { dol_syslog("Webservice server_order:: order creation failed", LOG_ERR); $error++; - } if ($order['status'] == 1) // We want order to have status validated @@ -777,7 +776,6 @@ function createOrder($authentication,$order) $errorcode='KO'; $errorlabel=$newobject->error; } - } if ($error) @@ -831,7 +829,6 @@ function validOrder($authentication,$id='',$id_warehouse=0) // Define output language $outputlangs = $langs; $order->generateDocument($order->modelpdf, $outputlangs); - } else { @@ -848,7 +845,6 @@ function validOrder($authentication,$id='',$id_warehouse=0) $errorcode='KO'; $errorlabel=$newobject->error; } - } else { @@ -857,7 +853,6 @@ function validOrder($authentication,$id='',$id_warehouse=0) $errorcode='KO'; $errorlabel=$newobject->error; } - } if ($error) @@ -926,7 +921,6 @@ function updateOrder($authentication,$order) // Define output language $outputlangs = $langs; $object->generateDocument($order->modelpdf, $outputlangs); - } } if ($order['status'] == 0) $result=$object->set_reopen($fuser); diff --git a/htdocs/webservices/server_productorservice.php b/htdocs/webservices/server_productorservice.php index 2154d2d8557..1e301350063 100644 --- a/htdocs/webservices/server_productorservice.php +++ b/htdocs/webservices/server_productorservice.php @@ -617,7 +617,6 @@ function createProductOrService($authentication,$product) $errorcode='KO'; $errorlabel=$newobject->error; } - } if ($error) @@ -806,7 +805,6 @@ function updateProductOrService($authentication,$product) $errorcode='KO'; $errorlabel=$newobject->error; } - } if ($error) @@ -1105,7 +1103,6 @@ function getProductsForCategory($authentication,$id,$lang='') $iProduct++; } - } // Retour @@ -1113,14 +1110,12 @@ function getProductsForCategory($authentication,$id,$lang='') 'result'=>array('result_code'=>'OK', 'result_label'=>''), 'products'=> $products ); - } else { $errorcode='NORECORDS_FOR_ASSOCIATION'; $errorlabel='No products associated'.$sql; $objectresp = array('result'=>array('result_code' => $errorcode, 'result_label' => $errorlabel)); dol_syslog("getProductsForCategory:: ".$c->error, LOG_DEBUG); - } } else diff --git a/htdocs/webservices/server_thirdparty.php b/htdocs/webservices/server_thirdparty.php index c2236368d18..7f0b590ee9a 100644 --- a/htdocs/webservices/server_thirdparty.php +++ b/htdocs/webservices/server_thirdparty.php @@ -816,7 +816,6 @@ function deleteThirdParty($authentication,$id='',$ref='',$ref_ext='') { $error++; $errorcode='NOT_FOUND'; $errorlabel='Object not found for id='.$id.' nor ref='.$ref.' nor ref_ext='.$ref_ext; - } } else diff --git a/htdocs/webservices/server_user.php b/htdocs/webservices/server_user.php index ab2d18427ff..81702c55456 100644 --- a/htdocs/webservices/server_user.php +++ b/htdocs/webservices/server_user.php @@ -733,7 +733,6 @@ function setUserPassword($authentication,$shortuser) $error++; $errorcode='NOT_FOUND'; $errorlabel='User not found'; } - } else { diff --git a/htdocs/website/index.php b/htdocs/website/index.php index f2bf4ad1888..4f969851ad4 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -1543,7 +1543,6 @@ if ($action == 'importsiteconfirm') } } } - } } @@ -2659,7 +2658,6 @@ if ($action == 'editfile' || $action == 'file_manager') include DOL_DOCUMENT_ROOT.'/core/tpl/filemanager.tpl.php'; print ''; - } if ($action == 'editmenu') diff --git a/scripts/cron/cron_run_jobs.php b/scripts/cron/cron_run_jobs.php index 8ffefa0ca9a..6104cec3b55 100755 --- a/scripts/cron/cron_run_jobs.php +++ b/scripts/cron/cron_run_jobs.php @@ -223,7 +223,6 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs)>0)) dol_syslog("cron_run_jobs.php::reprogram_jobs Error ".$cronjob->error, LOG_ERR); exit(-1); } - } else { diff --git a/scripts/emailings/mailing-send.php b/scripts/emailings/mailing-send.php index 95b06f187e8..c36e7ea1cc3 100755 --- a/scripts/emailings/mailing-send.php +++ b/scripts/emailings/mailing-send.php @@ -64,7 +64,6 @@ print "***** ".$script_file." (".$version.") pid=".dol_getmypid()." *****\n"; if ($conf->global->MAILING_LIMIT_SENDBYCLI == '-1') { - } $user = new User($db); @@ -329,7 +328,6 @@ if ($resql) if (!empty($conf->global->MAILING_DELAY)) { sleep($conf->global->MAILING_DELAY); } - } } else diff --git a/scripts/members/sync_members_ldap2dolibarr.php b/scripts/members/sync_members_ldap2dolibarr.php index 3e6eaaa4281..d7d4fbdeaaf 100755 --- a/scripts/members/sync_members_ldap2dolibarr.php +++ b/scripts/members/sync_members_ldap2dolibarr.php @@ -299,7 +299,6 @@ if ($result >= 0) //print "yy".dol_print_date($datelast)."\n"; $crowid=$member->subscription($datelast, $pricelast, 0); } - } if (! $error || $forcecommit) diff --git a/scripts/product/migrate_picture_path.php b/scripts/product/migrate_picture_path.php index 69322b2f350..eee15cdb7fa 100755 --- a/scripts/product/migrate_picture_path.php +++ b/scripts/product/migrate_picture_path.php @@ -140,7 +140,6 @@ function migrate_product_photospath($product) { dol_move($origin.'/'.$file, $destin.'/'.$file); } - } } } diff --git a/test/phpunit/CodingSqlTest.php b/test/phpunit/CodingSqlTest.php index c2b620b639b..349e19a1072 100644 --- a/test/phpunit/CodingSqlTest.php +++ b/test/phpunit/CodingSqlTest.php @@ -185,19 +185,16 @@ class CodingSqlTest extends PHPUnit_Framework_TestCase if ($dir == DOL_DOCUMENT_ROOT.'/install/mysql/migration') { // Test for migration files only - } elseif ($dir == DOL_DOCUMENT_ROOT.'/install/mysql/data') { // Test for data files only - } else { if (preg_match('/\.key\.sql$/',$file)) { // Test for key files only - } else { From b5c47f16e6d4a390d32ac1e1ab5124dfe29fe6b0 Mon Sep 17 00:00:00 2001 From: atm-john Date: Wed, 24 Oct 2018 23:25:40 +0200 Subject: [PATCH 156/769] Fix hover stability and modernize style --- htdocs/core/class/dolgraph.class.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index ad7b900b033..a331202f424 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -1032,11 +1032,13 @@ class DolGraph $(\'
\' + contents + \'
\').css({ position: \'absolute\', display: \'none\', - top: y + 5, - left: x + 5, - border: \'1px solid #ddd\', - padding: \'2px\', - \'background-color\': \'#ffe\', + top: y + 10, + left: x + 15, + border: \'1px solid #000\', + padding: \'5px\', + \'background-color\': \'#000\', + \'color\': \'#fff\', + \'font-weight\': \'bold\', width: 200, opacity: 0.80 }).appendTo("body").fadeIn(20); @@ -1080,7 +1082,7 @@ class DolGraph if ($i > $firstlot) $this->stringtoshow.=', '."\n"; $color=sprintf("%02x%02x%02x",$this->datacolor[$i][0],$this->datacolor[$i][1],$this->datacolor[$i][2]); $this->stringtoshow.='{ '; - if (! isset($this->type[$i]) || $this->type[$i] == 'bars') $this->stringtoshow.='bars: { show: true, align: "'.($i==$firstlot?'center':'left').'", barWidth: 0.5 }, '; + if (! isset($this->type[$i]) || $this->type[$i] == 'bars') $this->stringtoshow.='bars: { lineWidth: 1, show: true, align: "'.($i==$firstlot?'center':'left').'", barWidth: 0.5 }, '; if (isset($this->type[$i]) && $this->type[$i] == 'lines') $this->stringtoshow.='lines: { show: true, fill: false }, '; $this->stringtoshow.='color: "#'.$color.'", label: "'.(isset($this->Legend[$i]) ? dol_escape_js($this->Legend[$i]) : '').'", data: d'.$i.' }'; $i++; @@ -1104,7 +1106,7 @@ class DolGraph // Background color $color1=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[0],$this->bgcolorgrid[2]); $color2=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[1],$this->bgcolorgrid[2]); - $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] } }'."\n"; + $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] }, borderWidth: 1, borderColor: \'#d0d0d0\', tickColor : \'#f3f3f3\' }'."\n"; //$this->stringtoshow.=', shadowSize: 20'."\n"; TODO Uncommet this $this->stringtoshow.='});'."\n"; $this->stringtoshow.='}'."\n"; From d0dc8b2a9c5eec0cafee6c778acbbe28a64a6261 Mon Sep 17 00:00:00 2001 From: atm-john Date: Thu, 25 Oct 2018 00:24:25 +0200 Subject: [PATCH 157/769] Add points to lines charts and remove shadow to improve performances --- htdocs/core/class/dolgraph.class.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index a331202f424..e95cc08a0a5 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -1027,9 +1027,10 @@ class DolGraph else { // Add code to support tooltips + // TODO: remove js css and use graph-tooltip-inner class instead by adding css in each themes $this->stringtoshow.=' function showTooltip_'.$tag.'(x, y, contents) { - $(\'
\' + contents + \'
\').css({ + $(\'
\' + contents + \'
\').css({ position: \'absolute\', display: \'none\', top: y + 10, @@ -1041,7 +1042,7 @@ class DolGraph \'font-weight\': \'bold\', width: 200, opacity: 0.80 - }).appendTo("body").fadeIn(20); + }).appendTo("body").fadeIn(100); } var previousPoint = null; @@ -1083,11 +1084,12 @@ class DolGraph $color=sprintf("%02x%02x%02x",$this->datacolor[$i][0],$this->datacolor[$i][1],$this->datacolor[$i][2]); $this->stringtoshow.='{ '; if (! isset($this->type[$i]) || $this->type[$i] == 'bars') $this->stringtoshow.='bars: { lineWidth: 1, show: true, align: "'.($i==$firstlot?'center':'left').'", barWidth: 0.5 }, '; - if (isset($this->type[$i]) && $this->type[$i] == 'lines') $this->stringtoshow.='lines: { show: true, fill: false }, '; + if (isset($this->type[$i]) && $this->type[$i] == 'lines') $this->stringtoshow.='lines: { show: true, fill: false }, points: { show: true }, '; $this->stringtoshow.='color: "#'.$color.'", label: "'.(isset($this->Legend[$i]) ? dol_escape_js($this->Legend[$i]) : '').'", data: d'.$i.' }'; $i++; } - $this->stringtoshow.="\n".' ], { series: { stack: stack, lines: { fill: false, steps: steps }, bars: { barWidth: 0.6 } }'."\n"; + // shadowSize: 0 -> Drawing is faster without shadows + $this->stringtoshow.="\n".' ], { series: { shadowSize: 0, stack: stack, lines: { fill: false, steps: steps }, bars: { barWidth: 0.6 } }'."\n"; // Xaxis $this->stringtoshow.=', xaxis: { ticks: ['."\n"; @@ -1106,7 +1108,7 @@ class DolGraph // Background color $color1=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[0],$this->bgcolorgrid[2]); $color2=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[1],$this->bgcolorgrid[2]); - $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] }, borderWidth: 1, borderColor: \'#d0d0d0\', tickColor : \'#f3f3f3\' }'."\n"; + $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] }, borderWidth: 1, borderColor: \'#f3f3f3\', tickColor : \'#f3f3f3\' }'."\n"; //$this->stringtoshow.=', shadowSize: 20'."\n"; TODO Uncommet this $this->stringtoshow.='});'."\n"; $this->stringtoshow.='}'."\n"; From f41e7e05e14cc911bcaf1884f4eee9f7426c3478 Mon Sep 17 00:00:00 2001 From: atm-ph Date: Thu, 25 Oct 2018 12:01:17 +0200 Subject: [PATCH 158/769] Fix PHP warnings printed in javascript --- htdocs/core/lib/functions.lib.php | 72 +++++++++++++++++-------------- 1 file changed, 39 insertions(+), 33 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 7888338cdc2..7dd730214af 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -7094,54 +7094,60 @@ function printCommonFooter($zone='private') $relativepathstring = preg_replace('/^\//', '', $relativepathstring); $relativepathstring = preg_replace('/^custom\//', '', $relativepathstring); $tmpqueryarraywehave=explode('&', dol_string_nohtmltag($_SERVER['QUERY_STRING'])); - foreach($user->default_values[$relativepathstring]['focus'] as $defkey => $defval) + if (!empty($user->default_values[$relativepathstring]['focus'])) { - $qualified = 0; - if ($defkey != '_noquery_') + foreach($user->default_values[$relativepathstring]['focus'] as $defkey => $defval) { - $tmpqueryarraytohave=explode('&', $defkey); - $foundintru=0; - foreach($tmpqueryarraytohave as $tmpquerytohave) + $qualified = 0; + if ($defkey != '_noquery_') { - if (! in_array($tmpquerytohave, $tmpqueryarraywehave)) $foundintru=1; + $tmpqueryarraytohave=explode('&', $defkey); + $foundintru=0; + foreach($tmpqueryarraytohave as $tmpquerytohave) + { + if (! in_array($tmpquerytohave, $tmpqueryarraywehave)) $foundintru=1; + } + if (! $foundintru) $qualified=1; + //var_dump($defkey.'-'.$qualified); } - if (! $foundintru) $qualified=1; - //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + else $qualified = 1; - if ($qualified) - { - foreach($defval as $paramkey => $paramval) + if ($qualified) { - // Add property 'required' on input - print 'jQuery("input[name=\''.$paramkey.'\']").focus();'."\n"; + foreach($defval as $paramkey => $paramval) + { + // Add property 'required' on input + print 'jQuery("input[name=\''.$paramkey.'\']").focus();'."\n"; + } } } } - foreach($user->default_values[$relativepathstring]['mandatory'] as $defkey => $defval) + if (!empty($user->default_values[$relativepathstring]['mandatory'])) { - $qualified = 0; - if ($defkey != '_noquery_') + foreach($user->default_values[$relativepathstring]['mandatory'] as $defkey => $defval) { - $tmpqueryarraytohave=explode('&', $defkey); - $foundintru=0; - foreach($tmpqueryarraytohave as $tmpquerytohave) + $qualified = 0; + if ($defkey != '_noquery_') { - if (! in_array($tmpquerytohave, $tmpqueryarraywehave)) $foundintru=1; + $tmpqueryarraytohave=explode('&', $defkey); + $foundintru=0; + foreach($tmpqueryarraytohave as $tmpquerytohave) + { + if (! in_array($tmpquerytohave, $tmpqueryarraywehave)) $foundintru=1; + } + if (! $foundintru) $qualified=1; + //var_dump($defkey.'-'.$qualified); } - if (! $foundintru) $qualified=1; - //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + else $qualified = 1; - if ($qualified) - { - foreach($defval as $paramkey => $paramval) + if ($qualified) { - // Add property 'required' on input - print 'jQuery("input[name=\''.$paramkey.'\']").prop(\'required\',true);'."\n"; - print 'jQuery("select[name=\''.$paramkey.'\']").prop(\'required\',true);'."\n"; // required on a select works only if key is "", this does not happen in Dolibarr + foreach($defval as $paramkey => $paramval) + { + // Add property 'required' on input + print 'jQuery("input[name=\''.$paramkey.'\']").prop(\'required\',true);'."\n"; + print 'jQuery("select[name=\''.$paramkey.'\']").prop(\'required\',true);'."\n"; // required on a select works only if key is "", this does not happen in Dolibarr + } } } } From 16c35035c1452dd325d13d2f85ce11bd5757c697 Mon Sep 17 00:00:00 2001 From: Marc de Lima Lucio Date: Thu, 25 Oct 2018 12:07:40 +0200 Subject: [PATCH 159/769] FIX: pdf typhon: order reference duplicate --- .../livraison/doc/pdf_typhon.modules.php | 37 ------------------- 1 file changed, 37 deletions(-) diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php index 1f8e06eb04d..bbc74f3b6bb 100644 --- a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php @@ -754,43 +754,6 @@ class pdf_typhon extends ModelePDFDeliveryOrder $posy+=2; - // Add list of linked orders on shipment - // Currently not supported by pdf_writeLinkedObjects, link for delivery to order is done through shipment) - if ($object->origin == 'expedition' || $object->origin == 'shipping') - { - $Yoff=$posy-5; - - include_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php'; - $shipment = new Expedition($this->db); - $shipment->fetch($object->origin_id); - - $origin = $shipment->origin; - $origin_id = $shipment->origin_id; - - if ($conf->$origin->enabled) - { - $outputlangs->load('orders'); - - $classname = ucfirst($origin); - $linkedobject = new $classname($this->db); - $result=$linkedobject->fetch($origin_id); - if ($result >= 0) - { - $pdf->SetFont('','', $default_font_size - 2); - $text=$linkedobject->ref; - if ($linkedobject->ref_client) $text.=' ('.$linkedobject->ref_client.')'; - $Yoff = $Yoff+8; - $pdf->SetXY($this->page_largeur - $this->marge_droite - 100,$Yoff); - $pdf->MultiCell(100, 2, $outputlangs->transnoentities("RefOrder") ." : ".$outputlangs->transnoentities($text), 0, 'R'); - $Yoff = $Yoff+3; - $pdf->SetXY($this->page_largeur - $this->marge_droite - 60,$Yoff); - $pdf->MultiCell(60, 2, $outputlangs->transnoentities("OrderDate")." : ".dol_print_date($linkedobject->date,"day",false,$outputlangs,true), 0, 'R'); - } - } - - $posy=$Yoff; - } - // Show list of linked objects $posy = pdf_writeLinkedObjects($pdf, $object, $outputlangs, $posx, $posy, 100, 3, 'R', $default_font_size); From 25a374bd9a44d70d35bf2eae0ca9dba1615b6461 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 12:45:13 +0200 Subject: [PATCH 160/769] NEW Notification module support expense report+holiday validation and approval event. --- htdocs/admin/notification.php | 7 + htdocs/core/class/notify.class.php | 80 ++++-- ..._50_modNotification_Notification.class.php | 13 +- htdocs/holiday/card.php | 32 +-- htdocs/holiday/class/holiday.class.php | 228 ++++++++++++++++++ .../mysql/data/llx_c_action_trigger.sql | 2 + .../install/mysql/migration/8.0.0-9.0.0.sql | 2 + htdocs/langs/en_US/other.lang | 13 +- 8 files changed, 341 insertions(+), 36 deletions(-) diff --git a/htdocs/admin/notification.php b/htdocs/admin/notification.php index d93421ef6fb..92ba0bec200 100644 --- a/htdocs/admin/notification.php +++ b/htdocs/admin/notification.php @@ -166,12 +166,15 @@ foreach($listofnotifiedevents as $notifiedevent) { $label=$langs->trans("Notify_".$notifiedevent['code']); //!=$langs->trans("Notify_".$notifiedevent['code'])?$langs->trans("Notify_".$notifiedevent['code']):$notifiedevent['label']; + $elementLabel = $langs->trans(ucfirst($notifiedevent['elementtype'])); if ($notifiedevent['elementtype'] == 'order_supplier') $elementLabel = $langs->trans('SupplierOrder'); elseif ($notifiedevent['elementtype'] == 'propal') $elementLabel = $langs->trans('Proposal'); elseif ($notifiedevent['elementtype'] == 'facture') $elementLabel = $langs->trans('Bill'); elseif ($notifiedevent['elementtype'] == 'commande') $elementLabel = $langs->trans('Order'); elseif ($notifiedevent['elementtype'] == 'ficheinter') $elementLabel = $langs->trans('Intervention'); + elseif ($notifiedevent['elementtype'] == 'shipping') $elementLabel = $langs->trans('Shipping'); + elseif ($notifiedevent['elementtype'] == 'expensereport') $elementLabel = $langs->trans('ExpenseReport'); if ($i) print ', '; print $label; @@ -209,11 +212,15 @@ foreach($listofnotifiedevents as $notifiedevent) $label=$langs->trans("Notify_".$notifiedevent['code']); //!=$langs->trans("Notify_".$notifiedevent['code'])?$langs->trans("Notify_".$notifiedevent['code']):$notifiedevent['label']; + $elementLabel = $langs->trans(ucfirst($notifiedevent['elementtype'])); + // Special cases if ($notifiedevent['elementtype'] == 'order_supplier') $elementLabel = $langs->trans('SupplierOrder'); elseif ($notifiedevent['elementtype'] == 'propal') $elementLabel = $langs->trans('Proposal'); elseif ($notifiedevent['elementtype'] == 'facture') $elementLabel = $langs->trans('Bill'); elseif ($notifiedevent['elementtype'] == 'commande') $elementLabel = $langs->trans('Order'); elseif ($notifiedevent['elementtype'] == 'ficheinter') $elementLabel = $langs->trans('Intervention'); + elseif ($notifiedevent['elementtype'] == 'shipping') $elementLabel = $langs->trans('Shipping'); + elseif ($notifiedevent['elementtype'] == 'expensereport') $elementLabel = $langs->trans('ExpenseReport'); print ''; print ''.$elementLabel.''; diff --git a/htdocs/core/class/notify.class.php b/htdocs/core/class/notify.class.php index 344b8050b65..7a24e4928c7 100644 --- a/htdocs/core/class/notify.class.php +++ b/htdocs/core/class/notify.class.php @@ -65,6 +65,7 @@ class Notify // Les codes actions sont definis dans la table llx_notify_def // codes actions supported are + // @TODO defined also into interface_50_modNotificiation_Notificiation.class.php public $arrayofnotifsupported = array( 'BILL_VALIDATE', 'BILL_PAYED', @@ -76,7 +77,11 @@ class Notify 'ORDER_SUPPLIER_VALIDATE', 'ORDER_SUPPLIER_APPROVE', 'ORDER_SUPPLIER_REFUSE', - 'SHIPPING_VALIDATE' + 'SHIPPING_VALIDATE', + 'EXPENSE_REPORT_VALIDATE', + 'EXPENSE_REPORT_APPROVE', + 'HOLIDAY_VALIDATE', + 'HOLIDAY_APPROVE' ); @@ -340,22 +345,27 @@ class Notify $oldref=(empty($object->oldref)?$object->ref:$object->oldref); $newref=(empty($object->newref)?$object->ref:$object->newref); + $sql = ''; + // Check notification per third party - $sql = "SELECT 'tocontactid' as type_target, c.email, c.rowid as cid, c.lastname, c.firstname, c.default_lang,"; - $sql.= " a.rowid as adid, a.label, a.code, n.rowid, n.type"; - $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as c,"; - $sql.= " ".MAIN_DB_PREFIX."c_action_trigger as a,"; - $sql.= " ".MAIN_DB_PREFIX."notify_def as n,"; - $sql.= " ".MAIN_DB_PREFIX."societe as s"; - $sql.= " WHERE n.fk_contact = c.rowid AND a.rowid = n.fk_action"; - $sql.= " AND n.fk_soc = s.rowid"; - if (is_numeric($notifcode)) $sql.= " AND n.fk_action = ".$notifcode; // Old usage - else $sql.= " AND a.code = '".$notifcode."'"; // New usage - $sql .= " AND s.rowid = ".$object->socid; + if ($object->socid > 0) + { + $sql.= "SELECT 'tocontactid' as type_target, c.email, c.rowid as cid, c.lastname, c.firstname, c.default_lang,"; + $sql.= " a.rowid as adid, a.label, a.code, n.rowid, n.type"; + $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as c,"; + $sql.= " ".MAIN_DB_PREFIX."c_action_trigger as a,"; + $sql.= " ".MAIN_DB_PREFIX."notify_def as n,"; + $sql.= " ".MAIN_DB_PREFIX."societe as s"; + $sql.= " WHERE n.fk_contact = c.rowid AND a.rowid = n.fk_action"; + $sql.= " AND n.fk_soc = s.rowid"; + if (is_numeric($notifcode)) $sql.= " AND n.fk_action = ".$notifcode; // Old usage + else $sql.= " AND a.code = '".$notifcode."'"; // New usage + $sql .= " AND s.rowid = ".$object->socid; + + $sql.= "\nUNION\n"; + } // Check notification per user - $sql.= "\nUNION\n"; - $sql.= "SELECT 'touserid' as type_target, c.email, c.rowid as cid, c.lastname, c.firstname, c.lang as default_lang,"; $sql.= " a.rowid as adid, a.label, a.code, n.rowid, n.type"; $sql.= " FROM ".MAIN_DB_PREFIX."user as c,"; @@ -363,7 +373,7 @@ class Notify $sql.= " ".MAIN_DB_PREFIX."notify_def as n"; $sql.= " WHERE n.fk_user = c.rowid AND a.rowid = n.fk_action"; if (is_numeric($notifcode)) $sql.= " AND n.fk_action = ".$notifcode; // Old usage - else $sql.= " AND a.code = '".$notifcode."'"; // New usage + else $sql.= " AND a.code = '".$this->db->escape($notifcode)."'"; // New usage $result = $this->db->query($sql); if ($result) @@ -473,6 +483,26 @@ class Notify $object_type = 'order_supplier'; $mesg = $outputlangs->transnoentitiesnoconv("EMailTextExpeditionValidated",$newref); break; + case 'EXPENSE_REPORT_VALIDATE': + $dir_output = $conf->expensereport->dir_output; + $object_type = 'expensereport'; + $mesg = $outputlangs->transnoentitiesnoconv("EMailTextExpenseReportValidated",$newref); + break; + case 'EXPENSE_REPORT_APPROVE': + $dir_output = $conf->expensereport->dir_output; + $object_type = 'expensereport'; + $mesg = $outputlangs->transnoentitiesnoconv("EMailTextExpenseReportApproved",$newref); + break; + case 'HOLIDAY_VALIDATE': + $dir_output = $conf->holiday->dir_output; + $object_type = 'holiday'; + $mesg = $outputlangs->transnoentitiesnoconv("EMailTextHolidayValidated",$newref); + break; + case 'HOLIDAY_APPROVE': + $dir_output = $conf->holiday->dir_output; + $object_type = 'holiday'; + $mesg = $outputlangs->transnoentitiesnoconv("EMailTextHolidayApproved",$newref); + break; } $ref = dol_sanitizeFileName($newref); $pdf_path = $dir_output."/".$ref."/".$ref.".pdf"; @@ -663,6 +693,26 @@ class Notify $object_type = 'order_supplier'; $mesg = $langs->transnoentitiesnoconv("EMailTextExpeditionValidated",$newref); break; + case 'EXPENSE_REPORT_VALIDATE': + $dir_output = $conf->expensereport->dir_output; + $object_type = 'expensereport'; + $mesg = $langs->transnoentitiesnoconv("EMailTextExpenseReportValidated",$newref); + break; + case 'EXPENSE_REPORT_APPROVE': + $dir_output = $conf->expensereport->dir_output; + $object_type = 'expensereport'; + $mesg = $langs->transnoentitiesnoconv("EMailTextExpenseReportApproved",$newref); + break; + case 'HOLIDAY_VALIDATE': + $dir_output = $conf->holiday->dir_output; + $object_type = 'holiday'; + $mesg = $langs->transnoentitiesnoconv("EMailTextHolidayValidated",$newref); + break; + case 'HOLIDAY_APPROVE': + $dir_output = $conf->holiday->dir_output; + $object_type = 'holiday'; + $mesg = $langs->transnoentitiesnoconv("EMailTextHolidayApproved",$newref); + break; } $ref = dol_sanitizeFileName($newref); $pdf_path = $dir_output."/".$ref."/".$ref.".pdf"; diff --git a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php index 26b36964676..f5995c47c84 100644 --- a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php +++ b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php @@ -44,6 +44,7 @@ class InterfaceNotification extends DolibarrTriggers */ public $picto = 'email'; + // @TODO Defined also into notify.class.php) public $listofmanagedevents=array( 'BILL_VALIDATE', 'BILL_PAYED', @@ -55,8 +56,12 @@ class InterfaceNotification extends DolibarrTriggers 'ORDER_SUPPLIER_VALIDATE', 'ORDER_SUPPLIER_APPROVE', 'ORDER_SUPPLIER_REFUSE', - 'SHIPPING_VALIDATE' - ); + 'SHIPPING_VALIDATE', + 'EXPENSE_REPORT_VALIDATE', + 'EXPENSE_REPORT_APPROVE', + 'HOLIDAY_VALIDATE', + 'HOLIDAY_APPROVE' + ); /** * Function called when a Dolibarrr business event is done. @@ -112,7 +117,7 @@ class InterfaceNotification extends DolibarrTriggers $qualified=0; // Check is this event is supported by notification module - if (in_array($obj->code,$this->listofmanagedevents)) $qualified=1; + if (in_array($obj->code, $this->listofmanagedevents)) $qualified=1; // Check if module for this event is active if ($qualified) { @@ -125,7 +130,7 @@ class InterfaceNotification extends DolibarrTriggers elseif ($element == 'withdraw' && empty($conf->prelevement->enabled)) $qualified=0; elseif ($element == 'shipping' && empty($conf->expedition->enabled)) $qualified=0; elseif ($element == 'member' && empty($conf->adherent->enabled)) $qualified=0; - elseif (! in_array($element,array('order_supplier','invoice_supplier','withdraw','shipping','member')) && empty($conf->$element->enabled)) $qualified=0; + elseif (! in_array($element,array('order_supplier','invoice_supplier','withdraw','shipping','member','expensereport')) && empty($conf->$element->enabled)) $qualified=0; } if ($qualified) diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index be365c52351..9c89124c577 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -214,7 +214,7 @@ if ($action == 'update') $object->fetch($id); // If under validation - if ($object->statut == 1) + if ($object->statut == Holiday::STATUS_DRAFT) { // If this is the requestor or has read/write rights if ($cancreate) @@ -298,7 +298,7 @@ if ($action == 'confirm_delete' && GETPOST('confirm') == 'yes' && $user->rights- $object->fetch($id); // If this is a rough draft, approved, canceled or refused - if ($object->statut == 1 || $object->statut == 4 || $object->statut == 5) + if ($object->statut == Holiday::STATUS_DRAFT || $object->statut == Holiday::STATUS_CANCELED || $object->statut == Holiday::STATUS_REFUSED) { // Si l'utilisateur à le droit de lire cette demande, il peut la supprimer if ($candelete) @@ -332,11 +332,13 @@ if ($action == 'confirm_send') $object->fetch($id); // Si brouillon et créateur - if($object->statut == 1 && $cancreate) + if($object->statut == Holiday::STATUS_DRAFT && $cancreate) { - $object->statut = 2; + $object->oldcopy = dol_clone($object); - $verif = $object->update($user); + $object->statut = Holiday::STATUS_VALIDATED; + + $verif = $object->validate($user); // Si pas d'erreur SQL on redirige vers la fiche de la demande if ($verif > 0) @@ -435,13 +437,15 @@ if ($action == 'confirm_valid') $object->fetch($id); // Si statut en attente de validation et valideur = utilisateur - if ($object->statut == 2 && $user->id == $object->fk_validator) + if ($object->statut == Holiday::STATUS_VALIDATED && $user->id == $object->fk_validator) { + $object->oldcopy = dol_clone($object); + $object->date_valid = dol_now(); $object->fk_user_valid = $user->id; - $object->statut = 3; + $object->statut = Holiday::STATUS_APPROVED; - $verif = $object->update($user); + $verif = $object->approve($user); // Si pas d'erreur SQL on redirige vers la fiche de la demande if ($verif > 0) @@ -530,11 +534,11 @@ if ($action == 'confirm_refuse' && GETPOST('confirm','alpha') == 'yes') $object->fetch($id); // Si statut en attente de validation et valideur = utilisateur - if ($object->statut == 2 && $user->id == $object->fk_validator) + if ($object->statut == Holiday::STATUS_VALIDATED && $user->id == $object->fk_validator) { $object->date_refuse = dol_print_date('dayhour', dol_now()); $object->fk_user_refuse = $user->id; - $object->statut = 5; + $object->statut = Holiday::STATUS_REFUSED; $object->detail_refuse = GETPOST('detail_refuse','alphanohtml'); $verif = $object->update($user); @@ -615,7 +619,7 @@ if ($action == 'confirm_draft' && GETPOST('confirm') == 'yes') $object->fetch($id); $oldstatus = $object->statut; - $object->statut = 1; + $object->statut = Holiday::STATUS_DRAFT; $result = $object->update($user); if ($result < 0) @@ -646,18 +650,18 @@ if ($action == 'confirm_cancel' && GETPOST('confirm') == 'yes') $object->fetch($id); // Si statut en attente de validation et valideur = valideur ou utilisateur, ou droits de faire pour les autres - if (($object->statut == 2 || $object->statut == 3) && ($user->id == $object->fk_validator || in_array($object->fk_user, $childids) || ! empty($user->rights->holiday->write_all))) + if (($object->statut == Holiday::STATUS_VALIDATED || $object->statut == Holiday::STATUS_APPROVED) && ($user->id == $object->fk_validator || in_array($object->fk_user, $childids) || ! empty($user->rights->holiday->write_all))) { $db->begin(); $oldstatus = $object->statut; $object->date_cancel = dol_now(); $object->fk_user_cancel = $user->id; - $object->statut = 4; + $object->statut = Holiday::STATUS_CANCELED; $result = $object->update($user); - if ($result >= 0 && $oldstatus == 3) // holiday was already validated, status 3, so we must increase back sold + if ($result >= 0 && $oldstatus == Holiday::STATUS_APPROVED) // holiday was already validated, status 3, so we must increase back sold { // Calculcate number of days consummed $nbopenedday=num_open_day($object->date_debut_gmt,$object->date_fin_gmt,0,1,$object->halfday); diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index a888a4919a6..bc964ec7fc6 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -598,6 +598,234 @@ class Holiday extends CommonObject } } + + /** + * Validate leave request + * + * @param User $user User that validate + * @param int $notrigger 0=launch triggers after, 1=disable triggers + * @return int <0 if KO, >0 if OK + */ + function validate($user=null, $notrigger=0) + { + global $conf, $langs; + $error=0; + + // Update request + $sql = "UPDATE ".MAIN_DB_PREFIX."holiday SET"; + + $sql.= " description= '".$this->db->escape($this->description)."',"; + + if(!empty($this->date_debut)) { + $sql.= " date_debut = '".$this->db->idate($this->date_debut)."',"; + } else { + $error++; + } + if(!empty($this->date_fin)) { + $sql.= " date_fin = '".$this->db->idate($this->date_fin)."',"; + } else { + $error++; + } + $sql.= " halfday = ".$this->halfday.","; + if(!empty($this->statut) && is_numeric($this->statut)) { + $sql.= " statut = ".$this->statut.","; + } else { + $error++; + } + if(!empty($this->fk_validator)) { + $sql.= " fk_validator = '".$this->db->escape($this->fk_validator)."',"; + } else { + $error++; + } + if(!empty($this->date_valid)) { + $sql.= " date_valid = '".$this->db->idate($this->date_valid)."',"; + } else { + $sql.= " date_valid = NULL,"; + } + if(!empty($this->fk_user_valid)) { + $sql.= " fk_user_valid = '".$this->db->escape($this->fk_user_valid)."',"; + } else { + $sql.= " fk_user_valid = NULL,"; + } + if(!empty($this->date_refuse)) { + $sql.= " date_refuse = '".$this->db->idate($this->date_refuse)."',"; + } else { + $sql.= " date_refuse = NULL,"; + } + if(!empty($this->fk_user_refuse)) { + $sql.= " fk_user_refuse = '".$this->db->escape($this->fk_user_refuse)."',"; + } else { + $sql.= " fk_user_refuse = NULL,"; + } + if(!empty($this->date_cancel)) { + $sql.= " date_cancel = '".$this->db->idate($this->date_cancel)."',"; + } else { + $sql.= " date_cancel = NULL,"; + } + if(!empty($this->fk_user_cancel)) { + $sql.= " fk_user_cancel = '".$this->db->escape($this->fk_user_cancel)."',"; + } else { + $sql.= " fk_user_cancel = NULL,"; + } + if(!empty($this->detail_refuse)) { + $sql.= " detail_refuse = '".$this->db->escape($this->detail_refuse)."'"; + } else { + $sql.= " detail_refuse = NULL"; + } + + $sql.= " WHERE rowid= ".$this->id; + + $this->db->begin(); + + dol_syslog(get_class($this)."::validate", LOG_DEBUG); + $resql = $this->db->query($sql); + if (! $resql) { + $error++; $this->errors[]="Error ".$this->db->lasterror(); + } + + if (! $error) + { + if (! $notrigger) + { + // Call trigger + $result=$this->call_trigger('HOLIDAY_VALIDATE',$user); + if ($result < 0) { $error++; } + // End call triggers + } + } + + // Commit or rollback + if ($error) + { + foreach($this->errors as $errmsg) + { + dol_syslog(get_class($this)."::validate ".$errmsg, LOG_ERR); + $this->error.=($this->error?', '.$errmsg:$errmsg); + } + $this->db->rollback(); + return -1*$error; + } + else + { + $this->db->commit(); + return 1; + } + } + + + /** + * Approve leave request + * + * @param User $user User that approve + * @param int $notrigger 0=launch triggers after, 1=disable triggers + * @return int <0 if KO, >0 if OK + */ + function approve($user=null, $notrigger=0) + { + global $conf, $langs; + $error=0; + + // Update request + $sql = "UPDATE ".MAIN_DB_PREFIX."holiday SET"; + + $sql.= " description= '".$this->db->escape($this->description)."',"; + + if(!empty($this->date_debut)) { + $sql.= " date_debut = '".$this->db->idate($this->date_debut)."',"; + } else { + $error++; + } + if(!empty($this->date_fin)) { + $sql.= " date_fin = '".$this->db->idate($this->date_fin)."',"; + } else { + $error++; + } + $sql.= " halfday = ".$this->halfday.","; + if(!empty($this->statut) && is_numeric($this->statut)) { + $sql.= " statut = ".$this->statut.","; + } else { + $error++; + } + if(!empty($this->fk_validator)) { + $sql.= " fk_validator = '".$this->db->escape($this->fk_validator)."',"; + } else { + $error++; + } + if(!empty($this->date_valid)) { + $sql.= " date_valid = '".$this->db->idate($this->date_valid)."',"; + } else { + $sql.= " date_valid = NULL,"; + } + if(!empty($this->fk_user_valid)) { + $sql.= " fk_user_valid = '".$this->db->escape($this->fk_user_valid)."',"; + } else { + $sql.= " fk_user_valid = NULL,"; + } + if(!empty($this->date_refuse)) { + $sql.= " date_refuse = '".$this->db->idate($this->date_refuse)."',"; + } else { + $sql.= " date_refuse = NULL,"; + } + if(!empty($this->fk_user_refuse)) { + $sql.= " fk_user_refuse = '".$this->db->escape($this->fk_user_refuse)."',"; + } else { + $sql.= " fk_user_refuse = NULL,"; + } + if(!empty($this->date_cancel)) { + $sql.= " date_cancel = '".$this->db->idate($this->date_cancel)."',"; + } else { + $sql.= " date_cancel = NULL,"; + } + if(!empty($this->fk_user_cancel)) { + $sql.= " fk_user_cancel = '".$this->db->escape($this->fk_user_cancel)."',"; + } else { + $sql.= " fk_user_cancel = NULL,"; + } + if(!empty($this->detail_refuse)) { + $sql.= " detail_refuse = '".$this->db->escape($this->detail_refuse)."'"; + } else { + $sql.= " detail_refuse = NULL"; + } + + $sql.= " WHERE rowid= ".$this->id; + + $this->db->begin(); + + dol_syslog(get_class($this)."::approve", LOG_DEBUG); + $resql = $this->db->query($sql); + if (! $resql) { + $error++; $this->errors[]="Error ".$this->db->lasterror(); + } + + if (! $error) + { + if (! $notrigger) + { + // Call trigger + $result=$this->call_trigger('HOLIDAY_APPROVE',$user); + if ($result < 0) { $error++; } + // End call triggers + } + } + + // Commit or rollback + if ($error) + { + foreach($this->errors as $errmsg) + { + dol_syslog(get_class($this)."::approve ".$errmsg, LOG_ERR); + $this->error.=($this->error?', '.$errmsg:$errmsg); + } + $this->db->rollback(); + return -1*$error; + } + else + { + $this->db->commit(); + return 1; + } + } + /** * Update database * diff --git a/htdocs/install/mysql/data/llx_c_action_trigger.sql b/htdocs/install/mysql/data/llx_c_action_trigger.sql index 435d98a7a88..6f3bb5461f8 100644 --- a/htdocs/install/mysql/data/llx_c_action_trigger.sql +++ b/htdocs/install/mysql/data/llx_c_action_trigger.sql @@ -101,6 +101,8 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAYED','Expense report billed','Executed when an expense report is set as billed','expensereport',204); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',204); +insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202); +insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROJECT_VALIDATE','Project validation','Executed when a project is validated','project',141); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROJECT_DELETE','Project deleted','Executed when a project is deleted','project',143); -- actions not enabled by default (no constant created for that) when we enable module agenda diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index c29cc803836..9048c681aa1 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -69,6 +69,8 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('CONTRACT_DELETE','Contract deleted','Executed when a contract is deleted','contrat',18); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_DELETE','Intervention is deleted','Executed when a intervention is deleted','ficheinter',35); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',204); +insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202); +insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); ALTER TABLE llx_payment_salary ADD COLUMN fk_projet integer DEFAULT NULL after amount; diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 67b9681fa3b..91442bbd05d 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -31,9 +31,6 @@ NextYearOfInvoice=Following year of invoice date DateNextInvoiceBeforeGen=Date of next invoice (before generation) DateNextInvoiceAfterGen=Date of next invoice (after generation) -Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention -Notify_FICHINTER_VALIDATE=Intervention validated -Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail Notify_ORDER_VALIDATE=Customer order validated Notify_ORDER_SENTBYMAIL=Customer order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Supplier order sent by mail @@ -60,6 +57,8 @@ Notify_BILL_SUPPLIER_SENTBYMAIL=Supplier invoice sent by mail Notify_BILL_SUPPLIER_CANCELED=Supplier invoice cancelled Notify_CONTRACT_VALIDATE=Contract validated Notify_FICHEINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail Notify_SHIPPING_VALIDATE=Shipping validated Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail Notify_MEMBER_VALIDATE=Member validated @@ -71,6 +70,10 @@ Notify_PROJECT_CREATE=Project creation Notify_TASK_CREATE=Task created Notify_TASK_MODIFY=Task modified Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved SeeModuleSetup=See setup of module %s NbOfAttachedFiles=Number of attached files/documents TotalSizeOfAttachedFiles=Total size of attached files/documents @@ -198,6 +201,10 @@ EMailTextOrderApprovedBy=The order %s has been approved by %s. EMailTextOrderRefused=The order %s has been refused. EMailTextOrderRefusedBy=The order %s has been refused by %s. EMailTextExpeditionValidated=The shipping %s has been validated. +EMailTextExpenseReportValidated=The expense report %s has been validated. +EMailTextExpenseReportApproved=The expensereport %s has been approved. +EMailTextHolidayValidated=The leave request %s has been validated. +EMailTextHolidayApproved=The leave request %s has been approved. ImportedWithSet=Importation data set DolibarrNotification=Automatic notification ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... From 9ccdd10a818f9ec28bb789cfa6ceacf35b8d737f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 13:19:56 +0200 Subject: [PATCH 161/769] FIXx format (html/text) of emails sent on leave request module --- htdocs/core/class/CMailFile.class.php | 2 +- htdocs/core/class/translate.class.php | 10 +- htdocs/expensereport/card.php | 249 +++++++++++++------------- 3 files changed, 135 insertions(+), 126 deletions(-) diff --git a/htdocs/core/class/CMailFile.class.php b/htdocs/core/class/CMailFile.class.php index b3027b90885..a37f6b1562b 100644 --- a/htdocs/core/class/CMailFile.class.php +++ b/htdocs/core/class/CMailFile.class.php @@ -117,7 +117,7 @@ class CMailFile * @param string $sendcontext 'standard', 'emailing', ... (used to define with sending mode and parameters to use) * @param string $replyto Reply-to email (will be set to same value than From by default if not provided) */ - function __construct($subject,$to,$from,$msg,$filename_list=array(),$mimetype_list=array(),$mimefilename_list=array(),$addr_cc="",$addr_bcc="",$deliveryreceipt=0,$msgishtml=0,$errors_to='',$css='',$trackid='',$moreinheader='',$sendcontext='standard',$replyto='') + function __construct($subject, $to, $from, $msg, $filename_list=array(), $mimetype_list=array(), $mimefilename_list=array(), $addr_cc="", $addr_bcc="", $deliveryreceipt=0, $msgishtml=0, $errors_to='', $css='', $trackid='', $moreinheader='', $sendcontext='standard', $replyto='') { global $conf, $dolibarr_main_data_root; diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index 17f83452ba5..2e489f6ba65 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -655,11 +655,12 @@ class Translate * @param string $param2 chaine de param2 * @param string $param3 chaine de param3 * @param string $param4 chaine de param4 + * @param string $param5 chaine de param5 * @return string Translated string (encoded into UTF8) */ - function transnoentities($key, $param1='', $param2='', $param3='', $param4='') + function transnoentities($key, $param1='', $param2='', $param3='', $param4='', $param5='') { - return $this->convToOutputCharset($this->transnoentitiesnoconv($key, $param1, $param2, $param3, $param4)); + return $this->convToOutputCharset($this->transnoentitiesnoconv($key, $param1, $param2, $param3, $param4, $param5)); } @@ -675,9 +676,10 @@ class Translate * @param string $param2 chaine de param2 * @param string $param3 chaine de param3 * @param string $param4 chaine de param4 + * @param string $param5 chaine de param5 * @return string Translated string */ - function transnoentitiesnoconv($key, $param1='', $param2='', $param3='', $param4='') + function transnoentitiesnoconv($key, $param1='', $param2='', $param3='', $param4='', $param5='') { global $conf; @@ -700,7 +702,7 @@ class Translate if (! preg_match('/^Format/',$key)) { //print $str; - $str=sprintf($str,$param1,$param2,$param3,$param4); // Replace %s and %d except for FormatXXX strings. + $str=sprintf($str, $param1, $param2, $param3, $param4, $param5); // Replace %s and %d except for FormatXXX strings. } return $str; diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index d877ad00b2f..62315912209 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -375,7 +375,7 @@ if (empty($reshook)) */ // PREPARE SEND - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); if ($mailfile) { @@ -496,7 +496,7 @@ if (empty($reshook)) // PREPARE SEND - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); if ($mailfile) { @@ -615,7 +615,7 @@ if (empty($reshook)) } */ - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); if ($mailfile) { @@ -735,7 +735,7 @@ if (empty($reshook)) */ // PREPARE SEND - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); if ($mailfile) { @@ -788,126 +788,133 @@ if (empty($reshook)) } //var_dump($user->id == $object->fk_user_validator);exit; - if ($action == "confirm_cancel" && GETPOST('confirm', 'alpha')=="yes" && GETPOST('detail_cancel', 'alpha') && $id > 0 && $user->rights->expensereport->creer) + if ($action == "confirm_cancel" && GETPOST('confirm', 'alpha')=="yes" && $id > 0 && $user->rights->expensereport->creer) { - $object = new ExpenseReport($db); - $object->fetch($id); - - if ($user->id == $object->fk_user_valid || $user->id == $object->fk_user_author) + if (! GETPOST('detail_cancel', 'alpha')) { - $result = $object->set_cancel($user, GETPOST('detail_cancel', 'alpha')); - - if ($result > 0) - { - // Define output language - if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) - { - $outputlangs = $langs; - $newlang = ''; - if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','aZ09')) $newlang = GETPOST('lang_id','aZ09'); - if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang; - if (! empty($newlang)) { - $outputlangs = new Translate("", $conf); - $outputlangs->setDefaultLang($newlang); - } - $model=$object->modelpdf; - $ret = $object->fetch($id); // Reload to get new records - - $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); - } - } - - if ($result > 0) - { - // Send mail - - // TO - $destinataire = new User($db); - $destinataire->fetch($object->fk_user_author); - $emailTo = $destinataire->email; - - // FROM - $expediteur = new User($db); - $expediteur->fetch($object->fk_user_cancel); - $emailFrom = $expediteur->email; - - if ($emailFrom && $emailTo) - { - $filename=array(); $filedir=array(); $mimetype=array(); - - // SUBJECT - $subject = $langs->transnoentities("ExpenseReportCanceled"); - - // CONTENT - $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; - $message = $langs->transnoentities("ExpenseReportCanceledMessage", $object->ref, $destinataire->getFullName($langs), $expediteur->getFullName($langs), $_POST['detail_cancel'], $link); - - // Rebuilt pdf - /* - $object->setDocModel($user,""); - $resultPDF = expensereport_pdf_create($db,$object,'',"",$langs); - - if($resultPDF - { - // ATTACHMENT - $filename=array(); $filedir=array(); $mimetype=array(); - array_push($filename,dol_sanitizeFileName($object->ref).".pdf"); - array_push($filedir, $conf->expensereport->dir_output."/".dol_sanitizeFileName($object->ref)."/".dol_sanitizeFileName($object->ref).".pdf"); - array_push($mimetype,"application/pdf"); - } - */ - - // PREPARE SEND - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); - - if ($mailfile) - { - // SEND - $result=$mailfile->sendfile(); - if ($result) - { - $mesg=$langs->trans('MailSuccessfulySent',$mailfile->getValidAddress($emailFrom,2),$mailfile->getValidAddress($emailTo,2)); - setEventMessages($mesg, null, 'mesgs'); - header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); - exit; - } - else - { - $langs->load("other"); - if ($mailfile->error) - { - $mesg=''; - $mesg.=$langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); - $mesg.='
'.$mailfile->error; - setEventMessages($mesg, null, 'errors'); - } - else - { - setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); - } - } - } - else - { - setEventMessages($mailfile->error,$mailfile->errors,'errors'); - $action=''; - } - } - else - { - setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); - $action=''; - } - } - else - { - setEventMessages($langs->trans("FailedToSetToCancel"), null, 'warnings'); - $action=''; - } + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Comment")), null, 'errors'); } else { - setEventMessages($object->error, $object->errors, 'errors'); + $object = new ExpenseReport($db); + $object->fetch($id); + + if ($user->id == $object->fk_user_valid || $user->id == $object->fk_user_author) + { + $result = $object->set_cancel($user, GETPOST('detail_cancel', 'alpha')); + + if ($result > 0) + { + // Define output language + if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) + { + $outputlangs = $langs; + $newlang = ''; + if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','aZ09')) $newlang = GETPOST('lang_id','aZ09'); + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang; + if (! empty($newlang)) { + $outputlangs = new Translate("", $conf); + $outputlangs->setDefaultLang($newlang); + } + $model=$object->modelpdf; + $ret = $object->fetch($id); // Reload to get new records + + $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); + } + } + + if ($result > 0) + { + // Send mail + + // TO + $destinataire = new User($db); + $destinataire->fetch($object->fk_user_author); + $emailTo = $destinataire->email; + + // FROM + $expediteur = new User($db); + $expediteur->fetch($object->fk_user_cancel); + $emailFrom = $expediteur->email; + + if ($emailFrom && $emailTo) + { + $filename=array(); $filedir=array(); $mimetype=array(); + + // SUBJECT + $subject = $langs->transnoentities("ExpenseReportCanceled"); + + // CONTENT + $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; + $message = $langs->transnoentities("ExpenseReportCanceledMessage", $object->ref, $destinataire->getFullName($langs), $expediteur->getFullName($langs), GETPOST('detail_cancel','alpha'), $link); + + // Rebuilt pdf + /* + $object->setDocModel($user,""); + $resultPDF = expensereport_pdf_create($db,$object,'',"",$langs); + + if($resultPDF + { + // ATTACHMENT + $filename=array(); $filedir=array(); $mimetype=array(); + array_push($filename,dol_sanitizeFileName($object->ref).".pdf"); + array_push($filedir, $conf->expensereport->dir_output."/".dol_sanitizeFileName($object->ref)."/".dol_sanitizeFileName($object->ref).".pdf"); + array_push($mimetype,"application/pdf"); + } + */ + + // PREPARE SEND + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); + + if ($mailfile) + { + // SEND + $result=$mailfile->sendfile(); + if ($result) + { + $mesg=$langs->trans('MailSuccessfulySent',$mailfile->getValidAddress($emailFrom,2),$mailfile->getValidAddress($emailTo,2)); + setEventMessages($mesg, null, 'mesgs'); + header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); + exit; + } + else + { + $langs->load("other"); + if ($mailfile->error) + { + $mesg=''; + $mesg.=$langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); + $mesg.='
'.$mailfile->error; + setEventMessages($mesg, null, 'errors'); + } + else + { + setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); + } + } + } + else + { + setEventMessages($mailfile->error,$mailfile->errors,'errors'); + $action=''; + } + } + else + { + setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); + $action=''; + } + } + else + { + setEventMessages($langs->trans("FailedToSetToCancel"), null, 'warnings'); + $action=''; + } + } + else + { + setEventMessages($object->error, $object->errors, 'errors'); + } } } @@ -1019,7 +1026,7 @@ if (empty($reshook)) $resultPDF = expensereport_pdf_create($db,$object,'',"",$langs); // PREPARE SEND - $mailfile = new CMailFile($subject,$emailTo,$emailFrom,$message,$filedir,$mimetype,$filename); + $mailfile = new CMailFile($subject, $emailTo, $emailFrom, $message, $filedir, $mimetype, $filename, '', '', 0, -1); if ($mailfile) { @@ -1614,7 +1621,7 @@ else if ($action == 'cancel') { - $array_input = array('text'=>$langs->trans("ConfirmCancelTrip"), array('type'=>"text",'label'=>$langs->trans("Comment"),'name'=>"detail_cancel",'size'=>"50",'value'=>"")); + $array_input = array('text'=>$langs->trans("ConfirmCancelTrip"), array('type'=>"text",'label'=>''.$langs->trans("Comment").'','name'=>"detail_cancel",'size'=>"50",'value'=>"")); $formconfirm=$form->formconfirm($_SEVER["PHP_SELF"]."?id=".$id,$langs->trans("Cancel"),"","confirm_cancel",$array_input,"",1); } From 5daf095fc60f5bbed9fdbb3cdec8db4e109f7869 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 14:05:22 +0200 Subject: [PATCH 162/769] FIX Title and content of automatic email of expense report --- htdocs/expensereport/card.php | 37 +++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index 62315912209..50205fd12d4 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -356,7 +356,10 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportWaitingForApproval"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportWaitingForApproval"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; @@ -472,7 +475,10 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportWaitingForReApproval"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportWaitingForReApproval"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; @@ -594,7 +600,10 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportApproved"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportApproved"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; @@ -713,7 +722,10 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportRefused"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportRefused"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; @@ -842,7 +854,10 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportCanceled"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportCanceled"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; @@ -1008,19 +1023,15 @@ if (empty($reshook)) $filename=array(); $filedir=array(); $mimetype=array(); // SUBJECT - $subject = $langs->transnoentities("ExpenseReportPaid"); + $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; + if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; + + $subject = $societeName." - ".$langs->transnoentities("ExpenseReportPaid"); // CONTENT $link = $urlwithroot.'/expensereport/card.php?id='.$object->id; $message = $langs->transnoentities("ExpenseReportPaidMessage", $object->ref, $destinataire->getFullName($langs), $expediteur->getFullName($langs), $link); - // CONTENT - $message = "Bonjour {$destinataire->firstname},\n\n"; - $message.= "Votre note de frais \"{$object->ref}\" vient d'être payée.\n"; - $message.= "- Payeur : {$expediteur->firstname} {$expediteur->lastname}\n"; - $message.= "- Lien : {$dolibarr_main_url_root}/expensereport/card.php?id={$object->id}\n\n"; - $message.= "Bien cordialement,\n' SI"; - // Generate pdf before attachment $object->setDocModel($user,""); $resultPDF = expensereport_pdf_create($db,$object,'',"",$langs); From 1ba716b82c760e39efb281e4fb1a41513211eba1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 14:39:54 +0200 Subject: [PATCH 163/769] Fix do not allow use of second or third tax without using 1st one. --- htdocs/admin/company.php | 40 ++++++++++++++++++++++++++++------- htdocs/langs/en_US/admin.lang | 18 ++++++++-------- 2 files changed, 41 insertions(+), 17 deletions(-) diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php index e3ea95d18b5..cc564bfb08e 100644 --- a/htdocs/admin/company.php +++ b/htdocs/admin/company.php @@ -75,6 +75,8 @@ if ( ($action == 'update' && ! GETPOST("cancel",'alpha')) activateModulesRequiredByCountry($mysoc->country_code); } + $db->begin(); + dolibarr_set_const($db, "MAIN_INFO_SOCIETE_NOM", GETPOST("nom",'nohtml'),'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_INFO_SOCIETE_ADDRESS", GETPOST("MAIN_INFO_SOCIETE_ADDRESS",'nohtml'),'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_INFO_SOCIETE_TOWN", GETPOST("MAIN_INFO_SOCIETE_TOWN",'nohtml'),'chaine',0,'',$conf->entity); @@ -173,11 +175,24 @@ if ( ($action == 'update' && ! GETPOST("cancel",'alpha')) dolibarr_set_const($db, "SOCIETE_FISCAL_MONTH_START", GETPOST("SOCIETE_FISCAL_MONTH_START",'int'),'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "FACTURE_TVAOPTION", GETPOST("optiontva",'aZ09'),'chaine',0,'',$conf->entity); + // Sale tax options + $usevat = GETPOST("optiontva",'aZ09'); + $uselocaltax1 = GETPOST("optionlocaltax1",'aZ09'); + $uselocaltax2 = GETPOST("optionlocaltax2",'aZ09'); + if ($uselocaltax1 == 'localtax1on' && ! $usevat) + { + setEventMessages($langs->trans("IfYouUseASecondTaxYouMustSetYouUseTheMainTax"), null, 'errors'); + $error++; + } + if ($uselocaltax2 == 'localtax2on' && ! $usevat) + { + setEventMessages($langs->trans("IfYouUseAThirdTaxYouMustSetYouUseTheMainTax"), null, 'errors'); + $error++; + } - // Local taxes - dolibarr_set_const($db, "FACTURE_LOCAL_TAX1_OPTION", GETPOST("optionlocaltax1",'aZ09'),'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "FACTURE_LOCAL_TAX2_OPTION", GETPOST("optionlocaltax2",'aZ09'),'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "FACTURE_TVAOPTION", $usevat,'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "FACTURE_LOCAL_TAX1_OPTION", $uselocaltax1,'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "FACTURE_LOCAL_TAX2_OPTION", $uselocaltax2,'chaine',0,'',$conf->entity); if($_POST["optionlocaltax1"]=="localtax1on") { @@ -204,6 +219,15 @@ if ( ($action == 'update' && ! GETPOST("cancel",'alpha')) dolibarr_set_const($db,"MAIN_INFO_LOCALTAX_CALC2", GETPOST("clt2",'aZ09'),'chaine',0,'',$conf->entity); } + if (! $error) + { + $db->commit(); + } + else + { + $db->rollback(); + } + if ($action != 'updateedit' && ! $error) { header("Location: ".$_SERVER["PHP_SELF"]); @@ -586,7 +610,7 @@ if ($action == 'edit' || $action == 'updateedit') print ''; print ""; print ""; - print "\n"; + if ($mysoc->country_code == 'FR') print "\n"; print "
".$langs->trans("Example").': '.$langs->trans("VATIsUsedExampleFR")."
".$langs->trans("Example").': '.$langs->trans("VATIsUsedExampleFR")."
"; print "\n"; @@ -595,7 +619,7 @@ if ($action == 'edit' || $action == 'updateedit') print ''; print ""; print ""; - print "\n"; + if ($mysoc->country_code == 'FR') print "\n"; print "
".$langs->trans("Example").': '.$langs->trans("VATIsNotUsedExampleFR")."
".$langs->trans("Example").': '.$langs->trans("VATIsNotUsedExampleFR")."
"; print "\n"; @@ -1024,7 +1048,7 @@ else print ''; print ""; print ""; - print "\n"; + if ($mysoc->country_code == 'FR') print "\n"; print "
".$langs->trans("Example").': '.$langs->trans("VATIsUsedExampleFR")."
".$langs->trans("Example").': '.$langs->trans("VATIsUsedExampleFR")."
"; print "\n"; @@ -1034,7 +1058,7 @@ else print ''; print ""; print ""; - print "\n"; + if ($mysoc->country_code == 'FR') print "\n"; print "
".$langs->trans("VATIsNotUsedDesc")."
".$langs->trans("Example").': '.$langs->trans("VATIsNotUsedExampleFR")."
".$langs->trans("Example").': '.$langs->trans("VATIsNotUsedExampleFR")."
"; print "\n"; diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 52445134f0f..190b7cded97 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -924,22 +924,22 @@ SetupNotSaved=Setup not saved BackToModuleList=Back to modules list BackToDictionaryList=Back to list of Dictionaries TypeOfRevenueStamp=Type of tax stamp -VATManagement=VAT Management -VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the VAT rate follows the active standard rule:
If the seller is not subject to VAT, then VAT defaults to 0. End of rule.
If the (seller's country = buyer's country), then the VAT by default equals the VAT of the product in the seller's country. End of rule.
If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to their customs office in their country and not to the seller. End of rule.
If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT by defaults to the VAT of the seller's country. End of rule.
If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
In any other case the proposed default is VAT=0. End of rule. -VATIsNotUsedDesc=By default the proposed VAT is 0 which can be used for cases like associations, individuals or small companies. -VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. -VATIsNotUsedExampleFR=In France, it means associations that are non VAT declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (VAT in franchise) and paid a franchise VAT without any VAT declaration. This choice will display the reference "Non applicable VAT - art-293B of CGI" on invoices. +VATManagement=Sale Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sale Tax rate follows the active standard rule:
If the seller is not subject to Sale tax, then Sale tax defaults to 0. End of rule.
If the (seller's country = buyer's country), then the Sale tax by default equals the Sale tax of the product in the seller's country. End of rule.
If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default Sale tax is 0. This rule is dependant on the seller's country - please consult with your accountant. The Sale tax should be paid by the buyer to their customs office in their country and not to the seller. End of rule.
If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community Sale tax number) then the Sale tax by defaults to the Sale tax of the seller's country. End of rule.
If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community Sale tax number), then the Sale tax is 0 by default. End of rule.
In any other case the proposed default is Sale tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sale tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which Sale tax is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sale tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sale tax in franchise) and paid a franchise Sale tax without any Sale tax declaration. This choice will display the reference "Non applicable Sale tax - art-293B of CGI" on invoices. ##### Local Taxes ##### LTRate=Rate LocalTax1IsNotUsed=Do not use second tax -LocalTax1IsUsedDesc=Use a second type of tax (other than VAT) -LocalTax1IsNotUsedDesc=Do not use other type of tax (other than VAT) +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) LocalTax1Management=Second type of tax LocalTax1IsUsedExample= LocalTax1IsNotUsedExample= LocalTax2IsNotUsed=Do not use third tax -LocalTax2IsUsedDesc=Use a third type of tax (other than VAT) -LocalTax2IsNotUsedDesc=Do not use other type of tax (other than VAT) +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) LocalTax2Management=Third type of tax LocalTax2IsUsedExample= LocalTax2IsNotUsedExample= From 094bcc519f3f137db0fe6cf12eadccd5e7174d04 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 17:25:36 +0200 Subject: [PATCH 164/769] Fix show customer code only if customer in company tooltip --- htdocs/societe/class/societe.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index c91593b079f..a89e242898c 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -2098,11 +2098,11 @@ class Societe extends CommonObject if (strpos($conf->global->SOCIETE_SHOW_FIELD_IN_TOOLTIP, 'profid5') !== false) $label.= '
' . $langs->trans('ProfId5'.$this->country_code) . ': '. $this->idprof5; if (strpos($conf->global->SOCIETE_SHOW_FIELD_IN_TOOLTIP, 'profid6') !== false) $label.= '
' . $langs->trans('ProfId6'.$this->country_code) . ': '. $this->idprof6; } - if (! empty($this->code_client) && $this->client) + if (! empty($this->code_client) && ($this->client == 1 || $this->client == 3)) $label.= '
' . $langs->trans('CustomerCode') . ': '. $this->code_client; if (! empty($this->code_fournisseur) && $this->fournisseur) $label.= '
' . $langs->trans('SupplierCode') . ': '. $this->code_fournisseur; - if (! empty($conf->accounting->enabled) && $this->client) + if (! empty($conf->accounting->enabled) && ($this->client == 1 || $this->client == 3)) $label.= '
' . $langs->trans('CustomerAccountancyCode') . ': '. ($this->code_compta ? $this->code_compta : $this->code_compta_client); if (! empty($conf->accounting->enabled) && $this->fournisseur) $label.= '
' . $langs->trans('SupplierAccountancyCode') . ': '. $this->code_compta_fournisseur; From 70cd68ebefb00a208cf961f1a02cc84a4b8f4294 Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Thu, 25 Oct 2018 18:21:00 +0200 Subject: [PATCH 165/769] improve img_picto by returning ASAP We do not need an else each time some times, return is good enough. I also remove some line of comments since it's only code in it. We have GIT to find the code back we do not need to put it in comment ;-). --- htdocs/core/lib/functions.lib.php | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 7888338cdc2..cf464f69344 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -3297,15 +3297,8 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ if ($srconly) { return $fullpathpicto; } - else { // tag title is used for tooltip on
, tag alt can be used with very simple text on image for bind people - //$tmparray=array(0=>$titlealt); - //if (empty($notitle) && preg_match('/:[^\s0-9]/',$titlealt)) $tmparray=explode(':',$titlealt); // We explode if we have TextA:TextB. Not if we have TextA: TextB - //$title=$tmparray[0]; - //$alt=empty($tmparray[1])?'':$tmparray[1]; - $title = $titlealt; - return ''.dol_escape_htmltag($alt).''; // Alt is used for accessibility, title for popup - } + return ''.dol_escape_htmltag($alt).''; // Alt is used for accessibility, title for popup } /** From 8b601bd7fd93340c8786535fe0c08b8fd4812065 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 18:50:53 +0200 Subject: [PATCH 166/769] Fix numbering of holidays --- htdocs/admin/holiday.php | 12 +- .../holiday/mod_holiday_immaculate.php | 2 +- .../modules/holiday/mod_holiday_madonna.php | 8 +- htdocs/holiday/card.php | 17 +- htdocs/holiday/class/holiday.class.php | 150 ++++++++++-------- htdocs/holiday/list.php | 4 +- .../install/mysql/migration/8.0.0-9.0.0.sql | 2 + htdocs/install/mysql/tables/llx_holiday.sql | 6 +- htdocs/langs/en_US/holiday.lang | 5 + 9 files changed, 123 insertions(+), 83 deletions(-) diff --git a/htdocs/admin/holiday.php b/htdocs/admin/holiday.php index f6306f787c3..c02c9bd480d 100644 --- a/htdocs/admin/holiday.php +++ b/htdocs/admin/holiday.php @@ -297,8 +297,13 @@ foreach ($dirmodels as $reldir) print '
'; + + +if ($conf->global->MAIN_FEATURES_LEVEL >= 2) +{ + /* - * Documents models for Contracts + * Documents models for Holidays */ print load_fiche_titre($langs->trans("TemplatePDFHolidays"),'',''); @@ -455,9 +460,9 @@ foreach ($dirmodels as $reldir) print ''; print "
"; + /* * Other options - * */ print '
'; @@ -509,6 +514,9 @@ print ''; print '
'; +} + + dol_fiche_end(); // End of page diff --git a/htdocs/core/modules/holiday/mod_holiday_immaculate.php b/htdocs/core/modules/holiday/mod_holiday_immaculate.php index b63326ca276..338b553166e 100644 --- a/htdocs/core/modules/holiday/mod_holiday_immaculate.php +++ b/htdocs/core/modules/holiday/mod_holiday_immaculate.php @@ -44,7 +44,7 @@ class mod_holiday_immaculate extends ModelNumRefHolidays /** * @var string Nom du modele * @deprecated - * @see name + * @see $name */ public $nom='Immaculate'; diff --git a/htdocs/core/modules/holiday/mod_holiday_madonna.php b/htdocs/core/modules/holiday/mod_holiday_madonna.php index 98380d9fae5..f53e55be6fd 100644 --- a/htdocs/core/modules/holiday/mod_holiday_madonna.php +++ b/htdocs/core/modules/holiday/mod_holiday_madonna.php @@ -45,7 +45,7 @@ class mod_holiday_madonna extends ModelNumRefHolidays /** * @var string Nom du modele * @deprecated - * @see name + * @see $name */ public $nom='Madonna'; @@ -117,10 +117,10 @@ class mod_holiday_madonna extends ModelNumRefHolidays * Return next value * * @param Societe $objsoc third party object - * @param Object $contract contract object + * @param Object $holiday Holiday object * @return string Value if OK, 0 if KO */ - function getNextValue($objsoc,$contract) + function getNextValue($objsoc, $holiday) { global $db,$conf; @@ -143,7 +143,7 @@ class mod_holiday_madonna extends ModelNumRefHolidays return -1; } - $date=$contract->date_contrat; + $date=$holiday->date_debut; $yymm = strftime("%y%m",$date); if ($max >= (pow(10, 4) - 1)) $num=$max+1; // If counter > 9999, we do not format on 4 chars, we take number as it is diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index 9c89124c577..d170a1c9acc 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -41,6 +41,7 @@ require_once DOL_DOCUMENT_ROOT.'/holiday/common.inc.php'; // Get parameters $action=GETPOST('action', 'alpha'); $id=GETPOST('id', 'int'); +$ref=GETPOST('ref', 'alpha'); $fuserid = (GETPOST('fuserid','int')?GETPOST('fuserid','int'):$user->id); // Protection if external user @@ -325,7 +326,7 @@ if ($action == 'confirm_delete' && GETPOST('confirm') == 'yes' && $user->rights- } } -// Si envoi de la demande +// Action validate (+ send email for approval) if ($action == 'confirm_send') { $object = new Holiday($db); @@ -761,7 +762,7 @@ $listhalfday=array('morning'=>$langs->trans("Morning"),"afternoon"=>$langs->tran llxHeader('', $langs->trans('CPTitreMenu')); -if (empty($id) || $action == 'add' || $action == 'request' || $action == 'create') +if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $action == 'create') { // Si l'utilisateur n'a pas le droit de faire une demande if (($fuserid == $user->id && empty($user->rights->holiday->write)) || ($fuserid != $user->id && empty($user->rights->holiday->write_all))) @@ -998,9 +999,9 @@ else else { // Affichage de la fiche d'une demande de congés payés - if ($id > 0) + if (($id > 0) || $ref) { - $object->fetch($id); + $result = $object->fetch($id, $ref); $valideur = new User($db); $valideur->fetch($object->fk_validator); @@ -1064,7 +1065,7 @@ else $linkback='
'.$langs->trans("BackToList").''; - dol_banner_tab($object, 'id', $linkback, 1, 'rowid', 'ref'); + dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref'); print '
'; @@ -1260,7 +1261,7 @@ else } // Si envoi en validation - if ($action == 'sendToValidate' && $object->statut == 1) + if ($action == 'sendToValidate' && $object->statut == Holiday::STATUS_DRAFT) { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id,$langs->trans("TitleToValidCP"),$langs->trans("ConfirmToValidCP"),"confirm_send", '', 1, 1); } @@ -1291,10 +1292,10 @@ else } - if ($action == 'edit' && $object->statut == 1) + if ($action == 'edit' && $object->statut == Holiday::STATUS_DRAFT) { print '
'; - if ($cancreate && $object->statut == 1) + if ($cancreate && $object->statut == Holiday::STATUS_DRAFT) { print ''; } diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index bc964ec7fc6..26e11383b9d 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -57,7 +57,7 @@ class Holiday extends CommonObject /** * @deprecated - * @see id + * @see $id */ public $rowid; @@ -77,7 +77,7 @@ class Holiday extends CommonObject public $date_fin=''; // Date end in PHP server TZ public $date_debut_gmt=''; // Date start in GMT public $date_fin_gmt=''; // Date end in GMT - public $halfday=''; // 0:Full days, 2:Start afternoon end morning, -1:Start afternoon end afternoon, 1:Start morning end morning + public $halfday=''; // 0:Full days, 2:Start afternoon end morning, -1:Start afternoon end afternoon, 1:Start morning end morning public $statut=''; // 1=draft, 2=validated, 3=approved /** @@ -154,6 +154,67 @@ class Holiday extends CommonObject } + /** + * Returns the reference to the following non used Order depending on the active numbering module + * defined into HOLIDAY_ADDON + * + * @param Societe $objsoc third party object + * @return string Holiday free reference + */ + function getNextNumRef($objsoc) + { + global $langs, $conf; + $langs->load("order"); + + if (empty($conf->global->HOLIDAY_ADDON)) + { + $conf->global->HOLIDAY_ADDON = 'mod_holiday_madonna'; + } + + if (! empty($conf->global->HOLIDAY_ADDON)) + { + $mybool=false; + + $file = $conf->global->HOLIDAY_ADDON.".php"; + $classname = $conf->global->HOLIDAY_ADDON; + + // Include file with class + $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']); + foreach ($dirmodels as $reldir) + { + $dir = dol_buildpath($reldir."core/modules/holiday/"); + + // Load file with numbering class (if found) + $mybool|=@include_once $dir.$file; + } + + if (! $mybool) + { + dol_print_error('',"Failed to include file ".$file); + return ''; + } + + $obj = new $classname(); + $numref = $obj->getNextValue($objsoc,$this); + + if ($numref != "") + { + return $numref; + } + else + { + $this->error=$obj->error; + //dol_print_error($this->db,get_class($this)."::getNextNumRef ".$obj->error); + return ""; + } + } + else + { + print $langs->trans("Error")." ".$langs->trans("Error_HOLIDAY_ADDON_NotDefined"); + return ""; + } + } + /** * Update balance of vacations and check table of users for holidays is complete. If not complete. * @@ -271,14 +332,16 @@ class Holiday extends CommonObject * Load object in memory from database * * @param int $id Id object + * @param string $ref Ref object * @return int <0 if KO, >0 if OK */ - function fetch($id) + function fetch($id, $ref='') { global $langs; $sql = "SELECT"; $sql.= " cp.rowid,"; + $sql.= " cp.ref,"; $sql.= " cp.fk_user,"; $sql.= " cp.date_create,"; $sql.= " cp.description,"; @@ -300,7 +363,8 @@ class Holiday extends CommonObject $sql.= " cp.fk_type,"; $sql.= " cp.entity"; $sql.= " FROM ".MAIN_DB_PREFIX."holiday as cp"; - $sql.= " WHERE cp.rowid = ".$id; + if ($id > 0) $sql.= " WHERE cp.rowid = ".$id; + else $sql.=" WHERE cp.ref = '".$this->db->escape($ref)."'"; dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $resql=$this->db->query($sql); @@ -312,7 +376,7 @@ class Holiday extends CommonObject $this->id = $obj->rowid; $this->rowid = $obj->rowid; // deprecated - $this->ref = $obj->rowid; + $this->ref = ($obj->ref?$obj->ref:$obj->rowid); $this->fk_user = $obj->fk_user; $this->date_create = $this->db->jdate($obj->date_create); $this->description = $obj->description; @@ -361,6 +425,7 @@ class Holiday extends CommonObject $sql = "SELECT"; $sql.= " cp.rowid,"; + $sql.= " cp.ref,"; $sql.= " cp.fk_user,"; $sql.= " cp.fk_type,"; @@ -427,7 +492,8 @@ class Holiday extends CommonObject $obj = $this->db->fetch_object($resql); $tab_result[$i]['rowid'] = $obj->rowid; - $tab_result[$i]['ref'] = $obj->rowid; + $tab_result[$i]['ref'] = ($obj->ref?$obj->ref:$obj->rowid); + $tab_result[$i]['fk_user'] = $obj->fk_user; $tab_result[$i]['fk_type'] = $obj->fk_type; $tab_result[$i]['date_create'] = $this->db->jdate($obj->date_create); @@ -487,6 +553,7 @@ class Holiday extends CommonObject $sql = "SELECT"; $sql.= " cp.rowid,"; + $sql.= " cp.ref,"; $sql.= " cp.fk_user,"; $sql.= " cp.fk_type,"; @@ -552,7 +619,7 @@ class Holiday extends CommonObject $obj = $this->db->fetch_object($resql); $tab_result[$i]['rowid'] = $obj->rowid; - $tab_result[$i]['ref'] = $obj->rowid; + $tab_result[$i]['ref'] = ($obj->ref?$obj->ref:$obj->rowid); $tab_result[$i]['fk_user'] = $obj->fk_user; $tab_result[$i]['fk_type'] = $obj->fk_type; $tab_result[$i]['date_create'] = $this->db->jdate($obj->date_create); @@ -611,68 +678,25 @@ class Holiday extends CommonObject global $conf, $langs; $error=0; - // Update request + // Define new ref + if (! $error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref) || $this->ref == $this->id)) + { + $num = $this->getNextNumRef(null); + } + else + { + $num = $this->ref; + } + $this->newref = $num; + + // Update status $sql = "UPDATE ".MAIN_DB_PREFIX."holiday SET"; - - $sql.= " description= '".$this->db->escape($this->description)."',"; - - if(!empty($this->date_debut)) { - $sql.= " date_debut = '".$this->db->idate($this->date_debut)."',"; - } else { - $error++; - } - if(!empty($this->date_fin)) { - $sql.= " date_fin = '".$this->db->idate($this->date_fin)."',"; - } else { - $error++; - } - $sql.= " halfday = ".$this->halfday.","; if(!empty($this->statut) && is_numeric($this->statut)) { $sql.= " statut = ".$this->statut.","; } else { $error++; } - if(!empty($this->fk_validator)) { - $sql.= " fk_validator = '".$this->db->escape($this->fk_validator)."',"; - } else { - $error++; - } - if(!empty($this->date_valid)) { - $sql.= " date_valid = '".$this->db->idate($this->date_valid)."',"; - } else { - $sql.= " date_valid = NULL,"; - } - if(!empty($this->fk_user_valid)) { - $sql.= " fk_user_valid = '".$this->db->escape($this->fk_user_valid)."',"; - } else { - $sql.= " fk_user_valid = NULL,"; - } - if(!empty($this->date_refuse)) { - $sql.= " date_refuse = '".$this->db->idate($this->date_refuse)."',"; - } else { - $sql.= " date_refuse = NULL,"; - } - if(!empty($this->fk_user_refuse)) { - $sql.= " fk_user_refuse = '".$this->db->escape($this->fk_user_refuse)."',"; - } else { - $sql.= " fk_user_refuse = NULL,"; - } - if(!empty($this->date_cancel)) { - $sql.= " date_cancel = '".$this->db->idate($this->date_cancel)."',"; - } else { - $sql.= " date_cancel = NULL,"; - } - if(!empty($this->fk_user_cancel)) { - $sql.= " fk_user_cancel = '".$this->db->escape($this->fk_user_cancel)."',"; - } else { - $sql.= " fk_user_cancel = NULL,"; - } - if(!empty($this->detail_refuse)) { - $sql.= " detail_refuse = '".$this->db->escape($this->detail_refuse)."'"; - } else { - $sql.= " detail_refuse = NULL"; - } - + $sql.= " ref = '".$num."'"; $sql.= " WHERE rowid= ".$this->id; $this->db->begin(); diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php index fcd5cc9d8b0..8d7f8fb666e 100644 --- a/htdocs/holiday/list.php +++ b/htdocs/holiday/list.php @@ -512,7 +512,7 @@ print ''; print "\n"; print ''; -print_liste_field_titre("Ref",$_SERVER["PHP_SELF"],"cp.rowid","",$param,'',$sortfield,$sortorder); +print_liste_field_titre("Ref",$_SERVER["PHP_SELF"],"cp.ref","",$param,'',$sortfield,$sortorder); print_liste_field_titre("DateCreateCP",$_SERVER["PHP_SELF"],"cp.date_create","",$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre("Employee",$_SERVER["PHP_SELF"],"cp.fk_user","",$param,'',$sortfield,$sortorder); print_liste_field_titre("ValidatorCP",$_SERVER["PHP_SELF"],"cp.fk_validator","",$param,'',$sortfield,$sortorder); @@ -546,7 +546,7 @@ elseif (! empty($holiday->holiday) && !empty($mysoc->country_id)) { // Leave request $holidaystatic->id=$infos_CP['rowid']; - $holidaystatic->ref=$infos_CP['rowid']; + $holidaystatic->ref=($infos_CP['ref']?$infos_CP['ref']:$infos_CP['rowid']); // User $userstatic->id=$infos_CP['fk_user']; diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 9048c681aa1..f98c932943c 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -132,3 +132,5 @@ CREATE TABLE llx_takepos_floor_tables( UPDATE llx_c_payment_term SET decalage = nbjour, nbjour = 0 where decalage IS NULL AND type_cdr = 2; + +UPDATE llx_holiday SET ref = rowid WHERE ref IS NULL; diff --git a/htdocs/install/mysql/tables/llx_holiday.sql b/htdocs/install/mysql/tables/llx_holiday.sql index f6994810021..47c68647ffb 100644 --- a/htdocs/install/mysql/tables/llx_holiday.sql +++ b/htdocs/install/mysql/tables/llx_holiday.sql @@ -32,9 +32,9 @@ date_debut DATE NOT NULL, date_fin DATE NOT NULL, halfday integer DEFAULT 0, -- 0=start morning and end afternoon, -1=start afternoon end afternoon, 1=start morning and end morning, 2=start afternoon and end morning statut integer NOT NULL DEFAULT '1', -fk_validator integer NOT NULL, -date_valid DATETIME DEFAULT NULL, -fk_user_valid integer DEFAULT NULL, +fk_validator integer NOT NULL, -- who should approve +date_valid DATETIME DEFAULT NULL, -- date approval +fk_user_valid integer DEFAULT NULL, -- user approval date_refuse DATETIME DEFAULT NULL, fk_user_refuse integer DEFAULT NULL, date_cancel DATETIME DEFAULT NULL, diff --git a/htdocs/langs/en_US/holiday.lang b/htdocs/langs/en_US/holiday.lang index 1411ae3ad56..8cf5ec2c1e6 100644 --- a/htdocs/langs/en_US/holiday.lang +++ b/htdocs/langs/en_US/holiday.lang @@ -122,3 +122,8 @@ HolidaysCanceledBody=Your leave request for %s to %s has been canceled. FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
0: Not followed by a counter. NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests \ No newline at end of file From 61ab507ba43092808a61cc10e6a5edb8e5948251 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 18:53:00 +0200 Subject: [PATCH 167/769] Fix navigation --- htdocs/holiday/document.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/holiday/document.php b/htdocs/holiday/document.php index 655a3ff5d2a..5f33e24e8c6 100644 --- a/htdocs/holiday/document.php +++ b/htdocs/holiday/document.php @@ -111,7 +111,7 @@ if ($object->id) $linkback=''.$langs->trans("BackToList").''; - dol_banner_tab($object, 'id', $linkback, 1, 'rowid', 'ref'); + dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref'); print '
'; From af18e1b0431cc361b750099690a0870f60ab56e9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Oct 2018 19:38:45 +0200 Subject: [PATCH 168/769] FIX XSS --- htdocs/expedition/stats/month.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/expedition/stats/month.php b/htdocs/expedition/stats/month.php index 27b01cc6f55..f716e06a5b2 100644 --- a/htdocs/expedition/stats/month.php +++ b/htdocs/expedition/stats/month.php @@ -27,6 +27,8 @@ require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php'; require_once DOL_DOCUMENT_ROOT.'/expedition/class/expeditionstats.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; +$year = GETPOST('year', 'int'); + /* * View @@ -39,10 +41,10 @@ $HEIGHT=DolGraph::getDefaultGraphSizeForStats('height'); $mesg = ''; -print load_fiche_titre($langs->trans("StatisticsOfSendings").' '.$_GET["year"], $mesg); +print load_fiche_titre($langs->trans("StatisticsOfSendings").' '.$year, $mesg); $stats = new ExpeditionStats($db); -$data = $stats->getNbExpeditionByMonth($_GET["year"]); +$data = $stats->getNbExpeditionByMonth($year); dol_mkdir($conf->expedition->dir_temp); From eb0b0baf4081e97f37b25c043c6dd5cb3c1ef434 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 25 Oct 2018 21:36:01 +0200 Subject: [PATCH 169/769] code comment expedition class --- htdocs/expedition/class/expedition.class.php | 177 +++++++++++++++---- 1 file changed, 138 insertions(+), 39 deletions(-) diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 77df09ee276..d21e21c1624 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -77,14 +77,39 @@ class Expedition extends CommonObject public $picto = 'sending'; public $socid; + + /** + * @var string Customer ref + */ public $ref_customer; + + /** + * @var string internal ref + */ public $ref_int; + public $brouillon; + + /** + * @var int warehouse id + */ public $entrepot_id; public $lines=array(); + + /** + * @var string Tracking number + */ public $tracking_number; + + /** + * @var string Tracking url + */ public $tracking_url; public $billed; + + /** + * @var string name of pdf model + */ public $model_pdf; public $trueWeight; @@ -2343,14 +2368,19 @@ class ExpeditionLigne extends CommonObjectLine */ public $table_element='expeditiondet'; + /** + * @deprecated + * @see fk_origin_line + */ + public $origin_line_id; + /** * @var int ID */ public $fk_origin_line; /** - * Id of shipment - * @var int + * @var int Id of shipment */ public $fk_expedition; @@ -2359,51 +2389,120 @@ class ExpeditionLigne extends CommonObjectLine */ public $db; - // From llx_expeditiondet - var $qty; - var $qty_shipped; - var $fk_product; - var $detail_batch; - /** - * Id of warehouse - * @var int - */ + /** + * @var float qty asked From llx_expeditiondet + */ + public $qty; + + /** + * @var float qty shipped + */ + public $qty_shipped; + + /** + * @var int Id of product + */ + public $fk_product; + public $detail_batch; + + /** + * @var int Id of warehouse + */ public $entrepot_id; - // From llx_commandedet or llx_propaldet - var $qty_asked; + /** + * @var float qty asked From llx_commandedet or llx_propaldet + */ + public $qty_asked; + + /** + * @deprecated + * @see product_ref + */ + public $ref; + + /** + * @var string product ref + */ public $product_ref; - public $product_label; - public $product_desc; - - // Invoicing - var $remise_percent; - var $total_ht; // Total net of tax - var $total_ttc; // Total with tax - var $total_tva; // Total VAT - var $total_localtax1; // Total Local tax 1 - var $total_localtax2; // Total Local tax 2 - - - - // Deprecated - /** - * @deprecated - * @see fk_origin_line - */ - var $origin_line_id; - /** - * @deprecated - * @see product_ref - */ - var $ref; /** * @deprecated * @see product_label */ - var $libelle; + public $libelle; + + /** + * @var string product label + */ + public $product_label; + + /** + * @var string product description + * @deprecated + * @see product_desc + */ + public $desc; + + /** + * @var string product description + */ + public $product_desc; + + /** + * @var float weight + */ + public $weight; + public $weight_units; + + /** + * @var float weight + */ + public $length; + public $length_units; + + /** + * @var float weight + */ + public $surface; + public $surface_units; + + /** + * @var float weight + */ + public $volume; + public $volume_units; + + // Invoicing + public $remise_percent; + public $tva_tx; + + /** + * @var float total without tax + */ + public $total_ht; + + /** + * @var float total with tax + */ + public $total_ttc; + + /** + * @var float total vat + */ + public $total_tva; + + /** + * @var float total localtax 1 + */ + public $total_localtax1; + + /** + * @var float total localtax 2 + */ + public $total_localtax2; + /** * Constructor @@ -2454,7 +2553,7 @@ class ExpeditionLigne extends CommonObjectLine * * @param User $user User that modify * @param int $notrigger 1 = disable triggers - * @return int <0 if KO, line id >0 if OK + * @return int <0 if KO, line id >0 if OK */ function insert($user=null, $notrigger=0) { From 8a9b9f173657f6111bfa6a8ff461a2d2ecb02d41 Mon Sep 17 00:00:00 2001 From: atm-john Date: Thu, 25 Oct 2018 21:53:48 +0200 Subject: [PATCH 170/769] Fix title --- htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php b/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php index ad32f1b9aa8..ae80389bd3a 100644 --- a/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php +++ b/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php @@ -68,7 +68,7 @@ $(document).ready(function(){ modal: true, height: windowHeight, width: windowWidth, - title: "trans('LinesToImport'); ?>", + title: "transnoentities('LinesToImport'); ?>", buttons: { "trans('Import'); ?>": function() { $( this ).dialog( "close" ); From 21c441540cd7cc29321864c25ce9b033364106a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 25 Oct 2018 21:57:19 +0200 Subject: [PATCH 171/769] add string cast --- htdocs/accountancy/admin/importaccounts.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/accountancy/admin/importaccounts.php b/htdocs/accountancy/admin/importaccounts.php index 752e1c18de9..a14509a2aee 100644 --- a/htdocs/accountancy/admin/importaccounts.php +++ b/htdocs/accountancy/admin/importaccounts.php @@ -2,6 +2,7 @@ /* Copyright (C) 2013-2014 Olivier Geffroy * Copyright (C) 2013-2017 Alexandre Spangaro * Copyright (C) 2014 Florian Henry + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -71,10 +72,10 @@ if ($_POST["action"] == 'import') { $accounting = new AccountingAccount($db); - $monLabel = GETPOST('label' . $maLigneCochee); - $monParentAccount = GETPOST('AccountParent' . $maLigneCochee); - $monType = GETPOST('pcgType' . $maLigneCochee); - $monSubType = GETPOST('pcgSubType' . $maLigneCochee); + $monLabel = (string) GETPOST('label' . $maLigneCochee); + $monParentAccount = (string) GETPOST('AccountParent' . $maLigneCochee); + $monType = (string) GETPOST('pcgType' . $maLigneCochee); + $monSubType = (string) GETPOST('pcgSubType' . $maLigneCochee); $accounting->fk_pcg_version = $obj->pcg_version; $accounting->account_number = $maLigneCochee; From 84c30280d3774b481ffffed8ce77ad3662193caf Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Thu, 25 Oct 2018 21:57:08 +0200 Subject: [PATCH 172/769] change the unlink icon to fontawesome icon On the project summary page, the unlink icon was still an image I change to that icon https://fontawesome.com/icons/unlink?style=solid. --- htdocs/projet/element.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 489c5d04be4..b6398068db1 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -873,7 +873,7 @@ foreach ($listofreferent as $key => $value) { if (empty($conf->global->PROJECT_DISABLE_UNLINK_FROM_OVERVIEW) || $user->admin) // PROJECT_DISABLE_UNLINK_FROM_OVERVIEW is empty by defaut, so this test true { - print '' . img_picto($langs->trans('Unlink'), 'editdelete') . ''; + print '' . img_picto($langs->trans('Unlink'), 'unlink') . ''; } } print "\n"; From 52b7d60a0ffc858d0e3b4d70aa622b55720280e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 26 Oct 2018 08:11:27 +0200 Subject: [PATCH 173/769] use strict compare with boolean --- htdocs/holiday/class/holiday.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index 26e11383b9d..bc10ce5d53b 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -4,6 +4,7 @@ * Copyright (C) 2012-2016 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2016 Juanjo Menent + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -188,7 +189,7 @@ class Holiday extends CommonObject $mybool|=@include_once $dir.$file; } - if (! $mybool) + if ($mybool === false) { dol_print_error('',"Failed to include file ".$file); return ''; From cae83cd8e790c17ccf7beb950559dded6deee507 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 11:10:04 +0200 Subject: [PATCH 174/769] Add solution to translate --- htdocs/modulebuilder/template/class/myobject.class.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index 9f180343f5b..e69a4a5dbb2 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -182,7 +182,7 @@ class MyObject extends CommonObject */ public function __construct(DoliDB $db) { - global $conf, $user; + global $conf, $langs, $user; $this->db = $db; @@ -197,6 +197,9 @@ class MyObject extends CommonObject unset($this->fields[$key]); } } + + // Translate some data + $this->fields['status']['arrayofkeyval']=array(0=>$langs->trans('Draft'), 1=>$langs->trans('Active'), -1=>$langs->trans('Cancel')); } /** From 2ce7429735345ee057b1faafc9a3e1afe376e760 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 12:09:52 +0200 Subject: [PATCH 175/769] Remove Google advert --- build/doxygen/doxygen_footer.html | 41 ++++++++++--------------------- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/build/doxygen/doxygen_footer.html b/build/doxygen/doxygen_footer.html index a6d5bdfb293..8ffdc5341fe 100644 --- a/build/doxygen/doxygen_footer.html +++ b/build/doxygen/doxygen_footer.html @@ -3,42 +3,27 @@ File added into doxygen generated documentation --> - - - - - + - -
- - -
-
+ + + + + + From 0ba86d4e5b8ca0e3cc849c16ac63b4fcc2734b7e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 12:22:31 +0200 Subject: [PATCH 176/769] Trans --- htdocs/langs/en_US/projects.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index ce94a6dcc46..ec2061392a1 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -191,7 +191,7 @@ AssignTaskToUser=Assign task to %s SelectTaskToAssign=Select task to assign... AssignTask=Assign ProjectOverview=Overview -ManageTasks=Use projects to follow tasks and time +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) ManageOpportunitiesStatus=Use projects to follow leads/opportinuties ProjectNbProjectByMonth=No. of created projects by month ProjectNbTaskByMonth=No. of created tasks by month From 5d249d71ca861276c6915347061510bc7c62caf7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 14:38:26 +0200 Subject: [PATCH 177/769] Fix menu at wrong place --- htdocs/core/menus/standard/eldy.lib.php | 17 ++++++++--------- htdocs/theme/eldy/style.css.php | 2 +- htdocs/theme/md/style.css.php | 2 +- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 562ed99a020..468579f6eb4 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -1380,7 +1380,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $titlenew = $langs->trans("NewLead"); } - // Project affected to user + // Project assigned to user $newmenu->add("/projet/index.php?leftmenu=projects".($search_project_user?'&search_project_user='.$search_project_user:''), $titleboth, 0, $user->rights->projet->lire, '', $mainmenu, 'projects'); $newmenu->add("/projet/card.php?leftmenu=projects&action=create".($search_project_user?'&search_project_user='.$search_project_user:''), $titlenew, 1, $user->rights->projet->creer); @@ -1398,9 +1398,15 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add('/projet/list.php?mainmenu=project&leftmenu=list&search_opp_status=openedopp&search_status=99', $langs->trans("List"), 2, $showmode); } - // All project i have permission on $newmenu->add("/projet/stats/index.php?leftmenu=projects", $langs->trans("Statistics"), 1, $user->rights->projet->lire); + // Categories + if (! empty($conf->categorie->enabled)) + { + $langs->load("categories"); + $newmenu->add("/categories/index.php?leftmenu=cat&type=6", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat'); + } + if (empty($conf->global->PROJECT_HIDE_TASKS)) { // Project affected to user @@ -1411,13 +1417,6 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $newmenu->add("/projet/activity/perweek.php?leftmenu=tasks".($search_project_user?'&search_project_user='.$search_project_user:''), $langs->trans("NewTimeSpent"), 0, $user->rights->projet->lire); } - - // Categories - if (! empty($conf->categorie->enabled)) - { - $langs->load("categories"); - $newmenu->add("/categories/index.php?leftmenu=cat&type=6", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat'); - } } } diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index d9ad2a590ac..9eba59317bc 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1856,7 +1856,7 @@ foreach($mainmenuusedarray as $val) } form#login { padding-bottom: 30px; - font-size: 13px; + font-size: 14px; vertical-align: middle; } .login_table_title { diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 2b760fcd894..80a79b0245a 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1867,7 +1867,7 @@ a.tmenuimage { } form#login { padding-bottom: 30px; - font-size: 13px; + font-size: 14px; vertical-align: middle; } .login_table_title { From 20d7c8bb8cd714c2b572db70be4b20a0dd59902e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 15:01:50 +0200 Subject: [PATCH 178/769] FIX Total of timespent --- htdocs/core/js/timesheet.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/htdocs/core/js/timesheet.js b/htdocs/core/js/timesheet.js index 44180b42acb..3bd93555d76 100644 --- a/htdocs/core/js/timesheet.js +++ b/htdocs/core/js/timesheet.js @@ -222,20 +222,21 @@ function updateTotal(days,mode) else jQuery('.totalDay'+days).removeClass("bold"); jQuery('.totalDay'+days).text(pad(total.getHours())+':'+pad(total.getMinutes())); - var total = new Date(0); - total.setHours(0); - total.setMinutes(0); + var totalhour = 0; + var totalmin = 0; for (var i=0; i<7; i++) { var taskTime= new Date(0); result=parseTime(jQuery('.totalDay'+i).text(),taskTime); if (result >= 0) { - total.setHours(total.getHours()+taskTime.getHours()); - total.setMinutes(total.getMinutes()+taskTime.getMinutes()); + totalhour = totalhour + taskTime.getHours(); + totalmin = totalmin + taskTime.getMinutes(); } } - jQuery('.totalDayAll').text(pad(total.getHours())+':'+pad(total.getMinutes())); + morehours = Math.floor(totalmin / 60); + totalmin = totalmin % 60; + jQuery('.totalDayAll').text(pad(morehours + totalhour)+':'+pad(totalmin)); } else { From 35421d135a0a638987ec774df0194bca23623783 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 15:01:50 +0200 Subject: [PATCH 179/769] FIX Total of timespent Conflicts: htdocs/core/js/timesheet.js --- htdocs/core/js/timesheet.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/htdocs/core/js/timesheet.js b/htdocs/core/js/timesheet.js index ae7d839919c..aaec6971e2f 100644 --- a/htdocs/core/js/timesheet.js +++ b/htdocs/core/js/timesheet.js @@ -217,20 +217,21 @@ function updateTotal(days,mode) else jQuery('.totalDay'+days).removeClass("bold"); jQuery('.totalDay'+days).text(pad(total.getHours())+':'+pad(total.getMinutes())); - var total = new Date(0); - total.setHours(0); - total.setMinutes(0); + var totalhour = 0; + var totalmin = 0; for (var i=0; i<7; i++) { var taskTime= new Date(0); result=parseTime(jQuery('.totalDay'+i).text(),taskTime); if (result >= 0) { - total.setHours(total.getHours()+taskTime.getHours()); - total.setMinutes(total.getMinutes()+taskTime.getMinutes()); + totalhour = totalhour + taskTime.getHours(); + totalmin = totalmin + taskTime.getMinutes(); } } - jQuery('.totalDayAll').text(pad(total.getHours())+':'+pad(total.getMinutes())); + morehours = Math.floor(totalmin / 60); + totalmin = totalmin % 60; + jQuery('.totalDayAll').text(pad(morehours + totalhour)+':'+pad(totalmin)); } else { From 852b06978516e512589392b1bf226a1a574238f8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 15:46:17 +0200 Subject: [PATCH 180/769] Fix reponsive in stats pages --- htdocs/adherents/stats/index.php | 2 ++ htdocs/comm/propal/stats/index.php | 3 ++- htdocs/commande/stats/index.php | 2 ++ htdocs/compta/deplacement/stats/index.php | 3 ++- htdocs/compta/facture/stats/index.php | 3 ++- htdocs/compta/salaries/stats/index.php | 2 ++ htdocs/don/stats/index.php | 2 ++ htdocs/expedition/stats/index.php | 3 +++ htdocs/expensereport/stats/index.php | 3 ++- htdocs/fichinter/stats/index.php | 2 ++ htdocs/projet/stats/index.php | 2 ++ htdocs/projet/tasks/stats/index.php | 3 +++ 12 files changed, 26 insertions(+), 4 deletions(-) diff --git a/htdocs/adherents/stats/index.php b/htdocs/adherents/stats/index.php index e3bc7287864..69958f60d76 100644 --- a/htdocs/adherents/stats/index.php +++ b/htdocs/adherents/stats/index.php @@ -167,6 +167,7 @@ print '

'; $data = $stats->getAllByYear(); +print '
'; print ''; print ''; print ''; @@ -207,6 +208,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/comm/propal/stats/index.php b/htdocs/comm/propal/stats/index.php index b7f6bd68493..fc2b9c17ba4 100644 --- a/htdocs/comm/propal/stats/index.php +++ b/htdocs/comm/propal/stats/index.php @@ -276,6 +276,7 @@ print '
'; print '

'; //} +print '
'; print ''; print ''; print ''; @@ -318,7 +319,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; - +print '
'; print '
'; diff --git a/htdocs/commande/stats/index.php b/htdocs/commande/stats/index.php index 49e7d5cfb60..d85b30792be 100644 --- a/htdocs/commande/stats/index.php +++ b/htdocs/commande/stats/index.php @@ -302,6 +302,7 @@ print ''; print '

'; +print '
'; print ''; print ''; print ''; @@ -346,6 +347,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/compta/deplacement/stats/index.php b/htdocs/compta/deplacement/stats/index.php index 193e2c7e9a9..207e19fc265 100644 --- a/htdocs/compta/deplacement/stats/index.php +++ b/htdocs/compta/deplacement/stats/index.php @@ -256,6 +256,7 @@ print ''; print ''; print '

'; +print '
'; print ''; print ''; print ''; @@ -288,7 +289,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; - +print '
'; print '
'; diff --git a/htdocs/compta/facture/stats/index.php b/htdocs/compta/facture/stats/index.php index 04603076b07..cbf147a8dff 100644 --- a/htdocs/compta/facture/stats/index.php +++ b/htdocs/compta/facture/stats/index.php @@ -280,6 +280,7 @@ print '
'; print '

'; //} +print '
'; print ''; print ''; print ''; @@ -323,7 +324,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; - +print '
'; print '
'; diff --git a/htdocs/compta/salaries/stats/index.php b/htdocs/compta/salaries/stats/index.php index d5e3e226615..edb48edc303 100644 --- a/htdocs/compta/salaries/stats/index.php +++ b/htdocs/compta/salaries/stats/index.php @@ -214,6 +214,7 @@ print ''; print ''; print '

'; +print '
'; print ''; print ''; print ''; @@ -247,6 +248,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/don/stats/index.php b/htdocs/don/stats/index.php index 224e674e9da..e71212e806a 100644 --- a/htdocs/don/stats/index.php +++ b/htdocs/don/stats/index.php @@ -259,6 +259,7 @@ print '
'; print '

'; //} +print '
'; print ''; print ''; print ''; @@ -293,6 +294,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/expedition/stats/index.php b/htdocs/expedition/stats/index.php index a167a447d7d..43cf63cd3b3 100644 --- a/htdocs/expedition/stats/index.php +++ b/htdocs/expedition/stats/index.php @@ -259,6 +259,8 @@ print '
'; print '

'; //} + +print '
'; print ''; print ''; print ''; @@ -298,6 +300,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/expensereport/stats/index.php b/htdocs/expensereport/stats/index.php index b97129a5779..e53757be1db 100644 --- a/htdocs/expensereport/stats/index.php +++ b/htdocs/expensereport/stats/index.php @@ -246,6 +246,7 @@ print ''; print ''; print '

'; +print '
'; print ''; print ''; print ''; @@ -281,7 +282,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; - +print '
'; print '
'; diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index b3d5247e67d..f4df5f3c5f8 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -271,6 +271,7 @@ print '
'; print '

'; //} +print '
'; print ''; print ''; print ''; @@ -316,6 +317,7 @@ foreach ($data as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/projet/stats/index.php b/htdocs/projet/stats/index.php index 46c6248ebd3..831917a76f6 100644 --- a/htdocs/projet/stats/index.php +++ b/htdocs/projet/stats/index.php @@ -302,6 +302,7 @@ print ''; print ''; print '

'; +print '
'; print ''; print ''; print ''; @@ -348,6 +349,7 @@ foreach ($data_all_year as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; diff --git a/htdocs/projet/tasks/stats/index.php b/htdocs/projet/tasks/stats/index.php index 68b52339ebb..020a7969a64 100644 --- a/htdocs/projet/tasks/stats/index.php +++ b/htdocs/projet/tasks/stats/index.php @@ -167,6 +167,8 @@ print ''; print ''; print '

'; + +print '
'; print ''; print ''; print ''; @@ -195,6 +197,7 @@ foreach ($data_all_year as $val) } print '
'.$langs->trans("Year").'
'; +print '
'; print '
'; From d347cf3a85b04ea11d8a2cfae348948dbac446f6 Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Fri, 26 Oct 2018 16:18:27 +0200 Subject: [PATCH 181/769] set a message --- htdocs/adherents/card.php | 66 ++++++++++++++++--------------- htdocs/core/lib/functions.lib.php | 2 +- 2 files changed, 36 insertions(+), 32 deletions(-) diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index c9a8eebf0fe..2aceb437d23 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -634,25 +634,27 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse)) { + if (empty($labeltouse) || (int)$labeltouse === -1) { //fallback on the old configuration. - $subject = $conf->global->ADHERENT_MAIL_VALID_SUBJECT; - $msg = $conf->global->ADHERENT_MAIL_VALID; + setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); + $error++; + }else{ + $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); + $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnValid()), $substitutionarray, $outputlangs); + + $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; + + $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); + if ($result < 0) + { + $error++; + setEventMessages($object->error, $object->errors, 'errors'); + } } - $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); - complete_substitutions_array($substitutionarray, $outputlangs, $object); - $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); - $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnValid()), $substitutionarray, $outputlangs); - $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; - - $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - if ($result < 0) - { - $error++; - setEventMessages($object->error, $object->errors, 'errors'); - } } } else @@ -713,26 +715,28 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse)) { + if (empty($labeltouse) || (int)$labeltouse === -1) { //fallback on the old configuration. - $subject = $conf->global->ADHERENT_MAIL_RESIL_SUBJECT; - $msg = $conf->global->ADHERENT_MAIL_RESIL; + setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); + $error++; + }else{ + $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); + $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnResiliate()), $substitutionarray, $outputlangs); + + $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; + + $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); + if ($result < 0) + { + $error++; + setEventMessages($object->error, $object->errors, 'errors'); + } } + } - $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); - complete_substitutions_array($substitutionarray, $outputlangs, $object); - $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); - $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnResiliate()), $substitutionarray, $outputlangs); - $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; - - $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - } - if ($result < 0) - { - $error++; - setEventMessages($object->error, $object->errors, 'errors'); - } } else { diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 3ec1f226993..6649bf17bbb 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -6555,7 +6555,7 @@ function get_htmloutput_errors($mesgstring='', $mesgarray='', $keepembedded=0) * @see dol_htmloutput_errors * @see setEventMessages */ -function dol_htmloutput_mesg($mesgstring='',$mesgarray='', $style='ok', $keepembedded=0) +function dol_htmloutput_mesg($mesgstring = '',$mesgarray = [], $style = 'ok', $keepembedded=0) { if (empty($mesgstring) && (! is_array($mesgarray) || count($mesgarray) == 0)) return; From d800fe925625790ef14680a068936eadaf0b2eb8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 16:21:01 +0200 Subject: [PATCH 182/769] FIX extrafields of taks not visible in creation --- htdocs/projet/tasks.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index 145c1742077..94a51ef3d01 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -490,7 +490,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third // Planned workload print ''.$langs->trans("PlannedWorkload").''; - print $form->select_duration('planned_workload', $planned_workload?$planned_workload : $object->planned_workload,0,'text'); + print $form->select_duration('planned_workload', $planned_workload?$planned_workload : 0, 0, 'text'); print ''; // Progress @@ -506,11 +506,12 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third // Other options $parameters=array(); - $reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$object,$action); // Note that $action and $object may have been modified by hook + $reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$taskstatic,$action); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; + if (empty($reshook) && ! empty($extrafields_task->attribute_label)) { - print $object->showOptionals($extrafields_task,'edit'); + print $taskstatic->showOptionals($extrafields_task,'edit'); // Do not use $object here that is object of project } print ''; From 087b68948d6afc8e95366dbdd448d9c579a327cd Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 17:32:32 +0200 Subject: [PATCH 183/769] Fix: do not use point for graph with too many points. --- htdocs/compta/bank/graph.php | 8 ++++---- htdocs/core/class/dolgraph.class.php | 14 +++++++------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/htdocs/compta/bank/graph.php b/htdocs/compta/bank/graph.php index 7dad720139a..517c616ec28 100644 --- a/htdocs/compta/bank/graph.php +++ b/htdocs/compta/bank/graph.php @@ -265,7 +265,7 @@ else unset($amounts); } - // Tableau 2 + // Graph Balance for the year if ($mode == 'standard') { @@ -384,7 +384,7 @@ else $px2->SetTitle($title); $px2->SetWidth($WIDTH); $px2->SetHeight($HEIGHT); - $px2->SetType(array('lines','lines','lines')); + $px2->SetType(array('linesnopoint','linesnopoint','linesnopoint')); $px2->setBgColor('onglet'); $px2->setBgColorGrid(array(255,255,255)); $px2->SetHideXGrid(true); @@ -403,7 +403,7 @@ else unset($amounts); } - // Tableau 3 - All time line + // Graph 3 - Balance for all time line if ($mode == 'showalltime') { @@ -500,7 +500,7 @@ else $px3->SetTitle($title); $px3->SetWidth($WIDTH); $px3->SetHeight($HEIGHT); - $px3->SetType(array('lines','lines','lines')); + $px3->SetType(array('linesnopoint','linesnopoint','linesnopoint')); $px3->setBgColor('onglet'); $px3->setBgColorGrid(array(255,255,255)); $px3->SetPrecisionY(0); diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index cdf66aabb64..195bec09daf 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -704,7 +704,7 @@ class DolGraph // Create graph $classname=''; if (! isset($this->type[0]) || $this->type[0] == 'bars') $classname='BarPlot'; // Only one type (first one) is supported by artichow - else if ($this->type[0] == 'lines') $classname='LinePlot'; + else if ($this->type[0] == 'lines' || $this->type[0] == 'linesnopoint') $classname='LinePlot'; else $classname='TypeUnknown'; include_once ARTICHOW_PATH.$classname.'.class.php'; @@ -809,7 +809,7 @@ class DolGraph $plot->SetYMin($this->MinValue); } - if ($this->type[0] == 'lines') + if ($this->type[0] == 'lines' || $this->type[0] == 'linesnopoint') { $color=new Color($this->datacolor[$i][0],$this->datacolor[$i][1],$this->datacolor[$i][2],20); $colorbis=new Color(min($this->datacolor[$i][0]+20,255),min($this->datacolor[$i][1]+20,255),min($this->datacolor[$i][2]+20,255),60); @@ -840,8 +840,8 @@ class DolGraph // solve a bug in Artichow with UTF8 if (count($this->Legend)) { - if ($this->type[0] == 'bars') $group->legend->add($plot, $this->Legend[$i], LEGEND_BACKGROUND); - if ($this->type[0] == 'lines') $group->legend->add($plot, $this->Legend[$i], LEGEND_LINE); + if ($this->type[0] == 'bars') $group->legend->add($plot, $this->Legend[$i], LEGEND_BACKGROUND); + if ($this->type[0] == 'lines' || $this->type[0] == 'linesnopoint') $group->legend->add($plot, $this->Legend[$i], LEGEND_LINE); } $group->add($plot); @@ -880,7 +880,7 @@ class DolGraph * @param string $fileurl Url path to show image if saved onto disk. Never used here. * @return void */ - private function draw_jflot($file,$fileurl) + private function draw_jflot($file, $fileurl) { // phpcs:enable global $artichow_defaultfont; @@ -1084,7 +1084,7 @@ class DolGraph $color=sprintf("%02x%02x%02x",$this->datacolor[$i][0],$this->datacolor[$i][1],$this->datacolor[$i][2]); $this->stringtoshow.='{ '; if (! isset($this->type[$i]) || $this->type[$i] == 'bars') $this->stringtoshow.='bars: { lineWidth: 1, show: true, align: "'.($i==$firstlot?'center':'left').'", barWidth: 0.5 }, '; - if (isset($this->type[$i]) && $this->type[$i] == 'lines') $this->stringtoshow.='lines: { show: true, fill: false }, points: { show: true }, '; + if (isset($this->type[$i]) && ($this->type[$i] == 'lines' || $this->type[$i] == 'linesnopoint')) $this->stringtoshow.='lines: { show: true, fill: false }, points: { show: '.($this->type[$i] == 'linesnopoint' ? 'false' : 'true').' }, '; $this->stringtoshow.='color: "#'.$color.'", label: "'.(isset($this->Legend[$i]) ? dol_escape_js($this->Legend[$i]) : '').'", data: d'.$i.' }'; $i++; } @@ -1108,7 +1108,7 @@ class DolGraph // Background color $color1=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[0],$this->bgcolorgrid[2]); $color2=sprintf("%02x%02x%02x",$this->bgcolorgrid[0],$this->bgcolorgrid[1],$this->bgcolorgrid[2]); - $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] }, borderWidth: 1, borderColor: \'#f3f3f3\', tickColor : \'#f3f3f3\' }'."\n"; + $this->stringtoshow.=', grid: { hoverable: true, backgroundColor: { colors: ["#'.$color1.'", "#'.$color2.'"] }, borderWidth: 1, borderColor: \'#eee\', tickColor : \'#f3f3f3\' }'."\n"; //$this->stringtoshow.=', shadowSize: 20'."\n"; TODO Uncommet this $this->stringtoshow.='});'."\n"; $this->stringtoshow.='}'."\n"; From 866a7df510fe6528c48a20eadd32127c0b7a4ad3 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 26 Oct 2018 18:23:48 +0200 Subject: [PATCH 184/769] FIX $forceentity is not used, replace by $currentobject if needed --- htdocs/core/lib/functions.lib.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index d15d07e4c6e..ef9703cf946 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -115,16 +115,16 @@ function getDoliDBInstance($type, $host, $user, $pass, $name, $port) * 'c_paiement', 'c_payment_term', ... * @param int $shared 0=Return id of current entity only, * 1=Return id of current entity + shared entities (default) - * @param int $forceentity Entity id + * @param object $currentobject Current object if needed * @return mixed Entity id(s) to use */ -function getEntity($element, $shared=1, $forceentity=null) +function getEntity($element, $shared=1, $currentobject=null) { global $conf, $mc; if (is_object($mc)) { - return $mc->getEntity($element, $shared, $forceentity); + return $mc->getEntity($element, $shared, $currentobject); } else { From 35ab3c9aadbbe567279b9019ffac6489257d16dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 26 Oct 2018 18:24:04 +0200 Subject: [PATCH 185/769] Update holiday.php --- htdocs/admin/holiday.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/holiday.php b/htdocs/admin/holiday.php index c02c9bd480d..c1c5fe58b45 100644 --- a/htdocs/admin/holiday.php +++ b/htdocs/admin/holiday.php @@ -2,6 +2,7 @@ /* Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * Copyright (C) 2018 Charlene Benke + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -513,7 +514,6 @@ print ''; print '
'; print ''; - } From d3893b8b959ca979c8ec44f9d2a73f9893c91678 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 19:00:24 +0200 Subject: [PATCH 186/769] Debug v9 --- htdocs/core/class/html.formprojet.class.php | 5 +++- .../install/mysql/migration/8.0.0-9.0.0.sql | 3 ++ htdocs/install/mysql/tables/llx_paiement.sql | 2 +- .../mysql/tables/llx_payment_salary.sql | 3 +- .../mysql/tables/llx_payment_various.sql | 3 +- htdocs/langs/en_US/projects.lang | 28 +++++++++---------- htdocs/projet/element.php | 6 ++-- htdocs/projet/tasks/time.php | 8 +++++- 8 files changed, 37 insertions(+), 21 deletions(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index b2166453bbd..bc62ebc7604 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -490,7 +490,7 @@ class FormProjets if ($table_element == 'projet_task') return ''; // Special cas of element we never link to a project (already always done) $linkedtothirdparty=false; - if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','chargesociales'))) $linkedtothirdparty=true; + if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','payment_salary','payment_various','chargesociales'))) $linkedtothirdparty=true; $sqlfilter=''; @@ -533,6 +533,9 @@ class FormProjets $sql = 'SELECT t.rowid, t.label as ref'; $projectkey='fk_origin'; break; + case "payment_salary": + $sql = "SELECT t.rowid, t.num_payment as ref"; // TODO In a future fill and use real ref field + break; case "payment_various": $sql = "SELECT t.rowid, t.num_payment as ref"; break; diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index f98c932943c..40660508ad6 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -72,8 +72,11 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); +ALTER TABLE llx_payment_salary ADD COLUMN ref varchar(30) NULL; ALTER TABLE llx_payment_salary ADD COLUMN fk_projet integer DEFAULT NULL after amount; +ALTER TABLE llx_payment_various ADD COLUMN ref varchar(30) NULL; + ALTER TABLE llx_categorie ADD COLUMN ref_ext varchar(255); ALTER TABLE llx_paiement ADD COLUMN ext_payment_id varchar(128); diff --git a/htdocs/install/mysql/tables/llx_paiement.sql b/htdocs/install/mysql/tables/llx_paiement.sql index 6eb6b28f695..25c0097f10e 100644 --- a/htdocs/install/mysql/tables/llx_paiement.sql +++ b/htdocs/install/mysql/tables/llx_paiement.sql @@ -21,7 +21,7 @@ create table llx_paiement ( rowid integer AUTO_INCREMENT PRIMARY KEY, - ref varchar(30) NOT NULL, -- payment reference number + ref varchar(30) NULL, -- payment reference number entity integer DEFAULT 1 NOT NULL, -- Multi company id datec datetime, -- date de creation tms timestamp, diff --git a/htdocs/install/mysql/tables/llx_payment_salary.sql b/htdocs/install/mysql/tables/llx_payment_salary.sql index 4fcbc233f33..c56e6459aa0 100644 --- a/htdocs/install/mysql/tables/llx_payment_salary.sql +++ b/htdocs/install/mysql/tables/llx_payment_salary.sql @@ -19,6 +19,7 @@ create table llx_payment_salary ( rowid integer AUTO_INCREMENT PRIMARY KEY, + ref varchar(30) NOT NULL, -- payment reference number tms timestamp, datec datetime, -- Create date fk_user integer NOT NULL, @@ -28,7 +29,7 @@ create table llx_payment_salary amount double(24,8) NOT NULL DEFAULT 0, fk_projet integer DEFAULT NULL, fk_typepayment integer NOT NULL, - num_payment varchar(50), -- ref + num_payment varchar(50), -- num cheque or other label varchar(255), datesp date, -- date start period dateep date, -- date end period diff --git a/htdocs/install/mysql/tables/llx_payment_various.sql b/htdocs/install/mysql/tables/llx_payment_various.sql index e719dae7d8c..d3351287e58 100644 --- a/htdocs/install/mysql/tables/llx_payment_various.sql +++ b/htdocs/install/mysql/tables/llx_payment_various.sql @@ -19,7 +19,8 @@ create table llx_payment_various ( rowid integer AUTO_INCREMENT PRIMARY KEY, - num_payment varchar(50), -- ref + ref varchar(30) NOT NULL, -- payment reference number + num_payment varchar(50), -- num cheque or other label varchar(255), tms timestamp, datec datetime, -- Create date diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index ec2061392a1..c83bccd19ad 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -79,20 +79,20 @@ GoToListOfTimeConsumed=Go to list of time consumed GoToListOfTasks=Go to list of tasks GoToGanttView=Go to Gantt view GanttView=Gantt View -ListProposalsAssociatedProject=List of the commercial proposals associated with the project -ListOrdersAssociatedProject=List of customer orders associated with the project -ListInvoicesAssociatedProject=List of customer invoices associated with the project -ListPredefinedInvoicesAssociatedProject=List of customer template invoices associated with project -ListSupplierOrdersAssociatedProject=List of supplier orders associated with the project -ListSupplierInvoicesAssociatedProject=List of supplier invoices associated with the project -ListContractAssociatedProject=List of contracts associated with the project -ListShippingAssociatedProject=List of shippings associated with the project -ListFichinterAssociatedProject=List of interventions associated with the project -ListExpenseReportsAssociatedProject=List of expense reports associated with the project -ListDonationsAssociatedProject=List of donations associated with the project -ListVariousPaymentsAssociatedProject=List of miscellaneous payments associated with the project -ListSalariesAssociatedProject=List of salaries associated with the project -ListActionsAssociatedProject=List of events associated with the project +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of customer orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of supplier orders related to the project +ListSupplierInvoicesAssociatedProject=List of supplier invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project ListTaskTimeUserProject=List of time consumed on tasks of project ListTaskTimeForTask=List of time consumed on task ActivityOnProjectToday=Activity on project today diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 2c64826853c..e0ecf9d6051 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -451,7 +451,7 @@ $listofreferent=array( 'disableamount'=>0, 'urlnew'=>DOL_URL_ROOT.'/compta/salaries/card.php?action=create&projectid='.$id, 'lang'=>'salaries', - 'buttonnew'=>'AddSalariesPayment', + 'buttonnew'=>'AddSalaryPayment', 'testnew'=>$user->rights->salaries->write, 'test'=>$conf->salaries->enabled && $user->rights->salaries->read), 'variouspayment'=>array( @@ -872,7 +872,9 @@ foreach ($listofreferent as $key => $value) { if (empty($conf->global->PROJECT_DISABLE_UNLINK_FROM_OVERVIEW) || $user->admin) // PROJECT_DISABLE_UNLINK_FROM_OVERVIEW is empty by defaut, so this test true { - print '' . img_picto($langs->trans('Unlink'), 'editdelete') . ''; + print ''; + print img_picto($langs->trans('Unlink'), 'unlink'); + print ''; } } print "\n"; diff --git a/htdocs/projet/tasks/time.php b/htdocs/projet/tasks/time.php index e432fcdf7fd..bcfc7bde557 100644 --- a/htdocs/projet/tasks/time.php +++ b/htdocs/projet/tasks/time.php @@ -399,6 +399,11 @@ if (($id > 0 || ! empty($ref)) || $projectidforalltimes > 0) print nl2br($projectstatic->description); print ''; + // Bill time ? + print ''.$langs->trans("BillTime").''; + print yn($projectstatic->bill_time); + print ''; + // Categories if($conf->categorie->enabled) { print ''.$langs->trans("Categories").''; @@ -1090,7 +1095,7 @@ if (($id > 0 || ! empty($ref)) || $projectidforalltimes > 0) if (isset($task_time->total_ht)) print price($valuebilled, 1, $langs, 1, -1, -1, $conf->currency); print ''; if (! $i) $totalarray['nbfield']++; - if (! $i) $totalarray['totalvaluefield']=$totalarray['nbfield']; + if (! $i) $totalarray['totalvaluebilledfield']=$totalarray['nbfield']; $totalarray['totalvaluebilled'] += $valuebilled; } @@ -1152,6 +1157,7 @@ if (($id > 0 || ! empty($ref)) || $projectidforalltimes > 0) } elseif ($totalarray['totaldurationfield'] == $i) print ''.convertSecondToTime($totalarray['totalduration'],'allhourmin').''; elseif ($totalarray['totalvaluefield'] == $i) print ''.price($totalarray['totalvalue']).''; + elseif ($totalarray['totalvaluebilledfield'] == $i) print ''.price($totalarray['totalvaluebilled']).''; else print ''; } print ''; From 622f31fd1e1cf9cc717b5bb8cb70e650adca9b6f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 19:01:42 +0200 Subject: [PATCH 187/769] Fix ref --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 40660508ad6..a7efecbdc5f 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -72,10 +72,10 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); -ALTER TABLE llx_payment_salary ADD COLUMN ref varchar(30) NULL; +ALTER TABLE llx_payment_salary ADD COLUMN ref varchar(30) NULL after rowid; ALTER TABLE llx_payment_salary ADD COLUMN fk_projet integer DEFAULT NULL after amount; -ALTER TABLE llx_payment_various ADD COLUMN ref varchar(30) NULL; +ALTER TABLE llx_payment_various ADD COLUMN ref varchar(30) NULL after rowid; ALTER TABLE llx_categorie ADD COLUMN ref_ext varchar(255); From 47ac420133f092f0f12dfe7b0bd8d5d5eeab9d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 26 Oct 2018 20:12:46 +0200 Subject: [PATCH 188/769] code comment html form class --- htdocs/core/class/html.form.class.php | 31 ++++++++++++++------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index c30dcec6e01..70ffa6ea006 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3283,17 +3283,17 @@ class Form if ($empty && empty($arraytypes['code'])) continue; if ($format == 0) print ''; } @@ -3806,18 +3806,18 @@ class Form { $more.=''.$input['label'].''."\n"; } - else if ($input['type'] == 'password') + elseif ($input['type'] == 'password') { $more.=''.$input['label'].''."\n"; } - else if ($input['type'] == 'select') + elseif ($input['type'] == 'select') { $more.=''; if (! empty($input['label'])) $more.=$input['label'].''; $more.=$this->selectarray($input['name'],$input['values'],$input['default'],1,0,0,$moreattr,0,0,0,'',$morecss); $more.=''."\n"; } - else if ($input['type'] == 'checkbox') + elseif ($input['type'] == 'checkbox') { $more.=''; $more.=''.$input['label'].' '; @@ -3828,7 +3828,7 @@ class Form $more.=' />'; $more.=''."\n"; } - else if ($input['type'] == 'radio') + elseif ($input['type'] == 'radio') { $i=0; foreach($input['values'] as $selkey => $selval) @@ -3844,7 +3844,7 @@ class Form $i++; } } - else if ($input['type'] == 'date') + elseif ($input['type'] == 'date') { $more.=''.$input['label'].''; $more.=''; @@ -3856,7 +3856,7 @@ class Form $formquestion[] = array('name'=>$input['name'].'hour'); $formquestion[] = array('name'=>$input['name'].'min'); } - else if ($input['type'] == 'other') + elseif ($input['type'] == 'other') { $more.=''; if (! empty($input['label'])) $more.=$input['label'].''; @@ -3864,7 +3864,7 @@ class Form $more.=''."\n"; } - else if ($input['type'] == 'onecolumn') + elseif ($input['type'] == 'onecolumn') { $more.=''; $more.=$input['value']; @@ -4589,6 +4589,7 @@ class Form * * @param string $selected preselected currency code * @param string $htmlname name of HTML select list + * @deprecated * @return void */ function select_currency($selected='',$htmlname='currency_id') @@ -4976,7 +4977,7 @@ class Form * @param int $fullday When a checkbox with this html name is on, hour and day are set with 00:00 or 23:59 * @param string $addplusone Add a link "+1 hour". Value must be name of another select_date field. * @param datetime $adddateof Add a link "Date of invoice" using the following date. - * @return string|null Nothing or string if nooutput is 1 + * @return string|void Nothing or string if nooutput is 1 * @deprecated * @see form_date, select_month, select_year, select_dayofweek */ @@ -5374,7 +5375,7 @@ class Form * if 'textselect' input hour is in text and input min is a combo * @param integer $minunderhours If 1, show minutes selection under the hours * @param int $nooutput Do not output html string but return it - * @return string|null + * @return string|void */ function select_duration($prefix, $iSecond='', $disabled=0, $typehour='select', $minunderhours=0, $nooutput=0) { From b80d2fa12de04de26a573a2529129e77b5d6bdf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 26 Oct 2018 21:09:46 +0200 Subject: [PATCH 189/769] fill empty catch with log --- .../doc/doc_generic_order_odt.modules.php | 2 +- .../doc/doc_generic_contract_odt.modules.php | 17 +- .../doc/doc_generic_shipment_odt.modules.php | 29 +- .../doc/doc_generic_invoice_odt.modules.php | 27 +- .../doc/doc_generic_product_odt.modules.php | 37 ++- .../doc/doc_generic_project_odt.modules.php | 266 +++++++++--------- .../task/doc/doc_generic_task_odt.modules.php | 45 +-- .../doc/doc_generic_proposal_odt.modules.php | 19 +- .../societe/doc/doc_generic_odt.modules.php | 15 +- .../doc/doc_generic_stock_odt.modules.php | 17 +- ..._generic_supplier_proposal_odt.modules.php | 27 +- .../user/doc/doc_generic_user_odt.modules.php | 22 +- .../doc/doc_generic_usergroup_odt.modules.php | 49 ++-- 13 files changed, 338 insertions(+), 234 deletions(-) diff --git a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php index dff597c5593..a849d2a2c7a 100644 --- a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php +++ b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php @@ -488,7 +488,7 @@ class doc_generic_order_odt extends ModelePDFCommandes else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); dol_syslog($e->getMessage(), LOG_INFO); return -1; diff --git a/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php b/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php index f70514b2912..5a19d821653 100644 --- a/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php +++ b/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php @@ -2,7 +2,8 @@ /* Copyright (C) 2010-2012 Laurent Destailleur * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2018 Ferran Marcet -* + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -354,6 +355,7 @@ class doc_generic_contract_odt extends ModelePDFContract catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -367,8 +369,9 @@ class doc_generic_contract_odt extends ModelePDFContract try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } foreach($tmparray as $key=>$value) @@ -384,8 +387,9 @@ class doc_generic_contract_odt extends ModelePDFContract $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -419,9 +423,11 @@ class doc_generic_contract_odt extends ModelePDFContract } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -445,6 +451,7 @@ class doc_generic_contract_odt extends ModelePDFContract } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -456,7 +463,7 @@ class doc_generic_contract_odt extends ModelePDFContract if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); return -1; } @@ -464,7 +471,7 @@ class doc_generic_contract_odt extends ModelePDFContract else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); return -1; } diff --git a/htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php b/htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php index 38696cb3cc2..6a1543af4cf 100644 --- a/htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php +++ b/htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php @@ -4,8 +4,8 @@ * Copyright (C) 2014 Marcos García * Copyright (C) 2016 Charlie Benke * Copyright (C) 2018 Philippe Grand - -* + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -347,6 +347,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -362,6 +363,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Make substitutions into odt of user info @@ -381,8 +383,9 @@ class doc_generic_shipment_odt extends ModelePdfExpedition $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Make substitutions into odt of mysoc @@ -402,8 +405,9 @@ class doc_generic_shipment_odt extends ModelePdfExpedition $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Make substitutions into odt of thirdparty @@ -421,8 +425,9 @@ class doc_generic_shipment_odt extends ModelePdfExpedition $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of object + external modules @@ -446,6 +451,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -478,9 +484,11 @@ class doc_generic_shipment_odt extends ModelePdfExpedition } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -488,7 +496,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition $odfHandler->mergeSegment($listlines); } } - catch(OdfException $e) + catch (OdfException $e) { $this->error=$e->getMessage(); dol_syslog($this->error, LOG_WARNING); @@ -502,8 +510,9 @@ class doc_generic_shipment_odt extends ModelePdfExpedition try { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -515,16 +524,18 @@ class doc_generic_shipment_odt extends ModelePdfExpedition if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php index a823bae2d4b..bfe22b93ae3 100644 --- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php +++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php @@ -1,9 +1,10 @@ -* Copyright (C) 2012 Regis Houssin -* Copyright (C) 2014 Marcos García -* Copyright (C) 2016 Charlie Benke -* + * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2014 Marcos García + * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -355,9 +356,10 @@ class doc_generic_invoice_odt extends ModelePDFFactures ) ); } - catch(Exception $e) + catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -371,8 +373,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -410,8 +413,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -444,9 +448,11 @@ class doc_generic_invoice_odt extends ModelePDFFactures } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -470,6 +476,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -483,14 +490,16 @@ class doc_generic_invoice_odt extends ModelePDFFactures $odfHandler->exportAsAttachedPDF($file); }catch (Exception $e){ $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php b/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php index 82b33d35240..979b6fbe7fd 100644 --- a/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php +++ b/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php @@ -1,7 +1,8 @@ * Copyright (C) 2012 Juanjo Menent -* + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -358,16 +359,17 @@ class doc_generic_product_odt extends ModelePDFProduct $odfHandler = new odf( $srctemplatepath, array( - 'PATH_TO_TMP' => $conf->produit->dir_temp, - 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. - 'DELIMITER_LEFT' => '{', - 'DELIMITER_RIGHT' => '}' + 'PATH_TO_TMP' => $conf->produit->dir_temp, + 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. + 'DELIMITER_LEFT' => '{', + 'DELIMITER_RIGHT' => '}' ) ); } - catch(Exception $e) + catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -382,8 +384,9 @@ class doc_generic_product_odt extends ModelePDFProduct try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -418,8 +421,9 @@ class doc_generic_product_odt extends ModelePDFProduct $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -440,11 +444,13 @@ class doc_generic_product_odt extends ModelePDFProduct { $listlines->setVars($key, $val, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } - catch(SegmentException $e) + catch (SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -452,7 +458,7 @@ class doc_generic_product_odt extends ModelePDFProduct } $odfHandler->mergeSegment($listlines); } - catch(OdfException $e) + catch (OdfException $e) { $this->error=$e->getMessage(); dol_syslog($this->error, LOG_WARNING); @@ -468,6 +474,7 @@ class doc_generic_product_odt extends ModelePDFProduct } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -479,16 +486,18 @@ class doc_generic_product_odt extends ModelePDFProduct if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index bc5da5e306b..d2fa94ceb1e 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -3,6 +3,7 @@ * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -596,10 +597,9 @@ class doc_generic_project_odt extends ModelePDFProjects 'DELIMITER_RIGHT' => '}' ) ); - } - catch(Exception $e) - { + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -641,8 +641,9 @@ class doc_generic_project_odt extends ModelePDFProjects $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -672,9 +673,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -721,9 +724,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlinestaskres->merge(); @@ -768,9 +773,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlinestasktime->merge(); @@ -806,9 +813,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlinestasktime->merge(); @@ -835,11 +844,13 @@ class doc_generic_project_odt extends ModelePDFProjects { $listtasksfiles->setVars($key, $val, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } - catch(SegmentException $e) + catch (SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listtasksfiles->merge(); @@ -881,9 +892,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -938,9 +951,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -958,113 +973,113 @@ class doc_generic_project_odt extends ModelePDFProjects //List of referent $listofreferent = array( - 'propal' => array( - 'title' => "ListProposalsAssociatedProject", - 'class' => 'Propal', - 'table' => 'propal', - 'test' => $conf->propal->enabled && $user->rights->propale->lire - ), - 'order' => array( - 'title' => "ListOrdersAssociatedProject", - 'class' => 'Commande', - 'table' => 'commande', - 'test' => $conf->commande->enabled && $user->rights->commande->lire - ), - 'invoice' => array( - 'title' => "ListInvoicesAssociatedProject", - 'class' => 'Facture', - 'table' => 'facture', - 'test' => $conf->facture->enabled && $user->rights->facture->lire - ), - 'invoice_predefined' => array( - 'title' => "ListPredefinedInvoicesAssociatedProject", - 'class' => 'FactureRec', - 'table' => 'facture_rec', - 'test' => $conf->facture->enabled && $user->rights->facture->lire - ), - 'proposal_supplier' => array( - 'title' => "ListSupplierProposalsAssociatedProject", - 'class' => 'SupplierProposal', - 'table' => 'supplier_proposal', - 'test' => $conf->supplier_proposal->enabled && $user->rights->supplier_proposal->lire - ), - 'order_supplier' => array( - 'title' => "ListSupplierOrdersAssociatedProject", - 'table' => 'commande_fournisseur', - 'class' => 'CommandeFournisseur', - 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->commande->lire - ), - 'invoice_supplier' => array( - 'title' => "ListSupplierInvoicesAssociatedProject", - 'table' => 'facture_fourn', - 'class' => 'FactureFournisseur', - 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->facture->lire - ), - 'contract' => array( - 'title' => "ListContractAssociatedProject", - 'class' => 'Contrat', - 'table' => 'contrat', - 'test' => $conf->contrat->enabled && $user->rights->contrat->lire - ), - 'intervention' => array( - 'title' => "ListFichinterAssociatedProject", - 'class' => 'Fichinter', - 'table' => 'fichinter', - 'disableamount' => 1, - 'test' => $conf->ficheinter->enabled && $user->rights->ficheinter->lire - ), - 'shipping' => array( - 'title' => "ListShippingAssociatedProject", - 'class' => 'Expedition', - 'table' => 'expedition', - 'disableamount' => 1, - 'test' => $conf->expedition->enabled && $user->rights->expedition->lire - ), - 'trip' => array( - 'title' => "ListTripAssociatedProject", - 'class' => 'Deplacement', - 'table' => 'deplacement', - 'disableamount' => 1, - 'test' => $conf->deplacement->enabled && $user->rights->deplacement->lire - ), - 'expensereport' => array( - 'title' => "ListExpenseReportsAssociatedProject", - 'class' => 'ExpenseReportLine', - 'table' => 'expensereport_det', - 'test' => $conf->expensereport->enabled && $user->rights->expensereport->lire - ), - 'donation' => array( - 'title' => "ListDonationsAssociatedProject", - 'class' => 'Don', - 'table' => 'don', - 'test' => $conf->don->enabled && $user->rights->don->lire - ), - 'loan' => array( - 'title' => "ListLoanAssociatedProject", - 'class' => 'Loan', - 'table' => 'loan', - 'test' => $conf->loan->enabled && $user->rights->loan->read - ), - 'chargesociales' => array( - 'title' => "ListSocialContributionAssociatedProject", - 'class' => 'ChargeSociales', - 'table' => 'chargesociales', - 'urlnew' => DOL_URL_ROOT . '/compta/sociales/card.php?action=create&projectid=' . $id, - 'test' => $conf->tax->enabled && $user->rights->tax->charges->lire - ), - 'stock_mouvement' => array( - 'title' => "ListMouvementStockProject", - 'class' => 'MouvementStock', - 'table' => 'stock_mouvement', - 'test' => ($conf->stock->enabled && $user->rights->stock->mouvement->lire && ! empty($conf->global->STOCK_MOVEMENT_INTO_PROJECT_OVERVIEW)) - ), - 'agenda' => array( - 'title' => "ListActionsAssociatedProject", - 'class' => 'ActionComm', - 'table' => 'actioncomm', - 'disableamount' => 1, - 'test' => $conf->agenda->enabled && $user->rights->agenda->allactions->lire - ) + 'propal' => array( + 'title' => "ListProposalsAssociatedProject", + 'class' => 'Propal', + 'table' => 'propal', + 'test' => $conf->propal->enabled && $user->rights->propale->lire + ), + 'order' => array( + 'title' => "ListOrdersAssociatedProject", + 'class' => 'Commande', + 'table' => 'commande', + 'test' => $conf->commande->enabled && $user->rights->commande->lire + ), + 'invoice' => array( + 'title' => "ListInvoicesAssociatedProject", + 'class' => 'Facture', + 'table' => 'facture', + 'test' => $conf->facture->enabled && $user->rights->facture->lire + ), + 'invoice_predefined' => array( + 'title' => "ListPredefinedInvoicesAssociatedProject", + 'class' => 'FactureRec', + 'table' => 'facture_rec', + 'test' => $conf->facture->enabled && $user->rights->facture->lire + ), + 'proposal_supplier' => array( + 'title' => "ListSupplierProposalsAssociatedProject", + 'class' => 'SupplierProposal', + 'table' => 'supplier_proposal', + 'test' => $conf->supplier_proposal->enabled && $user->rights->supplier_proposal->lire + ), + 'order_supplier' => array( + 'title' => "ListSupplierOrdersAssociatedProject", + 'table' => 'commande_fournisseur', + 'class' => 'CommandeFournisseur', + 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->commande->lire + ), + 'invoice_supplier' => array( + 'title' => "ListSupplierInvoicesAssociatedProject", + 'table' => 'facture_fourn', + 'class' => 'FactureFournisseur', + 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->facture->lire + ), + 'contract' => array( + 'title' => "ListContractAssociatedProject", + 'class' => 'Contrat', + 'table' => 'contrat', + 'test' => $conf->contrat->enabled && $user->rights->contrat->lire + ), + 'intervention' => array( + 'title' => "ListFichinterAssociatedProject", + 'class' => 'Fichinter', + 'table' => 'fichinter', + 'disableamount' => 1, + 'test' => $conf->ficheinter->enabled && $user->rights->ficheinter->lire + ), + 'shipping' => array( + 'title' => "ListShippingAssociatedProject", + 'class' => 'Expedition', + 'table' => 'expedition', + 'disableamount' => 1, + 'test' => $conf->expedition->enabled && $user->rights->expedition->lire + ), + 'trip' => array( + 'title' => "ListTripAssociatedProject", + 'class' => 'Deplacement', + 'table' => 'deplacement', + 'disableamount' => 1, + 'test' => $conf->deplacement->enabled && $user->rights->deplacement->lire + ), + 'expensereport' => array( + 'title' => "ListExpenseReportsAssociatedProject", + 'class' => 'ExpenseReportLine', + 'table' => 'expensereport_det', + 'test' => $conf->expensereport->enabled && $user->rights->expensereport->lire + ), + 'donation' => array( + 'title' => "ListDonationsAssociatedProject", + 'class' => 'Don', + 'table' => 'don', + 'test' => $conf->don->enabled && $user->rights->don->lire + ), + 'loan' => array( + 'title' => "ListLoanAssociatedProject", + 'class' => 'Loan', + 'table' => 'loan', + 'test' => $conf->loan->enabled && $user->rights->loan->read + ), + 'chargesociales' => array( + 'title' => "ListSocialContributionAssociatedProject", + 'class' => 'ChargeSociales', + 'table' => 'chargesociales', + 'urlnew' => DOL_URL_ROOT . '/compta/sociales/card.php?action=create&projectid=' . $id, + 'test' => $conf->tax->enabled && $user->rights->tax->charges->lire + ), + 'stock_mouvement' => array( + 'title' => "ListMouvementStockProject", + 'class' => 'MouvementStock', + 'table' => 'stock_mouvement', + 'test' => ($conf->stock->enabled && $user->rights->stock->mouvement->lire && ! empty($conf->global->STOCK_MOVEMENT_INTO_PROJECT_OVERVIEW)) + ), + 'agenda' => array( + 'title' => "ListActionsAssociatedProject", + 'class' => 'ActionComm', + 'table' => 'actioncomm', + 'disableamount' => 1, + 'test' => $conf->agenda->enabled && $user->rights->agenda->allactions->lire + ), ); //Insert reference @@ -1116,11 +1131,11 @@ class doc_generic_project_odt extends ModelePDFProjects if (!empty($element->total_ht)) { $ref_array['amountht']=$element->total_ht; $ref_array['amountttc']=$element->total_ttc; - }else { + } else { $ref_array['amountht']=0; $ref_array['amountttc']=0; } - }else { + } else { $ref_array['amountht']=''; $ref_array['amountttc']=''; } @@ -1137,9 +1152,11 @@ class doc_generic_project_odt extends ModelePDFProjects } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -1148,9 +1165,7 @@ class doc_generic_project_odt extends ModelePDFProjects } $odfHandler->mergeSegment($listlines); } - } - catch(OdfException $e) - { + } catch(OdfException $e) { $this->error=$e->getMessage(); dol_syslog($this->error, LOG_WARNING); return -1; @@ -1162,9 +1177,8 @@ class doc_generic_project_odt extends ModelePDFProjects { try { $odfHandler->setVars($key, $value, true, 'UTF-8'); - } - catch(OdfException $e) - { + } catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -1177,16 +1191,16 @@ class doc_generic_project_odt extends ModelePDFProjects if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); return -1; } - } - else { + } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e){ $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php index 46f0fdacbbb..c8c588d1f4f 100644 --- a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php +++ b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php @@ -3,6 +3,7 @@ * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -560,9 +561,8 @@ class doc_generic_task_odt extends ModelePDFTask { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - } - catch(OdfException $e) - { + } catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -577,15 +577,12 @@ class doc_generic_task_odt extends ModelePDFTask complete_substitutions_array($tmparray, $outputlangs, $object); foreach($tmparray as $key => $val) { - try - { + try { $odfHandler->setVars($key, $val, true, 'UTF-8'); - } - catch(OdfException $e) - { - } - catch(SegmentException $e) - { + } catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); + } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -623,15 +620,13 @@ class doc_generic_task_odt extends ModelePDFTask foreach($tmparray as $key => $val) { - try - { + try { $listlinestaskres->setVars($key, $val, true, 'UTF-8'); + } catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } - catch(OdfException $e) - { - } - catch(SegmentException $e) - { + catch (SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlinestaskres->merge(); @@ -677,9 +672,11 @@ class doc_generic_task_odt extends ModelePDFTask } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlinestasktime->merge(); @@ -710,9 +707,11 @@ class doc_generic_task_odt extends ModelePDFTask } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listtasksfiles->merge(); @@ -752,9 +751,11 @@ class doc_generic_task_odt extends ModelePDFTask } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -810,9 +811,11 @@ class doc_generic_task_odt extends ModelePDFTask } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -837,16 +840,18 @@ class doc_generic_task_odt extends ModelePDFTask if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php index e27fc868155..5b87f744466 100644 --- a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php +++ b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php @@ -2,7 +2,8 @@ /* Copyright (C) 2010-2012 Laurent Destailleur * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2016 Charlie Benke -* + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -381,6 +382,7 @@ class doc_generic_proposal_odt extends ModelePDFPropales catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -395,8 +397,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -433,6 +436,7 @@ class doc_generic_proposal_odt extends ModelePDFPropales } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -465,9 +469,11 @@ class doc_generic_proposal_odt extends ModelePDFPropales } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -489,8 +495,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales try { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -502,16 +509,18 @@ class doc_generic_proposal_odt extends ModelePDFPropales if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php b/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php index fbd4ac84e05..3650af12b24 100644 --- a/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php +++ b/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php @@ -1,6 +1,8 @@ * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -276,6 +278,7 @@ class doc_generic_odt extends ModeleThirdPartyDoc catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } //print $odfHandler->__toString()."\n"; @@ -323,9 +326,11 @@ class doc_generic_odt extends ModeleThirdPartyDoc } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -367,9 +372,10 @@ class doc_generic_odt extends ModeleThirdPartyDoc $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { // setVars failed, probably because key not found + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -380,8 +386,9 @@ class doc_generic_odt extends ModeleThirdPartyDoc try { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -393,8 +400,9 @@ class doc_generic_odt extends ModeleThirdPartyDoc if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } @@ -413,6 +421,7 @@ class doc_generic_odt extends ModeleThirdPartyDoc $odfHandler->saveToDisk($file); }catch (Exception $e){ $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/stock/doc/doc_generic_stock_odt.modules.php b/htdocs/core/modules/stock/doc/doc_generic_stock_odt.modules.php index fb600eee268..c9c4350e050 100644 --- a/htdocs/core/modules/stock/doc/doc_generic_stock_odt.modules.php +++ b/htdocs/core/modules/stock/doc/doc_generic_stock_odt.modules.php @@ -1,6 +1,7 @@ * Copyright (C) 2012 Juanjo Menent + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -368,6 +369,7 @@ class doc_generic_stock_odt extends ModelePDFStock catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -382,8 +384,9 @@ class doc_generic_stock_odt extends ModelePDFStock try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -418,8 +421,9 @@ class doc_generic_stock_odt extends ModelePDFStock $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -442,9 +446,11 @@ class doc_generic_stock_odt extends ModelePDFStock } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -468,6 +474,7 @@ class doc_generic_stock_odt extends ModelePDFStock } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -479,16 +486,18 @@ class doc_generic_stock_odt extends ModelePDFStock if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { $odfHandler->saveToDisk($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php b/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php index 3bf35edbe13..05bfe535ac7 100644 --- a/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php @@ -2,6 +2,7 @@ /* Copyright (C) 2010-2012 Laurent Destailleur * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2016 Charlie Benke + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -367,16 +368,17 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal $odfHandler = new odf( $srctemplatepath, array( - 'PATH_TO_TMP' => $conf->supplier_proposal->dir_temp, - 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. - 'DELIMITER_LEFT' => '{', - 'DELIMITER_RIGHT' => '}' + 'PATH_TO_TMP' => $conf->supplier_proposal->dir_temp, + 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. + 'DELIMITER_LEFT' => '{', + 'DELIMITER_RIGHT' => '}' ) ); } - catch(Exception $e) + catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } // After construction $odfHandler->contentXml contains content and @@ -390,8 +392,9 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -424,6 +427,7 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines @@ -456,9 +460,11 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } catch(SegmentException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); @@ -482,6 +488,7 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -493,16 +500,18 @@ class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } diff --git a/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php b/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php index cacef2dcb55..f8b6e5cdaba 100644 --- a/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php +++ b/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php @@ -1,6 +1,7 @@ * Copyright (C) 2012 Juanjo Menent + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -333,16 +334,17 @@ class doc_generic_user_odt extends ModelePDFUser $odfHandler = new odf( $srctemplatepath, array( - 'PATH_TO_TMP' => $conf->user->dir_temp, - 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. - 'DELIMITER_LEFT' => '{', - 'DELIMITER_RIGHT' => '}' + 'PATH_TO_TMP' => $conf->user->dir_temp, + 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. + 'DELIMITER_LEFT' => '{', + 'DELIMITER_RIGHT' => '}' ) ); } catch(Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } @@ -377,6 +379,7 @@ class doc_generic_user_odt extends ModelePDFUser } catch(OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } } @@ -387,8 +390,9 @@ class doc_generic_user_odt extends ModelePDFUser try { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } } @@ -400,16 +404,18 @@ class doc_generic_user_odt extends ModelePDFUser if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } } diff --git a/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php b/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php index 161c9abc3a6..1f7678371e5 100644 --- a/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php +++ b/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php @@ -1,6 +1,7 @@ * Copyright (C) 2012 Juanjo Menent + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -355,16 +356,15 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup $odfHandler = new odf( $srctemplatepath, array( - 'PATH_TO_TMP' => $conf->user->dir_temp, - 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. - 'DELIMITER_LEFT' => '{', - 'DELIMITER_RIGHT' => '}' + 'PATH_TO_TMP' => $conf->user->dir_temp, + 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. + 'DELIMITER_LEFT' => '{', + 'DELIMITER_RIGHT' => '}' ) ); - } - catch(Exception $e) - { + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } // After construction $odfHandler->contentXml contains content and @@ -378,8 +378,9 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } // Make substitutions into odt @@ -414,8 +415,9 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup $odfHandler->setVars($key, $value, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } } // Replace tags of lines @@ -425,7 +427,7 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup try { $listlines = $odfHandler->setSegment('lines'); } - catch(OdfException $e) + catch (OdfException $e) { // We may arrive here if tags for lines not present into template $foundtagforlines = 0; @@ -446,15 +448,17 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup { try { - if(!is_array($val)) { + if (!is_array($val)) { $listlines->setVars($key, $val, true, 'UTF-8'); } } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } - catch(SegmentException $e) + catch (SegmentException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } } $listlines->merge(); @@ -471,39 +475,42 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup // Replace labels translated $tmparray=$outputlangs->get_translations_for_substitutions(); - foreach($tmparray as $key=>$value) + foreach($tmparray as $key => $value) { try { $odfHandler->setVars($key, $value, true, 'UTF-8'); } - catch(OdfException $e) + catch (OdfException $e) { + dol_syslog($e->getMessage(), LOG_WARNING); } } // Call the beforeODTSave hook - $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); - $reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + $parameters=array('odfHandler'=>&$odfHandler, 'file'=>$file, 'object'=>$object, 'outputlangs'=>$outputlangs); + $reshook=$hookmanager->executeHooks('beforeODTSave', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks // Write new file if (!empty($conf->global->MAIN_ODT_AS_PDF)) { try { $odfHandler->exportAsAttachedPDF($file); - }catch (Exception $e){ + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } } else { try { - $odfHandler->saveToDisk($file); - }catch (Exception $e){ + $odfHandler->saveToDisk($file); + } catch (Exception $e) { $this->error=$e->getMessage(); + dol_syslog($e->getMessage(), LOG_WARNING); return -1; } } - $reshook=$hookmanager->executeHooks('afterODTCreation',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + $reshook=$hookmanager->executeHooks('afterODTCreation', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks if (! empty($conf->global->MAIN_UMASK)) @chmod($file, octdec($conf->global->MAIN_UMASK)); From dbbcb6f8a10b860bf7203f574ae7acd712667364 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 26 Oct 2018 22:30:48 +0200 Subject: [PATCH 190/769] code comment api contract --- htdocs/contrat/class/api_contracts.class.php | 81 ++++++++++---------- 1 file changed, 41 insertions(+), 40 deletions(-) diff --git a/htdocs/contrat/class/api_contracts.class.php b/htdocs/contrat/class/api_contracts.class.php index 35ec5842e4b..585d5399771 100644 --- a/htdocs/contrat/class/api_contracts.class.php +++ b/htdocs/contrat/class/api_contracts.class.php @@ -1,6 +1,7 @@ * Copyright (C) 2016 Laurent Destailleur + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -215,28 +216,28 @@ class Contracts extends DolibarrApi * * @url GET {id}/lines * - * @return int + * @return array */ function getLines($id) { - if(! DolibarrApiAccess::$user->rights->contrat->lire) { - throw new RestException(401); - } + if(! DolibarrApiAccess::$user->rights->contrat->lire) { + throw new RestException(401); + } - $result = $this->contract->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Contract not found'); - } + $result = $this->contract->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Contract not found'); + } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } - $this->contract->getLinesArray(); - $result = array(); - foreach ($this->contract->lines as $line) { - array_push($result,$this->_cleanObjectDatas($line)); - } - return $result; + if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + $this->contract->getLinesArray(); + $result = array(); + foreach ($this->contract->lines as $line) { + array_push($result, $this->_cleanObjectDatas($line)); + } + return $result; } /** @@ -247,7 +248,7 @@ class Contracts extends DolibarrApi * * @url POST {id}/lines * - * @return int + * @return int|bool */ function postLine($id, $request_data = null) { @@ -300,7 +301,7 @@ class Contracts extends DolibarrApi * * @url PUT {id}/lines/{lineid} * - * @return object + * @return array|bool */ function putLine($id, $lineid, $request_data = null) { @@ -360,7 +361,7 @@ class Contracts extends DolibarrApi * * @url PUT {id}/lines/{lineid}/activate * - * @return object + * @return array|bool */ function activateLine($id, $lineid, $datestart, $dateend = null, $comment = null) { @@ -369,7 +370,7 @@ class Contracts extends DolibarrApi } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contrat not found'); } @@ -398,16 +399,16 @@ class Contracts extends DolibarrApi * * @url PUT {id}/lines/{lineid}/unactivate * - * @return object + * @return array|bool */ function unactivateLine($id, $lineid, $datestart, $comment = null) { - if(! DolibarrApiAccess::$user->rights->contrat->creer) { + if (! DolibarrApiAccess::$user->rights->contrat->creer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contrat not found'); } @@ -443,16 +444,16 @@ class Contracts extends DolibarrApi */ function deleteLine($id, $lineid) { - if(! DolibarrApiAccess::$user->rights->contrat->creer) { + if (! DolibarrApiAccess::$user->rights->contrat->creer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contrat not found'); } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + if (! DolibarrApi::_checkAccessToResource('contrat', $this->contract->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } @@ -478,16 +479,16 @@ class Contracts extends DolibarrApi */ function put($id, $request_data = null) { - if(! DolibarrApiAccess::$user->rights->contrat->creer) { + if (! DolibarrApiAccess::$user->rights->contrat->creer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contrat not found'); } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + if (! DolibarrApi::_checkAccessToResource('contrat', $this->contract->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } foreach($request_data as $field => $value) { @@ -514,19 +515,19 @@ class Contracts extends DolibarrApi */ function delete($id) { - if(! DolibarrApiAccess::$user->rights->contrat->supprimer) { + if (! DolibarrApiAccess::$user->rights->contrat->supprimer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contract not found'); } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + if (! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } - if( ! $this->contract->delete(DolibarrApiAccess::$user)) { + if (! $this->contract->delete(DolibarrApiAccess::$user)) { throw new RestException(500, 'Error when delete contract : '.$this->contract->error); } @@ -556,15 +557,15 @@ class Contracts extends DolibarrApi */ function validate($id, $notrigger=0) { - if(! DolibarrApiAccess::$user->rights->contrat->creer) { + if (! DolibarrApiAccess::$user->rights->contrat->creer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contract not found'); } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + if (! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } @@ -602,15 +603,15 @@ class Contracts extends DolibarrApi */ function close($id, $notrigger=0) { - if(! DolibarrApiAccess::$user->rights->contrat->creer) { + if (! DolibarrApiAccess::$user->rights->contrat->creer) { throw new RestException(401); } $result = $this->contract->fetch($id); - if( ! $result ) { + if (! $result) { throw new RestException(404, 'Contract not found'); } - if( ! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { + if (! DolibarrApi::_checkAccessToResource('contrat',$this->contract->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } From 461bd76f7021e3a7995ced8846bcf382a3ca4eb9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 26 Oct 2018 23:27:29 +0200 Subject: [PATCH 191/769] Fix customer and supplier code name Fix bill time flag must be visible only if option on --- htdocs/projet/contact.php | 8 ++++++++ htdocs/projet/element.php | 12 ++++++++++-- htdocs/projet/tasks.php | 15 ++++++++++++--- htdocs/projet/tasks/time.php | 13 ++++++++----- htdocs/societe/card.php | 32 ++++++++++++++++---------------- 5 files changed, 54 insertions(+), 26 deletions(-) diff --git a/htdocs/projet/contact.php b/htdocs/projet/contact.php index 68c9b530c88..4b9aaf58b8b 100644 --- a/htdocs/projet/contact.php +++ b/htdocs/projet/contact.php @@ -240,6 +240,14 @@ if ($id > 0 || ! empty($ref)) print nl2br($object->description); print ''; + // Bill time + if (! empty($conf->global->PROJECT_BILL_TIME_SPENT)) + { + print ''.$langs->trans("BillTime").''; + print yn($object->bill_time); + print ''; + } + // Categories if ($conf->categorie->enabled) { print ''.$langs->trans("Categories").''; diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index e0ecf9d6051..7c44fb9850b 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -217,6 +217,14 @@ print ''.$langs->trans("Description").''; print nl2br($object->description); print ''; +// Bill time +if (! empty($conf->global->PROJECT_BILL_TIME_SPENT)) +{ + print ''.$langs->trans("BillTime").''; + print yn($object->bill_time); + print ''; +} + // Categories if($conf->categorie->enabled) { print ''.$langs->trans("Categories").''; @@ -686,8 +694,8 @@ foreach ($listofreferent as $key => $value) // and the final balance print ''; print ''.$langs->trans("Profit").''; -print ''.price($balance_ht).''; -print ''.price($balance_ttc).''; +print ''.price(price2num($balance_ht, 'MT')).''; +print ''.price(price2num($balance_ttc, 'MT')).''; print ''; print ""; diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index d9fcc8b642a..47c88885bc4 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -91,13 +91,14 @@ $planned_workload=$planned_workloadhour*3600+$planned_workloadmin*60; $userAccess=0; -$parameters=array('id'=>$id); -$reshook=$hookmanager->executeHooks('doActions',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks -if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); /* * Actions */ +$parameters=array('id'=>$id); +$reshook=$hookmanager->executeHooks('doActions',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks +if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + // Purge search criteria if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers { @@ -404,6 +405,14 @@ if ($id > 0 || ! empty($ref)) print nl2br($object->description); print ''; + // Bill time + if (! empty($conf->global->PROJECT_BILL_TIME_SPENT)) + { + print ''.$langs->trans("BillTime").''; + print yn($object->bill_time); + print ''; + } + // Categories if($conf->categorie->enabled) { print ''.$langs->trans("Categories").''; diff --git a/htdocs/projet/tasks/time.php b/htdocs/projet/tasks/time.php index bcfc7bde557..7ff93c7b4da 100644 --- a/htdocs/projet/tasks/time.php +++ b/htdocs/projet/tasks/time.php @@ -399,13 +399,16 @@ if (($id > 0 || ! empty($ref)) || $projectidforalltimes > 0) print nl2br($projectstatic->description); print ''; - // Bill time ? - print ''.$langs->trans("BillTime").''; - print yn($projectstatic->bill_time); - print ''; + // Bill time + if (! empty($conf->global->PROJECT_BILL_TIME_SPENT)) + { + print ''.$langs->trans("BillTime").''; + print yn($projectstatic->bill_time); + print ''; + } // Categories - if($conf->categorie->enabled) { + if ($conf->categorie->enabled) { print ''.$langs->trans("Categories").''; print $form->showCategories($projectstatic->id,'project',1); print ""; diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index e20e37e5cdc..5935a1d01a1 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -304,13 +304,13 @@ if (empty($reshook)) if (GETPOST('getcustomercode')) { // We defined value code_client - $_POST["code_client"]="Acompleter"; + $_POST["customer_code"]="Acompleter"; } if (GETPOST('getsuppliercode')) { // We defined value code_fournisseur - $_POST["code_fournisseur"]="Acompleter"; + $_POST["supplier_code"]="Acompleter"; } if($action=='set_localtax1') @@ -417,8 +417,8 @@ if (empty($reshook)) $object->idprof5 = trim(GETPOST('idprof5', 'alpha')); $object->idprof6 = trim(GETPOST('idprof6', 'alpha')); $object->prefix_comm = GETPOST('prefix_comm', 'alpha'); - $object->code_client = GETPOST('code_client', 'alpha'); - $object->code_fournisseur = GETPOST('code_fournisseur', 'alpha'); + $object->code_client = GETPOST('customer_code', 'alpha'); + $object->code_fournisseur = GETPOST('supplier_code', 'alpha'); $object->capital = GETPOST('capital', 'alpha'); $object->barcode = GETPOST('barcode', 'alpha'); @@ -947,14 +947,14 @@ else $object->client = GETPOST('client')?GETPOST('client'):$object->client; if(empty($duplicate_code_error)) { - $object->code_client = GETPOST('code_client', 'alpha'); + $object->code_client = GETPOST('customer_code', 'alpha'); $object->fournisseur = GETPOST('fournisseur')?GETPOST('fournisseur'):$object->fournisseur; } else { setEventMessages($langs->trans('NewCustomerSupplierCodeProposed'),'', 'warnings'); } - $object->code_fournisseur = GETPOST('code_fournisseur', 'alpha'); + $object->code_fournisseur = GETPOST('supplier_code', 'alpha'); $object->address = GETPOST('address', 'alpha'); $object->zip = GETPOST('zipcode', 'alpha'); $object->town = GETPOST('town', 'alpha'); @@ -1190,7 +1190,7 @@ else print ''; if ($num == 0) { - print ''; + print ''; } else { From 3d16b05fdb647a84d83dd060b3f7cf74c528a28b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 21:30:44 +0100 Subject: [PATCH 251/769] Fix fetch --- htdocs/fichinter/card-rec.php | 6 +++--- htdocs/langs/es_ES/cron.lang | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php index 0113f7fbea6..4b8aa9bb43d 100644 --- a/htdocs/fichinter/card-rec.php +++ b/htdocs/fichinter/card-rec.php @@ -866,7 +866,7 @@ if ($action == 'create') { print "\n"; -// les filtres à faire ensuite + // les filtres à faire ensuite if ($num > 0) { while ($i < min($num, $limit)) { @@ -893,8 +893,8 @@ if ($action == 'create') { } if (! empty($conf->projet->enabled)) { print ''; diff --git a/htdocs/langs/es_ES/cron.lang b/htdocs/langs/es_ES/cron.lang index da8ac9c00aa..50497ad0b98 100644 --- a/htdocs/langs/es_ES/cron.lang +++ b/htdocs/langs/es_ES/cron.lang @@ -64,7 +64,7 @@ CronClassFile=Nombre de archivo con clase CronModuleHelp=Nombre del directorio del módulo Dolibarr (también funciona con módulos externos).
Por ejemplo, para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, el valor del módulo es product CronClassFileHelp=El nombre del archivo a cargar (la ruta es relativa al directorio raiz del servidor web).
Por ejemplo para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, el valor del nombre del archivo de la clase es product.class.php CronObjectHelp=El nombre del objeto a cargar.
Por ejemplo para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, el valor del nombre de la clase es Product -CronMethodHelp=El método del objeto a lanzar.
Por ejemplo para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, el valor del método es fecth +CronMethodHelp=El método del objeto a lanzar.
Por ejemplo para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, el valor del método es fetch CronArgsHelp=Los argumentos del método.
Por ejemplo para realizar un fetch del objeto Product /htdocs/product/class/product.class.php, los valores pueden ser 0, ProductRef CronCommandHelp=El comando en línea del sistema a ejecutar. CronCreateJob=Crear nueva tarea programada From c764d7f8d56827e09ade0ab28944707023dd1e14 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 21:34:17 +0100 Subject: [PATCH 252/769] Fix remove var_dump --- htdocs/core/lib/admin.lib.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index 34ca8e48079..f5efa5c5b7e 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -944,7 +944,6 @@ function activateModule($value,$withdeps=1) $activate = false; foreach ($modulesdir as $dir) { - var_dump($modulestring); if (file_exists($dir.$modulestring.".class.php")) { $resarray = activateModule($modulestring); From 866729cd21a56086a2aa353eb063c4136986d1f7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 22:32:42 +0100 Subject: [PATCH 253/769] FIX bad link in notification --- htdocs/core/class/notify.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/notify.class.php b/htdocs/core/class/notify.class.php index c226fb647d0..ae22728f06d 100644 --- a/htdocs/core/class/notify.class.php +++ b/htdocs/core/class/notify.class.php @@ -575,13 +575,13 @@ class Notify $mesg = $langs->transnoentitiesnoconv("EMailTextOrderValidated",$link); break; case 'PROPAL_VALIDATE': - $link='/comm/propal/card.php?id='.$object->id; + $link = '' . $newref . ''; $dir_output = $conf->propal->multidir_output[$object->entity]; $object_type = 'propal'; $mesg = $langs->transnoentitiesnoconv("EMailTextProposalValidated",$link); break; case 'PROPAL_CLOSE_SIGNED': - $link='/comm/propal/card.php?id='.$object->id; + $link = '' . $newref . ''; $dir_output = $conf->propal->multidir_output[$object->entity]; $object_type = 'propal'; $mesg = $langs->transnoentitiesnoconv("EMailTextProposalClosedSigned",$link); From c9ef298839bc57c06222cd736fde4df80cd46209 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 11:38:04 +0100 Subject: [PATCH 254/769] Fix setup template emails --- htdocs/install/mysql/data/llx_c_email_templates.sql | 10 +++++----- htdocs/install/mysql/migration/7.0.0-8.0.0.sql | 10 +++++----- htdocs/langs/fr_FR/members.lang | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/htdocs/install/mysql/data/llx_c_email_templates.sql b/htdocs/install/mysql/data/llx_c_email_templates.sql index b913fca13f3..3d1a1e7c178 100644 --- a/htdocs/install/mysql/data/llx_c_email_templates.sql +++ b/htdocs/install/mysql/data/llx_c_email_templates.sql @@ -23,10 +23,10 @@ INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines) VALUES (0,'banque','thirdparty','',0,null,null,'(YourSEPAMandate)',1,1,0,'__(YourSEPAMandate)__','__(Hello)__,

\n\n__(FindYourSEPAMandate)__ :
\n__MYCOMPANY_NAME__
\n__MYCOMPANY_FULLADDRESS__

\n__(Sincerely)__
\n__USER_SIGNATURE__',null); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnAutoSubscription)' ,10,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipRequestWasReceived)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipRequestWasReceived)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnMemberValidation)' ,20,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasValidated)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipWasValidated)__
__INFOS__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnAutoSubscription)' ,10,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipRequestWasReceived)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipRequestWasReceived)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnMemberValidation)' ,20,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasValidated)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipWasValidated)__
__INFOS__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnNewSubscription)' ,30,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourSubscriptionWasRecorded)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourSubscriptionWasRecorded)__
\n\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingReminderForExpiredSubscription)',40,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(SubscriptionReminderEmail)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfSubscriptionReminderEmail)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnCancelation)' ,50,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasCanceled)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(YourMembershipWasCanceled)__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingAnEMailToMember)' ,60,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(CardContent)__', '__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingReminderForExpiredSubscription)',40,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(SubscriptionReminderEmail)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfSubscriptionReminderEmail)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnCancelation)' ,50,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasCanceled)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(YourMembershipWasCanceled)__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingAnEMailToMember)' ,60,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(CardContent)__', '__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); diff --git a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql index f29830f29e0..1a7cfd58410 100644 --- a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql +++ b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql @@ -419,12 +419,12 @@ ALTER TABLE llx_societe_rib MODIFY COLUMN max_total_amount_of_all_payments doubl ALTER TABLE llx_societe_rib MODIFY COLUMN total_amount_of_all_payments double(24,8); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnAutoSubscription)' ,10,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipRequestWasReceived)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipRequestWasReceived)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnMemberValidation)' ,20,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasValidated)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipWasValidated)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnAutoSubscription)' ,10,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipRequestWasReceived)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipRequestWasReceived)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnMemberValidation)' ,20,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasValidated)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipWasValidated)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnNewSubscription)' ,30,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourSubscriptionWasRecorded)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourSubscriptionWasRecorded)__
\n\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingReminderForExpiredSubscription)',40,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(SubscriptionReminderEmail)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfSubscriptionReminderEmail)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnCancelation)' ,50,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasCanceled)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(YourMembershipWasCanceled)__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); -INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingAnEMailToMember)' ,60,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(CardContent)__', '__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',null, 1); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingReminderForExpiredSubscription)',40,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(SubscriptionReminderEmail)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfSubscriptionReminderEmail)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingEmailOnCancelation)' ,50,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasCanceled)__', '__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(YourMembershipWasCanceled)__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); +INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines,joinfiles) VALUES (0,'adherent','member','',0,null,null,'(SendingAnEMailToMember)' ,60,1,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(CardContent)__', '__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',null, 0); ALTER TABLE llx_product ADD COLUMN fk_default_warehouse integer DEFAULT NULL; ALTER TABLE llx_product ADD CONSTRAINT fk_product_default_warehouse FOREIGN KEY (fk_default_warehouse) REFERENCES llx_entrepot (rowid); diff --git a/htdocs/langs/fr_FR/members.lang b/htdocs/langs/fr_FR/members.lang index 6cd379c3cc2..a27cd5c5747 100644 --- a/htdocs/langs/fr_FR/members.lang +++ b/htdocs/langs/fr_FR/members.lang @@ -111,7 +111,7 @@ SendingAnEMailToMember=Envoi d'informations par e-mail à un adhérent SendingEmailOnAutoSubscription=Envoi d'email lors de l'auto-inscription SendingEmailOnMemberValidation=Envoie d'email à la validation d'un nouvel adhérent SendingEmailOnNewSubscription=Envoyer un email sur un nouvel abonnement -SendingReminderForExpiredSubscription=Envoi d'un rappel pour les abonnements expirés +SendingReminderForExpiredSubscription=Envoi d'un rappel pour les adhésions expirées SendingEmailOnCancelation=Envoie d'email à l'annulation # Topic of email templates YourMembershipRequestWasReceived=Votre demande d'adhésion a été reçue. @@ -124,7 +124,7 @@ CardContent=Contenu de votre fiche adhérent ThisIsContentOfYourMembershipRequestWasReceived=Nous vous informons que votre demande d'adhésion a bien été reçue.

ThisIsContentOfYourMembershipWasValidated=Nous vous informons que votre adhésion a été validé avec les informations suivantes:

ThisIsContentOfYourSubscriptionWasRecorded=Nous vous informons que votre nouvelle cotisation a été enregistrée.

-ThisIsContentOfSubscriptionReminderEmail=Nous voulons vous informer que votre abonnement est sur le point d'expirer. Nous espérons que vous pourrez le renouveler.

+ThisIsContentOfSubscriptionReminderEmail=Nous voulons vous informer que votre adhésion est sur le point d'expirer. Nous espérons que vous pourrez la renouveler, votre soutien nous ait précieux

ThisIsContentOfYourCard=Ceci est un rappel des informations que nous avons vos concernant. N'hésitez pas à nous contacter en cas d'erreur.

DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Sujet de l'email reçu en cas d'auto-inscription d'un invité DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Email reçu en cas d'auto-inscription d'un invité From 19134e82cbcd6c01f1230bbccb6b1ce3e488b6d7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 12:23:53 +0100 Subject: [PATCH 255/769] Prepare 8.0.3 --- ChangeLog | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/ChangeLog b/ChangeLog index a31b7e0ddfd..c0e3e277009 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,87 @@ English Dolibarr ChangeLog -------------------------------------------------------------- +***** ChangeLog for 8.0.3 compared to 8.0.2 ***** +FIX: #9161 +FIX: #9432 +FIX: #9432 Assign yourself as a commercial when you don't have permission to see all thirds +FIX: #9510 +FIX: #9567 +FIX: According to french law, if seller is in France and buyer isn't in UE and isn't a company, TVA used = TVA product +FIX: Amount when using mutlicurrency on PDF +FIX: Backup of database without mysqladmin available from cron. +FIX: Bad label on delete button +FIX: bad link in notification +FIX: Bad position of hook formattachOptions call +FIX: Can't create shipping if have shipping line's extrafields +FIX: check !empty exclude select element +FIX: content lost when editing a label with " +FIX: correct migration of old postgresql unique key +FIX: credit note progression +FIX: default accounting accounts on loan creation #9643 +FIX: Delete of draft invoice +FIX: deletion on draft is allowed if we are allwoed to create +FIX: Do not show check box if not applicable +FIX: exclude element of the select +FIX: extrafields of taks not visible in creation +FIX: filter on employee +FIX: invoice stats: situation invoices were not counted +FIX: keep external module element when adding resource +FIX: langs fr +FIX: Link template invoice to contract +FIX: Look and feel v8. Missing button "Create category" +FIX: Menu to show/edit Users categories was missing +FIX: missing name alias field in societe import/export #9091 +FIX: missing symbol for indian rupies +FIX: Missing transaction around action +FIX: modify parenting before task deletion +FIX: nb of session in title +FIX: need to filter on current entity on replenish +FIX: number mailing for a contact with multicompany +FIX: Option for prof id mandatory not working with custom type of company +FIX: Option MAIN_DISABLE_NOTES_TAB #9611 +FIX: Pagination stats +FIX: pdf typhon: order reference duplicate +FIX: position 0 for emails templates +FIX: previous situation invoice selection +FIX: Product marge tabs on product card +FIX: Product margin tab and credit note +FIX: propal pdf: missing parenthesis for customs code +FIX: properties on proposal must not be modified if error +FIX: qty not visible for a lot when making shipment on a dedicated stock +FIX: Quick hack to solve pb of bad definition of public holidays +FIX: remain to pay for credit note was wrong on invoice list +FIX: replenish wasn't caring about supplier price min quantity #9561 +FIX: Required extrafield value numeric should accept '0' +FIX: ressource list with extrafields +FIX: restore last seach criteria +FIX: Selection of addmaindocfile is lost on error +FIX: Sending of reminder for expired subscriptions +FIX: shared link ko on proposals +FIX: showOptionals: column mismatches +FIX: situation invoice total with credit note +FIX: situation invoice prev percent +FIX: special code on create supplier invoice from supplier order +FIX: Symbol of currency in substitution variables +FIX: The max size for upload file was not corectly shown +FIX: the member e-mail on resign and validation. +FIX: thirdparty property of object not loaded when only one record +FIX: title +FIX: Title problem on admin RSS module +FIX: Tooltip on invoice widget +FIX: Total of timespent +FIX: trackid into email sent from member module. +FIX: translation in select unit form +FIX: use discount with multicurrency +FIX: Variable name +FIX: When we delete a product, llx_product_association rows are not deleted +FIX: when we're just admin and not super admin, if we create new user with transverse mode, we don't see it then we can't add him in usergroup +FIX: wrong function name +FIX: wrong occurence number of contract on contact card, we must only count externals +FIX: wrong value for module part and return access denied +FIX: Wrong variable name +FIX: XSS vulnerability reported by Mary Princy E + ***** ChangeLog for 8.0.2 compared to 8.0.1 ***** FIX: #8452 FIX: #9043 From 6c4a2728ca038822c2464ae93cde10608043dc09 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 12:33:08 +0100 Subject: [PATCH 256/769] Fix build --- build/makepack-dolibarr.pl | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index 1ab3269d0de..7ba988231cc 100755 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -523,10 +523,17 @@ if ($nboftargetok) { $ret=`rm -f $BUILDROOT/$PROJECT/doc/images/dolibarr_screenshot12.png`; # Security to avoid to package data files + print "Remove documents dir\n"; $ret=`rm -fr $BUILDROOT/$PROJECT/document`; $ret=`rm -fr $BUILDROOT/$PROJECT/documents`; $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/document`; $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/documents`; + + print "Remove subdir of custom dir\n"; + print "find $BUILDROOT/$PROJECT/htdocs/custom/* -type d -exec rm -fr {} \\;\n"; + $ret=`find $BUILDROOT/$PROJECT/htdocs/custom/* -type d -exec rm -fr {} \\; >/dev/null 2>&1`; # For custom we want to remove all subdirs but not files + print "find $BUILDROOT/$PROJECT/htdocs/custom/* -type l -exec rm -fr {} \\;\n"; + $ret=`find $BUILDROOT/$PROJECT/htdocs/custom/* -type l -exec rm -fr {} \\; >/dev/null 2>&1`; # For custom we want to remove all subdirs, even symbolic links, but not files # Removed known external modules to avoid any error when packaging from env where external modules are tested $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/allscreens*`; @@ -592,13 +599,6 @@ if ($nboftargetok) { $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/tools`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/LICENSE.TXT`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/theme/common/octicons/LICENSE`; - - - print "Remove subdir of custom dir\n"; - print "find $BUILDROOT/$PROJECT/htdocs/custom/* -type d -exec rm -fr {} \\;\n"; - $ret=`find $BUILDROOT/$PROJECT/htdocs/custom/* -type d -exec rm -fr {} \\; >/dev/null 2>&1`; # For custom we want to remove all subdirs but not files - print "find $BUILDROOT/$PROJECT/htdocs/custom/* -type l -exec rm -fr {} \\;\n"; - $ret=`find $BUILDROOT/$PROJECT/htdocs/custom/* -type l -exec rm -fr {} \\; >/dev/null 2>&1`; # For custom we want to remove all subdirs, even symbolic links, but not files } # Build package for each target From 0ca5da055fec89381aa3aaf3ba115b64d4f20ad2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 15:04:01 +0100 Subject: [PATCH 257/769] Debug v9 --- htdocs/core/modules/modDataPolicy.class.php | 18 ++----- htdocs/datapolicy/ChangeLog.md | 24 --------- htdocs/datapolicy/class/datapolicy.class.php | 2 +- htdocs/emailcollector/modulebuilder.txt | 3 ++ htdocs/modulebuilder/index.php | 51 ++++++++++++++------ 5 files changed, 43 insertions(+), 55 deletions(-) delete mode 100644 htdocs/datapolicy/ChangeLog.md create mode 100644 htdocs/emailcollector/modulebuilder.txt diff --git a/htdocs/core/modules/modDataPolicy.class.php b/htdocs/core/modules/modDataPolicy.class.php index ca53440a3b9..b6f4c4e0139 100644 --- a/htdocs/core/modules/modDataPolicy.class.php +++ b/htdocs/core/modules/modDataPolicy.class.php @@ -173,22 +173,10 @@ class modDataPolicy extends DolibarrModules { // 'stock' to add a tab in stock view // 'thirdparty' to add a tab in third party view // 'user' to add a tab in user view + + // Dictionaries $this->dictionaries = array(); - /* Example: - $this->dictionaries=array( - 'langs'=>'mylangfile@datapolicy', - 'tabname'=>array(MAIN_DB_PREFIX."table1",MAIN_DB_PREFIX."table2",MAIN_DB_PREFIX."table3"), // List of tables we want to see into dictonnary editor - 'tablib'=>array("Table1","Table2","Table3"), // Label of tables - 'tabsql'=>array('SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table1 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table2 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table3 as f'), // Request to select fields - 'tabsqlsort'=>array("label ASC","label ASC","label ASC"), // Sort order - 'tabfield'=>array("code,label","code,label","code,label"), // List of fields (result of select to show dictionary) - 'tabfieldvalue'=>array("code,label","code,label","code,label"), // List of fields (list of fields to edit a record) - 'tabfieldinsert'=>array("code,label","code,label","code,label"), // List of fields (list of fields for insert) - 'tabrowid'=>array("rowid","rowid","rowid"), // Name of columns with primary key (try to always name it 'rowid') - 'tabcond'=>array($conf->datapolicy->enabled,$conf->datapolicy->enabled,$conf->datapolicy->enabled) // Condition to show each dictionary - ); - */ // Boxes/Widgets @@ -199,7 +187,7 @@ class modDataPolicy extends DolibarrModules { // Cronjobs (List of cron jobs entries to add when module is enabled) // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week $this->cronjobs = array( - 0 => array('label' => 'DATAPOLICY Cron', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'RgpdCron', 'method' => 'exec', 'parameters' => '', 'comment' => 'Comment', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 1, 'test' => true), + 0 => array('label' => 'DATAPOLICY Cron', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'DataPolicyCron', 'method' => 'exec', 'parameters' => '', 'comment' => 'Clean data', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 1, 'test' => true), //1 => array('label' => 'DATAPOLICY Mailing', 'jobtype' => 'method', 'class' => '/datapolicy/class/datapolicyCron.class.php', 'objectname' => 'RgpdCron', 'method' => 'sendMailing', 'parameters' => '', 'comment' => 'Comment', 'frequency' => 1, 'unitfrequency' => 86400, 'status' => 0, 'test' => true) ); // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>true), diff --git a/htdocs/datapolicy/ChangeLog.md b/htdocs/datapolicy/ChangeLog.md deleted file mode 100644 index 1c149a77e39..00000000000 --- a/htdocs/datapolicy/ChangeLog.md +++ /dev/null @@ -1,24 +0,0 @@ -**2.2** -* Fix link to accept or refuse - -**2.1** -* Change IT translations - -**2.0** -* Add date of agreement -* Add possibility to send e-mail -* Save the agreement by e-mail - -**1.2** -* Bug fixed - -**1.1** -* Add some translations -* Add some type of company -* Bug fixed - - -**1.0** -* The end of the beginning - - diff --git a/htdocs/datapolicy/class/datapolicy.class.php b/htdocs/datapolicy/class/datapolicy.class.php index 4914d248490..35b618cbaca 100644 --- a/htdocs/datapolicy/class/datapolicy.class.php +++ b/htdocs/datapolicy/class/datapolicy.class.php @@ -28,7 +28,7 @@ include_once DOL_DOCUMENT_ROOT . '/adherents/class/adherent.class.php'; /** * Class DataPolicy */ -Class DataPolicy extends Contact +Class DataPolicy { /** * getAllContactNotInformed diff --git a/htdocs/emailcollector/modulebuilder.txt b/htdocs/emailcollector/modulebuilder.txt new file mode 100644 index 00000000000..24ea0d6eac5 --- /dev/null +++ b/htdocs/emailcollector/modulebuilder.txt @@ -0,0 +1,3 @@ +# DO NOT DELETE THIS FILE MANUALLY +# File to flag module built using official module template. +# When this file is present into a module directory, you can edit it with the module builder tool. Use ModuleBuilder if you want to delete module. \ No newline at end of file diff --git a/htdocs/modulebuilder/index.php b/htdocs/modulebuilder/index.php index b533c369cbd..f9c123d8db0 100644 --- a/htdocs/modulebuilder/index.php +++ b/htdocs/modulebuilder/index.php @@ -71,6 +71,11 @@ if (! empty($tmpdir[1])) $dirread=$tmpdir[1]; $forceddirread=1; } +if (GETPOST('dirins','alpha')) +{ + $dirread = $dirins = GETPOST('dirins','alpha'); + $forceddirread=1; +} $FILEFLAG='modulebuilder.txt'; @@ -911,17 +916,31 @@ $dirsincustom=dol_dir_list($dirread, 'directories'); if (is_array($dirsincustom) && count($dirsincustom) > 0) { foreach ($dirsincustom as $dircustomcursor) { $fullname = $dircustomcursor['fullname']; - if (dol_is_file($fullname . '/' . $FILEFLAG)) { + if (dol_is_file($fullname . '/' . $FILEFLAG)) + { // Get real name of module (MyModule instead of mymodule) - $descriptorfiles = dol_dir_list($fullname . '/core/modules/', 'files', 0, 'mod.*\.class\.php$'); + $dirtoscanrel = basename($fullname).'/core/modules/'; + + $descriptorfiles = dol_dir_list(dirname($fullname).'/'.$dirtoscanrel, 'files', 0, 'mod.*\.class\.php$'); + if (empty($descriptorfiles)) // If descriptor not found into module dir, we look into main module dir. + { + $dirtoscanrel = 'core/modules/'; + $descriptorfiles = dol_dir_list($fullname.'/../'.$dirtoscanrel, 'files', 0, 'mod'.strtoupper(basename($fullname)).'\.class\.php$'); + } $modulenamewithcase = ''; + $moduledescriptorrelpath = ''; + $moduledescriptorfullpath = ''; + foreach ($descriptorfiles as $descriptorcursor) { $modulenamewithcase = preg_replace('/^mod/', '', $descriptorcursor['name']); $modulenamewithcase = preg_replace('/\.class\.php$/', '', $modulenamewithcase); + $moduledescriptorrelpath = $dirtoscanrel.$descriptorcursor['name']; + $moduledescriptorfullpath = $descriptorcursor['fullname']; + //var_dump($descriptorcursor); } if ($modulenamewithcase) { - $listofmodules[$dircustomcursor['name']] = $modulenamewithcase; + $listofmodules[$dircustomcursor['name']] = array('modulenamewithcase'=>$modulenamewithcase, 'moduledescriptorrelpath'=> $moduledescriptorrelpath, 'moduledescriptorfullpath'=>$moduledescriptorfullpath); } //var_dump($listofmodules); } @@ -929,7 +948,7 @@ if (is_array($dirsincustom) && count($dirsincustom) > 0) { } if ($forceddirread && empty($listofmodules)) { - $listofmodules[strtolower($module)] = $module; + $listofmodules[strtolower($module)] = array('modulenamewithcase'=>$module, 'moduledescriptorrelpath'=> 'notyetimplemented', 'moduledescriptorfullpath'=> 'notyetimplemented'); } // Show description of content @@ -983,7 +1002,8 @@ if (! empty($module) && $module != 'initmodule' && $module != 'deletemodule') $modulelowercase=strtolower($module); // Load module - dol_include_once($modulelowercase.'/core/modules/mod'.$module.'.class.php'); + $fullpathdirtodescriptor = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; + dol_include_once($fullpathdirtodescriptor); $class='mod'.$module; if (class_exists($class)) @@ -1017,11 +1037,11 @@ $head[$h][1] = $langs->trans("NewModule"); $head[$h][2] = 'initmodule'; $h++; -foreach($listofmodules as $tmpmodule => $tmpmodulewithcase) +foreach($listofmodules as $tmpmodule => $tmpmodulearray) { - $head[$h][0] = $_SERVER["PHP_SELF"].'?module='.$tmpmodulewithcase.($forceddirread?'@'.$dirread:''); - $head[$h][1] = $tmpmodulewithcase; - $head[$h][2] = $tmpmodulewithcase; + $head[$h][0] = $_SERVER["PHP_SELF"].'?module='.$tmpmodulearray['modulenamewithcase'].($forceddirread?'@'.$dirread:''); + $head[$h][1] = $tmpmodulearray['modulenamewithcase']; + $head[$h][2] = $tmpmodulearray['modulenamewithcase']; $h++; } @@ -1167,7 +1187,7 @@ elseif (! empty($module)) if ($tab == 'description') { - $pathtofile = $modulelowercase.'/core/modules/mod'.$module.'.class.php'; + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; $pathtofilereadme = $modulelowercase.'/README.md'; $pathtochangelog = $modulelowercase.'/ChangeLog.md'; @@ -1877,7 +1897,7 @@ elseif (! empty($module)) if ($tab == 'menus') { - $pathtofile = $modulelowercase.'/core/modules/mod'.$module.'.class.php'; + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; //$menus = $moduleobj->; @@ -2002,7 +2022,7 @@ elseif (! empty($module)) if ($tab == 'permissions') { - $pathtofile = $modulelowercase.'/core/modules/mod'.$module.'.class.php'; + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; //$perms = $moduleobj->; @@ -2132,7 +2152,7 @@ elseif (! empty($module)) print $langs->trans("HooksDefDesc").'
'; print '
'; - $pathtofile = $modulelowercase.'/core/modules/mod'.$module.'.class.php'; + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
'; @@ -2277,7 +2297,7 @@ elseif (! empty($module)) if ($tab == 'cron') { - $pathtofile = $modulelowercase.'/core/modules/mod'.$module.'.class.php'; + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; $cronjobs = $moduleobj->cronjobs; @@ -2411,7 +2431,8 @@ elseif (! empty($module)) $FILENAMEZIP=''; // Load module - dol_include_once($modulelowercase.'/core/modules/mod'.$module.'.class.php'); + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; + dol_include_once($pathtofile); $class='mod'.$module; if (class_exists($class)) From ca726e6c94fa0abc06375d7d79095ceeabcd494a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 15:31:22 +0100 Subject: [PATCH 258/769] FIX Error generating ODT when option to use contact on doc on --- .../doc/doc_generic_order_odt.modules.php | 7 +-- .../doc/doc_generic_contract_odt.modules.php | 4 +- .../doc/doc_generic_invoice_odt.modules.php | 7 +-- .../doc/doc_generic_product_odt.modules.php | 11 ++-- .../doc/doc_generic_project_odt.modules.php | 61 +++++++++---------- .../doc/doc_generic_proposal_odt.modules.php | 7 +-- .../user/doc/doc_generic_user_odt.modules.php | 9 ++- .../doc/doc_generic_usergroup_odt.modules.php | 7 +-- 8 files changed, 53 insertions(+), 60 deletions(-) diff --git a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php index 0fb5dbabc03..586d24541ef 100644 --- a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php +++ b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php @@ -360,10 +360,9 @@ class doc_generic_order_odt extends ModelePDFCommandes $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in order as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); diff --git a/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php b/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php index 7e308964e29..6931ea52cc6 100644 --- a/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php +++ b/htdocs/core/modules/contract/doc/doc_generic_contract_odt.modules.php @@ -309,9 +309,9 @@ class doc_generic_contract_odt extends ModelePDFContract $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in contract as contact_xxx tags + // retrieve contact information for use in order as contact_xxx tags $array_thirdparty_contact = array(); - if ($usecontact) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $substitutionarray = array_merge($substitutionarray,$array_contract,$array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_thirdparty_contact); complete_substitutions_array($substitutionarray, $outputlangs, $object); diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php index c9f18218d9a..5f712bba012 100644 --- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php +++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php @@ -368,10 +368,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_propal=is_object($propal_object)?$this->get_substitutionarray_object($propal_object,$outputlangs,'propal'):array(); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in invoice as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_propal,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); diff --git a/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php b/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php index 8af397d15c1..d5917b82a82 100644 --- a/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php +++ b/htdocs/core/modules/product/doc/doc_generic_product_odt.modules.php @@ -95,7 +95,7 @@ class doc_generic_product_odt extends ModelePDFProduct function info($langs) { global $conf,$langs; - + $langs->load("companies"); $langs->load("errors"); @@ -369,7 +369,7 @@ class doc_generic_product_odt extends ModelePDFProduct catch(OdfException $e) { } - + // Make substitutions into odt $array_global = $this->get_substitutionarray_each_var_object($object, $outputlangs); $array_user=$this->get_substitutionarray_user($user,$outputlangs); @@ -377,10 +377,9 @@ class doc_generic_product_odt extends ModelePDFProduct $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); //$array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in product as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in order as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_global,$array_user,$array_soc,$array_thirdparty,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index 11fc12a19d9..a6743bf1669 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -136,7 +136,7 @@ class doc_generic_project_odt extends ModelePDFProjects $object->fetch_optionals($object->id,$extralabels); $resarray = $this->fill_substitutionarray_with_extrafields($object,$resarray,$extrafields,$array_key,$outputlangs); - + return $resarray; } @@ -168,16 +168,16 @@ class doc_generic_project_odt extends ModelePDFProjects 'task_note_private'=>$task->note_private, 'task_note_public'=>$task->note_public ); - + require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; $extrafields = new ExtraFields($this->db); $extralabels = $extrafields->fetch_name_optionals_label($task->table_element,true); $task->fetch_optionals($task->id,$extralabels); - + $resarray = $this->fill_substitutionarray_with_extrafields($task,$resarray,$extrafields,'task',$outputlangs); - + return $resarray; - + } /** @@ -206,13 +206,13 @@ class doc_generic_project_odt extends ModelePDFProjects if ($contact['source']=='external') { $ret[$pc.'isInternal'] = ''; // not internal - + $ct = new Contact($this->db); $ct->fetch($contact['id']); $ret[$pc.'phone_pro'] = $ct->phone_pro; $ret[$pc.'phone_perso'] = $ct->phone_perso; $ret[$pc.'phone_mobile'] = $ct->phone_mobile; - + // fetch external user extrafields require_once(DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'); $extrafields=new ExtraFields($this->db); @@ -225,7 +225,7 @@ class doc_generic_project_odt extends ModelePDFProjects } } elseif ($contact['source']=='internal') { $ret[$pc.'isInternal'] = '1'; // this is an internal user - + $ct = new User($this->db); $ct->fetch($contact['id']); $ret[$pc.'phone_pro'] = $ct->office_phone; @@ -588,10 +588,9 @@ class doc_generic_project_odt extends ModelePDFProjects $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in project as contact_xxx tags - $array_project_contact = array(); - if ($usecontact) - $array_project_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in order as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_project_contact); complete_substitutions_array($tmparray, $outputlangs, $object); @@ -932,109 +931,109 @@ class doc_generic_project_odt extends ModelePDFProjects 'title' => "ListProposalsAssociatedProject", 'class' => 'Propal', 'table' => 'propal', - 'test' => $conf->propal->enabled && $user->rights->propale->lire + 'test' => $conf->propal->enabled && $user->rights->propale->lire ), 'order' => array( 'title' => "ListOrdersAssociatedProject", 'class' => 'Commande', 'table' => 'commande', - 'test' => $conf->commande->enabled && $user->rights->commande->lire + 'test' => $conf->commande->enabled && $user->rights->commande->lire ), 'invoice' => array( 'title' => "ListInvoicesAssociatedProject", 'class' => 'Facture', 'table' => 'facture', - 'test' => $conf->facture->enabled && $user->rights->facture->lire + 'test' => $conf->facture->enabled && $user->rights->facture->lire ), 'invoice_predefined' => array( 'title' => "ListPredefinedInvoicesAssociatedProject", 'class' => 'FactureRec', 'table' => 'facture_rec', - 'test' => $conf->facture->enabled && $user->rights->facture->lire + 'test' => $conf->facture->enabled && $user->rights->facture->lire ), 'proposal_supplier' => array( 'title' => "ListSupplierProposalsAssociatedProject", 'class' => 'SupplierProposal', 'table' => 'supplier_proposal', - 'test' => $conf->supplier_proposal->enabled && $user->rights->supplier_proposal->lire + 'test' => $conf->supplier_proposal->enabled && $user->rights->supplier_proposal->lire ), 'order_supplier' => array( 'title' => "ListSupplierOrdersAssociatedProject", 'table' => 'commande_fournisseur', 'class' => 'CommandeFournisseur', - 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->commande->lire + 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->commande->lire ), 'invoice_supplier' => array( 'title' => "ListSupplierInvoicesAssociatedProject", 'table' => 'facture_fourn', 'class' => 'FactureFournisseur', - 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->facture->lire + 'test' => $conf->fournisseur->enabled && $user->rights->fournisseur->facture->lire ), 'contract' => array( 'title' => "ListContractAssociatedProject", 'class' => 'Contrat', 'table' => 'contrat', - 'test' => $conf->contrat->enabled && $user->rights->contrat->lire + 'test' => $conf->contrat->enabled && $user->rights->contrat->lire ), 'intervention' => array( 'title' => "ListFichinterAssociatedProject", 'class' => 'Fichinter', 'table' => 'fichinter', 'disableamount' => 1, - 'test' => $conf->ficheinter->enabled && $user->rights->ficheinter->lire + 'test' => $conf->ficheinter->enabled && $user->rights->ficheinter->lire ), 'shipping' => array( 'title' => "ListShippingAssociatedProject", 'class' => 'Expedition', 'table' => 'expedition', 'disableamount' => 1, - 'test' => $conf->expedition->enabled && $user->rights->expedition->lire + 'test' => $conf->expedition->enabled && $user->rights->expedition->lire ), 'trip' => array( 'title' => "ListTripAssociatedProject", 'class' => 'Deplacement', 'table' => 'deplacement', 'disableamount' => 1, - 'test' => $conf->deplacement->enabled && $user->rights->deplacement->lire + 'test' => $conf->deplacement->enabled && $user->rights->deplacement->lire ), 'expensereport' => array( 'title' => "ListExpenseReportsAssociatedProject", 'class' => 'ExpenseReportLine', 'table' => 'expensereport_det', - 'test' => $conf->expensereport->enabled && $user->rights->expensereport->lire + 'test' => $conf->expensereport->enabled && $user->rights->expensereport->lire ), 'donation' => array( 'title' => "ListDonationsAssociatedProject", 'class' => 'Don', 'table' => 'don', - 'test' => $conf->don->enabled && $user->rights->don->lire + 'test' => $conf->don->enabled && $user->rights->don->lire ), 'loan' => array( 'title' => "ListLoanAssociatedProject", 'class' => 'Loan', 'table' => 'loan', - 'test' => $conf->loan->enabled && $user->rights->loan->read + 'test' => $conf->loan->enabled && $user->rights->loan->read ), 'chargesociales' => array( 'title' => "ListSocialContributionAssociatedProject", 'class' => 'ChargeSociales', 'table' => 'chargesociales', 'urlnew' => DOL_URL_ROOT . '/compta/sociales/card.php?action=create&projectid=' . $id, - 'test' => $conf->tax->enabled && $user->rights->tax->charges->lire + 'test' => $conf->tax->enabled && $user->rights->tax->charges->lire ), 'stock_mouvement' => array( 'title' => "ListMouvementStockProject", 'class' => 'MouvementStock', 'table' => 'stock_mouvement', - 'test' => ($conf->stock->enabled && $user->rights->stock->mouvement->lire && ! empty($conf->global->STOCK_MOVEMENT_INTO_PROJECT_OVERVIEW)) + 'test' => ($conf->stock->enabled && $user->rights->stock->mouvement->lire && ! empty($conf->global->STOCK_MOVEMENT_INTO_PROJECT_OVERVIEW)) ), 'agenda' => array( 'title' => "ListActionsAssociatedProject", 'class' => 'ActionComm', 'table' => 'actioncomm', 'disableamount' => 1, - 'test' => $conf->agenda->enabled && $user->rights->agenda->allactions->lire - ) + 'test' => $conf->agenda->enabled && $user->rights->agenda->allactions->lire + ) ); //Insert reference @@ -1171,7 +1170,7 @@ class doc_generic_project_odt extends ModelePDFProjects $odfHandler=null; // Destroy object $this->result = array('fullpath'=>$file); - + return 1; // Success } else diff --git a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php index e8af7d87cae..cc128f3fd26 100644 --- a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php +++ b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php @@ -390,10 +390,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in proposal as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); diff --git a/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php b/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php index a2c15780e35..dabe1bd99a3 100644 --- a/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php +++ b/htdocs/core/modules/user/doc/doc_generic_user_odt.modules.php @@ -338,10 +338,9 @@ class doc_generic_user_odt extends ModelePDFUser $array_soc=$this->get_substitutionarray_mysoc($mysoc,$outputlangs); $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in user as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); @@ -409,7 +408,7 @@ class doc_generic_user_odt extends ModelePDFUser $odfHandler=null; // Destroy object $this->result = array('fullpath'=>$file); - + return 1; // Success } else diff --git a/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php b/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php index 443981907e0..8f21bfc9ece 100644 --- a/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php +++ b/htdocs/core/modules/usergroup/doc/doc_generic_usergroup_odt.modules.php @@ -376,10 +376,9 @@ class doc_generic_usergroup_odt extends ModelePDFUserGroup $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_each_var_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in user as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact) - $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_thirdparty_contact = array(); + if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_global,$array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_thirdparty_contact); complete_substitutions_array($tmparray, $outputlangs, $object); From 4b402aa6d1a6c98e8b2c80a019320f80eded4c8c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 15:41:00 +0100 Subject: [PATCH 259/769] Fix regression on name of array --- .../modules/project/doc/doc_generic_project_odt.modules.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index a6743bf1669..431e0ab57e3 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -588,9 +588,9 @@ class doc_generic_project_odt extends ModelePDFProjects $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_other=$this->get_substitutionarray_other($outputlangs); - // retrieve contact information for use in order as contact_xxx tags - $array_thirdparty_contact = array(); - if ($usecontact && is_object($contactobject)) $array_thirdparty_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); + // retrieve contact information for use in object as contact_xxx tags + $array_project_contact = array(); + if ($usecontact && is_object($contactobject)) $array_project_contact=$this->get_substitutionarray_contact($contactobject,$outputlangs,'contact'); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_other,$array_project_contact); complete_substitutions_array($tmparray, $outputlangs, $object); From dfb20c705e2b1704cb2d52cd06e531751c62d06a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 16:05:50 +0100 Subject: [PATCH 260/769] NEW Add hidden option EXPENSEREPORT_DEFAULT_VALIDATOR_UNCHANGEABLE --- htdocs/expensereport/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index d16674f67d0..31482c341af 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -1390,7 +1390,7 @@ if ($action == 'create') $defaultselectuser=$user->fk_user; // Will work only if supervisor has permission to approve so is inside include_users if (! empty($conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR)) $defaultselectuser=$conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR; // Can force default approver if (GETPOST('fk_user_validator', 'int') > 0) $defaultselectuser=GETPOST('fk_user_validator', 'int'); - $s=$form->select_dolusers($defaultselectuser, "fk_user_validator", 1, "", 0, $include_users); + $s=$form->select_dolusers($defaultselectuser, "fk_user_validator", 1, "", ((empty($defaultselectuser) || empty($conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR_UNCHANGEABLE))?0:1), $include_users); print $form->textwithpicto($s, $langs->trans("AnyOtherInThisListCanValidate")); } print ''; From e4cfc2c6cb8d923e8f1d71b597c7b392829736a8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 17:30:08 +0100 Subject: [PATCH 261/769] Fix public --- htdocs/modulebuilder/template/class/myobject.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index f5f3f582fbc..706b90f6eac 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -410,7 +410,7 @@ class MyObject extends CommonObject * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto * @return string Label of status */ - function getLibStatut($mode=0) + public function getLibStatut($mode=0) { return $this->LibStatut($this->status, $mode); } @@ -423,7 +423,7 @@ class MyObject extends CommonObject * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto * @return string Label of status */ - function LibStatut($status, $mode=0) + public function LibStatut($status, $mode=0) { // phpcs:enable if (empty($this->labelstatus)) @@ -475,7 +475,7 @@ class MyObject extends CommonObject * @param int $id Id of order * @return void */ - function info($id) + public function info($id) { $sql = 'SELECT rowid, date_creation as datec, tms as datem,'; $sql.= ' fk_user_creat, fk_user_modif'; From 970f501147581c1102896389cd0f7ad81e4d0dc0 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 31 Oct 2018 20:10:20 +0100 Subject: [PATCH 262/769] Debug modulebuilder --- htdocs/admin/emailcollector_card.php | 404 +++++++++++ htdocs/admin/emailcollector_list.php | 551 +++++++++++++++ htdocs/core/class/translate.class.php | 2 +- .../core/modules/modEmailCollector.class.php | 2 +- .../class/emailcollector.class.php | 641 ++++++++++++++++++ .../emailcollector/lib/emailcollector.lib.php | 85 +++ .../install/mysql/migration/8.0.0-9.0.0.sql | 43 ++ .../llx_emailcollector_emailcollector.key.sql | 26 + .../llx_emailcollector_emailcollector.sql | 42 ++ .../template/class/myobject.class.php | 15 +- .../modulebuilder/template/myobject_card.php | 1 - .../modulebuilder/template/myobject_list.php | 4 +- 12 files changed, 1808 insertions(+), 8 deletions(-) create mode 100644 htdocs/admin/emailcollector_card.php create mode 100644 htdocs/admin/emailcollector_list.php create mode 100644 htdocs/emailcollector/class/emailcollector.class.php create mode 100644 htdocs/emailcollector/lib/emailcollector.lib.php create mode 100644 htdocs/install/mysql/tables/llx_emailcollector_emailcollector.key.sql create mode 100644 htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php new file mode 100644 index 00000000000..2408bcbc8e6 --- /dev/null +++ b/htdocs/admin/emailcollector_card.php @@ -0,0 +1,404 @@ + + * Copyright (C) ---Put here your own copyright and developer email--- + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file htdocs/admin/emailcollectore/emailcollector_card.php + * \ingroup emailcollector + * \brief Page to create/edit/view emailcollector + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/agenda.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/events.class.php'; + +include_once DOL_DOCUMENT_ROOT . '/core/class/html.formcompany.class.php'; +include_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; +dol_include_once('/emailcollector/class/emailcollector.class.php'); +dol_include_once('/emailcollector/lib/emailcollector.lib.php'); + +if (!$user->admin) + accessforbidden(); + +// Load traductions files requiredby by page +$langs->loadLangs(array("admin", "other")); + +// Get parameters +$id = GETPOST('id', 'int'); +$ref = GETPOST('ref', 'alpha'); +$action = GETPOST('action', 'alpha'); +$confirm = GETPOST('confirm', 'alpha'); +$cancel = GETPOST('cancel', 'aZ09'); +$contextpage= GETPOST('contextpage','aZ')?GETPOST('contextpage','aZ'):'myobjectcard'; // To manage different context of search +$backtopage = GETPOST('backtopage', 'alpha'); + +// Initialize technical objects +$object = new EmailCollector($db); +$extrafields = new ExtraFields($db); +$diroutputmassaction = $conf->emailcollector->dir_output . '/temp/massgeneration/' . $user->id; +$hookmanager->initHooks(array('emailcollectorcard')); // Note that conf->hooks_modules contains array +// Fetch optionals attributes and labels +$extralabels = $extrafields->fetch_name_optionals_label('emailcollector'); +$search_array_options = $extrafields->getOptionalsFromPost($extralabels, '', 'search_'); + +// Initialize array of search criterias +$search_all = trim(GETPOST("search_all", 'alpha')); +$search = array(); +foreach ($object->fields as $key => $val) { + if (GETPOST('search_'.$key,'alpha')) $search[$key]=GETPOST('search_'.$key,'alpha'); +} + +if (empty($action) && empty($id) && empty($ref)) $action='view'; + +// Load object +include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once // Must be include, not include_once. Include fetch and fetch_thirdparty but not fetch_optionals + +// Security check - Protection if external user +//if ($user->societe_id > 0) access_forbidden(); +//if ($user->societe_id > 0) $socid = $user->societe_id; +//$isdraft = (($object->statut == MyObject::STATUS_DRAFT) ? 1 : 0); +//$result = restrictedArea($user, 'mymodule', $object->id, '', '', 'fk_soc', 'rowid', $isdraft); + + +/* + * Actions + * + * Put here all code to do according to value of "action" parameter + */ + +$parameters = array(); +$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks +if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + +if (empty($reshook)) +{ + $error = 0; + + $permissiontoadd=1; + $permissiontodelete=1; + if (empty($backtopage)) $backtopage = dol_buildpath('/emailcollector/emailcollector_card.php',1).'?id='.($id > 0 ? $id : '__ID__'); + $backurlforlist = dol_buildpath('/emailcollector/emailcollector_list.php', 1); + + // Actions cancel, add, update, delete or clone + include DOL_DOCUMENT_ROOT.'/core/actions_addupdatedelete.inc.php'; + + // Actions when linking object each other + include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once + + // Actions when printing a doc from card + include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; +} + + + +/* + * View + * + * Put here all code to build page + */ + +$form = new Form($db); +$formfile = new FormFile($db); + +llxHeader('', 'EmailCollector', ''); + +// Example : Adding jquery code +print ''; + +// Part to create +if ($action == 'create') { + print load_fiche_titre($langs->trans("NewEmailCollector", $langs->transnoentitiesnoconv("EmailCollector"))); + + print '
'; + print ''; + print ''; + print ''; + + dol_fiche_head(array(), ''); + + print '
'; $tmpcode=$object->code_client; if (empty($tmpcode) && ! empty($modCodeClient->code_auto)) $tmpcode=$modCodeClient->getNextValue($object,0); - print ''; + print ''; print ''; $s=$modCodeClient->getToolTip($langs,$object,0); print $form->textwithpicto('',$s,1); @@ -1218,7 +1218,7 @@ else print ''; print ''; // Accountancy_account_insurance print ''; print ''; // Accountancy_account_interest print ''; print ''; } else // For external software From 28360f6710eeebc14dff60a2957fb9177e079a56 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 28 Oct 2018 09:41:11 +0100 Subject: [PATCH 206/769] FIX add to migrate_delete_old_files --- htdocs/install/upgrade2.php | 82 ++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php index 603d521f5ec..88d4d16b6f9 100644 --- a/htdocs/install/upgrade2.php +++ b/htdocs/install/upgrade2.php @@ -4425,50 +4425,50 @@ function migrate_rename_directories($db,$langs,$conf,$oldname,$newname) */ function migrate_delete_old_files($db,$langs,$conf) { - $result=true; + $result=true; - dolibarr_install_syslog("upgrade2::migrate_delete_old_files"); + dolibarr_install_syslog("upgrade2::migrate_delete_old_files"); - // List of files to delete - $filetodeletearray=array( - DOL_DOCUMENT_ROOT.'/core/triggers/interface_demo.class.php', - DOL_DOCUMENT_ROOT.'/core/menus/barre_left/default.php', - DOL_DOCUMENT_ROOT.'/core/menus/barre_top/default.php', - DOL_DOCUMENT_ROOT.'/core/modules/modComptabiliteExpert.class.php', - DOL_DOCUMENT_ROOT.'/core/modules/modCommercial.class.php', - DOL_DOCUMENT_ROOT.'/core/modules/modProduit.class.php', - DOL_DOCUMENT_ROOT.'/core/modules/modSkype.class.php', - DOL_DOCUMENT_ROOT.'/phenix/inc/triggers/interface_modPhenix_Phenixsynchro.class.php', - DOL_DOCUMENT_ROOT.'/webcalendar/inc/triggers/interface_modWebcalendar_webcalsynchro.class.php', - DOL_DOCUMENT_ROOT.'/core/triggers/interface_modWebcalendar_Webcalsynchro.class.php', - DOL_DOCUMENT_ROOT.'/core/triggers/interface_modCommande_Ecotax.class.php', - DOL_DOCUMENT_ROOT.'/core/triggers/interface_modCommande_fraisport.class.php', - DOL_DOCUMENT_ROOT.'/core/triggers/interface_modPropale_PropalWorkflow.class.php', - DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone.lib.php', - DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone_backoffice.php', - DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone_frontoffice.php', - DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria_backoffice.php', - DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria_frontoffice.php', - DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy_backoffice.php', - DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy_frontoffice.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts2.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts3.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts4.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/framboise.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/dolibarr_services_expired.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/peche.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/poire.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/mailings/kiwi.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/facture/pdf_crabe.modules.php', - DOL_DOCUMENT_ROOT.'/core/modules/facture/pdf_oursin.modules.php', - - DOL_DOCUMENT_ROOT.'/compta/facture/class/api_invoice.class.php', - DOL_DOCUMENT_ROOT.'/commande/class/api_commande.class.php', - DOL_DOCUMENT_ROOT.'/user/class/api_user.class.php', - DOL_DOCUMENT_ROOT.'/product/class/api_product.class.php', - DOL_DOCUMENT_ROOT.'/societe/class/api_contact.class.php', - DOL_DOCUMENT_ROOT.'/societe/class/api_thirdparty.class.php' + // List of files to delete + $filetodeletearray=array( + DOL_DOCUMENT_ROOT.'/core/triggers/interface_demo.class.php', + DOL_DOCUMENT_ROOT.'/core/menus/barre_left/default.php', + DOL_DOCUMENT_ROOT.'/core/menus/barre_top/default.php', + DOL_DOCUMENT_ROOT.'/core/modules/modComptabiliteExpert.class.php', + DOL_DOCUMENT_ROOT.'/core/modules/modCommercial.class.php', + DOL_DOCUMENT_ROOT.'/core/modules/modProduit.class.php', + DOL_DOCUMENT_ROOT.'/core/modules/modSkype.class.php', + DOL_DOCUMENT_ROOT.'/phenix/inc/triggers/interface_modPhenix_Phenixsynchro.class.php', + DOL_DOCUMENT_ROOT.'/webcalendar/inc/triggers/interface_modWebcalendar_webcalsynchro.class.php', + DOL_DOCUMENT_ROOT.'/core/triggers/interface_modWebcalendar_Webcalsynchro.class.php', + DOL_DOCUMENT_ROOT.'/core/triggers/interface_modCommande_Ecotax.class.php', + DOL_DOCUMENT_ROOT.'/core/triggers/interface_modCommande_fraisport.class.php', + DOL_DOCUMENT_ROOT.'/core/triggers/interface_modPropale_PropalWorkflow.class.php', + DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone.lib.php', + DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone_backoffice.php', + DOL_DOCUMENT_ROOT.'/core/menus/smartphone/iphone_frontoffice.php', + DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria_backoffice.php', + DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria_frontoffice.php', + DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy_backoffice.php', + DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy_frontoffice.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts2.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts3.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/contacts4.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/framboise.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/dolibarr_services_expired.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/peche.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/poire.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/mailings/kiwi.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/facture/pdf_crabe.modules.php', + DOL_DOCUMENT_ROOT.'/core/modules/facture/pdf_oursin.modules.php', + DOL_DOCUMENT_ROOT.'/compta/facture/class/api_invoice.class.php', + DOL_DOCUMENT_ROOT.'/commande/class/api_commande.class.php', + DOL_DOCUMENT_ROOT.'/user/class/api_user.class.php', + DOL_DOCUMENT_ROOT.'/product/class/api_product.class.php', + DOL_DOCUMENT_ROOT.'/societe/class/api_contact.class.php', + DOL_DOCUMENT_ROOT.'/societe/class/api_thirdparty.class.php', + DOL_DOCUMENT_ROOT.'/support/online.php' ); foreach ($filetodeletearray as $filetodelete) From 46d3bec104695e17dd08430d78438190dc95c4d9 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sun, 28 Oct 2018 10:25:56 +0100 Subject: [PATCH 207/769] Fix replenish wasn't caring about supplier price min quantity #9561 --- htdocs/langs/en_US/errors.lang | 1 + htdocs/product/stock/replenish.php | 45 +++++++++++++++++------------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index 45c1426556e..25a5344ff62 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -88,6 +88,7 @@ ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this supplier +ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created beacuse of too low quantity ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number diff --git a/htdocs/product/stock/replenish.php b/htdocs/product/stock/replenish.php index 46200a2f6a7..3bc2bcdd85c 100644 --- a/htdocs/product/stock/replenish.php +++ b/htdocs/product/stock/replenish.php @@ -106,12 +106,15 @@ if ($action == 'order' && isset($_POST['valid'])) { $linecount = GETPOST('linecount', 'int'); $box = 0; + $errorQty = 0; unset($_POST['linecount']); if ($linecount > 0) { $db->begin(); $suppliers = array(); + require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.product.class.php'; + $productsupplier = new ProductFournisseur($db); for ($i = 0; $i < $linecount; $i++) { if (GETPOST('choose' . $i, 'alpha') === 'on' && GETPOST('fourn' . $i, 'int') > 0) @@ -121,13 +124,9 @@ if ($action == 'order' && isset($_POST['valid'])) $supplierpriceid = GETPOST('fourn'.$i, 'int'); //get all the parameters needed to create a line $qty = GETPOST('tobuy'.$i, 'int'); - //$desc = GETPOST('desc'.$i, 'alpha'); - $sql = 'SELECT fk_product, fk_soc, ref_fourn'; - $sql .= ', tva_tx, unitprice, remise_percent FROM '; - $sql .= MAIN_DB_PREFIX . 'product_fournisseur_price'; - $sql .= ' WHERE rowid = ' . $supplierpriceid; - $resql = $db->query($sql); - if ($resql && $db->num_rows($resql) > 0) + $idprod=$productsupplier->get_buyprice($supplierpriceid, $qty); + $res=$productsupplier->fetch($idprod); + if ($res && $idprod > 0) { if ($qty) { @@ -135,33 +134,37 @@ if ($action == 'order' && isset($_POST['valid'])) $obj = $db->fetch_object($resql); $line = new CommandeFournisseurLigne($db); $line->qty = $qty; - $line->fk_product = $obj->fk_product; + $line->fk_product = $idprod; - $product = new Product($db); - $product->fetch($obj->fk_product); + //$product = new Product($db); + //$product->fetch($obj->fk_product); if (! empty($conf->global->MAIN_MULTILANGS)) { - $product->getMultiLangs(); + $productsupplier->getMultiLangs(); } - $line->desc = $product->description; + $line->desc = $productsupplier->description; if (! empty($conf->global->MAIN_MULTILANGS)) { // TODO Get desc in language of thirdparty } - $line->tva_tx = $obj->tva_tx; - $line->subprice = $obj->unitprice; - $line->total_ht = $obj->unitprice * $qty; + $line->tva_tx = $productsupplier->vatrate_supplier; + $line->subprice = $productsupplier->fourn_pu; + $line->total_ht = $productsupplier->fourn_pu * $qty; $tva = $line->tva_tx / 100; $line->total_tva = $line->total_ht * $tva; $line->total_ttc = $line->total_ht + $line->total_tva; - $line->remise_percent = $obj->remise_percent; - $line->ref_fourn = $obj->ref_fourn; - $line->type = $product->type; - $line->fk_unit = $product->fk_unit; - $suppliers[$obj->fk_soc]['lines'][] = $line; + $line->remise_percent = $productsupplier->remise_percent; + $line->ref_fourn = $productsupplier->ref_supplier; + $line->type = $productsupplier->type; + $line->fk_unit = $productsupplier->fk_unit; + $suppliers[$productsupplier->fourn_socid]['lines'][] = $line; } } + elseif ($idprod == -1) + { + $errorQty++; + } else { $error=$db->lasterror(); @@ -242,6 +245,8 @@ if ($action == 'order' && isset($_POST['valid'])) } } + if($errorQty) setEventMessages($langs->trans('ErrorOrdersNotCreatedQtyTooLow'), null, 'warnings'); + if (! $fail && $id) { $db->commit(); From b68b8fe412350af48ce507ceb1fba526bc1843fd Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sun, 28 Oct 2018 11:02:18 +0100 Subject: [PATCH 208/769] Fix changing currency in a doc was recalculating amounts in company currency #9801 --- htdocs/core/class/commonobject.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index d4102873dae..88386521079 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1778,7 +1778,7 @@ abstract class CommonObject $this->multicurrency_code = $code; list($fk_multicurrency, $rate) = MultiCurrency::getIdAndTxFromCode($this->db, $code); - if ($rate) $this->setMulticurrencyRate($rate); + if ($rate) $this->setMulticurrencyRate($rate,2); return 1; } From af9b8f033a804e667b44f8e97680e064acb7dade Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 28 Oct 2018 17:23:42 +0100 Subject: [PATCH 209/769] Click to refresh --- htdocs/langs/en_US/main.lang | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 03d65917a97..fa74cfa44bc 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -750,6 +750,7 @@ LinkToIntervention=Link to intervention CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit +ClickToRefresh=Click to refresh EditWithEditor=Edit with CKEditor EditWithTextEditor=Edit with Text editor EditHTMLSource=Edit HTML Source From 4611b96da819529cb1600f089d1c4312cecb4dc6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 28 Oct 2018 20:18:09 +0100 Subject: [PATCH 210/769] Fix phpcs --- htdocs/admin/holiday.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/admin/holiday.php b/htdocs/admin/holiday.php index c02c9bd480d..81becbaa37c 100644 --- a/htdocs/admin/holiday.php +++ b/htdocs/admin/holiday.php @@ -513,7 +513,6 @@ print ''; print ''; print ''; - } From 9b3fc6527c82fcbcb6502c3477a33262e1a7fa4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sun, 28 Oct 2018 23:50:13 +0100 Subject: [PATCH 211/769] Update box_graph_product_distribution.php --- htdocs/core/boxes/box_graph_product_distribution.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/htdocs/core/boxes/box_graph_product_distribution.php index 42afa4fbfe0..9dc4c162e0f 100644 --- a/htdocs/core/boxes/box_graph_product_distribution.php +++ b/htdocs/core/boxes/box_graph_product_distribution.php @@ -1,5 +1,6 @@ + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -139,10 +140,10 @@ class box_graph_product_distribution extends ModeleBoxes if (! empty($conf->facture->enabled) && ! empty($user->rights->facture->lire)) { - // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showinvoicenb) { + $langs->load("bills"); include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php'; $showpointvalue = 1; $nocolor = 0; @@ -202,6 +203,7 @@ class box_graph_product_distribution extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showpropalnb) { + $langs->load("propal"); include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propalestats.class.php'; $showpointvalue = 1; $nocolor = 0; @@ -258,11 +260,10 @@ class box_graph_product_distribution extends ModeleBoxes if (! empty($conf->commande->enabled) && ! empty($user->rights->commande->lire)) { - $langs->load("orders"); - // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showordernb) { + $langs->load("orders"); include_once DOL_DOCUMENT_ROOT.'/commande/class/commandestats.class.php'; $showpointvalue = 1; $nocolor = 0; From f8a49edf782dea3cdf6990d297b518c5e12b5e49 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 00:55:55 +0100 Subject: [PATCH 212/769] Fix use setup of template for attached files in mass actions --- htdocs/core/class/html.formmail.class.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 68da2dce777..640355c1295 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -880,6 +880,13 @@ class FormMail extends Form $out.= ''; $out.= ''; $out.= '
'; $tmpcode=$object->code_fournisseur; if (empty($tmpcode) && ! empty($modCodeFournisseur->code_auto)) $tmpcode=$modCodeFournisseur->getNextValue($object,1); - print ''; + print ''; print ''; $s=$modCodeFournisseur->getToolTip($langs,$object,1); print $form->textwithpicto('',$s,1); @@ -1570,9 +1570,9 @@ else $object->name = GETPOST('name', 'alpha'); $object->prefix_comm = GETPOST('prefix_comm', 'alpha'); $object->client = GETPOST('client', 'int'); - $object->code_client = GETPOST('code_client', 'alpha'); + $object->code_client = GETPOST('customer_code', 'alpha'); $object->fournisseur = GETPOST('fournisseur', 'int'); - $object->code_fournisseur = GETPOST('code_fournisseur', 'alpha'); + $object->code_fournisseur = GETPOST('supplier_code', 'alpha'); $object->address = GETPOST('address', 'alpha'); $object->zip = GETPOST('zipcode', 'alpha'); $object->town = GETPOST('town', 'alpha'); @@ -1776,16 +1776,16 @@ else $tmpcode=$object->code_client; if (empty($tmpcode) && ! empty($object->oldcopy->code_client)) $tmpcode=$object->oldcopy->code_client; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value. if (empty($tmpcode) && ! empty($modCodeClient->code_auto)) $tmpcode=$modCodeClient->getNextValue($object,0); - print ''; + print ''; } else if ($object->codeclient_modifiable()) { - print ''; + print ''; } else { print $object->code_client; - print ''; + print ''; } print ''; $s=$modCodeClient->getToolTip($langs,$object,0); @@ -1816,16 +1816,16 @@ else $tmpcode=$object->code_fournisseur; if (empty($tmpcode) && ! empty($object->oldcopy->code_fournisseur)) $tmpcode=$object->oldcopy->code_fournisseur; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value. if (empty($tmpcode) && ! empty($modCodeFournisseur->code_auto)) $tmpcode=$modCodeFournisseur->getNextValue($object,1); - print ''; + print ''; } else if ($object->codefournisseur_modifiable()) { - print ''; + print ''; } else { print $object->code_fournisseur; - print ''; + print ''; } print ''; $s=$modCodeFournisseur->getToolTip($langs,$object,1); From 71c64c09446456da392cbe10e2211f445f6aabc1 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 27 Oct 2018 01:57:07 +0100 Subject: [PATCH 192/769] FIX: Expense Report Ref Not Showing in PDF File Properties The generated pdf title field in the pdf file document properties was blank. This fixes that. --- htdocs/core/modules/expensereport/doc/pdf_standard.modules.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index d98801ab7e2..ec03a2cef8e 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -278,7 +278,7 @@ class pdf_standard extends ModeleExpenseReport $pagenb=0; $pdf->SetDrawColor(128,128,128); - $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref_number)); + $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref)); $pdf->SetSubject($outputlangs->transnoentities("Trips")); $pdf->SetCreator("Dolibarr ".DOL_VERSION); $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); From 1b054f1b363ba0a627065a4e4467acf06165ef04 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sat, 27 Oct 2018 09:19:02 +0200 Subject: [PATCH 193/769] Fix invoice creation from contract was invoicing closed services #9087 --- htdocs/compta/facture/card.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 993194e0f91..daff7c95f56 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -1196,6 +1196,8 @@ if (empty($reshook)) { // Don't add lines with qty 0 when coming from a shipment including all order lines if($srcobject->element == 'shipping' && $conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS && $lines[$i]->qty == 0) continue; + // Don't add closed lines when coming from a contract + if($srcobject->element == 'contrat' && $lines[$i]->statut == 5) continue; $label=(! empty($lines[$i]->label)?$lines[$i]->label:''); $desc=(! empty($lines[$i]->desc)?$lines[$i]->desc:$lines[$i]->libelle); From abb343d37e043840bcfd5d295b71331ab821599f Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sat, 27 Oct 2018 09:42:08 +0200 Subject: [PATCH 194/769] Fix missing name alias field in societe import/export #9091 --- htdocs/core/modules/modSociete.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 0498e37bdfc..2aef12c6a1d 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -258,7 +258,7 @@ class modSociete extends DolibarrModules $this->export_label[$r]='ExportDataset_company_1'; $this->export_icon[$r]='company'; $this->export_permission[$r]=array(array("societe","export")); - $this->export_fields_array[$r]=array('s.rowid'=>"Id",'s.nom'=>"Name",'s.status'=>"Status",'s.client'=>"Customer",'s.fournisseur'=>"Supplier",'s.datec'=>"DateCreation",'s.tms'=>"DateLastModification",'s.code_client'=>"CustomerCode",'s.code_fournisseur'=>"SupplierCode",'s.code_compta'=>"AccountancyCode",'s.code_compta_fournisseur'=>"SupplierAccountancyCode",'s.address'=>"Address",'s.zip'=>"Zip",'s.town'=>"Town",'d.nom'=>'State','c.label'=>"Country",'c.code'=>"CountryCode",'s.phone'=>"Phone",'s.fax'=>"Fax",'s.url'=>"Url",'s.email'=>"Email",'s.default_lang'=>"DefaultLang",'s.siren'=>"ProfId1",'s.siret'=>"ProfId2",'s.ape'=>"ProfId3",'s.idprof4'=>"ProfId4",'s.idprof5'=>"ProfId5",'s.idprof6'=>"ProfId6",'s.tva_intra'=>"VATIntraShort",'s.capital'=>"Capital",'s.note_private'=>"NotePrivate",'s.note_public'=>"NotePublic",'t.libelle'=>"ThirdPartyType",'ce.code'=>"Staff","cfj.libelle"=>"JuridicalStatus",'s.fk_prospectlevel'=>'ProspectLevel','st.code'=>'ProspectStatus','payterm.libelle'=>'PaymentConditions','paymode.libelle'=>'PaymentMode'); + $this->export_fields_array[$r]=array('s.rowid'=>"Id",'s.nom'=>"Name",'s.name_alias'=>"AliasNames",'s.status'=>"Status",'s.client'=>"Customer",'s.fournisseur'=>"Supplier",'s.datec'=>"DateCreation",'s.tms'=>"DateLastModification",'s.code_client'=>"CustomerCode",'s.code_fournisseur'=>"SupplierCode",'s.code_compta'=>"AccountancyCode",'s.code_compta_fournisseur'=>"SupplierAccountancyCode",'s.address'=>"Address",'s.zip'=>"Zip",'s.town'=>"Town",'d.nom'=>'State','c.label'=>"Country",'c.code'=>"CountryCode",'s.phone'=>"Phone",'s.fax'=>"Fax",'s.url'=>"Url",'s.email'=>"Email",'s.default_lang'=>"DefaultLang",'s.siren'=>"ProfId1",'s.siret'=>"ProfId2",'s.ape'=>"ProfId3",'s.idprof4'=>"ProfId4",'s.idprof5'=>"ProfId5",'s.idprof6'=>"ProfId6",'s.tva_intra'=>"VATIntraShort",'s.capital'=>"Capital",'s.note_private'=>"NotePrivate",'s.note_public'=>"NotePublic",'t.libelle'=>"ThirdPartyType",'ce.code'=>"Staff","cfj.libelle"=>"JuridicalStatus",'s.fk_prospectlevel'=>'ProspectLevel','st.code'=>'ProspectStatus','payterm.libelle'=>'PaymentConditions','paymode.libelle'=>'PaymentMode'); if (! empty($conf->global->SOCIETE_USEPREFIX)) $this->export_fields_array[$r]['s.prefix']='Prefix'; // Add multicompany field if (! empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) @@ -270,7 +270,7 @@ class modSociete extends DolibarrModules include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; $this->export_fields_array[$r]+=array('u.login'=>'SaleRepresentativeLogin','u.firstname'=>'SaleRepresentativeFirstname', 'u.lastname'=>'SaleRepresentativeLastname'); //$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:nom",'s.nom'=>"Text",'s.status'=>"Text",'s.client'=>"Boolean",'s.fournisseur'=>"Boolean",'s.datec'=>"Date",'s.tms'=>"Date",'s.code_client'=>"Text",'s.code_fournisseur'=>"Text",'s.address'=>"Text",'s.zip'=>"Text",'s.town'=>"Text",'c.label'=>"List:c_country:label:label",'c.code'=>"Text",'s.phone'=>"Text",'s.fax'=>"Text",'s.url'=>"Text",'s.email'=>"Text",'s.default_lang'=>"Text",'s.siret'=>"Text",'s.siren'=>"Text",'s.ape'=>"Text",'s.idprof4'=>"Text",'s.idprof5'=>"Text",'s.idprof6'=>"Text",'s.tva_intra'=>"Text",'s.capital'=>"Numeric",'s.note'=>"Text",'t.libelle'=>"Text",'ce.code'=>"List:c_effectif:libelle:code","cfj.libelle"=>"Text",'s.fk_prospectlevel'=>'List:c_prospectlevel:label:code','s.fk_stcomm'=>'List:c_stcomm:libelle:code','d.nom'=>'List:c_departements:nom:rowid'); - $this->export_TypeFields_array[$r]=array('s.rowid'=>"Numeric", 's.nom'=>"Text",'s.status'=>"Numeric",'s.client'=>"Numeric",'s.fournisseur'=>"Boolean",'s.datec'=>"Date",'s.tms'=>"Date",'s.code_client'=>"Text",'s.code_fournisseur'=>"Text",'s.code_compta'=>"Text",'s.code_compta_fournisseur'=>"Text",'s.address'=>"Text",'s.zip'=>"Text",'s.town'=>"Text",'c.label'=>"List:c_country:label:label",'c.code'=>"Text",'s.phone'=>"Text",'s.fax'=>"Text",'s.url'=>"Text",'s.email'=>"Text",'s.default_lang'=>"Text",'s.siret'=>"Text",'s.siren'=>"Text",'s.ape'=>"Text",'s.idprof4'=>"Text",'s.idprof5'=>"Text",'s.idprof6'=>"Text",'s.tva_intra'=>"Text",'s.capital'=>"Numeric",'s.note_private'=>"Text",'s.note_public'=>"Text",'t.libelle'=>"Text",'ce.code'=>"List:c_effectif:libelle:code","cfj.libelle"=>"Text",'s.fk_prospectlevel'=>'List:c_prospectlevel:label:code','st.code'=>'List:c_stcomm:libelle:code','d.nom'=>'Text','u.login'=>'Text','u.firstname'=>'Text','u.lastname'=>'Text','payterm.libelle'=>'Text','paymode.libelle'=>'Text','s.entity'=>'Numeric'); + $this->export_TypeFields_array[$r]=array('s.rowid'=>"Numeric", 's.nom'=>"Text",'s.name_alias'=>"Text",'s.status'=>"Numeric",'s.client'=>"Numeric",'s.fournisseur'=>"Boolean",'s.datec'=>"Date",'s.tms'=>"Date",'s.code_client'=>"Text",'s.code_fournisseur'=>"Text",'s.code_compta'=>"Text",'s.code_compta_fournisseur'=>"Text",'s.address'=>"Text",'s.zip'=>"Text",'s.town'=>"Text",'c.label'=>"List:c_country:label:label",'c.code'=>"Text",'s.phone'=>"Text",'s.fax'=>"Text",'s.url'=>"Text",'s.email'=>"Text",'s.default_lang'=>"Text",'s.siret'=>"Text",'s.siren'=>"Text",'s.ape'=>"Text",'s.idprof4'=>"Text",'s.idprof5'=>"Text",'s.idprof6'=>"Text",'s.tva_intra'=>"Text",'s.capital'=>"Numeric",'s.note_private'=>"Text",'s.note_public'=>"Text",'t.libelle'=>"Text",'ce.code'=>"List:c_effectif:libelle:code","cfj.libelle"=>"Text",'s.fk_prospectlevel'=>'List:c_prospectlevel:label:code','st.code'=>'List:c_stcomm:libelle:code','d.nom'=>'Text','u.login'=>'Text','u.firstname'=>'Text','u.lastname'=>'Text','payterm.libelle'=>'Text','paymode.libelle'=>'Text','s.entity'=>'Numeric'); $this->export_entities_array[$r]=array('u.login'=>'user','u.firstname'=>'user','u.lastname'=>'user'); // We define here only fields that use another picto $this->export_examplevalues_array[$r]=array('s.client'=>'0 (no customer no prospect)/1 (customer)/2 (prospect)/3 (customer and prospect)','s.fournisseur'=>'0 (not a supplier) or 1 (supplier)'); @@ -345,7 +345,7 @@ class modSociete extends DolibarrModules $this->import_icon[$r]='company'; $this->import_entities_array[$r]=array(); // We define here only fields that use another icon that the one defined into import_icon $this->import_tables_array[$r]=array('s'=>MAIN_DB_PREFIX.'societe','extra'=>MAIN_DB_PREFIX.'societe_extrafields'); // List of tables to insert into (insert done in same order) - $this->import_fields_array[$r]=array('s.nom'=>"Name*",'s.status'=>"Status",'s.client'=>"Customer*",'s.fournisseur'=>"Supplier*",'s.code_client'=>"CustomerCode",'s.code_fournisseur'=>"SupplierCode",'s.code_compta'=>"CustomerAccountancyCode",'s.code_compta_fournisseur'=>"SupplierAccountancyCode",'s.address'=>"Address",'s.zip'=>"Zip",'s.town'=>"Town",'s.fk_departement'=>"StateId",'s.fk_pays'=>"CountryCode",'s.phone'=>"Phone",'s.fax'=>"Fax",'s.url'=>"Url",'s.email'=>"Email",'s.siren'=>"ProfId1",'s.siret'=>"ProfId2",'s.ape'=>"ProfId3",'s.idprof4'=>"ProfId4",'s.idprof5'=>"ProfId5",'s.idprof6'=>"ProfId6",'s.tva_intra'=>"VATIntraShort",'s.capital'=>"Capital",'s.note_private'=>"NotePrivate",'s.note_public'=>"NotePublic",'s.fk_typent'=>"ThirdPartyType",'s.fk_effectif'=>"Staff","s.fk_forme_juridique"=>"JuridicalStatus",'s.fk_prospectlevel'=>'ProspectLevel','s.fk_stcomm'=>'ProspectStatus','s.default_lang'=>'DefaultLanguage','s.barcode'=>'BarCode','s.datec'=>"DateCreation"); + $this->import_fields_array[$r]=array('s.nom'=>"Name*",'s.name_alias'=>"Alias",'s.status'=>"Status",'s.client'=>"Customer*",'s.fournisseur'=>"Supplier*",'s.code_client'=>"CustomerCode",'s.code_fournisseur'=>"SupplierCode",'s.code_compta'=>"CustomerAccountancyCode",'s.code_compta_fournisseur'=>"SupplierAccountancyCode",'s.address'=>"Address",'s.zip'=>"Zip",'s.town'=>"Town",'s.fk_departement'=>"StateId",'s.fk_pays'=>"CountryCode",'s.phone'=>"Phone",'s.fax'=>"Fax",'s.url'=>"Url",'s.email'=>"Email",'s.siren'=>"ProfId1",'s.siret'=>"ProfId2",'s.ape'=>"ProfId3",'s.idprof4'=>"ProfId4",'s.idprof5'=>"ProfId5",'s.idprof6'=>"ProfId6",'s.tva_intra'=>"VATIntraShort",'s.capital'=>"Capital",'s.note_private'=>"NotePrivate",'s.note_public'=>"NotePublic",'s.fk_typent'=>"ThirdPartyType",'s.fk_effectif'=>"Staff","s.fk_forme_juridique"=>"JuridicalStatus",'s.fk_prospectlevel'=>'ProspectLevel','s.fk_stcomm'=>'ProspectStatus','s.default_lang'=>'DefaultLanguage','s.barcode'=>'BarCode','s.datec'=>"DateCreation"); // Add extra fields $sql="SELECT name, label, fieldrequired FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'societe' AND entity = ".$conf->entity; $resql=$this->db->query($sql); @@ -373,7 +373,7 @@ class modSociete extends DolibarrModules ); //$this->import_convertvalue_array[$r]=array('s.fk_soc'=>array('rule'=>'lastrowid',table='t'); $this->import_regex_array[$r]=array('s.status'=>'^[0|1]','s.client'=>'^[0|1|2|3]','s.fournisseur'=>'^[0|1]','s.fk_typent'=>'id@'.MAIN_DB_PREFIX.'c_typent','s.datec'=>'^[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]( [0-9][0-9]:[0-9][0-9]:[0-9][0-9])?$'); - $this->import_examplevalues_array[$r]=array('s.nom'=>"MyBigCompany",'s.status'=>"0 (closed) or 1 (active)",'s.client'=>'0 (no customer no prospect)/1 (customer)/2 (prospect)/3 (customer and prospect)','s.fournisseur'=>'0 or 1','s.datec'=>dol_print_date(dol_now(),'%Y-%m-%d'),'s.code_client'=>'CU01-0001 or empty or "auto"','s.code_fournisseur'=>'SU01-0001 or empty or "auto"','s.address'=>"61 jump street",'s.zip'=>"123456",'s.town'=>"Big town",'s.fk_pays'=>'US, FR, DE...','s.phone'=>"0101010101",'s.fax'=>"0101010102",'s.url'=>"http://mycompany.com",'s.email'=>"test@mycompany.com",'s.siret'=>"",'s.siren'=>"",'s.ape'=>"",'s.idprof4'=>"",'s.idprof5'=>"",'s.idprof6'=>"",'s.tva_intra'=>"FR0123456789",'s.capital'=>"10000",'s.note_private'=>"This is an example of private note for record",'s.note_public'=>"This is an example of public note for record",'s.fk_typent'=>"2",'s.fk_effectif'=>"3","s.fk_forme_juridique"=>"1",'s.fk_prospectlevel'=>'PL_MEDIUM','s.fk_stcomm'=>'0','s.default_lang'=>'en_US','s.barcode'=>'123456789','s.datec'=>"2015-01-01 or 2015-01-01 12:30:00"); + $this->import_examplevalues_array[$r]=array('s.nom'=>"MyBigCompany",'s.name_alias'=>"MyBigAlias",'s.status'=>"0 (closed) or 1 (active)",'s.client'=>'0 (no customer no prospect)/1 (customer)/2 (prospect)/3 (customer and prospect)','s.fournisseur'=>'0 or 1','s.datec'=>dol_print_date(dol_now(),'%Y-%m-%d'),'s.code_client'=>'CU01-0001 or empty or "auto"','s.code_fournisseur'=>'SU01-0001 or empty or "auto"','s.address'=>"61 jump street",'s.zip'=>"123456",'s.town'=>"Big town",'s.fk_pays'=>'US, FR, DE...','s.phone'=>"0101010101",'s.fax'=>"0101010102",'s.url'=>"http://mycompany.com",'s.email'=>"test@mycompany.com",'s.siret'=>"",'s.siren'=>"",'s.ape'=>"",'s.idprof4'=>"",'s.idprof5'=>"",'s.idprof6'=>"",'s.tva_intra'=>"FR0123456789",'s.capital'=>"10000",'s.note_private'=>"This is an example of private note for record",'s.note_public'=>"This is an example of public note for record",'s.fk_typent'=>"2",'s.fk_effectif'=>"3","s.fk_forme_juridique"=>"1",'s.fk_prospectlevel'=>'PL_MEDIUM','s.fk_stcomm'=>'0','s.default_lang'=>'en_US','s.barcode'=>'123456789','s.datec'=>"2015-01-01 or 2015-01-01 12:30:00"); $this->import_updatekeys_array[$r]=array('s.nom'=>'Name','s.code_client'=>'CustomerCode','s.code_fournisseur'=>'SupplierCode','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode'); // Import list of contact and attributes From a30091fd7485c31a9ea3310b6d953d850a141d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 09:51:19 +0200 Subject: [PATCH 195/769] Update commande.class.php --- htdocs/commande/class/commande.class.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index d2f915406f8..cc64226a67a 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -76,6 +76,9 @@ class Commande extends CommonOrder public $facturee; public $billed; // billed or not + /** + * @var int Draft Status of the order + */ public $brouillon; public $cond_reglement_code; @@ -226,7 +229,7 @@ class Commande extends CommonOrder $mybool|=@include_once $dir.$file; } - if (! $mybool) + if ($mybool === false) { dol_print_error('',"Failed to include file ".$file); return ''; @@ -400,6 +403,7 @@ class Commande extends CommonOrder { $this->ref = $num; $this->statut = self::STATUS_VALIDATED; + $this->brouillon = 0; } if (! $error) From 4ec80b5136861cf3ee59e2284360bd5a172c58eb Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sat, 27 Oct 2018 10:53:01 +0200 Subject: [PATCH 196/769] Fix invoice supplier clone was not getting all lines parameters #9800 --- htdocs/fourn/class/fournisseur.facture.class.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 7f5496094f7..69e7aa3fa71 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -376,7 +376,14 @@ class FactureFournisseur extends CommonInvoice $this->lines[$i]->fk_product, 'HT', (! empty($this->lines[$i]->info_bits)?$this->lines[$i]->info_bits:''), - $this->lines[$i]->product_type + $this->lines[$i]->product_type, + $this->lines[$i]->remise_percent, + false, + $this->lines[$i]->date_start, + $this->lines[$i]->date_end, + $this->lines[$i]->array_options, + $this->lines[$i]->fk_unit, + $this->lines[$i]->pu_ht_devise ); } else From fcd687642c89d627523402baf87533638682cce6 Mon Sep 17 00:00:00 2001 From: Librethic <34575536+librethic-code@users.noreply.github.com> Date: Sat, 27 Oct 2018 11:46:12 +0200 Subject: [PATCH 197/769] FIX: keep external module element when adding resource When adding object from external module as a resource we need to keep @modulename as defined into url rather than use `element` property (which do not contain @modulename). --- htdocs/resource/element_resource.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/resource/element_resource.php b/htdocs/resource/element_resource.php index 389d0236759..b9ff15f1461 100644 --- a/htdocs/resource/element_resource.php +++ b/htdocs/resource/element_resource.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2013-2018 Jean-François Ferry * Copyright (C) 2016 Gilles Poirier * * This program is free software: you can redistribute it and/or modify @@ -94,7 +94,7 @@ if ($action == 'add_element_resource' && ! $cancel) else { $objstat = fetchObjectByElement($element_id, $element); - + $objstat->element = $element; // For externals module, we need to keep @xx $res = $objstat->add_element_resource($resource_id, $resource_type, $busy, $mandatory); } if (! $error && $res > 0) From 1c63d3a01dd44910c544dba25bdffa614fa3f24f Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sat, 27 Oct 2018 14:26:23 +0200 Subject: [PATCH 198/769] FIX remove deprecated and unused file --- htdocs/cache.manifest | 1 - htdocs/support/online.php | 163 -------------------------------------- 2 files changed, 164 deletions(-) delete mode 100644 htdocs/support/online.php diff --git a/htdocs/cache.manifest b/htdocs/cache.manifest index a3d1b1c554f..ebbf1aab4eb 100644 --- a/htdocs/cache.manifest +++ b/htdocs/cache.manifest @@ -11,7 +11,6 @@ CACHE: theme/dolibarr_logo.png support/ support/index.php -support/online.php support/default.css support/helpcenter.png diff --git a/htdocs/support/online.php b/htdocs/support/online.php deleted file mode 100644 index 01b2cb4dbd1..00000000000 --- a/htdocs/support/online.php +++ /dev/null @@ -1,163 +0,0 @@ - - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/** - * \file htdocs/support/online.php - * \ingroup install - * \brief Provide an Online Help support - */ - -error_reporting(0); - -include_once 'inc.php'; -$uri=preg_replace('/^http(s?):\/\//i','',$dolibarr_main_url_root); -$pos = strstr($uri, '/'); // $pos contient alors url sans nom domaine -if ($pos == '/') $pos = ''; // si $pos vaut /, on le met a '' -define('DOL_URL_ROOT', $pos); // URL racine relative - - -$langs->loadLangs(array("other", "help")); - -/* - * View - */ - -pHeader($langs->trans("DolibarrHelpCenter"),$_SERVER["PHP_SELF"]); - -$urlsparkengels='http://www.spark-angels.com'; -$titlesparkangels='Spark-Angels'; - -//print '
'; - -print $langs->trans("ToGetHelpGoOnSparkAngels1",$titlesparkangels).'
'; - -print '

'; - - -// List of predefined coaches -// We list here the 4 most active coaches on Dolibarr projects (according to number of commits -// found in page http://www.nltechno.com/stats/dolibarr/cvschangelogbuilder_dolibarr.html -$limit=4; -$arrayofwidgets=array( -// Widget for Laurent Destailleur -array('name'=>'Laurent Destailleur', // id user 4702 - 'sort'=>1, - 'logo'=>'logoUrl='.urlencode('http://www.nltechno.com/images/logo_nltechno_long.jpg'), // Put your own logo - 'id'=>'4256,4255', // Put of list of sparkangels widget id (for each language) - 'lang'=>'fr,en'), // Put list of language code of widgets (always english at end) -// Widget for Auguria -array('name'=>'Auguria', - 'sort'=>2, - //'logo'=>'logoUrl='.urlencode('http://www.cap-networks.com/images/logo_small.jpg'), - 'id'=>'7196', - 'lang'=>'fr'), -//Widget for Open-Concept -array('name'=>'Open-Concept.pro', - 'sort'=>2, - 'logo'=>'logoUrl='.urlencode('http://www.open-concept.pro/CMS/images/Logo/logosimplecomplet.png'), - 'id'=>'9340', - 'lang'=>'fr') -); -$arrayofwidgets=dol_sort_array($arrayofwidgets,'sort','asc',0,0); - -$found=0; -print '* '.$langs->trans("LinkToGoldMember",$langs->defaultlang).'

'; -print ''; -foreach ($arrayofwidgets as $arraywidget) // Loop on each user -{ - if ($found >= $limit) break; - $listofwidgets=explode(',',$arraywidget['id']); - $listoflangs=explode(',',$arraywidget['lang']); - $pos=0; - foreach($listoflangs as $langcode) // Loop on each lang of user - { - $pos++; - if (preg_match('/'.$langcode.'/i',$langs->defaultlang) || $langcode == 'en') // If lang qualified - { - print ''; - $found++; - break; - } - } -} -if (! $found) print ''; -print '
'; - print $arraywidget['name'].'
'; - print $langs->trans("PossibleLanguages").': '; - // All languages of user are shown - foreach ($listoflangs as $langcode2) - { - if (empty($widgetid)) $widgetid=$listoflangs[$pos-1]; - if (! preg_match('/'.$langcode.'/i',$langs->defaultlang) && $langcode2 != 'en') continue; // Show only english - print $langcode2.' '; - } - print '
'; - - // Only first language found is used for widget - $widgetid=$listofwidgets[$pos-1]; - - // Widget V3 - print ''; - - print '
'.$langs->trans("SorryNoHelpForYourLanguage").'
'; - -print '

'; - -// List of coaches -$sparkangellangcode=substr($langs->defaultlang,0,2); -if (! in_array($sparkangellangcode,array('fr','en','sp'))) $sparkangellangcode='en'; -print '
'; -print '* '.$langs->trans("ToGetHelpGoOnSparkAngels3",$urlsparkengels); -print '
'."\n"; -print '
'."\n"; -print ' '."\n"; -print ' '."\n"; -print ' '."\n"; -print ' '."\n"; -print ' '."\n"; -print ' '."\n"; -print ''."\n"; -print '
'."\n"; -print '
'."\n"; - -print '
'; -//print ''; -//print 'SparkAngels web site'; -//print $titlesparkangels; -//print ''; -print '
'; -//print $langs->trans("ToGetHelpGoOnSparkAngels2",$titlesparkangels).'
'; - - -// Otherwise, go back to help center home -print '

'; -print '* '.$langs->trans("BackToHelpCenter",'index.php'); -print '

'; - - - -pFooter(); From 569d59d2512fbcbac006775f0a32bc8cdbe04fe0 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sat, 27 Oct 2018 14:43:12 +0200 Subject: [PATCH 199/769] FIX change my deprecated email --- .mailmap | 4 ++-- build/debian/copyright | 2 +- dev/initdemo/initdemo.sh | 2 +- dev/initdemo/removeconfdemo.sh | 2 +- dev/initdemo/savedemo.sh | 2 +- htdocs/accountancy/admin/accountmodel.php | 2 +- htdocs/accountancy/journal/bankjournal.php | 2 +- htdocs/accountancy/journal/expensereportsjournal.php | 2 +- htdocs/accountancy/journal/purchasesjournal.php | 2 +- htdocs/accountancy/journal/sellsjournal.php | 2 +- htdocs/adherents/admin/adherent.php | 2 +- htdocs/adherents/admin/adherent_emails.php | 2 +- htdocs/adherents/admin/adherent_extrafields.php | 2 +- htdocs/adherents/admin/adherent_type_extrafields.php | 2 +- htdocs/adherents/admin/website.php | 2 +- htdocs/adherents/agenda.php | 2 +- htdocs/adherents/canvas/actions_adherentcard_common.class.php | 2 +- .../canvas/default/actions_adherentcard_default.class.php | 2 +- .../adherents/canvas/default/tpl/adherentcard_create.tpl.php | 2 +- htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php | 2 +- htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php | 2 +- htdocs/adherents/card.php | 2 +- htdocs/adherents/class/adherent.class.php | 2 +- htdocs/adherents/class/adherent_type.class.php | 2 +- htdocs/adherents/class/adherentstats.class.php | 2 +- htdocs/adherents/class/api_members.class.php | 2 +- htdocs/adherents/class/api_memberstypes.class.php | 2 +- htdocs/adherents/document.php | 2 +- htdocs/adherents/index.php | 2 +- htdocs/adherents/ldap.php | 2 +- htdocs/adherents/stats/index.php | 2 +- htdocs/adherents/subscription.php | 2 +- htdocs/adherents/subscription/info.php | 2 +- htdocs/adherents/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/adherents/type.php | 2 +- htdocs/adherents/type_ldap.php | 2 +- htdocs/admin/agenda.php | 2 +- htdocs/admin/agenda_extrafields.php | 2 +- htdocs/admin/agenda_other.php | 2 +- htdocs/admin/agenda_xcal.php | 2 +- htdocs/admin/bank_extrafields.php | 2 +- htdocs/admin/barcode.php | 2 +- htdocs/admin/boxes.php | 2 +- htdocs/admin/commande.php | 2 +- htdocs/admin/company.php | 2 +- htdocs/admin/compta.php | 2 +- htdocs/admin/confexped.php | 2 +- htdocs/admin/const.php | 2 +- htdocs/admin/defaultvalues.php | 2 +- htdocs/admin/delais.php | 2 +- htdocs/admin/dict.php | 2 +- htdocs/admin/expedition.php | 2 +- htdocs/admin/expedition_extrafields.php | 2 +- htdocs/admin/expeditiondet_extrafields.php | 2 +- htdocs/admin/expensereport.php | 2 +- htdocs/admin/expensereport_extrafields.php | 2 +- htdocs/admin/export.php | 2 +- htdocs/admin/external_rss.php | 2 +- htdocs/admin/facture.php | 2 +- htdocs/admin/fckeditor.php | 2 +- htdocs/admin/fichinter.php | 2 +- htdocs/admin/ihm.php | 2 +- htdocs/admin/ldap.php | 2 +- htdocs/admin/ldap_contacts.php | 2 +- htdocs/admin/ldap_groups.php | 2 +- htdocs/admin/ldap_members.php | 2 +- htdocs/admin/ldap_members_types.php | 2 +- htdocs/admin/ldap_users.php | 2 +- htdocs/admin/limits.php | 2 +- htdocs/admin/livraison.php | 2 +- htdocs/admin/livraison_extrafields.php | 2 +- htdocs/admin/livraisondet_extrafields.php | 2 +- htdocs/admin/mailman.php | 2 +- htdocs/admin/mails.php | 2 +- htdocs/admin/mails_emailing.php | 2 +- htdocs/admin/mails_templates.php | 2 +- htdocs/admin/menus.php | 2 +- htdocs/admin/menus/edit.php | 2 +- htdocs/admin/menus/index.php | 2 +- htdocs/admin/menus/other.php | 2 +- htdocs/admin/modulehelp.php | 2 +- htdocs/admin/modules.php | 2 +- htdocs/admin/order_extrafields.php | 2 +- htdocs/admin/orderdet_extrafields.php | 2 +- htdocs/admin/pdf.php | 2 +- htdocs/admin/perms.php | 2 +- htdocs/admin/prelevement.php | 2 +- htdocs/admin/propal.php | 2 +- htdocs/admin/resource_extrafields.php | 2 +- htdocs/admin/security.php | 2 +- htdocs/admin/security_file.php | 2 +- htdocs/admin/security_other.php | 2 +- htdocs/admin/sms.php | 2 +- htdocs/admin/spip.php | 2 +- htdocs/admin/stock.php | 2 +- htdocs/admin/supplier_invoice.php | 2 +- htdocs/admin/supplier_order.php | 2 +- htdocs/admin/supplier_proposal.php | 2 +- htdocs/admin/supplierinvoice_extrafields.php | 2 +- htdocs/admin/supplierinvoicedet_extrafields.php | 2 +- htdocs/admin/supplierorder_extrafields.php | 2 +- htdocs/admin/supplierorderdet_extrafields.php | 2 +- htdocs/admin/syslog.php | 2 +- htdocs/admin/system/about.php | 2 +- htdocs/admin/system/browser.php | 2 +- htdocs/admin/system/constall.php | 2 +- htdocs/admin/system/database-tables.php | 2 +- htdocs/admin/system/dbtable.php | 2 +- htdocs/admin/system/dolibarr.php | 2 +- htdocs/admin/system/filecheck.php | 2 +- htdocs/admin/system/index.php | 2 +- htdocs/admin/system/modules.php | 2 +- htdocs/admin/system/os.php | 2 +- htdocs/admin/system/phpinfo.php | 2 +- htdocs/admin/taxes.php | 2 +- htdocs/admin/tools/dolibarr_export.php | 2 +- htdocs/admin/tools/dolibarr_import.php | 2 +- htdocs/admin/tools/index.php | 2 +- htdocs/admin/tools/listevents.php | 2 +- htdocs/admin/tools/listsessions.php | 2 +- htdocs/admin/tools/purge.php | 2 +- htdocs/admin/tools/update.php | 2 +- htdocs/admin/translation.php | 2 +- htdocs/admin/user.php | 2 +- htdocs/admin/usergroup.php | 2 +- htdocs/admin/workflow.php | 2 +- htdocs/api/admin/index.php | 2 +- htdocs/api/class/api_setup.class.php | 2 +- htdocs/api/index.php | 2 +- htdocs/cashdesk/affContenu.php | 2 +- htdocs/cashdesk/affIndex.php | 2 +- htdocs/cashdesk/facturation_dhtml.php | 2 +- htdocs/cashdesk/javascript/dhtml.js | 2 +- htdocs/cashdesk/tpl/facturation1.tpl.php | 2 +- htdocs/cashdesk/tpl/menu.tpl.php | 2 +- htdocs/categories/admin/categorie_extrafields.php | 2 +- htdocs/categories/card.php | 2 +- htdocs/categories/class/categorie.class.php | 2 +- htdocs/categories/edit.php | 2 +- htdocs/categories/index.php | 2 +- htdocs/categories/photos.php | 2 +- htdocs/categories/traduction.php | 2 +- htdocs/categories/viewcat.php | 2 +- htdocs/comm/action/card.php | 2 +- htdocs/comm/action/class/actioncomm.class.php | 2 +- htdocs/comm/action/class/ical.class.php | 2 +- htdocs/comm/action/document.php | 2 +- htdocs/comm/action/index.php | 2 +- htdocs/comm/action/list.php | 2 +- htdocs/comm/action/pertype.php | 2 +- htdocs/comm/action/peruser.php | 2 +- htdocs/comm/action/rapport/index.php | 2 +- htdocs/comm/address.php | 2 +- htdocs/comm/admin/propal_extrafields.php | 2 +- htdocs/comm/admin/propaldet_extrafields.php | 2 +- htdocs/comm/card.php | 2 +- htdocs/comm/contact.php | 2 +- htdocs/comm/index.php | 2 +- htdocs/comm/mailing/card.php | 2 +- htdocs/comm/mailing/cibles.php | 2 +- htdocs/comm/mailing/class/mailing.class.php | 2 +- htdocs/comm/mailing/index.php | 2 +- htdocs/comm/mailing/info.php | 2 +- htdocs/comm/mailing/list.php | 2 +- htdocs/comm/propal/card.php | 2 +- htdocs/comm/propal/class/propal.class.php | 2 +- htdocs/comm/propal/class/propalestats.class.php | 2 +- htdocs/comm/propal/contact.php | 2 +- htdocs/comm/propal/document.php | 2 +- htdocs/comm/propal/index.php | 2 +- htdocs/comm/propal/info.php | 2 +- htdocs/comm/propal/list.php | 2 +- htdocs/comm/propal/note.php | 2 +- htdocs/comm/propal/stats/index.php | 2 +- htdocs/comm/propal/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/comm/prospect/index.php | 2 +- htdocs/commande/card.php | 2 +- htdocs/commande/class/commande.class.php | 2 +- htdocs/commande/class/commandestats.class.php | 2 +- htdocs/commande/contact.php | 2 +- htdocs/commande/customer.php | 2 +- htdocs/commande/document.php | 2 +- htdocs/commande/index.php | 2 +- htdocs/commande/info.php | 2 +- htdocs/commande/list.php | 2 +- htdocs/commande/note.php | 2 +- htdocs/commande/orderstoinvoice.php | 2 +- htdocs/commande/stats/index.php | 2 +- htdocs/commande/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/compta/bank/annuel.php | 2 +- htdocs/compta/bank/bankentries_list.php | 2 +- htdocs/compta/bank/budget.php | 2 +- htdocs/compta/bank/card.php | 2 +- htdocs/compta/bank/categ.php | 2 +- htdocs/compta/bank/class/account.class.php | 2 +- htdocs/compta/bank/class/bankcateg.class.php | 2 +- htdocs/compta/bank/document.php | 2 +- htdocs/compta/bank/graph.php | 2 +- htdocs/compta/bank/ligne.php | 2 +- htdocs/compta/bank/list.php | 2 +- htdocs/compta/bank/releve.php | 2 +- htdocs/compta/bank/transfer.php | 2 +- htdocs/compta/bank/treso.php | 2 +- htdocs/compta/charges/index.php | 2 +- htdocs/compta/clients.php | 2 +- htdocs/compta/deplacement/card.php | 2 +- htdocs/compta/deplacement/class/deplacement.class.php | 2 +- htdocs/compta/deplacement/class/deplacementstats.class.php | 2 +- htdocs/compta/deplacement/document.php | 2 +- htdocs/compta/deplacement/index.php | 2 +- htdocs/compta/deplacement/list.php | 2 +- htdocs/compta/facture/admin/facture_cust_extrafields.php | 2 +- htdocs/compta/facture/admin/facture_rec_cust_extrafields.php | 2 +- htdocs/compta/facture/admin/facturedet_cust_extrafields.php | 2 +- .../compta/facture/admin/facturedet_rec_cust_extrafields.php | 2 +- htdocs/compta/facture/card.php | 2 +- htdocs/compta/facture/class/facture-rec.class.php | 2 +- htdocs/compta/facture/class/facture.class.php | 2 +- htdocs/compta/facture/class/facturestats.class.php | 2 +- htdocs/compta/facture/contact.php | 2 +- htdocs/compta/facture/document.php | 2 +- htdocs/compta/facture/fiche-rec.php | 2 +- htdocs/compta/facture/invoicetemplate_list.php | 2 +- htdocs/compta/facture/list.php | 2 +- htdocs/compta/facture/note.php | 2 +- htdocs/compta/facture/prelevement.php | 2 +- htdocs/compta/facture/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php | 2 +- htdocs/compta/index.php | 2 +- htdocs/compta/journal/purchasesjournal.php | 2 +- htdocs/compta/journal/sellsjournal.php | 2 +- htdocs/compta/paiement.php | 2 +- htdocs/compta/paiement/card.php | 2 +- htdocs/compta/paiement/cheque/card.php | 2 +- htdocs/compta/paiement/cheque/class/remisecheque.class.php | 2 +- htdocs/compta/paiement/cheque/index.php | 2 +- htdocs/compta/paiement/cheque/list.php | 2 +- htdocs/compta/paiement/list.php | 2 +- htdocs/compta/payment_sc/card.php | 2 +- htdocs/compta/prelevement/bons.php | 2 +- htdocs/compta/prelevement/class/bonprelevement.class.php | 2 +- htdocs/compta/prelevement/class/ligneprelevement.class.php | 2 +- htdocs/compta/prelevement/class/rejetprelevement.class.php | 2 +- htdocs/compta/prelevement/create.php | 2 +- htdocs/compta/prelevement/demandes.php | 2 +- htdocs/compta/prelevement/factures.php | 2 +- htdocs/compta/prelevement/fiche-rejet.php | 2 +- htdocs/compta/prelevement/index.php | 2 +- htdocs/compta/prelevement/ligne.php | 2 +- htdocs/compta/prelevement/list.php | 2 +- htdocs/compta/prelevement/rejets.php | 2 +- htdocs/compta/prelevement/stats.php | 2 +- htdocs/compta/resultat/clientfourn.php | 2 +- htdocs/compta/resultat/index.php | 2 +- htdocs/compta/salaries/document.php | 2 +- htdocs/compta/sociales/card.php | 2 +- htdocs/compta/sociales/document.php | 2 +- htdocs/compta/sociales/index.php | 2 +- htdocs/compta/sociales/payments.php | 2 +- htdocs/compta/stats/cabyuser.php | 2 +- htdocs/compta/stats/casoc.php | 2 +- htdocs/compta/stats/index.php | 2 +- htdocs/compta/tva/card.php | 2 +- htdocs/compta/tva/document.php | 2 +- htdocs/compta/tva/index.php | 2 +- htdocs/compta/tva/list.php | 2 +- htdocs/contact/agenda.php | 2 +- htdocs/contact/canvas/actions_contactcard_common.class.php | 2 +- .../canvas/default/actions_contactcard_default.class.php | 2 +- htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php | 2 +- htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php | 2 +- htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php | 2 +- htdocs/contact/card.php | 2 +- htdocs/contact/class/contact.class.php | 2 +- htdocs/contact/document.php | 2 +- htdocs/contact/info.php | 2 +- htdocs/contact/ldap.php | 2 +- htdocs/contact/list.php | 2 +- htdocs/contact/note.php | 2 +- htdocs/contact/perso.php | 2 +- htdocs/contact/vcard.php | 2 +- htdocs/contrat/admin/contract_extrafields.php | 2 +- htdocs/contrat/admin/contractdet_extrafields.php | 2 +- htdocs/contrat/card.php | 2 +- htdocs/contrat/class/contrat.class.php | 2 +- htdocs/contrat/contact.php | 2 +- htdocs/contrat/document.php | 2 +- htdocs/contrat/index.php | 2 +- htdocs/contrat/list.php | 2 +- htdocs/contrat/note.php | 2 +- htdocs/contrat/services_list.php | 2 +- htdocs/contrat/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/core/ajax/ajaxdirpreview.php | 2 +- htdocs/core/ajax/box.php | 2 +- htdocs/core/ajax/constantonoff.php | 2 +- htdocs/core/ajax/contacts.php | 2 +- htdocs/core/ajax/extraparams.php | 2 +- htdocs/core/ajax/fileupload.php | 2 +- htdocs/core/ajax/getaccountcurrency.php | 2 +- htdocs/core/ajax/loadinplace.php | 2 +- htdocs/core/ajax/price.php | 2 +- htdocs/core/ajax/row.php | 2 +- htdocs/core/ajax/saveinplace.php | 2 +- htdocs/core/ajax/security.php | 2 +- htdocs/core/ajax/vatrates.php | 2 +- htdocs/core/ajax/ziptown.php | 2 +- htdocs/core/boxes/box_actions.php | 2 +- htdocs/core/boxes/box_clients.php | 2 +- htdocs/core/boxes/box_commandes.php | 2 +- htdocs/core/boxes/box_comptes.php | 2 +- htdocs/core/boxes/box_contacts.php | 2 +- htdocs/core/boxes/box_contracts.php | 2 +- htdocs/core/boxes/box_external_rss.php | 2 +- htdocs/core/boxes/box_factures.php | 2 +- htdocs/core/boxes/box_factures_fourn.php | 2 +- htdocs/core/boxes/box_factures_fourn_imp.php | 2 +- htdocs/core/boxes/box_factures_imp.php | 2 +- htdocs/core/boxes/box_fournisseurs.php | 2 +- htdocs/core/boxes/box_goodcustomers.php | 2 +- htdocs/core/boxes/box_members.php | 2 +- htdocs/core/boxes/box_produits.php | 2 +- htdocs/core/boxes/box_produits_alerte_stock.php | 2 +- htdocs/core/boxes/box_propales.php | 2 +- htdocs/core/boxes/box_prospect.php | 2 +- htdocs/core/boxes/box_services_contracts.php | 2 +- htdocs/core/boxes/box_supplier_orders.php | 2 +- htdocs/core/boxes/modules_boxes.php | 2 +- htdocs/core/class/CMailFile.class.php | 2 +- htdocs/core/class/CSMSFile.class.php | 2 +- htdocs/core/class/antivir.class.php | 2 +- htdocs/core/class/canvas.class.php | 2 +- htdocs/core/class/commondocgenerator.class.php | 2 +- htdocs/core/class/commoninvoice.class.php | 2 +- htdocs/core/class/commonobject.class.php | 2 +- htdocs/core/class/commonorder.class.php | 2 +- htdocs/core/class/conf.class.php | 2 +- htdocs/core/class/dolexception.class.php | 2 +- htdocs/core/class/events.class.php | 2 +- htdocs/core/class/extrafields.class.php | 2 +- htdocs/core/class/fileupload.class.php | 2 +- htdocs/core/class/hookmanager.class.php | 2 +- htdocs/core/class/html.form.class.php | 2 +- htdocs/core/class/html.formactions.class.php | 2 +- htdocs/core/class/html.formadmin.class.php | 2 +- htdocs/core/class/html.formbarcode.class.php | 2 +- htdocs/core/class/html.formcompany.class.php | 2 +- htdocs/core/class/html.formfile.class.php | 2 +- htdocs/core/class/html.formmail.class.php | 2 +- htdocs/core/class/html.formother.class.php | 2 +- htdocs/core/class/infobox.class.php | 2 +- htdocs/core/class/interfaces.class.php | 2 +- htdocs/core/class/ldap.class.php | 2 +- htdocs/core/class/menubase.class.php | 2 +- htdocs/core/class/stats.class.php | 2 +- htdocs/core/class/translate.class.php | 2 +- htdocs/core/datepicker.php | 2 +- htdocs/core/db/Database.interface.php | 2 +- htdocs/core/db/mssql.class.php | 2 +- htdocs/core/db/mysqli.class.php | 2 +- htdocs/core/db/pgsql.class.php | 2 +- htdocs/core/db/sqlite3.class.php | 2 +- htdocs/core/doxygen.php | 2 +- htdocs/core/js/blockUI.js | 2 +- htdocs/core/js/dst.js | 2 +- htdocs/core/js/editinplace.js | 2 +- htdocs/core/js/lib_head.js.php | 2 +- htdocs/core/js/timepicker.js.php | 2 +- htdocs/core/lib/admin.lib.php | 2 +- htdocs/core/lib/agenda.lib.php | 2 +- htdocs/core/lib/ajax.lib.php | 2 +- htdocs/core/lib/bank.lib.php | 2 +- htdocs/core/lib/categories.lib.php | 2 +- htdocs/core/lib/company.lib.php | 2 +- htdocs/core/lib/contact.lib.php | 2 +- htdocs/core/lib/contract.lib.php | 2 +- htdocs/core/lib/date.lib.php | 2 +- htdocs/core/lib/doc.lib.php | 2 +- htdocs/core/lib/doleditor.lib.php | 2 +- htdocs/core/lib/expedition.lib.php | 2 +- htdocs/core/lib/expensereport.lib.php | 2 +- htdocs/core/lib/fichinter.lib.php | 2 +- htdocs/core/lib/files.lib.php | 2 +- htdocs/core/lib/fourn.lib.php | 2 +- htdocs/core/lib/functions.lib.php | 2 +- htdocs/core/lib/functions2.lib.php | 2 +- htdocs/core/lib/images.lib.php | 2 +- htdocs/core/lib/import.lib.php | 2 +- htdocs/core/lib/invoice.lib.php | 2 +- htdocs/core/lib/json.lib.php | 2 +- htdocs/core/lib/ldap.lib.php | 2 +- htdocs/core/lib/member.lib.php | 2 +- htdocs/core/lib/order.lib.php | 2 +- htdocs/core/lib/pdf.lib.php | 2 +- htdocs/core/lib/prelevement.lib.php | 2 +- htdocs/core/lib/product.lib.php | 2 +- htdocs/core/lib/project.lib.php | 2 +- htdocs/core/lib/propal.lib.php | 2 +- htdocs/core/lib/report.lib.php | 2 +- htdocs/core/lib/security.lib.php | 2 +- htdocs/core/lib/security2.lib.php | 2 +- htdocs/core/lib/sendings.lib.php | 2 +- htdocs/core/lib/supplier_proposal.lib.php | 2 +- htdocs/core/lib/tax.lib.php | 2 +- htdocs/core/lib/trip.lib.php | 2 +- htdocs/core/lib/usergroups.lib.php | 2 +- htdocs/core/login/functions_dolibarr.php | 2 +- htdocs/core/login/functions_empty.php | 2 +- htdocs/core/login/functions_openid.php | 2 +- htdocs/core/menus/standard/auguria.lib.php | 2 +- htdocs/core/menus/standard/auguria_menu.php | 2 +- htdocs/core/menus/standard/eldy.lib.php | 2 +- htdocs/core/menus/standard/eldy_menu.php | 2 +- htdocs/core/modules/DolibarrModules.class.php | 2 +- htdocs/core/modules/action/modules_action.php | 2 +- htdocs/core/modules/action/rapport.pdf.php | 2 +- htdocs/core/modules/bank/modules_bank.php | 2 +- htdocs/core/modules/barcode/doc/phpbarcode.modules.php | 2 +- htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php | 2 +- htdocs/core/modules/barcode/mod_barcode_product_standard.php | 2 +- htdocs/core/modules/cheque/modules_chequereceipts.php | 2 +- htdocs/core/modules/commande/doc/pdf_einstein.modules.php | 2 +- htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php | 2 +- htdocs/core/modules/commande/doc/pdf_proforma.modules.php | 2 +- htdocs/core/modules/commande/mod_commande_marbre.php | 2 +- htdocs/core/modules/commande/mod_commande_saphir.php | 2 +- htdocs/core/modules/commande/modules_commande.php | 2 +- htdocs/core/modules/contract/doc/pdf_strato.modules.php | 2 +- htdocs/core/modules/contract/modules_contract.php | 2 +- htdocs/core/modules/dons/html_cerfafr.modules.php | 2 +- htdocs/core/modules/dons/modules_don.php | 2 +- htdocs/core/modules/expedition/doc/pdf_merou.modules.php | 2 +- htdocs/core/modules/expedition/doc/pdf_rouget.modules.php | 2 +- htdocs/core/modules/expedition/modules_expedition.php | 2 +- htdocs/core/modules/export/modules_export.php | 2 +- .../modules/facture/doc/doc_generic_invoice_odt.modules.php | 2 +- htdocs/core/modules/facture/doc/pdf_crabe.modules.php | 2 +- htdocs/core/modules/facture/doc/pdf_sponge.modules.php | 2 +- htdocs/core/modules/facture/mod_facture_mars.php | 2 +- htdocs/core/modules/facture/mod_facture_mercure.php | 2 +- htdocs/core/modules/facture/mod_facture_terre.php | 2 +- htdocs/core/modules/facture/modules_facture.php | 2 +- htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php | 2 +- htdocs/core/modules/fichinter/mod_arctic.php | 2 +- htdocs/core/modules/fichinter/mod_pacific.php | 2 +- htdocs/core/modules/fichinter/modules_fichinter.php | 2 +- htdocs/core/modules/holiday/modules_holiday.php | 2 +- htdocs/core/modules/import/import_csv.modules.php | 2 +- htdocs/core/modules/import/import_xlsx.modules.php | 2 +- htdocs/core/modules/import/modules_import.php | 2 +- htdocs/core/modules/livraison/doc/pdf_typhon.modules.php | 2 +- htdocs/core/modules/livraison/mod_livraison_jade.php | 2 +- htdocs/core/modules/livraison/mod_livraison_saphir.php | 2 +- htdocs/core/modules/livraison/modules_livraison.php | 2 +- htdocs/core/modules/mailings/advthirdparties.modules.php | 2 +- htdocs/core/modules/mailings/contacts1.modules.php | 2 +- htdocs/core/modules/mailings/fraise.modules.php | 2 +- htdocs/core/modules/mailings/pomme.modules.php | 2 +- htdocs/core/modules/mailings/thirdparties.modules.php | 2 +- htdocs/core/modules/member/modules_cards.php | 2 +- htdocs/core/modules/modAgenda.class.php | 2 +- htdocs/core/modules/modBanque.class.php | 2 +- htdocs/core/modules/modBarcode.class.php | 2 +- htdocs/core/modules/modCommande.class.php | 2 +- htdocs/core/modules/modContrat.class.php | 2 +- htdocs/core/modules/modDeplacement.class.php | 2 +- htdocs/core/modules/modDocumentGeneration.class.php | 2 +- htdocs/core/modules/modDon.class.php | 2 +- htdocs/core/modules/modExpedition.class.php | 2 +- htdocs/core/modules/modExport.class.php | 2 +- htdocs/core/modules/modExternalSite.class.php | 2 +- htdocs/core/modules/modFacture.class.php | 2 +- htdocs/core/modules/modFckeditor.class.php | 2 +- htdocs/core/modules/modFicheinter.class.php | 2 +- htdocs/core/modules/modFournisseur.class.php | 2 +- htdocs/core/modules/modHoliday.class.php | 2 +- htdocs/core/modules/modImport.class.php | 2 +- htdocs/core/modules/modIncoterm.class.php | 2 +- htdocs/core/modules/modLabel.class.php | 2 +- htdocs/core/modules/modLdap.class.php | 2 +- htdocs/core/modules/modMailing.class.php | 2 +- htdocs/core/modules/modMultiCurrency.class.php | 2 +- htdocs/core/modules/modPaypal.class.php | 2 +- htdocs/core/modules/modPrelevement.class.php | 2 +- htdocs/core/modules/modProduct.class.php | 2 +- htdocs/core/modules/modProductBatch.class.php | 2 +- htdocs/core/modules/modProjet.class.php | 2 +- htdocs/core/modules/modPropale.class.php | 2 +- htdocs/core/modules/modSalaries.class.php | 2 +- htdocs/core/modules/modService.class.php | 2 +- htdocs/core/modules/modSociete.class.php | 2 +- htdocs/core/modules/modStock.class.php | 2 +- htdocs/core/modules/modSupplierProposal.class.php | 2 +- htdocs/core/modules/modTax.class.php | 2 +- htdocs/core/modules/modUser.class.php | 2 +- htdocs/core/modules/modVariants.class.php | 2 +- htdocs/core/modules/modWorkflow.class.php | 2 +- htdocs/core/modules/printsheet/modules_labels.php | 2 +- htdocs/core/modules/product/mod_codeproduct_elephant.php | 2 +- htdocs/core/modules/product/modules_product.class.php | 2 +- .../modules/product_batch/modules_product_batch.class.php | 2 +- htdocs/core/modules/project/doc/pdf_baleine.modules.php | 2 +- htdocs/core/modules/project/doc/pdf_beluga.modules.php | 2 +- htdocs/core/modules/project/doc/pdf_timespent.modules.php | 2 +- htdocs/core/modules/project/mod_project_simple.php | 2 +- htdocs/core/modules/project/mod_project_universal.php | 2 +- htdocs/core/modules/project/modules_project.php | 2 +- htdocs/core/modules/project/task/mod_task_simple.php | 2 +- htdocs/core/modules/project/task/mod_task_universal.php | 2 +- htdocs/core/modules/project/task/modules_task.php | 2 +- htdocs/core/modules/propale/doc/pdf_azur.modules.php | 2 +- htdocs/core/modules/propale/doc/pdf_cyan.modules.php | 2 +- htdocs/core/modules/propale/mod_propale_marbre.php | 2 +- htdocs/core/modules/propale/mod_propale_saphir.php | 2 +- htdocs/core/modules/propale/modules_propale.php | 2 +- .../modules/security/generate/modGeneratePassPerso.class.php | 2 +- htdocs/core/modules/societe/mod_codeclient_elephant.php | 2 +- htdocs/core/modules/societe/mod_codeclient_monkey.php | 2 +- htdocs/core/modules/societe/modules_societe.class.php | 2 +- .../supplier_invoice/mod_facture_fournisseur_cactus.php | 2 +- .../supplier_invoice/mod_facture_fournisseur_tulip.php | 2 +- .../modules/supplier_invoice/modules_facturefournisseur.php | 2 +- .../supplier_order/mod_commande_fournisseur_muguet.php | 2 +- .../supplier_order/mod_commande_fournisseur_orchidee.php | 2 +- .../modules/supplier_order/modules_commandefournisseur.php | 2 +- .../core/modules/supplier_order/pdf/pdf_muscadet.modules.php | 2 +- .../core/modules/supplier_proposal/doc/pdf_aurore.modules.php | 2 +- .../supplier_proposal/mod_supplier_proposal_marbre.php | 2 +- .../supplier_proposal/mod_supplier_proposal_saphir.php | 2 +- .../modules/supplier_proposal/modules_supplier_proposal.php | 2 +- htdocs/core/modules/ticket/mod_ticket_simple.php | 2 +- htdocs/core/modules/ticket/mod_ticket_universal.php | 2 +- htdocs/core/modules/ticket/modules_ticket.php | 2 +- htdocs/core/modules/user/modules_user.class.php | 2 +- htdocs/core/modules/usergroup/modules_usergroup.class.php | 2 +- htdocs/core/photos_resize.php | 2 +- htdocs/core/tools.php | 2 +- htdocs/core/tpl/admin_extrafields_add.tpl.php | 2 +- htdocs/core/tpl/admin_extrafields_edit.tpl.php | 2 +- htdocs/core/tpl/admin_extrafields_view.tpl.php | 2 +- htdocs/core/tpl/ajax/fileupload_main.tpl.php | 2 +- htdocs/core/tpl/ajax/fileupload_view.tpl.php | 2 +- htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php | 2 +- htdocs/core/tpl/ajaxrow.tpl.php | 2 +- htdocs/core/tpl/bloc_showhide.tpl.php | 2 +- htdocs/core/tpl/contacts.tpl.php | 2 +- htdocs/core/tpl/error.tpl.php | 2 +- htdocs/core/tpl/footer.tpl.php | 2 +- htdocs/core/tpl/header.tpl.php | 2 +- htdocs/core/tpl/login.tpl.php | 2 +- htdocs/core/tpl/notes.tpl.php | 2 +- htdocs/core/tpl/objectline_create.tpl.php | 2 +- htdocs/core/tpl/objectline_edit.tpl.php | 2 +- htdocs/core/tpl/objectline_view.tpl.php | 2 +- htdocs/core/tpl/originproductline.tpl.php | 2 +- htdocs/core/tpl/passwordforgotten.tpl.php | 2 +- htdocs/core/triggers/interface_20_all_Logevents.class.php | 2 +- .../interface_20_modWorkflow_WorkflowManager.class.php | 2 +- .../triggers/interface_50_modAgenda_ActionsAuto.class.php | 2 +- .../core/triggers/interface_50_modLdap_Ldapsynchro.class.php | 2 +- .../interface_50_modNotification_Notification.class.php | 2 +- htdocs/cron/admin/cron.php | 2 +- htdocs/document.php | 2 +- htdocs/don/card.php | 2 +- htdocs/don/class/don.class.php | 2 +- htdocs/don/class/donstats.class.php | 2 +- htdocs/don/document.php | 2 +- htdocs/don/index.php | 2 +- htdocs/don/list.php | 2 +- htdocs/don/note.php | 2 +- htdocs/don/stats/index.php | 2 +- htdocs/don/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/ecm/ajax/ecmdatabase.php | 2 +- htdocs/ecm/class/ecmdirectory.class.php | 2 +- htdocs/ecm/dir_add_card.php | 2 +- htdocs/ecm/index.php | 2 +- htdocs/ecm/index_auto.php | 2 +- htdocs/ecm/search.php | 2 +- htdocs/ecm/tpl/enablefiletreeajax.tpl.php | 2 +- htdocs/expedition/card.php | 2 +- htdocs/expedition/class/expedition.class.php | 2 +- htdocs/expedition/class/expeditionstats.class.php | 2 +- htdocs/expedition/contact.php | 2 +- htdocs/expedition/document.php | 2 +- htdocs/expedition/index.php | 2 +- htdocs/expedition/list.php | 2 +- htdocs/expedition/note.php | 2 +- htdocs/expedition/shipment.php | 2 +- htdocs/expedition/stats/index.php | 2 +- htdocs/expedition/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/expensereport/ajax/ajaxprojet.php | 2 +- htdocs/expensereport/card.php | 2 +- htdocs/expensereport/class/expensereportstats.class.php | 2 +- htdocs/expensereport/document.php | 2 +- htdocs/expensereport/index.php | 2 +- htdocs/expensereport/list.php | 2 +- htdocs/expensereport/note.php | 2 +- htdocs/expensereport/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/exports/class/export.class.php | 2 +- htdocs/exports/export.php | 2 +- htdocs/fichinter/admin/fichinter_extrafields.php | 2 +- htdocs/fichinter/admin/fichinterdet_extrafields.php | 2 +- htdocs/fichinter/card-rec.php | 2 +- htdocs/fichinter/card.php | 2 +- htdocs/fichinter/class/fichinter.class.php | 2 +- htdocs/fichinter/class/fichinterstats.class.php | 2 +- htdocs/fichinter/contact.php | 2 +- htdocs/fichinter/document.php | 2 +- htdocs/fichinter/index.php | 2 +- htdocs/fichinter/info.php | 2 +- htdocs/fichinter/list.php | 2 +- htdocs/fichinter/note.php | 2 +- htdocs/filefunc.inc.php | 2 +- htdocs/fourn/card.php | 2 +- htdocs/fourn/class/fournisseur.class.php | 2 +- htdocs/fourn/class/fournisseur.commande.class.php | 2 +- htdocs/fourn/class/fournisseur.facture.class.php | 2 +- htdocs/fourn/class/fournisseur.product.class.php | 2 +- htdocs/fourn/class/paiementfourn.class.php | 2 +- htdocs/fourn/commande/card.php | 2 +- htdocs/fourn/commande/contact.php | 2 +- htdocs/fourn/commande/dispatch.php | 2 +- htdocs/fourn/commande/document.php | 2 +- htdocs/fourn/commande/index.php | 2 +- htdocs/fourn/commande/info.php | 2 +- htdocs/fourn/commande/list.php | 2 +- htdocs/fourn/commande/note.php | 2 +- htdocs/fourn/commande/orderstoinvoice.php | 2 +- htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/fourn/contact.php | 2 +- htdocs/fourn/facture/card.php | 2 +- htdocs/fourn/facture/contact.php | 2 +- htdocs/fourn/facture/document.php | 2 +- htdocs/fourn/facture/impayees.php | 2 +- htdocs/fourn/facture/info.php | 2 +- htdocs/fourn/facture/list.php | 2 +- htdocs/fourn/facture/note.php | 2 +- htdocs/fourn/facture/paiement.php | 2 +- htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/fourn/index.php | 2 +- htdocs/fourn/product/list.php | 2 +- htdocs/ftp/index.php | 2 +- htdocs/holiday/card.php | 2 +- htdocs/holiday/class/holiday.class.php | 2 +- htdocs/holiday/common.inc.php | 2 +- htdocs/holiday/define_holiday.php | 2 +- htdocs/holiday/document.php | 2 +- htdocs/holiday/list.php | 2 +- htdocs/hrm/index.php | 2 +- htdocs/imports/import.php | 2 +- htdocs/index.php | 2 +- htdocs/install/check.php | 2 +- htdocs/install/fileconf.php | 2 +- htdocs/install/lib/repair.lib.php | 2 +- htdocs/install/mysql/data/llx_00_c_country.sql | 2 +- htdocs/install/mysql/data/llx_10_c_regions.sql | 2 +- htdocs/install/mysql/data/llx_20_c_departements.sql | 2 +- htdocs/install/mysql/data/llx_accounting_abc.sql | 2 +- htdocs/install/mysql/data/llx_accounting_account_be.sql | 2 +- htdocs/install/mysql/data/llx_accounting_account_cl.sql | 2 +- htdocs/install/mysql/data/llx_accounting_account_dk.sql | 2 +- htdocs/install/mysql/data/llx_accounting_account_es.sql | 2 +- htdocs/install/mysql/data/llx_accounting_account_fr.sql | 2 +- htdocs/install/mysql/data/llx_c_action_trigger.sql | 2 +- htdocs/install/mysql/data/llx_c_actioncomm.sql | 2 +- htdocs/install/mysql/data/llx_c_chargesociales.sql | 2 +- htdocs/install/mysql/data/llx_c_civilite.sql | 2 +- htdocs/install/mysql/data/llx_c_currencies.sql | 2 +- htdocs/install/mysql/data/llx_c_ecotaxe.sql | 2 +- htdocs/install/mysql/data/llx_c_effectif.sql | 2 +- htdocs/install/mysql/data/llx_c_forme_juridique.sql | 2 +- htdocs/install/mysql/data/llx_c_holiday_type.sql | 2 +- htdocs/install/mysql/data/llx_c_incoterms.sql | 2 +- htdocs/install/mysql/data/llx_c_input_method.sql | 2 +- htdocs/install/mysql/data/llx_c_paiement.sql | 2 +- htdocs/install/mysql/data/llx_c_paper_format.sql | 2 +- htdocs/install/mysql/data/llx_c_payment_term.sql | 2 +- htdocs/install/mysql/data/llx_c_propalst.sql | 2 +- htdocs/install/mysql/data/llx_c_prospectlevel.sql | 2 +- htdocs/install/mysql/data/llx_c_shipment_mode.sql | 2 +- htdocs/install/mysql/data/llx_c_stcomm.sql | 2 +- htdocs/install/mysql/data/llx_c_tva.sql | 2 +- htdocs/install/mysql/data/llx_c_type_contact.sql | 2 +- htdocs/install/mysql/data/llx_c_type_container.sql | 2 +- htdocs/install/mysql/data/llx_c_type_fees.sql | 2 +- htdocs/install/mysql/data/llx_c_type_resource.sql | 2 +- htdocs/install/mysql/data/llx_c_typent.sql | 2 +- htdocs/install/mysql/data/llx_const.sql | 2 +- htdocs/install/mysql/tables/llx_actioncomm.key.sql | 2 +- htdocs/install/mysql/tables/llx_actioncomm.sql | 2 +- htdocs/install/mysql/tables/llx_adherent.key.sql | 2 +- htdocs/install/mysql/tables/llx_adherent.sql | 2 +- htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql | 2 +- htdocs/install/mysql/tables/llx_adherent_extrafields.sql | 2 +- htdocs/install/mysql/tables/llx_adherent_type.key.sql | 2 +- htdocs/install/mysql/tables/llx_adherent_type.sql | 2 +- htdocs/install/mysql/tables/llx_bank_account.key.sql | 2 +- htdocs/install/mysql/tables/llx_bank_account.sql | 2 +- htdocs/install/mysql/tables/llx_bank_categ.sql | 2 +- htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql | 2 +- htdocs/install/mysql/tables/llx_bordereau_cheque.sql | 2 +- htdocs/install/mysql/tables/llx_boxes.key.sql | 2 +- htdocs/install/mysql/tables/llx_boxes.sql | 2 +- htdocs/install/mysql/tables/llx_boxes_def.key.sql | 2 +- htdocs/install/mysql/tables/llx_boxes_def.sql | 2 +- htdocs/install/mysql/tables/llx_c_action_trigger.key.sql | 2 +- htdocs/install/mysql/tables/llx_c_action_trigger.sql | 2 +- htdocs/install/mysql/tables/llx_c_barcode_type.key.sql | 2 +- htdocs/install/mysql/tables/llx_c_barcode_type.sql | 2 +- htdocs/install/mysql/tables/llx_c_currencies.sql | 2 +- htdocs/install/mysql/tables/llx_c_ecotaxe.sql | 2 +- htdocs/install/mysql/tables/llx_c_field_list.sql | 2 +- htdocs/install/mysql/tables/llx_c_paiement.key.sql | 2 +- htdocs/install/mysql/tables/llx_c_paiement.sql | 2 +- htdocs/install/mysql/tables/llx_c_paper_format.sql | 2 +- htdocs/install/mysql/tables/llx_c_payment_term.key.sql | 2 +- htdocs/install/mysql/tables/llx_c_payment_term.sql | 2 +- htdocs/install/mysql/tables/llx_c_ziptown.key.sql | 2 +- htdocs/install/mysql/tables/llx_c_ziptown.sql | 2 +- htdocs/install/mysql/tables/llx_categorie.key.sql | 2 +- htdocs/install/mysql/tables/llx_categorie.sql | 2 +- htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql | 2 +- htdocs/install/mysql/tables/llx_categorie_fournisseur.sql | 2 +- htdocs/install/mysql/tables/llx_categorie_lang.sql | 2 +- htdocs/install/mysql/tables/llx_chargesociales.sql | 2 +- htdocs/install/mysql/tables/llx_commande.key.sql | 2 +- htdocs/install/mysql/tables/llx_commande.sql | 2 +- htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql | 2 +- htdocs/install/mysql/tables/llx_commande_fournisseur.sql | 2 +- .../mysql/tables/llx_commande_fournisseur_extrafields.sql | 2 +- .../mysql/tables/llx_commande_fournisseurdet_extrafields.sql | 2 +- htdocs/install/mysql/tables/llx_commandedet.key.sql | 2 +- htdocs/install/mysql/tables/llx_commandedet.sql | 2 +- .../install/mysql/tables/llx_commandedet_extrafields.key.sql | 2 +- htdocs/install/mysql/tables/llx_const.sql | 2 +- htdocs/install/mysql/tables/llx_contrat.key.sql | 2 +- htdocs/install/mysql/tables/llx_contrat.sql | 2 +- htdocs/install/mysql/tables/llx_contratdet.key.sql | 2 +- htdocs/install/mysql/tables/llx_deplacement.sql | 2 +- htdocs/install/mysql/tables/llx_document_model.key.sql | 2 +- htdocs/install/mysql/tables/llx_document_model.sql | 2 +- htdocs/install/mysql/tables/llx_don.sql | 2 +- htdocs/install/mysql/tables/llx_ecm_directories.key.sql | 2 +- htdocs/install/mysql/tables/llx_ecm_directories.sql | 2 +- htdocs/install/mysql/tables/llx_entrepot.key.sql | 2 +- htdocs/install/mysql/tables/llx_events.sql | 2 +- htdocs/install/mysql/tables/llx_expedition.key.sql | 2 +- htdocs/install/mysql/tables/llx_expedition.sql | 2 +- htdocs/install/mysql/tables/llx_expeditiondet.key.sql | 2 +- htdocs/install/mysql/tables/llx_expeditiondet.sql | 2 +- htdocs/install/mysql/tables/llx_expensereport.key.sql | 2 +- htdocs/install/mysql/tables/llx_export_model.key.sql | 2 +- htdocs/install/mysql/tables/llx_export_model.sql | 2 +- htdocs/install/mysql/tables/llx_extrafields.key.sql | 2 +- htdocs/install/mysql/tables/llx_extrafields.sql | 2 +- htdocs/install/mysql/tables/llx_facture.key.sql | 2 +- htdocs/install/mysql/tables/llx_facture.sql | 2 +- htdocs/install/mysql/tables/llx_facture_fourn.key.sql | 2 +- htdocs/install/mysql/tables/llx_facture_fourn.sql | 2 +- htdocs/install/mysql/tables/llx_facture_rec.key.sql | 2 +- htdocs/install/mysql/tables/llx_facture_rec.sql | 2 +- htdocs/install/mysql/tables/llx_facturedet.key.sql | 2 +- htdocs/install/mysql/tables/llx_facturedet.sql | 2 +- htdocs/install/mysql/tables/llx_facturedet_rec.key.sql | 2 +- htdocs/install/mysql/tables/llx_facturedet_rec.sql | 2 +- htdocs/install/mysql/tables/llx_fichinter.sql | 2 +- htdocs/install/mysql/tables/llx_fichinter_rec.key.sql | 2 +- htdocs/install/mysql/tables/llx_fichinter_rec.sql | 2 +- htdocs/install/mysql/tables/llx_fichinterdet.key.sql | 2 +- htdocs/install/mysql/tables/llx_fichinterdet.sql | 2 +- htdocs/install/mysql/tables/llx_fichinterdet_rec.sql | 2 +- htdocs/install/mysql/tables/llx_holiday.key.sql | 2 +- htdocs/install/mysql/tables/llx_livraison.key.sql | 2 +- htdocs/install/mysql/tables/llx_livraison.sql | 2 +- htdocs/install/mysql/tables/llx_livraisondet.key.sql | 2 +- htdocs/install/mysql/tables/llx_livraisondet.sql | 2 +- htdocs/install/mysql/tables/llx_localtax.sql | 2 +- htdocs/install/mysql/tables/llx_mailing.sql | 2 +- htdocs/install/mysql/tables/llx_mailing_cibles.sql | 2 +- htdocs/install/mysql/tables/llx_menu.key.sql | 2 +- htdocs/install/mysql/tables/llx_menu.sql | 2 +- htdocs/install/mysql/tables/llx_paiement.sql | 2 +- htdocs/install/mysql/tables/llx_prelevement_bons.key.sql | 2 +- htdocs/install/mysql/tables/llx_prelevement_bons.sql | 2 +- htdocs/install/mysql/tables/llx_product.key.sql | 2 +- htdocs/install/mysql/tables/llx_product.sql | 2 +- htdocs/install/mysql/tables/llx_product_customer_price.sql | 2 +- .../mysql/tables/llx_product_fournisseur_price.key.sql | 2 +- htdocs/install/mysql/tables/llx_product_fournisseur_price.sql | 2 +- htdocs/install/mysql/tables/llx_product_lang.key.sql | 2 +- htdocs/install/mysql/tables/llx_product_lang.sql | 2 +- htdocs/install/mysql/tables/llx_product_price.sql | 2 +- htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql | 2 +- htdocs/install/mysql/tables/llx_product_price_by_qty.sql | 2 +- htdocs/install/mysql/tables/llx_projet.key.sql | 2 +- htdocs/install/mysql/tables/llx_projet.sql | 2 +- htdocs/install/mysql/tables/llx_projet_task.key.sql | 2 +- htdocs/install/mysql/tables/llx_projet_task.sql | 2 +- htdocs/install/mysql/tables/llx_propal.key.sql | 2 +- htdocs/install/mysql/tables/llx_propal.sql | 2 +- htdocs/install/mysql/tables/llx_propaldet.key.sql | 2 +- htdocs/install/mysql/tables/llx_propaldet.sql | 2 +- htdocs/install/mysql/tables/llx_rights_def.key.sql | 2 +- htdocs/install/mysql/tables/llx_rights_def.sql | 2 +- htdocs/install/mysql/tables/llx_societe.sql | 2 +- htdocs/install/mysql/tables/llx_societe_address.sql | 2 +- htdocs/install/mysql/tables/llx_societe_remise.sql | 2 +- htdocs/install/mysql/tables/llx_societe_remise_supplier.sql | 2 +- htdocs/install/mysql/tables/llx_societe_rib.sql | 2 +- htdocs/install/mysql/tables/llx_socpeople.sql | 2 +- htdocs/install/mysql/tables/llx_supplier_proposaldet.key.sql | 2 +- htdocs/install/mysql/tables/llx_tva.sql | 2 +- htdocs/install/mysql/tables/llx_user.key.sql | 2 +- htdocs/install/mysql/tables/llx_user.sql | 2 +- htdocs/install/mysql/tables/llx_user_extrafields.key.sql | 2 +- htdocs/install/mysql/tables/llx_user_extrafields.sql | 2 +- htdocs/install/mysql/tables/llx_user_param.key.sql | 2 +- htdocs/install/mysql/tables/llx_user_param.sql | 2 +- htdocs/install/mysql/tables/llx_user_rights.key.sql | 2 +- htdocs/install/mysql/tables/llx_user_rights.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup.key.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup_rights.key.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup_rights.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup_user.key.sql | 2 +- htdocs/install/mysql/tables/llx_usergroup_user.sql | 2 +- htdocs/install/repair.php | 2 +- htdocs/install/step1.php | 2 +- htdocs/install/step5.php | 2 +- htdocs/install/upgrade.php | 2 +- htdocs/install/upgrade2.php | 2 +- htdocs/livraison/card.php | 2 +- htdocs/livraison/class/livraison.class.php | 2 +- htdocs/loan/note.php | 2 +- htdocs/mailmanspip/class/mailmanspip.class.php | 2 +- htdocs/main.inc.php | 2 +- htdocs/master.inc.php | 2 +- htdocs/modulebuilder/template/mymoduleindex.php | 2 +- htdocs/opensurvey/css/style.css | 2 +- htdocs/opensurvey/wizard/index.php | 2 +- htdocs/paybox/lib/paybox.lib.php | 2 +- htdocs/paypal/admin/paypal.php | 2 +- htdocs/paypal/lib/paypal.lib.php | 2 +- htdocs/paypal/lib/paypalfunctions.lib.php | 2 +- htdocs/product/admin/product.php | 2 +- htdocs/product/admin/product_extrafields.php | 2 +- htdocs/product/admin/product_lot_extrafields.php | 2 +- htdocs/product/admin/product_tools.php | 2 +- htdocs/product/agenda.php | 2 +- htdocs/product/ajax/products.php | 2 +- htdocs/product/canvas/product/actions_card_product.class.php | 2 +- htdocs/product/canvas/product/tpl/card_create.tpl.php | 2 +- htdocs/product/canvas/product/tpl/card_edit.tpl.php | 2 +- htdocs/product/canvas/product/tpl/card_view.tpl.php | 2 +- htdocs/product/canvas/service/actions_card_service.class.php | 2 +- htdocs/product/canvas/service/tpl/card_create.tpl.php | 2 +- htdocs/product/canvas/service/tpl/card_edit.tpl.php | 2 +- htdocs/product/canvas/service/tpl/card_view.tpl.php | 2 +- htdocs/product/card.php | 2 +- htdocs/product/class/product.class.php | 2 +- htdocs/product/composition/card.php | 2 +- htdocs/product/document.php | 2 +- htdocs/product/fournisseurs.php | 2 +- htdocs/product/index.php | 2 +- htdocs/product/list.php | 2 +- htdocs/product/note.php | 2 +- htdocs/product/popuprop.php | 2 +- htdocs/product/price.php | 2 +- htdocs/product/reassort.php | 2 +- htdocs/product/reassortlot.php | 2 +- htdocs/product/stats/card.php | 2 +- htdocs/product/stats/commande.php | 2 +- htdocs/product/stats/commande_fournisseur.php | 2 +- htdocs/product/stats/contrat.php | 2 +- htdocs/product/stats/facture.php | 2 +- htdocs/product/stats/facture_fournisseur.php | 2 +- htdocs/product/stats/propal.php | 2 +- htdocs/product/stats/supplier_proposal.php | 2 +- htdocs/product/stock/card.php | 2 +- htdocs/product/stock/class/entrepot.class.php | 2 +- htdocs/product/stock/index.php | 2 +- htdocs/product/stock/list.php | 2 +- htdocs/product/stock/massstockmove.php | 2 +- htdocs/product/stock/movement_list.php | 2 +- htdocs/product/stock/product.php | 2 +- htdocs/product/stock/productlot_document.php | 2 +- htdocs/product/stock/replenish.php | 2 +- htdocs/product/stock/replenishorders.php | 2 +- htdocs/product/stock/valo.php | 2 +- htdocs/product/traduction.php | 2 +- htdocs/projet/activity/index.php | 2 +- htdocs/projet/activity/perday.php | 2 +- htdocs/projet/activity/perweek.php | 2 +- htdocs/projet/admin/project.php | 2 +- htdocs/projet/admin/project_extrafields.php | 2 +- htdocs/projet/admin/project_task_extrafields.php | 2 +- htdocs/projet/ajax/projects.php | 2 +- htdocs/projet/card.php | 2 +- htdocs/projet/class/project.class.php | 2 +- htdocs/projet/class/task.class.php | 2 +- htdocs/projet/comment.php | 2 +- htdocs/projet/contact.php | 2 +- htdocs/projet/document.php | 2 +- htdocs/projet/element.php | 2 +- htdocs/projet/ganttview.php | 2 +- htdocs/projet/index.php | 2 +- htdocs/projet/info.php | 2 +- htdocs/projet/list.php | 2 +- htdocs/projet/note.php | 2 +- htdocs/projet/tasks.php | 2 +- htdocs/projet/tasks/comment.php | 2 +- htdocs/projet/tasks/contact.php | 2 +- htdocs/projet/tasks/document.php | 2 +- htdocs/projet/tasks/list.php | 2 +- htdocs/projet/tasks/note.php | 2 +- htdocs/projet/tasks/task.php | 2 +- htdocs/projet/tasks/time.php | 2 +- htdocs/public/cron/cron_run_jobs.php | 2 +- htdocs/public/demo/index.php | 2 +- htdocs/public/members/new.php | 2 +- htdocs/public/members/public_card.php | 2 +- htdocs/public/members/public_list.php | 2 +- htdocs/public/onlinesign/newonlinesign.php | 2 +- htdocs/public/paybox/newpayment.php | 2 +- htdocs/public/payment/newpayment.php | 2 +- htdocs/public/payment/paymentko.php | 2 +- htdocs/public/payment/paymentok.php | 2 +- htdocs/public/paypal/newpayment.php | 2 +- htdocs/public/paypal/paymentko.php | 2 +- htdocs/public/paypal/paymentok.php | 2 +- htdocs/resource/agenda.php | 2 +- htdocs/resource/contact.php | 2 +- htdocs/resource/document.php | 2 +- htdocs/resource/note.php | 2 +- htdocs/societe/admin/contact_extrafields.php | 2 +- htdocs/societe/admin/societe.php | 2 +- htdocs/societe/admin/societe_extrafields.php | 2 +- htdocs/societe/agenda.php | 2 +- htdocs/societe/ajax/company.php | 2 +- htdocs/societe/ajaxcompanies.php | 2 +- htdocs/societe/ajaxcountries.php | 2 +- htdocs/societe/canvas/actions_card_common.class.php | 2 +- htdocs/societe/canvas/company/actions_card_company.class.php | 2 +- htdocs/societe/canvas/company/tpl/card_create.tpl.php | 2 +- htdocs/societe/canvas/company/tpl/card_edit.tpl.php | 2 +- htdocs/societe/canvas/company/tpl/card_view.tpl.php | 2 +- .../canvas/individual/actions_card_individual.class.php | 2 +- htdocs/societe/canvas/individual/tpl/card_create.tpl.php | 2 +- htdocs/societe/canvas/individual/tpl/card_edit.tpl.php | 2 +- htdocs/societe/canvas/individual/tpl/card_view.tpl.php | 2 +- htdocs/societe/card.php | 2 +- htdocs/societe/class/address.class.php | 2 +- htdocs/societe/class/client.class.php | 2 +- htdocs/societe/class/companybankaccount.class.php | 2 +- htdocs/societe/class/societe.class.php | 2 +- htdocs/societe/contact.php | 2 +- htdocs/societe/document.php | 2 +- htdocs/societe/index.php | 2 +- htdocs/societe/list.php | 2 +- htdocs/societe/note.php | 2 +- htdocs/societe/paymentmodes.php | 2 +- htdocs/societe/price.php | 2 +- htdocs/societe/project.php | 2 +- htdocs/societe/societecontact.php | 2 +- htdocs/societe/website.php | 2 +- htdocs/stripe/class/actions_stripe.class.php | 2 +- htdocs/stripe/payment.php | 2 +- .../supplier_proposal/admin/supplier_proposal_extrafields.php | 2 +- .../admin/supplier_proposaldet_extrafields.php | 2 +- htdocs/supplier_proposal/card.php | 2 +- htdocs/supplier_proposal/class/supplier_proposal.class.php | 2 +- htdocs/supplier_proposal/contact.php | 2 +- htdocs/supplier_proposal/document.php | 2 +- htdocs/supplier_proposal/index.php | 2 +- htdocs/supplier_proposal/info.php | 2 +- htdocs/supplier_proposal/list.php | 2 +- htdocs/supplier_proposal/note.php | 2 +- htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/support/index.php | 2 +- htdocs/takepos/admin/orderprinters.php | 2 +- htdocs/takepos/customers.php | 2 +- htdocs/theme/eldy/style.css.php | 2 +- htdocs/theme/md/style.css.php | 2 +- htdocs/ticket/contact.php | 2 +- htdocs/ticket/document.php | 2 +- htdocs/ticket/list.php | 2 +- htdocs/ticket/tpl/linkedobjectblock.tpl.php | 2 +- htdocs/user/admin/group_extrafields.php | 2 +- htdocs/user/admin/user_extrafields.php | 2 +- htdocs/user/bank.php | 2 +- htdocs/user/card.php | 2 +- htdocs/user/class/user.class.php | 2 +- htdocs/user/class/userbankaccount.class.php | 2 +- htdocs/user/class/usergroup.class.php | 2 +- htdocs/user/clicktodial.php | 2 +- htdocs/user/document.php | 2 +- htdocs/user/group/card.php | 2 +- htdocs/user/group/ldap.php | 2 +- htdocs/user/group/list.php | 2 +- htdocs/user/group/perms.php | 2 +- htdocs/user/hierarchy.php | 2 +- htdocs/user/home.php | 2 +- htdocs/user/info.php | 2 +- htdocs/user/ldap.php | 2 +- htdocs/user/list.php | 2 +- htdocs/user/logout.php | 2 +- htdocs/user/note.php | 2 +- htdocs/user/param_ihm.php | 2 +- htdocs/user/passwordforgotten.php | 2 +- htdocs/user/perms.php | 2 +- htdocs/viewimage.php | 2 +- htdocs/webservices/admin/index.php | 2 +- htdocs/webservices/index.php | 2 +- htdocs/webservices/server_order.php | 2 +- scripts/emailings/mailing-send.php | 2 +- scripts/members/sync_members_types_dolibarr2ldap.php | 2 +- scripts/members/sync_members_types_ldap2dolibarr.php | 2 +- test/phpunit/AllTests.php | 2 +- test/phpunit/BuildDocTest.php | 2 +- test/phpunit/FilesLibTest.php | 2 +- test/phpunit/GetUrlLibTest.php | 2 +- test/phpunit/ImagesLibTest.php | 2 +- 1021 files changed, 1022 insertions(+), 1022 deletions(-) diff --git a/.mailmap b/.mailmap index 3aadbbedfca..436b557ee63 100644 --- a/.mailmap +++ b/.mailmap @@ -6,8 +6,8 @@ Laurent Destailleur eldy Laurent Destailleur Laurent Destailleur Laurent Destailleur eldy10 Laurent Destailleur Laurent Destailleur -Regis Houssin Regis Houssin -Regis Houssin Régis Houssin +Regis Houssin Regis Houssin +Regis Houssin Régis Houssin Juanjo Menent simnandez Juanjo Menent Juanjo Menent Juanjo Menent Simnandez diff --git a/build/debian/copyright b/build/debian/copyright index 8207df4b6d7..72e531d7007 100644 --- a/build/debian/copyright +++ b/build/debian/copyright @@ -8,7 +8,7 @@ Copyright: 2002-2009, Rodolphe Quiedeville 2003-2006, Jean-Louis Bergamo 2003-2013, Laurent Destailleur 2003, Xavier Dutoit - 2004-2013, Regis Houssin + 2004-2013, Regis Houssin 2004, Sebastien Di Cintio 2004, Benoit Mortier 2004, Christophe Combelles diff --git a/dev/initdemo/initdemo.sh b/dev/initdemo/initdemo.sh index 2e49327ae1d..0091a61d300 100755 --- a/dev/initdemo/initdemo.sh +++ b/dev/initdemo/initdemo.sh @@ -6,7 +6,7 @@ # WARNING: This script erase all data of database # with data into dump file # -# Regis Houssin - regis.houssin@capnetworks.com +# Regis Houssin - regis.houssin@inodbox.com # Laurent Destailleur - eldy@users.sourceforge.net #------------------------------------------------------ # Usage: initdemo.sh diff --git a/dev/initdemo/removeconfdemo.sh b/dev/initdemo/removeconfdemo.sh index de297fd1808..b5f76c45205 100755 --- a/dev/initdemo/removeconfdemo.sh +++ b/dev/initdemo/removeconfdemo.sh @@ -3,7 +3,7 @@ # Script to remove setup of a Dolibarr installation. # Note: "dialog" tool need to be available. # -# Regis Houssin - regis.houssin@capnetworks.com +# Regis Houssin - regis.houssin@inodbox.com # Laurent Destailleur - eldy@users.sourceforge.net #------------------------------------------------------ # WARNING: This script erase setup of instance, diff --git a/dev/initdemo/savedemo.sh b/dev/initdemo/savedemo.sh index 20aebb29b28..90b99995585 100755 --- a/dev/initdemo/savedemo.sh +++ b/dev/initdemo/savedemo.sh @@ -3,7 +3,7 @@ # Script to extrac a database with demo values. # Note: "dialog" tool need to be available if no parameter provided. # -# Regis Houssin - regis.houssin@capnetworks.com +# Regis Houssin - regis.houssin@inodbox.com # Laurent Destailleur - eldy@users.sourceforge.net #------------------------------------------------------ # Usage: savedemo.sh diff --git a/htdocs/accountancy/admin/accountmodel.php b/htdocs/accountancy/admin/accountmodel.php index d3843763732..db21cd62192 100644 --- a/htdocs/accountancy/admin/accountmodel.php +++ b/htdocs/accountancy/admin/accountmodel.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * Copyright (C) 2011 Remy Younes diff --git a/htdocs/accountancy/journal/bankjournal.php b/htdocs/accountancy/journal/bankjournal.php index 3b86835e927..4b8c4ce3c22 100644 --- a/htdocs/accountancy/journal/bankjournal.php +++ b/htdocs/accountancy/journal/bankjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013-2018 Alexandre Spangaro * Copyright (C) 2013-2014 Florian Henry diff --git a/htdocs/accountancy/journal/expensereportsjournal.php b/htdocs/accountancy/journal/expensereportsjournal.php index 9c39016f008..197d18f2380 100644 --- a/htdocs/accountancy/journal/expensereportsjournal.php +++ b/htdocs/accountancy/journal/expensereportsjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013-2018 Alexandre Spangaro * Copyright (C) 2013-2016 Olivier Geffroy * Copyright (C) 2013-2016 Florian Henry diff --git a/htdocs/accountancy/journal/purchasesjournal.php b/htdocs/accountancy/journal/purchasesjournal.php index beb9891276f..7984443d906 100644 --- a/htdocs/accountancy/journal/purchasesjournal.php +++ b/htdocs/accountancy/journal/purchasesjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013-2017 Alexandre Spangaro * Copyright (C) 2013-2016 Olivier Geffroy * Copyright (C) 2013-2016 Florian Henry diff --git a/htdocs/accountancy/journal/sellsjournal.php b/htdocs/accountancy/journal/sellsjournal.php index ee7d45d6c66..f3a3246c1ea 100644 --- a/htdocs/accountancy/journal/sellsjournal.php +++ b/htdocs/accountancy/journal/sellsjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013-2018 Alexandre Spangaro * Copyright (C) 2013-2016 Florian Henry diff --git a/htdocs/adherents/admin/adherent.php b/htdocs/adherents/admin/adherent.php index ba43b6d47a6..cb1fdfac816 100644 --- a/htdocs/adherents/admin/adherent.php +++ b/htdocs/adherents/admin/adherent.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2012 J. Fernando Lagrange * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/adherents/admin/adherent_emails.php b/htdocs/adherents/admin/adherent_emails.php index 60e0b2c3b48..feeb48eb1c3 100644 --- a/htdocs/adherents/admin/adherent_emails.php +++ b/htdocs/adherents/admin/adherent_emails.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2012 J. Fernando Lagrange * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/adherents/admin/adherent_extrafields.php b/htdocs/adherents/admin/adherent_extrafields.php index 0ec1968ab34..81896a12490 100644 --- a/htdocs/adherents/admin/adherent_extrafields.php +++ b/htdocs/adherents/admin/adherent_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/admin/adherent_type_extrafields.php b/htdocs/adherents/admin/adherent_type_extrafields.php index 3a5226d00f4..ab9815a8057 100644 --- a/htdocs/adherents/admin/adherent_type_extrafields.php +++ b/htdocs/adherents/admin/adherent_type_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/adherents/admin/website.php b/htdocs/adherents/admin/website.php index 91df8e59ea5..51aca179195 100644 --- a/htdocs/adherents/admin/website.php +++ b/htdocs/adherents/admin/website.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2015 Laurent Destailleur - * Copyright (C) 2006-2012 Regis Houssin + * Copyright (C) 2006-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/agenda.php b/htdocs/adherents/agenda.php index f22070107ca..f13efd96300 100644 --- a/htdocs/adherents/agenda.php +++ b/htdocs/adherents/agenda.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/adherents/canvas/actions_adherentcard_common.class.php b/htdocs/adherents/canvas/actions_adherentcard_common.class.php index b84534af37a..d4c7147da57 100644 --- a/htdocs/adherents/canvas/actions_adherentcard_common.class.php +++ b/htdocs/adherents/canvas/actions_adherentcard_common.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2012 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php b/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php index c841f83b297..5ead332bf5f 100644 --- a/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php +++ b/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2011 Laurent Destailleur * Copyright (C) 2012-2018 Philippe Grand * diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php index 81f34706966..99174e7770b 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2012 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php index 4a699b75a22..a0331fee35e 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2012 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php index f19ba96c167..14439bb6e87 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2012 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index e7b36b77ad9..0d50564253f 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2012-2018 Philippe Grand * Copyright (C) 2015-2016 Alexandre Spangaro diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 3df36ef3eda..e02517fc3d5 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2009-2017 Regis Houssin + * Copyright (C) 2009-2017 Regis Houssin * Copyright (C) 2014-2016 Alexandre Spangaro * Copyright (C) 2015 Marcos García * Copyright (C) 2015-2018 Frédéric France diff --git a/htdocs/adherents/class/adherent_type.class.php b/htdocs/adherents/class/adherent_type.class.php index 20a85c7bf3e..984cf49d44d 100644 --- a/htdocs/adherents/class/adherent_type.class.php +++ b/htdocs/adherents/class/adherent_type.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2009-2017 Regis Houssin + * Copyright (C) 2009-2017 Regis Houssin * Copyright (C) 2016 Charlie Benke * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/adherents/class/adherentstats.class.php b/htdocs/adherents/class/adherentstats.class.php index eb722b987a9..310a40c52b3 100644 --- a/htdocs/adherents/class/adherentstats.class.php +++ b/htdocs/adherents/class/adherentstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/class/api_members.class.php b/htdocs/adherents/class/api_members.class.php index 8591dd13195..2da35df7e2c 100644 --- a/htdocs/adherents/class/api_members.class.php +++ b/htdocs/adherents/class/api_members.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/class/api_memberstypes.class.php b/htdocs/adherents/class/api_memberstypes.class.php index ecf7f45d371..e82b126529b 100644 --- a/htdocs/adherents/class/api_memberstypes.class.php +++ b/htdocs/adherents/class/api_memberstypes.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/document.php b/htdocs/adherents/document.php index 7e46b7864f8..e8d80898041 100644 --- a/htdocs/adherents/document.php +++ b/htdocs/adherents/document.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Cédric Salvador * diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php index 931e9323904..c7a1e665b11 100644 --- a/htdocs/adherents/index.php +++ b/htdocs/adherents/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/ldap.php b/htdocs/adherents/ldap.php index 5b830623a4b..f45042d6581 100644 --- a/htdocs/adherents/ldap.php +++ b/htdocs/adherents/ldap.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/stats/index.php b/htdocs/adherents/stats/index.php index 69958f60d76..feebd776d94 100644 --- a/htdocs/adherents/stats/index.php +++ b/htdocs/adherents/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/subscription.php b/htdocs/adherents/subscription.php index 9c505477309..5f7abe63253 100644 --- a/htdocs/adherents/subscription.php +++ b/htdocs/adherents/subscription.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2012-2017 Regis Houssin + * Copyright (C) 2012-2017 Regis Houssin * Copyright (C) 2015-2016 Alexandre Spangaro * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/adherents/subscription/info.php b/htdocs/adherents/subscription/info.php index eb8f8e4eab3..a792da530f1 100644 --- a/htdocs/adherents/subscription/info.php +++ b/htdocs/adherents/subscription/info.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2006 Regis Houssin + * Copyright (C) 2005-2006 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/adherents/tpl/linkedobjectblock.tpl.php b/htdocs/adherents/tpl/linkedobjectblock.tpl.php index a3033ec090d..eec61e3ba22 100644 --- a/htdocs/adherents/tpl/linkedobjectblock.tpl.php +++ b/htdocs/adherents/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php index 7e69d4fbc98..cb123294764 100644 --- a/htdocs/adherents/type.php +++ b/htdocs/adherents/type.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Alexandre Spangaro * diff --git a/htdocs/adherents/type_ldap.php b/htdocs/adherents/type_ldap.php index c18074130aa..3cd57e43390 100644 --- a/htdocs/adherents/type_ldap.php +++ b/htdocs/adherents/type_ldap.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/agenda.php b/htdocs/admin/agenda.php index 7f41927b478..1c6e5c16fcf 100644 --- a/htdocs/admin/agenda.php +++ b/htdocs/admin/agenda.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/admin/agenda_extrafields.php b/htdocs/admin/agenda_extrafields.php index 887fba847e4..29323020325 100644 --- a/htdocs/admin/agenda_extrafields.php +++ b/htdocs/admin/agenda_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php index 8215bdbe0b1..2a370cdf580 100644 --- a/htdocs/admin/agenda_other.php +++ b/htdocs/admin/agenda_other.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * Copyright (C) 2011-2017 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Charlie Benke diff --git a/htdocs/admin/agenda_xcal.php b/htdocs/admin/agenda_xcal.php index d76d95da47a..d55a3713ae1 100644 --- a/htdocs/admin/agenda_xcal.php +++ b/htdocs/admin/agenda_xcal.php @@ -1,7 +1,7 @@ * Copyright (C) 2012-2013 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/bank_extrafields.php b/htdocs/admin/bank_extrafields.php index 3b95c158f27..f6a729743cf 100644 --- a/htdocs/admin/bank_extrafields.php +++ b/htdocs/admin/bank_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2014 Florian Henry * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/admin/barcode.php b/htdocs/admin/barcode.php index 6a356843d6b..431d93e2a96 100644 --- a/htdocs/admin/barcode.php +++ b/htdocs/admin/barcode.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/boxes.php b/htdocs/admin/boxes.php index 9f3453f7587..c0480bb7e50 100644 --- a/htdocs/admin/boxes.php +++ b/htdocs/admin/boxes.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php index 64df9194197..d4d7b789974 100644 --- a/htdocs/admin/commande.php +++ b/htdocs/admin/commande.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Andre Cianfarani - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2011-2016 Philippe Grand diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php index cc564bfb08e..96a7b533095 100644 --- a/htdocs/admin/company.php +++ b/htdocs/admin/company.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2011-2017 Philippe Grand * Copyright (C) 2015 Alexandre Spangaro diff --git a/htdocs/admin/compta.php b/htdocs/admin/compta.php index 214c30dc544..86d96227f3c 100644 --- a/htdocs/admin/compta.php +++ b/htdocs/admin/compta.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2013-2017 Philippe Grand * Copyright (C) 2014 Marcos García diff --git a/htdocs/admin/confexped.php b/htdocs/admin/confexped.php index 9e6745e6c29..660f7c7c500 100644 --- a/htdocs/admin/confexped.php +++ b/htdocs/admin/confexped.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011-2016 Juanjo Menent ù * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/admin/const.php b/htdocs/admin/const.php index be5f785f9e4..cfda870e9da 100644 --- a/htdocs/admin/const.php +++ b/htdocs/admin/const.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/defaultvalues.php b/htdocs/admin/defaultvalues.php index 4d75ab44235..f7a2a031dbf 100644 --- a/htdocs/admin/defaultvalues.php +++ b/htdocs/admin/defaultvalues.php @@ -1,6 +1,6 @@ - * Copyright (C) 2017-2018 Regis Houssin + * Copyright (C) 2017-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/delais.php b/htdocs/admin/delais.php index add4e2aec80..a48be10b4e0 100644 --- a/htdocs/admin/delais.php +++ b/htdocs/admin/delais.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Simon Tosser - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2016 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 4d5471b1aa8..c572b8abe8b 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2018 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011-2015 Philippe Grand * Copyright (C) 2011 Remy Younes diff --git a/htdocs/admin/expedition.php b/htdocs/admin/expedition.php index c851010635e..2ae3a7cad99 100644 --- a/htdocs/admin/expedition.php +++ b/htdocs/admin/expedition.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * diff --git a/htdocs/admin/expedition_extrafields.php b/htdocs/admin/expedition_extrafields.php index b7c8ddffa71..87682fe7514 100644 --- a/htdocs/admin/expedition_extrafields.php +++ b/htdocs/admin/expedition_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/admin/expeditiondet_extrafields.php b/htdocs/admin/expeditiondet_extrafields.php index cc5a9bddfa5..e533ca64ac3 100644 --- a/htdocs/admin/expeditiondet_extrafields.php +++ b/htdocs/admin/expeditiondet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/admin/expensereport.php b/htdocs/admin/expensereport.php index 78287f71eab..f8429069611 100644 --- a/htdocs/admin/expensereport.php +++ b/htdocs/admin/expensereport.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/admin/expensereport_extrafields.php b/htdocs/admin/expensereport_extrafields.php index 3fedf935405..99de68e9e14 100644 --- a/htdocs/admin/expensereport_extrafields.php +++ b/htdocs/admin/expensereport_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * diff --git a/htdocs/admin/export.php b/htdocs/admin/export.php index 292c3604799..c4ad077296a 100644 --- a/htdocs/admin/export.php +++ b/htdocs/admin/export.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * diff --git a/htdocs/admin/external_rss.php b/htdocs/admin/external_rss.php index 970971c8d29..048d002a3b7 100644 --- a/htdocs/admin/external_rss.php +++ b/htdocs/admin/external_rss.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/facture.php b/htdocs/admin/facture.php index 5cb093cc443..46a11e363fd 100644 --- a/htdocs/admin/facture.php +++ b/htdocs/admin/facture.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2012-2013 Juanjo Menent * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> diff --git a/htdocs/admin/fckeditor.php b/htdocs/admin/fckeditor.php index bed1d4d9bcb..8751d906918 100644 --- a/htdocs/admin/fckeditor.php +++ b/htdocs/admin/fckeditor.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012-20113 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/fichinter.php b/htdocs/admin/fichinter.php index c714c0c6c1b..7fd349363e1 100644 --- a/htdocs/admin/fichinter.php +++ b/htdocs/admin/fichinter.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php index 8861d1abb68..e2168ec2d76 100644 --- a/htdocs/admin/ihm.php +++ b/htdocs/admin/ihm.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2016 Juanjo Menent * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/admin/ldap.php b/htdocs/admin/ldap.php index 1f7b803a50e..dc21ca36daa 100644 --- a/htdocs/admin/ldap.php +++ b/htdocs/admin/ldap.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/ldap_contacts.php b/htdocs/admin/ldap_contacts.php index dd85a998383..f5f5f868801 100644 --- a/htdocs/admin/ldap_contacts.php +++ b/htdocs/admin/ldap_contacts.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/ldap_groups.php b/htdocs/admin/ldap_groups.php index 2650fe4fe6e..247ecfb28aa 100644 --- a/htdocs/admin/ldap_groups.php +++ b/htdocs/admin/ldap_groups.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/ldap_members.php b/htdocs/admin/ldap_members.php index 61da334a90d..818ec5aaff6 100644 --- a/htdocs/admin/ldap_members.php +++ b/htdocs/admin/ldap_members.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006-2008 Laurent Destailleur * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/ldap_members_types.php b/htdocs/admin/ldap_members_types.php index e845fd37adc..912d4ee3ea9 100644 --- a/htdocs/admin/ldap_members_types.php +++ b/htdocs/admin/ldap_members_types.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/ldap_users.php b/htdocs/admin/ldap_users.php index 87df901cfa9..934fcf8e03e 100644 --- a/htdocs/admin/ldap_users.php +++ b/htdocs/admin/ldap_users.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2011-2016 Juanjo Menent * diff --git a/htdocs/admin/limits.php b/htdocs/admin/limits.php index ca4b8fca512..6342f731347 100644 --- a/htdocs/admin/limits.php +++ b/htdocs/admin/limits.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/livraison.php b/htdocs/admin/livraison.php index 91fb9f964e4..bc82d03d8d7 100644 --- a/htdocs/admin/livraison.php +++ b/htdocs/admin/livraison.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/admin/livraison_extrafields.php b/htdocs/admin/livraison_extrafields.php index 55fe6f10362..31144581564 100644 --- a/htdocs/admin/livraison_extrafields.php +++ b/htdocs/admin/livraison_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/admin/livraisondet_extrafields.php b/htdocs/admin/livraisondet_extrafields.php index e70b4f2d09b..32000c67642 100644 --- a/htdocs/admin/livraisondet_extrafields.php +++ b/htdocs/admin/livraisondet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/admin/mailman.php b/htdocs/admin/mailman.php index 460a2d43abe..65c7f5e8d68 100644 --- a/htdocs/admin/mailman.php +++ b/htdocs/admin/mailman.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/mails.php b/htdocs/admin/mails.php index 3576ec845d1..3c6e6a14e6c 100644 --- a/htdocs/admin/mails.php +++ b/htdocs/admin/mails.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2016 Jonathan TISSEAU * diff --git a/htdocs/admin/mails_emailing.php b/htdocs/admin/mails_emailing.php index 59fc0ade0cd..7ce5add09a3 100644 --- a/htdocs/admin/mails_emailing.php +++ b/htdocs/admin/mails_emailing.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2016 Jonathan TISSEAU * diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php index ab169afc096..fdda38e956d 100644 --- a/htdocs/admin/mails_templates.php +++ b/htdocs/admin/mails_templates.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2018 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * Copyright (C) 2011 Remy Younes diff --git a/htdocs/admin/menus.php b/htdocs/admin/menus.php index 09907652df0..6037304350a 100644 --- a/htdocs/admin/menus.php +++ b/htdocs/admin/menus.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/menus/edit.php b/htdocs/admin/menus/edit.php index 0db2d3cd6d1..4d5cc2be274 100644 --- a/htdocs/admin/menus/edit.php +++ b/htdocs/admin/menus/edit.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2012 Laurent Destailleur - * Copyright (C) 2009-2011 Regis Houssin + * Copyright (C) 2009-2011 Regis Houssin * Copyright (C) 2016 Meziane Sof * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/menus/index.php b/htdocs/admin/menus/index.php index 9d0178c956d..d7ef0c4d62b 100644 --- a/htdocs/admin/menus/index.php +++ b/htdocs/admin/menus/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2012 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/menus/other.php b/htdocs/admin/menus/other.php index 7b1a73f2f09..6e5f0d77b4b 100644 --- a/htdocs/admin/menus/other.php +++ b/htdocs/admin/menus/other.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php index 13f72e7c4b3..781f1fd380b 100644 --- a/htdocs/admin/modulehelp.php +++ b/htdocs/admin/modulehelp.php @@ -1,6 +1,6 @@ - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index 81eec5a4247..935ddac65ee 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/admin/order_extrafields.php b/htdocs/admin/order_extrafields.php index 828bb13384f..789120a7da7 100644 --- a/htdocs/admin/order_extrafields.php +++ b/htdocs/admin/order_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * diff --git a/htdocs/admin/orderdet_extrafields.php b/htdocs/admin/orderdet_extrafields.php index 929e49c4ab3..d998cddb35c 100644 --- a/htdocs/admin/orderdet_extrafields.php +++ b/htdocs/admin/orderdet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index 50d8fb5b927..37c836043a0 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2012-2107 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/perms.php b/htdocs/admin/perms.php index db4e1f33553..e7cf64d768e 100644 --- a/htdocs/admin/perms.php +++ b/htdocs/admin/perms.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2011 Herve Prot * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/prelevement.php b/htdocs/admin/prelevement.php index cdfcd451f2c..91d73931155 100644 --- a/htdocs/admin/prelevement.php +++ b/htdocs/admin/prelevement.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2014 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010-2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/propal.php b/htdocs/admin/propal.php index bc91729829f..cf860cd64ba 100644 --- a/htdocs/admin/propal.php +++ b/htdocs/admin/propal.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011-2013 Juanjo Menent * diff --git a/htdocs/admin/resource_extrafields.php b/htdocs/admin/resource_extrafields.php index b8ea860ac25..41d8d91cffd 100644 --- a/htdocs/admin/resource_extrafields.php +++ b/htdocs/admin/resource_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2016 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/security.php b/htdocs/admin/security.php index 58f349ffe55..26dcdc85b8d 100644 --- a/htdocs/admin/security.php +++ b/htdocs/admin/security.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2013-2015 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/security_file.php b/htdocs/admin/security_file.php index 1b7098c55aa..87e0d6dd941 100644 --- a/htdocs/admin/security_file.php +++ b/htdocs/admin/security_file.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/security_other.php b/htdocs/admin/security_other.php index 0e3da947fa8..b1e4f745560 100644 --- a/htdocs/admin/security_other.php +++ b/htdocs/admin/security_other.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/sms.php b/htdocs/admin/sms.php index 45071117c89..84570e75e2a 100644 --- a/htdocs/admin/sms.php +++ b/htdocs/admin/sms.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/spip.php b/htdocs/admin/spip.php index d179c66d58d..02500c6d8f9 100644 --- a/htdocs/admin/spip.php +++ b/htdocs/admin/spip.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/stock.php b/htdocs/admin/stock.php index 858422c598c..2ce29bca165 100644 --- a/htdocs/admin/stock.php +++ b/htdocs/admin/stock.php @@ -1,7 +1,7 @@ * Copyright (C) 2008-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012-2013 Juanjo Menent * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/admin/supplier_invoice.php b/htdocs/admin/supplier_invoice.php index 3db96ddd8a4..45d588fb031 100644 --- a/htdocs/admin/supplier_invoice.php +++ b/htdocs/admin/supplier_invoice.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2010-2013 Juanjo Menent diff --git a/htdocs/admin/supplier_order.php b/htdocs/admin/supplier_order.php index 72050867dfa..88cb18d5d80 100644 --- a/htdocs/admin/supplier_order.php +++ b/htdocs/admin/supplier_order.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2010-2013 Juanjo Menent diff --git a/htdocs/admin/supplier_proposal.php b/htdocs/admin/supplier_proposal.php index eeb148e9d99..056982c4d08 100644 --- a/htdocs/admin/supplier_proposal.php +++ b/htdocs/admin/supplier_proposal.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/admin/supplierinvoice_extrafields.php b/htdocs/admin/supplierinvoice_extrafields.php index bbda698a778..ee987ed83a1 100644 --- a/htdocs/admin/supplierinvoice_extrafields.php +++ b/htdocs/admin/supplierinvoice_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2013 Juanjo Menent diff --git a/htdocs/admin/supplierinvoicedet_extrafields.php b/htdocs/admin/supplierinvoicedet_extrafields.php index cdf128871fd..a9d92a4ecd0 100644 --- a/htdocs/admin/supplierinvoicedet_extrafields.php +++ b/htdocs/admin/supplierinvoicedet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Juanjo Menent diff --git a/htdocs/admin/supplierorder_extrafields.php b/htdocs/admin/supplierorder_extrafields.php index 640b6375c57..e0b7dabb942 100644 --- a/htdocs/admin/supplierorder_extrafields.php +++ b/htdocs/admin/supplierorder_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * diff --git a/htdocs/admin/supplierorderdet_extrafields.php b/htdocs/admin/supplierorderdet_extrafields.php index 65fe0537ba7..b94c78f67e8 100644 --- a/htdocs/admin/supplierorderdet_extrafields.php +++ b/htdocs/admin/supplierorderdet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/admin/syslog.php b/htdocs/admin/syslog.php index d9ab678faa8..14a319b8020 100644 --- a/htdocs/admin/syslog.php +++ b/htdocs/admin/syslog.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2007 Rodolphe Quiedeville * Copyright (C) 2013 Juanjo Menent * diff --git a/htdocs/admin/system/about.php b/htdocs/admin/system/about.php index ba61203191a..95edc057468 100644 --- a/htdocs/admin/system/about.php +++ b/htdocs/admin/system/about.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2007 Franky Van Liedekerke - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/browser.php b/htdocs/admin/system/browser.php index 9df49489e34..4e6aadbe4b4 100644 --- a/htdocs/admin/system/browser.php +++ b/htdocs/admin/system/browser.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/constall.php b/htdocs/admin/system/constall.php index d510cc07773..fef49bd5c12 100644 --- a/htdocs/admin/system/constall.php +++ b/htdocs/admin/system/constall.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/database-tables.php b/htdocs/admin/system/database-tables.php index 17d72edf20a..addeb3793c6 100644 --- a/htdocs/admin/system/database-tables.php +++ b/htdocs/admin/system/database-tables.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2005 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/dbtable.php b/htdocs/admin/system/dbtable.php index 392c083c382..2cf249c0f74 100644 --- a/htdocs/admin/system/dbtable.php +++ b/htdocs/admin/system/dbtable.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2005 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/dolibarr.php b/htdocs/admin/system/dolibarr.php index 99a07c17248..a5fdb6e2660 100644 --- a/htdocs/admin/system/dolibarr.php +++ b/htdocs/admin/system/dolibarr.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/filecheck.php b/htdocs/admin/system/filecheck.php index e978ac85b55..895393eec1d 100644 --- a/htdocs/admin/system/filecheck.php +++ b/htdocs/admin/system/filecheck.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2015 Frederic France * Copyright (C) 2017 Nicolas ZABOURI * diff --git a/htdocs/admin/system/index.php b/htdocs/admin/system/index.php index cf79ae910b3..f0d91d8cf65 100644 --- a/htdocs/admin/system/index.php +++ b/htdocs/admin/system/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/modules.php b/htdocs/admin/system/modules.php index c70ad1b7fba..bcc952b0079 100644 --- a/htdocs/admin/system/modules.php +++ b/htdocs/admin/system/modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/os.php b/htdocs/admin/system/os.php index 251025a4c9e..b354402b465 100644 --- a/htdocs/admin/system/os.php +++ b/htdocs/admin/system/os.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/system/phpinfo.php b/htdocs/admin/system/phpinfo.php index aa502cde421..d2fb9352042 100644 --- a/htdocs/admin/system/phpinfo.php +++ b/htdocs/admin/system/phpinfo.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2016 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/taxes.php b/htdocs/admin/taxes.php index 304f9b79bd0..76e7496cc4e 100644 --- a/htdocs/admin/taxes.php +++ b/htdocs/admin/taxes.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2015-2018 Alexandre Spangaro * diff --git a/htdocs/admin/tools/dolibarr_export.php b/htdocs/admin/tools/dolibarr_export.php index 4c69f2ead48..3c242e8048f 100644 --- a/htdocs/admin/tools/dolibarr_export.php +++ b/htdocs/admin/tools/dolibarr_export.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2018 Regis Houssin + * Copyright (C) 2006-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/tools/dolibarr_import.php b/htdocs/admin/tools/dolibarr_import.php index 9dc3deec5ac..90220f1bb23 100644 --- a/htdocs/admin/tools/dolibarr_import.php +++ b/htdocs/admin/tools/dolibarr_import.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2012 Regis Houssin + * Copyright (C) 2006-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/tools/index.php b/htdocs/admin/tools/index.php index aed25ae45a3..e1e1fc046c5 100644 --- a/htdocs/admin/tools/index.php +++ b/htdocs/admin/tools/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/tools/listevents.php b/htdocs/admin/tools/listevents.php index 9afe7c5fcb3..eedb22f0aa8 100644 --- a/htdocs/admin/tools/listevents.php +++ b/htdocs/admin/tools/listevents.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Bahfir Abbes * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/admin/tools/listsessions.php b/htdocs/admin/tools/listsessions.php index 8ddc1d65525..7cbb82fbe6e 100644 --- a/htdocs/admin/tools/listsessions.php +++ b/htdocs/admin/tools/listsessions.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/tools/purge.php b/htdocs/admin/tools/purge.php index 097fc507240..48968ff1d27 100644 --- a/htdocs/admin/tools/purge.php +++ b/htdocs/admin/tools/purge.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2012 Regis Houssin + * Copyright (C) 2006-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/admin/tools/update.php b/htdocs/admin/tools/update.php index 1ec7c98552e..a3c6a73e711 100644 --- a/htdocs/admin/tools/update.php +++ b/htdocs/admin/tools/update.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/translation.php b/htdocs/admin/translation.php index da26d6648cd..6b893a4a78b 100644 --- a/htdocs/admin/translation.php +++ b/htdocs/admin/translation.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2017 Regis Houssin + * Copyright (C) 2009-2017 Regis Houssin * Copyright (C) 2017 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/user.php b/htdocs/admin/user.php index 2cf8fc5b6f3..dc0edc6302b 100644 --- a/htdocs/admin/user.php +++ b/htdocs/admin/user.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/usergroup.php b/htdocs/admin/usergroup.php index c1b55dcec6a..60c872abed8 100644 --- a/htdocs/admin/usergroup.php +++ b/htdocs/admin/usergroup.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/admin/workflow.php b/htdocs/admin/workflow.php index 24a39ce827a..26b66136d76 100644 --- a/htdocs/admin/workflow.php +++ b/htdocs/admin/workflow.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/api/admin/index.php b/htdocs/api/admin/index.php index 4017f3c93ac..23c4ea7f316 100644 --- a/htdocs/api/admin/index.php +++ b/htdocs/api/admin/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2005-2016 Laurent Destailleur * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012-2018 Regis Houssin + * Copyright (C) 2012-2018 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/api/class/api_setup.class.php b/htdocs/api/class/api_setup.class.php index 60a51074d58..d3f1afa62a3 100644 --- a/htdocs/api/class/api_setup.class.php +++ b/htdocs/api/class/api_setup.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2016 Laurent Destailleur - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * Copyright (C) 2017 Neil Orley * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/api/index.php b/htdocs/api/index.php index e66a19c981a..e55a30304a4 100644 --- a/htdocs/api/index.php +++ b/htdocs/api/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2016 Laurent Destailleur - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/cashdesk/affContenu.php b/htdocs/cashdesk/affContenu.php index 2a3c0279df8..11b36f09d53 100644 --- a/htdocs/cashdesk/affContenu.php +++ b/htdocs/cashdesk/affContenu.php @@ -1,7 +1,7 @@ * Copyright (C) 2008-2009 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/cashdesk/affIndex.php b/htdocs/cashdesk/affIndex.php index 9ff676531f1..c06a140f550 100644 --- a/htdocs/cashdesk/affIndex.php +++ b/htdocs/cashdesk/affIndex.php @@ -1,7 +1,7 @@ * Copyright (C) 2008-2010 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/cashdesk/facturation_dhtml.php b/htdocs/cashdesk/facturation_dhtml.php index bcfc1e82f82..c30b5654828 100644 --- a/htdocs/cashdesk/facturation_dhtml.php +++ b/htdocs/cashdesk/facturation_dhtml.php @@ -1,7 +1,7 @@ * Copyright (C) 2008-2009 Laurent Destailleur - * Copyright (C) 2015 Regis Houssin + * Copyright (C) 2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/cashdesk/javascript/dhtml.js b/htdocs/cashdesk/javascript/dhtml.js index db05855a3b2..e2000abf56e 100644 --- a/htdocs/cashdesk/javascript/dhtml.js +++ b/htdocs/cashdesk/javascript/dhtml.js @@ -1,6 +1,6 @@ /* Copyright (C) 2007-2008 Jeremie Ollivier - * Copyright (C) 2015 Regis Houssin + * Copyright (C) 2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/cashdesk/tpl/facturation1.tpl.php b/htdocs/cashdesk/tpl/facturation1.tpl.php index 2ff71e2a359..3a3fcd0a6b8 100644 --- a/htdocs/cashdesk/tpl/facturation1.tpl.php +++ b/htdocs/cashdesk/tpl/facturation1.tpl.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2008 Jeremie Ollivier * Copyright (C) 2011 Laurent Destailleur * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2015 Regis Houssin + * Copyright (C) 2015 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/cashdesk/tpl/menu.tpl.php b/htdocs/cashdesk/tpl/menu.tpl.php index afe2c0da4ec..d65a39fc6aa 100644 --- a/htdocs/cashdesk/tpl/menu.tpl.php +++ b/htdocs/cashdesk/tpl/menu.tpl.php @@ -1,7 +1,7 @@ * Copyright (C) 2008-2010 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2017 Juanjo Menent * Copyright (C) 2012 Marcos García * diff --git a/htdocs/categories/admin/categorie_extrafields.php b/htdocs/categories/admin/categorie_extrafields.php index abea3f41eeb..a346d86f50e 100644 --- a/htdocs/categories/admin/categorie_extrafields.php +++ b/htdocs/categories/admin/categorie_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/categories/card.php b/htdocs/categories/card.php index 44b209e4371..e69ec4a852d 100644 --- a/htdocs/categories/card.php +++ b/htdocs/categories/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index 480edb83390..242bd206381 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2005 Matthieu Valleton * Copyright (C) 2005 Davoleau Brice * Copyright (C) 2005 Rodolphe Quiedeville - * Copyright (C) 2006-2012 Regis Houssin + * Copyright (C) 2006-2012 Regis Houssin * Copyright (C) 2006-2012 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2013-2016 Juanjo Menent diff --git a/htdocs/categories/edit.php b/htdocs/categories/edit.php index cdfac54fb9d..3ad8481d1b0 100644 --- a/htdocs/categories/edit.php +++ b/htdocs/categories/edit.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Patrick Raguin * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/categories/index.php b/htdocs/categories/index.php index 316a21892af..b7e99e50ca0 100644 --- a/htdocs/categories/index.php +++ b/htdocs/categories/index.php @@ -3,7 +3,7 @@ * Copyright (C) 2005 Eric Seigne * Copyright (C) 2006-2016 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/categories/photos.php b/htdocs/categories/photos.php index 095c0c611c5..d1a35ddd7fa 100644 --- a/htdocs/categories/photos.php +++ b/htdocs/categories/photos.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Jean-François Ferry * Copyright (C) 2015 Raphaël Doursenaud * diff --git a/htdocs/categories/traduction.php b/htdocs/categories/traduction.php index d3287703695..6783b565b99 100644 --- a/htdocs/categories/traduction.php +++ b/htdocs/categories/traduction.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Rodolphe Quiedeville * Copyright (C) 2010-2016 Destailleur Laurent * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/categories/viewcat.php b/htdocs/categories/viewcat.php index 560cb4613be..2092c6c52c5 100644 --- a/htdocs/categories/viewcat.php +++ b/htdocs/categories/viewcat.php @@ -2,7 +2,7 @@ /* Copyright (C) 2005 Matthieu Valleton * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php index 4e8b87eb591..1264ace6b4b 100644 --- a/htdocs/comm/action/card.php +++ b/htdocs/comm/action/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2018 Laurent Destailleur * Copyright (C) 2005 Simon TOSSER - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2014 Cedric GROSS diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index 92af9fef6da..af739838c10 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2017 Juanjo Menent * Copyright (C) 2015 Marcos García * Copyright (C) 2018 Nicolas ZABOURI diff --git a/htdocs/comm/action/class/ical.class.php b/htdocs/comm/action/class/ical.class.php index d3c2070d321..f3a7af8fc11 100644 --- a/htdocs/comm/action/class/ical.class.php +++ b/htdocs/comm/action/class/ical.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2006 Roman Ozana * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013-2014 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/action/document.php b/htdocs/comm/action/document.php index a5998e220f7..a22a5c411f3 100644 --- a/htdocs/comm/action/document.php +++ b/htdocs/comm/action/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2013 Cédric Salvador * diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php index 0bc022956b1..144a2159deb 100644 --- a/htdocs/comm/action/index.php +++ b/htdocs/comm/action/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2014 Cedric GROSS * Copyright (C) 2015 Marcos García diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php index 02d3a16c7f3..b03493a4148 100644 --- a/htdocs/comm/action/list.php +++ b/htdocs/comm/action/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Open-DSI * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/comm/action/pertype.php b/htdocs/comm/action/pertype.php index 0347f73a453..67a4534ca14 100644 --- a/htdocs/comm/action/pertype.php +++ b/htdocs/comm/action/pertype.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2014 Cedric GROSS * Copyright (C) 2018 Frédéric France diff --git a/htdocs/comm/action/peruser.php b/htdocs/comm/action/peruser.php index b145dfa54ed..19a7e33d23d 100644 --- a/htdocs/comm/action/peruser.php +++ b/htdocs/comm/action/peruser.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2014 Cedric GROSS * Copyright (C) 2018 Frédéric France diff --git a/htdocs/comm/action/rapport/index.php b/htdocs/comm/action/rapport/index.php index ff1c7746afa..323113eb12e 100644 --- a/htdocs/comm/action/rapport/index.php +++ b/htdocs/comm/action/rapport/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/address.php b/htdocs/comm/address.php index 4b32eea153a..f9cf7dc5bf1 100644 --- a/htdocs/comm/address.php +++ b/htdocs/comm/address.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/admin/propal_extrafields.php b/htdocs/comm/admin/propal_extrafields.php index becfabc949c..7b58bd6666d 100644 --- a/htdocs/comm/admin/propal_extrafields.php +++ b/htdocs/comm/admin/propal_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/admin/propaldet_extrafields.php b/htdocs/comm/admin/propaldet_extrafields.php index 7172c0e5b7c..3fa03a7e8e8 100644 --- a/htdocs/comm/admin/propaldet_extrafields.php +++ b/htdocs/comm/admin/propaldet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php index d11a81f5bdb..8fa1e9a8f97 100644 --- a/htdocs/comm/card.php +++ b/htdocs/comm/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2013 Alexandre Spangaro diff --git a/htdocs/comm/contact.php b/htdocs/comm/contact.php index b6d9f0922aa..b5cdd58bbc5 100644 --- a/htdocs/comm/contact.php +++ b/htdocs/comm/contact.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php index cb384408e91..81685f3fda8 100644 --- a/htdocs/comm/index.php +++ b/htdocs/comm/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php index 28e49e9d171..d1f15f708f8 100644 --- a/htdocs/comm/mailing/card.php +++ b/htdocs/comm/mailing/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index 761a2bcc41d..57d6adc1ba9 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php index bc6f3beabd2..11708c3b4ca 100644 --- a/htdocs/comm/mailing/class/mailing.class.php +++ b/htdocs/comm/mailing/class/mailing.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/mailing/index.php b/htdocs/comm/mailing/index.php index f1745b406fd..cb062e00777 100644 --- a/htdocs/comm/mailing/index.php +++ b/htdocs/comm/mailing/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Laurent Destailleur - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/mailing/info.php b/htdocs/comm/mailing/info.php index 3c1e6e2cffa..79b3d209ec7 100644 --- a/htdocs/comm/mailing/info.php +++ b/htdocs/comm/mailing/info.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/mailing/list.php b/htdocs/comm/mailing/list.php index 133a354723f..7a4edaa68aa 100644 --- a/htdocs/comm/mailing/list.php +++ b/htdocs/comm/mailing/list.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index f07a5cdfac8..0ef90e7da0a 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2010-2018 Philippe Grand diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index e11f62bb446..871508f1aa4 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005 Marc Barilley - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2014 Juanjo Menent diff --git a/htdocs/comm/propal/class/propalestats.class.php b/htdocs/comm/propal/class/propalestats.class.php index bb4e0ab56f4..bdd4a9dfba2 100644 --- a/htdocs/comm/propal/class/propalestats.class.php +++ b/htdocs/comm/propal/class/propalestats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (c) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/propal/contact.php b/htdocs/comm/propal/contact.php index 4e017ff13d9..7fc556a3b12 100644 --- a/htdocs/comm/propal/contact.php +++ b/htdocs/comm/propal/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Destailleur Laurent - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2015 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/propal/document.php b/htdocs/comm/propal/document.php index cbdfd44383c..07ef56bc1eb 100644 --- a/htdocs/comm/propal/document.php +++ b/htdocs/comm/propal/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/comm/propal/index.php b/htdocs/comm/propal/index.php index b47a4506412..3f0085ad33a 100644 --- a/htdocs/comm/propal/index.php +++ b/htdocs/comm/propal/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/comm/propal/info.php b/htdocs/comm/propal/info.php index 7879612b099..1a1760ce7cf 100644 --- a/htdocs/comm/propal/info.php +++ b/htdocs/comm/propal/info.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index b0cc04702db..f9bbfee6302 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2010-2011 Philippe Grand diff --git a/htdocs/comm/propal/note.php b/htdocs/comm/propal/note.php index a346f8df18f..381b7d105da 100644 --- a/htdocs/comm/propal/note.php +++ b/htdocs/comm/propal/note.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/comm/propal/stats/index.php b/htdocs/comm/propal/stats/index.php index fc2b9c17ba4..c44d23e8d5c 100644 --- a/htdocs/comm/propal/stats/index.php +++ b/htdocs/comm/propal/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/comm/propal/tpl/linkedobjectblock.tpl.php b/htdocs/comm/propal/tpl/linkedobjectblock.tpl.php index 724e0bcce15..0d8c2064010 100644 --- a/htdocs/comm/propal/tpl/linkedobjectblock.tpl.php +++ b/htdocs/comm/propal/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/comm/prospect/index.php b/htdocs/comm/prospect/index.php index 6d7e93af4be..53176c8b76f 100644 --- a/htdocs/comm/prospect/index.php +++ b/htdocs/comm/prospect/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index f468bd4b146..37181f7f9ae 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2006 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 2428e6052eb..a0262541d7b 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011 Jean Heimburger diff --git a/htdocs/commande/class/commandestats.class.php b/htdocs/commande/class/commandestats.class.php index 13d7e245f05..3c6ec07c6cb 100644 --- a/htdocs/commande/class/commandestats.class.php +++ b/htdocs/commande/class/commandestats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/commande/contact.php b/htdocs/commande/contact.php index bd00116e026..b40a284e728 100644 --- a/htdocs/commande/contact.php +++ b/htdocs/commande/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2015 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/commande/customer.php b/htdocs/commande/customer.php index 42def36ee28..2f7e1831457 100644 --- a/htdocs/commande/customer.php +++ b/htdocs/commande/customer.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012 Andreu Bisquerra Gaya * Copyright (C) 2012 David Rodriguez Martinez * Copyright (C) 2012 Juanjo Menent diff --git a/htdocs/commande/document.php b/htdocs/commande/document.php index fc8192f7edb..402467553fb 100644 --- a/htdocs/commande/document.php +++ b/htdocs/commande/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/commande/index.php b/htdocs/commande/index.php index 4c596620c6c..a87c4d868bf 100644 --- a/htdocs/commande/index.php +++ b/htdocs/commande/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/commande/info.php b/htdocs/commande/info.php index 6c0b5f42ec6..c52fbd45a37 100644 --- a/htdocs/commande/info.php +++ b/htdocs/commande/info.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 2a9e215faa4..f434cbddbdb 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/commande/note.php b/htdocs/commande/note.php index bf02c9b993c..1a783f3aae7 100644 --- a/htdocs/commande/note.php +++ b/htdocs/commande/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php index a8da25e07f9..75570939afb 100644 --- a/htdocs/commande/orderstoinvoice.php +++ b/htdocs/commande/orderstoinvoice.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Andreu Bisquerra Gaya * Copyright (C) 2012 David Rodriguez Martinez * Copyright (C) 2012-2018 Juanjo Menent diff --git a/htdocs/commande/stats/index.php b/htdocs/commande/stats/index.php index d85b30792be..a40d27b4e14 100644 --- a/htdocs/commande/stats/index.php +++ b/htdocs/commande/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/commande/tpl/linkedobjectblock.tpl.php b/htdocs/commande/tpl/linkedobjectblock.tpl.php index 758a37eddb8..392d2455e2a 100644 --- a/htdocs/commande/tpl/linkedobjectblock.tpl.php +++ b/htdocs/commande/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/compta/bank/annuel.php b/htdocs/compta/bank/annuel.php index 47f31eac308..64f4e15cce6 100644 --- a/htdocs/compta/bank/annuel.php +++ b/htdocs/compta/bank/annuel.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Charles-Fr BENKE * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/bank/bankentries_list.php b/htdocs/compta/bank/bankentries_list.php index 31eaa9e8f6d..22513997c00 100644 --- a/htdocs/compta/bank/bankentries_list.php +++ b/htdocs/compta/bank/bankentries_list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2012 Vinícius Nogueira * Copyright (C) 2014 Florian Henry * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/compta/bank/budget.php b/htdocs/compta/bank/budget.php index ccec902bf7c..1d20c4a0d00 100644 --- a/htdocs/compta/bank/budget.php +++ b/htdocs/compta/bank/budget.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php index 6d2fa406ea7..9abe8c82b6c 100644 --- a/htdocs/compta/bank/card.php +++ b/htdocs/compta/bank/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2003 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2014-2017 Alexandre Spangaro * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Marcos García diff --git a/htdocs/compta/bank/categ.php b/htdocs/compta/bank/categ.php index f76f73183b3..926252053e2 100644 --- a/htdocs/compta/bank/categ.php +++ b/htdocs/compta/bank/categ.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Charles-Fr BENKE * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Marcos García diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php index 5a8d1326e48..7cb6b09fbaf 100644 --- a/htdocs/compta/bank/class/account.class.php +++ b/htdocs/compta/bank/class/account.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015-2016 Marcos García * Copyright (C) 2015-2017 Alexandre Spangaro diff --git a/htdocs/compta/bank/class/bankcateg.class.php b/htdocs/compta/bank/class/bankcateg.class.php index cc291c6be64..9efdf3932ff 100644 --- a/htdocs/compta/bank/class/bankcateg.class.php +++ b/htdocs/compta/bank/class/bankcateg.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2016 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/bank/document.php b/htdocs/compta/bank/document.php index f908b68b35c..e9fdc37a79f 100644 --- a/htdocs/compta/bank/document.php +++ b/htdocs/compta/bank/document.php @@ -3,7 +3,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2008 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/bank/graph.php b/htdocs/compta/bank/graph.php index 517c616ec28..958ff129a06 100644 --- a/htdocs/compta/bank/graph.php +++ b/htdocs/compta/bank/graph.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/bank/ligne.php b/htdocs/compta/bank/ligne.php index 1587c5c10e8..4b9f55f025f 100644 --- a/htdocs/compta/bank/ligne.php +++ b/htdocs/compta/bank/ligne.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Xavier DUTOIT * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015-2017 Alexandre Spangaro * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Marcos García diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index 79c26adfa47..8758ccb98a6 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/compta/bank/releve.php b/htdocs/compta/bank/releve.php index 3f1bede8e20..f123dd35eb5 100644 --- a/htdocs/compta/bank/releve.php +++ b/htdocs/compta/bank/releve.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2017 Patrick Delcroix * diff --git a/htdocs/compta/bank/transfer.php b/htdocs/compta/bank/transfer.php index 38109b964b4..ae6b625b6e5 100644 --- a/htdocs/compta/bank/transfer.php +++ b/htdocs/compta/bank/transfer.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2015 Marcos García diff --git a/htdocs/compta/bank/treso.php b/htdocs/compta/bank/treso.php index 9bd00c81894..ef471aea693 100644 --- a/htdocs/compta/bank/treso.php +++ b/htdocs/compta/bank/treso.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2008-2009 Laurent Destailleur (Eldy) * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2015 Marcos García * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2011-2016 Alexandre Spangaro * Copyright (C) 2011-2014 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/compta/clients.php b/htdocs/compta/clients.php index ceb9324961e..2fa9eecec73 100644 --- a/htdocs/compta/clients.php +++ b/htdocs/compta/clients.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/deplacement/card.php b/htdocs/compta/deplacement/card.php index 383ff1c571a..b213bd25061 100644 --- a/htdocs/compta/deplacement/card.php +++ b/htdocs/compta/deplacement/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2018 Frédéric France diff --git a/htdocs/compta/deplacement/class/deplacement.class.php b/htdocs/compta/deplacement/class/deplacement.class.php index 2476f65b09f..2c21c2694ae 100644 --- a/htdocs/compta/deplacement/class/deplacement.class.php +++ b/htdocs/compta/deplacement/class/deplacement.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/deplacement/class/deplacementstats.class.php b/htdocs/compta/deplacement/class/deplacementstats.class.php index e490c90f1ed..ae93eb094d9 100644 --- a/htdocs/compta/deplacement/class/deplacementstats.class.php +++ b/htdocs/compta/deplacement/class/deplacementstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/deplacement/document.php b/htdocs/compta/deplacement/document.php index 7ec837c81f2..b17974b444a 100644 --- a/htdocs/compta/deplacement/document.php +++ b/htdocs/compta/deplacement/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/compta/deplacement/index.php b/htdocs/compta/deplacement/index.php index 84c0c718c70..ef28a7909f9 100644 --- a/htdocs/compta/deplacement/index.php +++ b/htdocs/compta/deplacement/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/deplacement/list.php b/htdocs/compta/deplacement/list.php index 20d300d9da4..3dfbac0e726 100644 --- a/htdocs/compta/deplacement/list.php +++ b/htdocs/compta/deplacement/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/facture/admin/facture_cust_extrafields.php b/htdocs/compta/facture/admin/facture_cust_extrafields.php index 1fe26e82a54..b0816d762a8 100644 --- a/htdocs/compta/facture/admin/facture_cust_extrafields.php +++ b/htdocs/compta/facture/admin/facture_cust_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur -* Copyright (C) 2012 Regis Houssin +* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Jean-Francois FERRY * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/facture/admin/facture_rec_cust_extrafields.php b/htdocs/compta/facture/admin/facture_rec_cust_extrafields.php index 23c0d79a33c..153f959b381 100644 --- a/htdocs/compta/facture/admin/facture_rec_cust_extrafields.php +++ b/htdocs/compta/facture/admin/facture_rec_cust_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur -* Copyright (C) 2012 Regis Houssin +* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Jean-Francois FERRY * Copyright (C) 2017 John BOTELLA * diff --git a/htdocs/compta/facture/admin/facturedet_cust_extrafields.php b/htdocs/compta/facture/admin/facturedet_cust_extrafields.php index 0947f788719..74da2466e1e 100644 --- a/htdocs/compta/facture/admin/facturedet_cust_extrafields.php +++ b/htdocs/compta/facture/admin/facturedet_cust_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur -* Copyright (C) 2012 Regis Houssin +* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Jean-Francois FERRY * Copyright (C) 2013 Florian Henry * diff --git a/htdocs/compta/facture/admin/facturedet_rec_cust_extrafields.php b/htdocs/compta/facture/admin/facturedet_rec_cust_extrafields.php index 46d9ed28335..637928e80ee 100644 --- a/htdocs/compta/facture/admin/facturedet_rec_cust_extrafields.php +++ b/htdocs/compta/facture/admin/facturedet_rec_cust_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur -* Copyright (C) 2012 Regis Houssin +* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Jean-Francois FERRY * Copyright (C) 2013 Florian Henry * diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 050f8786c3a..305df904f61 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2012-2013 Christophe Battarel diff --git a/htdocs/compta/facture/class/facture-rec.class.php b/htdocs/compta/facture/class/facture-rec.class.php index ad33432484f..56f87d2eac3 100644 --- a/htdocs/compta/facture/class/facture-rec.class.php +++ b/htdocs/compta/facture/class/facture-rec.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2012 Cedric Salvador * Copyright (C) 2013 Florian Henry diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 3d98271bb26..64ec7157fa3 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2010-2016 Juanjo Menent diff --git a/htdocs/compta/facture/class/facturestats.class.php b/htdocs/compta/facture/class/facturestats.class.php index 1201c429a2a..7a9a9621a78 100644 --- a/htdocs/compta/facture/class/facturestats.class.php +++ b/htdocs/compta/facture/class/facturestats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php index 948056fe404..baf466cc60c 100644 --- a/htdocs/compta/facture/contact.php +++ b/htdocs/compta/facture/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Destailleur Laurent - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2015 Philippe Grand * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/compta/facture/document.php b/htdocs/compta/facture/document.php index 0ce8ad7eb92..4693587de07 100644 --- a/htdocs/compta/facture/document.php +++ b/htdocs/compta/facture/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2017 Frédéric France diff --git a/htdocs/compta/facture/fiche-rec.php b/htdocs/compta/facture/fiche-rec.php index d9ce0137f04..0ce812b2355 100644 --- a/htdocs/compta/facture/fiche-rec.php +++ b/htdocs/compta/facture/fiche-rec.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/compta/facture/invoicetemplate_list.php b/htdocs/compta/facture/invoicetemplate_list.php index c61836e1b1b..e83932e0b9b 100644 --- a/htdocs/compta/facture/invoicetemplate_list.php +++ b/htdocs/compta/facture/invoicetemplate_list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 553c6c9028a..effaaee6a63 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -3,7 +3,7 @@ * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2012 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/compta/facture/note.php b/htdocs/compta/facture/note.php index c46d3ed690e..507bb8f458d 100644 --- a/htdocs/compta/facture/note.php +++ b/htdocs/compta/facture/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/compta/facture/prelevement.php b/htdocs/compta/facture/prelevement.php index d7766268989..6d5d52ce503 100644 --- a/htdocs/compta/facture/prelevement.php +++ b/htdocs/compta/facture/prelevement.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2005 Rodolphe Quiedeville * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php b/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php index 1a55771b963..2ed8b081ceb 100644 --- a/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php +++ b/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php b/htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php index 5f224bc2026..4333aa65a5a 100644 --- a/htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php +++ b/htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php index 692849d2fa6..f6049d315e9 100644 --- a/htdocs/compta/index.php +++ b/htdocs/compta/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2015-2016 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/compta/journal/purchasesjournal.php b/htdocs/compta/journal/purchasesjournal.php index 2d43d48d778..8974c1b78e0 100644 --- a/htdocs/compta/journal/purchasesjournal.php +++ b/htdocs/compta/journal/purchasesjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011-2014 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2011-2012 Alexandre spangaro * Copyright (C) 2013 Marcos García * Copyright (C) 2018 Frédéric France diff --git a/htdocs/compta/journal/sellsjournal.php b/htdocs/compta/journal/sellsjournal.php index 3b4be22a81d..f88f5643c40 100644 --- a/htdocs/compta/journal/sellsjournal.php +++ b/htdocs/compta/journal/sellsjournal.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2007-2010 Jean Heimburger * Copyright (C) 2011-2014 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2011-2012 Alexandre Spangaro * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2013 Marcos García diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php index 94cd53b5424..32e042c5731 100644 --- a/htdocs/compta/paiement.php +++ b/htdocs/compta/paiement.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2006 Rodolphe Quiedeville * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2014 Raphaël Doursenaud diff --git a/htdocs/compta/paiement/card.php b/htdocs/compta/paiement/card.php index 1475cfd6e45..6774a4042b8 100644 --- a/htdocs/compta/paiement/card.php +++ b/htdocs/compta/paiement/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Marcos García * Copyright (C) 2015 Juanjo Menent * diff --git a/htdocs/compta/paiement/cheque/card.php b/htdocs/compta/paiement/cheque/card.php index 9f42ef9b16c..9a21ff3dee8 100644 --- a/htdocs/compta/paiement/cheque/card.php +++ b/htdocs/compta/paiement/cheque/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2011 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2011-2016 Juanjo Menent * Copyright (C) 2013 Philippe Grand * Copyright (C) 2015-2016 Alexandre Spangaro diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index d190beffae2..28973d3c4e2 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2016 Juanjo Menent * Copyright (C) 2015 Marcos García * diff --git a/htdocs/compta/paiement/cheque/index.php b/htdocs/compta/paiement/cheque/index.php index c3cf1634557..1748a3fa9d2 100644 --- a/htdocs/compta/paiement/cheque/index.php +++ b/htdocs/compta/paiement/cheque/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2011 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2016 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/paiement/cheque/list.php b/htdocs/compta/paiement/cheque/list.php index 2f0c6592694..d9ac1ab11eb 100644 --- a/htdocs/compta/paiement/cheque/list.php +++ b/htdocs/compta/paiement/cheque/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2007-2016 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2014 Alexandre Spangaro * Copyright (C) 2016 Juanjo Menent * diff --git a/htdocs/compta/paiement/list.php b/htdocs/compta/paiement/list.php index 5b5124b2b80..768792c978c 100644 --- a/htdocs/compta/paiement/list.php +++ b/htdocs/compta/paiement/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2015 Juanjo Menent diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php index 12cd2a0aa0e..f645edf4563 100644 --- a/htdocs/compta/payment_sc/card.php +++ b/htdocs/compta/payment_sc/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/compta/prelevement/bons.php b/htdocs/compta/prelevement/bons.php index a6d1f480a06..e4fb8bc0757 100644 --- a/htdocs/compta/prelevement/bons.php +++ b/htdocs/compta/prelevement/bons.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2017 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/class/bonprelevement.class.php b/htdocs/compta/prelevement/class/bonprelevement.class.php index 9d2b828b3eb..4089ffd76e2 100644 --- a/htdocs/compta/prelevement/class/bonprelevement.class.php +++ b/htdocs/compta/prelevement/class/bonprelevement.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2010-2014 Laurent Destailleur * Copyright (C) 2014-2016 Ferran Marcet diff --git a/htdocs/compta/prelevement/class/ligneprelevement.class.php b/htdocs/compta/prelevement/class/ligneprelevement.class.php index d8434caefd8..7e100022c7a 100644 --- a/htdocs/compta/prelevement/class/ligneprelevement.class.php +++ b/htdocs/compta/prelevement/class/ligneprelevement.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2015 Marcos García * diff --git a/htdocs/compta/prelevement/class/rejetprelevement.class.php b/htdocs/compta/prelevement/class/rejetprelevement.class.php index ebe76a6aab3..6c99cc5562c 100644 --- a/htdocs/compta/prelevement/class/rejetprelevement.class.php +++ b/htdocs/compta/prelevement/class/rejetprelevement.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/create.php b/htdocs/compta/prelevement/create.php index dff5ab39f3d..02ccee567f5 100644 --- a/htdocs/compta/prelevement/create.php +++ b/htdocs/compta/prelevement/create.php @@ -1,7 +1,7 @@ * Copyright (C) 2010-2015 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2012 Juanjo Menent * Copyright (C) 2018 Nicolas ZABOURI * Copyright (C) 2018 Frédéric France diff --git a/htdocs/compta/prelevement/demandes.php b/htdocs/compta/prelevement/demandes.php index 10c390ed5bd..3129d4af3c8 100644 --- a/htdocs/compta/prelevement/demandes.php +++ b/htdocs/compta/prelevement/demandes.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/factures.php b/htdocs/compta/prelevement/factures.php index a53db70544b..1f0309f13f3 100644 --- a/htdocs/compta/prelevement/factures.php +++ b/htdocs/compta/prelevement/factures.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2017 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/fiche-rejet.php b/htdocs/compta/prelevement/fiche-rejet.php index 7cb862389d7..2daf4bbf427 100644 --- a/htdocs/compta/prelevement/fiche-rejet.php +++ b/htdocs/compta/prelevement/fiche-rejet.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/index.php b/htdocs/compta/prelevement/index.php index 673b83d15aa..a73e9d4f835 100644 --- a/htdocs/compta/prelevement/index.php +++ b/htdocs/compta/prelevement/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Florian Henry * diff --git a/htdocs/compta/prelevement/ligne.php b/htdocs/compta/prelevement/ligne.php index 30cc21ae977..38e5f91ec2b 100644 --- a/htdocs/compta/prelevement/ligne.php +++ b/htdocs/compta/prelevement/ligne.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/compta/prelevement/list.php b/htdocs/compta/prelevement/list.php index ead1bfff08f..1313658a5f7 100644 --- a/htdocs/compta/prelevement/list.php +++ b/htdocs/compta/prelevement/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2018 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/prelevement/rejets.php b/htdocs/compta/prelevement/rejets.php index 5c38b29954e..4e71efc5379 100644 --- a/htdocs/compta/prelevement/rejets.php +++ b/htdocs/compta/prelevement/rejets.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2005-2012 Laurent Destailleur * diff --git a/htdocs/compta/prelevement/stats.php b/htdocs/compta/prelevement/stats.php index ab233a61be3..e7bd8622fa2 100644 --- a/htdocs/compta/prelevement/stats.php +++ b/htdocs/compta/prelevement/stats.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php index 4d643536388..e5ecf562c1d 100644 --- a/htdocs/compta/resultat/clientfourn.php +++ b/htdocs/compta/resultat/clientfourn.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2012-2014 Raphaël Dourseanud * Copyright (C) 2014-2106 Ferran Marcet diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php index 1e2719eac81..33c3883f8ef 100644 --- a/htdocs/compta/resultat/index.php +++ b/htdocs/compta/resultat/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014-2016 Ferran Marcet * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Florian Henry diff --git a/htdocs/compta/salaries/document.php b/htdocs/compta/salaries/document.php index 1059c765df3..06d5889c44e 100644 --- a/htdocs/compta/salaries/document.php +++ b/htdocs/compta/salaries/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/compta/sociales/card.php b/htdocs/compta/sociales/card.php index 4ffa1a2829f..a6c41d8c431 100644 --- a/htdocs/compta/sociales/card.php +++ b/htdocs/compta/sociales/card.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2016-2018 Frédéric France * Copyright (C) 2017 Alexandre Spangaro * diff --git a/htdocs/compta/sociales/document.php b/htdocs/compta/sociales/document.php index b2f73768e96..ca81c11e5f1 100644 --- a/htdocs/compta/sociales/document.php +++ b/htdocs/compta/sociales/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/compta/sociales/index.php b/htdocs/compta/sociales/index.php index 6a0250804f1..0a0176cb4b3 100644 --- a/htdocs/compta/sociales/index.php +++ b/htdocs/compta/sociales/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2016 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/compta/sociales/payments.php b/htdocs/compta/sociales/payments.php index 48b2698c762..936c2c9c0f2 100644 --- a/htdocs/compta/sociales/payments.php +++ b/htdocs/compta/sociales/payments.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2011-2016 Alexandre Spangaro * Copyright (C) 2011-2014 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/compta/stats/cabyuser.php b/htdocs/compta/stats/cabyuser.php index 4f49b9492ff..c00c0e52849 100644 --- a/htdocs/compta/stats/cabyuser.php +++ b/htdocs/compta/stats/cabyuser.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Antoine Iauch * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/compta/stats/casoc.php b/htdocs/compta/stats/casoc.php index fb53989fe74..f49f15afa1f 100644 --- a/htdocs/compta/stats/casoc.php +++ b/htdocs/compta/stats/casoc.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2013 Antoine Iauch * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php index c5ceccdad61..711c8ec2bb7 100644 --- a/htdocs/compta/stats/index.php +++ b/htdocs/compta/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2017 Olivier Geffroy * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/compta/tva/card.php b/htdocs/compta/tva/card.php index 69483d84be0..cd015e96c11 100644 --- a/htdocs/compta/tva/card.php +++ b/htdocs/compta/tva/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2015-2017 Alexandre Spangaro * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/compta/tva/document.php b/htdocs/compta/tva/document.php index 790058c20a9..1228fcb5125 100644 --- a/htdocs/compta/tva/document.php +++ b/htdocs/compta/tva/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/compta/tva/index.php b/htdocs/compta/tva/index.php index 8e4fccf4168..4691b577368 100644 --- a/htdocs/compta/tva/index.php +++ b/htdocs/compta/tva/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2003 Rodolphe Quiedeville * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2014 Ferran Marcet * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/compta/tva/list.php b/htdocs/compta/tva/list.php index d835b0264e1..7c0d813c2cb 100644 --- a/htdocs/compta/tva/list.php +++ b/htdocs/compta/tva/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2017 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contact/agenda.php b/htdocs/contact/agenda.php index 183433b02f9..5a9ef88f8ed 100644 --- a/htdocs/contact/agenda.php +++ b/htdocs/contact/agenda.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2005 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2013 Florian Henry * Copyright (C) 2013-2016 Alexandre Spangaro diff --git a/htdocs/contact/canvas/actions_contactcard_common.class.php b/htdocs/contact/canvas/actions_contactcard_common.class.php index 7e413854846..bac7c9059a9 100644 --- a/htdocs/contact/canvas/actions_contactcard_common.class.php +++ b/htdocs/contact/canvas/actions_contactcard_common.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/canvas/default/actions_contactcard_default.class.php b/htdocs/contact/canvas/default/actions_contactcard_default.class.php index 5831b943d76..1847e19a0ed 100644 --- a/htdocs/contact/canvas/default/actions_contactcard_default.class.php +++ b/htdocs/contact/canvas/default/actions_contactcard_default.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php index 1561f046845..9f2bdd4b114 100644 --- a/htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php +++ b/htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php index 1eaccff5a1f..39c3604416b 100644 --- a/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php +++ b/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php index 6041e7c3e2c..c1d6de80964 100644 --- a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php +++ b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php index a43127c9a32..770b19e5b75 100644 --- a/htdocs/contact/card.php +++ b/htdocs/contact/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2005 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2013 Florian Henry * Copyright (C) 2013-2016 Alexandre Spangaro diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index b1d83abac77..b5e8cd33517 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2004 Rodolphe Quiedeville * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2013 Florian Henry diff --git a/htdocs/contact/document.php b/htdocs/contact/document.php index 07795da30d0..d118c4de3b9 100644 --- a/htdocs/contact/document.php +++ b/htdocs/contact/document.php @@ -1,7 +1,7 @@ * Copyright (C) 2015 Frederic France - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/info.php b/htdocs/contact/info.php index 7ddee3f7722..05862e0e9aa 100644 --- a/htdocs/contact/info.php +++ b/htdocs/contact/info.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/ldap.php b/htdocs/contact/ldap.php index 045cdfcd2c5..eaf165136e2 100644 --- a/htdocs/contact/ldap.php +++ b/htdocs/contact/ldap.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 52a2c4bbe7f..4a101416886 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2004 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013-2015 Raphaël Doursenaud * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2013 Alexandre Spangaro diff --git a/htdocs/contact/note.php b/htdocs/contact/note.php index 731dadb6433..8958e8dcf6a 100644 --- a/htdocs/contact/note.php +++ b/htdocs/contact/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Florian Henry * diff --git a/htdocs/contact/perso.php b/htdocs/contact/perso.php index 4932d549df4..8e74c33cd14 100644 --- a/htdocs/contact/perso.php +++ b/htdocs/contact/perso.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contact/vcard.php b/htdocs/contact/vcard.php index 5229a0e8416..be45fabf099 100644 --- a/htdocs/contact/vcard.php +++ b/htdocs/contact/vcard.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/contrat/admin/contract_extrafields.php b/htdocs/contrat/admin/contract_extrafields.php index d19c91e0bf2..3e3e82f6e0b 100644 --- a/htdocs/contrat/admin/contract_extrafields.php +++ b/htdocs/contrat/admin/contract_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2013-2018 Philippe Grand * diff --git a/htdocs/contrat/admin/contractdet_extrafields.php b/htdocs/contrat/admin/contractdet_extrafields.php index af2585eaf3a..69cfd219fcf 100644 --- a/htdocs/contrat/admin/contractdet_extrafields.php +++ b/htdocs/contrat/admin/contractdet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2014 Florian Henry * Copyright (C) 2013 Philippe Grand * diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 0c0247dc7fa..d53413efee0 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2017 Juanjo Menent * Copyright (C) 2013 Christophe Battarel diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 8d2194bb60a..589cf7174e6 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Destailleur Laurent - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2016 Juanjo Menent diff --git a/htdocs/contrat/contact.php b/htdocs/contrat/contact.php index b659aa01aab..d68eee4eb5a 100644 --- a/htdocs/contrat/contact.php +++ b/htdocs/contrat/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Destailleur Laurent - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contrat/document.php b/htdocs/contrat/document.php index cd98f787ff6..7373278df1a 100644 --- a/htdocs/contrat/document.php +++ b/htdocs/contrat/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php index c0404b5cf3f..69e2b0d0ca8 100644 --- a/htdocs/contrat/index.php +++ b/htdocs/contrat/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contrat/list.php b/htdocs/contrat/list.php index 96f20fdaf67..3719e3618e6 100644 --- a/htdocs/contrat/list.php +++ b/htdocs/contrat/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/contrat/note.php b/htdocs/contrat/note.php index ec93d112ef4..193c25e0398 100644 --- a/htdocs/contrat/note.php +++ b/htdocs/contrat/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/contrat/services_list.php b/htdocs/contrat/services_list.php index 72b45f49db5..a57bfd0f175 100644 --- a/htdocs/contrat/services_list.php +++ b/htdocs/contrat/services_list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2018 Ferran Marcet * Copyright (C) 2018 Frédéric France diff --git a/htdocs/contrat/tpl/linkedobjectblock.tpl.php b/htdocs/contrat/tpl/linkedobjectblock.tpl.php index 328be816327..64d40edebc0 100644 --- a/htdocs/contrat/tpl/linkedobjectblock.tpl.php +++ b/htdocs/contrat/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2018 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/ajax/ajaxdirpreview.php b/htdocs/core/ajax/ajaxdirpreview.php index 82f83595537..5056844bcee 100644 --- a/htdocs/core/ajax/ajaxdirpreview.php +++ b/htdocs/core/ajax/ajaxdirpreview.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2007 Rodolphe Quiedeville * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2005 Simon Tosser - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Pierre Morin * Copyright (C) 2013 Marcos García * diff --git a/htdocs/core/ajax/box.php b/htdocs/core/ajax/box.php index f6bd5b5214a..93b317a43c9 100644 --- a/htdocs/core/ajax/box.php +++ b/htdocs/core/ajax/box.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/ajax/constantonoff.php b/htdocs/core/ajax/constantonoff.php index 9e9f8a0d799..0f733f4df5c 100644 --- a/htdocs/core/ajax/constantonoff.php +++ b/htdocs/core/ajax/constantonoff.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/contacts.php b/htdocs/core/ajax/contacts.php index b03b9f128cf..777fa076639 100644 --- a/htdocs/core/ajax/contacts.php +++ b/htdocs/core/ajax/contacts.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2016 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/ajax/extraparams.php b/htdocs/core/ajax/extraparams.php index 908c1ef9f11..e5972d29d70 100644 --- a/htdocs/core/ajax/extraparams.php +++ b/htdocs/core/ajax/extraparams.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/fileupload.php b/htdocs/core/ajax/fileupload.php index 9405aa26cf1..1cf5678cb00 100644 --- a/htdocs/core/ajax/fileupload.php +++ b/htdocs/core/ajax/fileupload.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2012 Regis Houssin * Copyright (C) 2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/ajax/getaccountcurrency.php b/htdocs/core/ajax/getaccountcurrency.php index 2289d8e1c0f..d58c81efdba 100644 --- a/htdocs/core/ajax/getaccountcurrency.php +++ b/htdocs/core/ajax/getaccountcurrency.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/loadinplace.php b/htdocs/core/ajax/loadinplace.php index 099f66ba3de..abf3efba7db 100644 --- a/htdocs/core/ajax/loadinplace.php +++ b/htdocs/core/ajax/loadinplace.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2014 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/price.php b/htdocs/core/ajax/price.php index 86073a5a409..3eab18216d1 100644 --- a/htdocs/core/ajax/price.php +++ b/htdocs/core/ajax/price.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/row.php b/htdocs/core/ajax/row.php index 98f18df8a68..2dba328610e 100644 --- a/htdocs/core/ajax/row.php +++ b/htdocs/core/ajax/row.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2015 Regis Houssin * Copyright (C) 2017 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/ajax/saveinplace.php b/htdocs/core/ajax/saveinplace.php index 7070d1a8799..188dcbb29da 100644 --- a/htdocs/core/ajax/saveinplace.php +++ b/htdocs/core/ajax/saveinplace.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/security.php b/htdocs/core/ajax/security.php index fa1ce2103d4..d6bfe51b45c 100644 --- a/htdocs/core/ajax/security.php +++ b/htdocs/core/ajax/security.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/vatrates.php b/htdocs/core/ajax/vatrates.php index 3826e521d06..8fe38d02552 100644 --- a/htdocs/core/ajax/vatrates.php +++ b/htdocs/core/ajax/vatrates.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/ajax/ziptown.php b/htdocs/core/ajax/ziptown.php index 2100d3d3600..c1af6a2ac22 100644 --- a/htdocs/core/ajax/ziptown.php +++ b/htdocs/core/ajax/ziptown.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2011-204 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_actions.php b/htdocs/core/boxes/box_actions.php index 05bbdba3831..aea85fd111e 100644 --- a/htdocs/core/boxes/box_actions.php +++ b/htdocs/core/boxes/box_actions.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2014 Charles-Fr BENKE * Copyright (C) 2015 Frederic France * diff --git a/htdocs/core/boxes/box_clients.php b/htdocs/core/boxes/box_clients.php index 96ccd7b675d..9b1e4e34261 100644 --- a/htdocs/core/boxes/box_clients.php +++ b/htdocs/core/boxes/box_clients.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_commandes.php b/htdocs/core/boxes/box_commandes.php index 5aeb6179207..3f86909f04a 100644 --- a/htdocs/core/boxes/box_commandes.php +++ b/htdocs/core/boxes/box_commandes.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_comptes.php b/htdocs/core/boxes/box_comptes.php index 8606d9b91f7..5a5c2f59986 100644 --- a/htdocs/core/boxes/box_comptes.php +++ b/htdocs/core/boxes/box_comptes.php @@ -1,7 +1,7 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2015 Frederic France * diff --git a/htdocs/core/boxes/box_contacts.php b/htdocs/core/boxes/box_contacts.php index 4feb101c090..2d9d7e9461b 100644 --- a/htdocs/core/boxes/box_contacts.php +++ b/htdocs/core/boxes/box_contacts.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * Copyright (C) 2018 Josep Lluís Amador * diff --git a/htdocs/core/boxes/box_contracts.php b/htdocs/core/boxes/box_contracts.php index 7592f882b59..7239fa78919 100644 --- a/htdocs/core/boxes/box_contracts.php +++ b/htdocs/core/boxes/box_contracts.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2015 Frederic France * Copyright (C) 2016-2017 Laurent Destailleur * diff --git a/htdocs/core/boxes/box_external_rss.php b/htdocs/core/boxes/box_external_rss.php index f08c809627d..679509774e2 100644 --- a/htdocs/core/boxes/box_external_rss.php +++ b/htdocs/core/boxes/box_external_rss.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_factures.php b/htdocs/core/boxes/box_factures.php index 36c472cfc22..c76ea8d825b 100644 --- a/htdocs/core/boxes/box_factures.php +++ b/htdocs/core/boxes/box_factures.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_factures_fourn.php b/htdocs/core/boxes/box_factures_fourn.php index c865cf185c4..617f041d7d2 100644 --- a/htdocs/core/boxes/box_factures_fourn.php +++ b/htdocs/core/boxes/box_factures_fourn.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_factures_fourn_imp.php b/htdocs/core/boxes/box_factures_fourn_imp.php index e8dedf59c41..bd8fde32aab 100644 --- a/htdocs/core/boxes/box_factures_fourn_imp.php +++ b/htdocs/core/boxes/box_factures_fourn_imp.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_factures_imp.php b/htdocs/core/boxes/box_factures_imp.php index dd64a07b8d9..10edddf4667 100644 --- a/htdocs/core/boxes/box_factures_imp.php +++ b/htdocs/core/boxes/box_factures_imp.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_fournisseurs.php b/htdocs/core/boxes/box_fournisseurs.php index 0ca14fae7f5..c66c7f674c2 100644 --- a/htdocs/core/boxes/box_fournisseurs.php +++ b/htdocs/core/boxes/box_fournisseurs.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_goodcustomers.php b/htdocs/core/boxes/box_goodcustomers.php index 16668987a40..138326d6c01 100644 --- a/htdocs/core/boxes/box_goodcustomers.php +++ b/htdocs/core/boxes/box_goodcustomers.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * Copyright (C) 2016 Charlie Benke * diff --git a/htdocs/core/boxes/box_members.php b/htdocs/core/boxes/box_members.php index 6f7e62aa457..b0f999f54f1 100644 --- a/htdocs/core/boxes/box_members.php +++ b/htdocs/core/boxes/box_members.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_produits.php b/htdocs/core/boxes/box_produits.php index cadda2b8058..24699f0e9f6 100644 --- a/htdocs/core/boxes/box_produits.php +++ b/htdocs/core/boxes/box_produits.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_produits_alerte_stock.php b/htdocs/core/boxes/box_produits_alerte_stock.php index 648da118e09..896ceb93df6 100644 --- a/htdocs/core/boxes/box_produits_alerte_stock.php +++ b/htdocs/core/boxes/box_produits_alerte_stock.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005-2012 Maxime Kohlhaas * Copyright (C) 2015 Frederic France * Copyright (C) 2015 Juanjo Menent diff --git a/htdocs/core/boxes/box_propales.php b/htdocs/core/boxes/box_propales.php index 6db4ac11250..2b3426f21b8 100644 --- a/htdocs/core/boxes/box_propales.php +++ b/htdocs/core/boxes/box_propales.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_prospect.php b/htdocs/core/boxes/box_prospect.php index 629da790f3c..a4382f86048 100644 --- a/htdocs/core/boxes/box_prospect.php +++ b/htdocs/core/boxes/box_prospect.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Frederic France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_services_contracts.php b/htdocs/core/boxes/box_services_contracts.php index 7c73bbbe328..6a74cd005ab 100644 --- a/htdocs/core/boxes/box_services_contracts.php +++ b/htdocs/core/boxes/box_services_contracts.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2017 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2017 Nicolas Zabouri * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/boxes/box_supplier_orders.php b/htdocs/core/boxes/box_supplier_orders.php index 97b4bf8feec..4621950843e 100644 --- a/htdocs/core/boxes/box_supplier_orders.php +++ b/htdocs/core/boxes/box_supplier_orders.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012 Raphaël Doursenaud * Copyright (C) 2015 Frederic France * diff --git a/htdocs/core/boxes/modules_boxes.php b/htdocs/core/boxes/modules_boxes.php index 47646a0facf..9ae35403ec7 100644 --- a/htdocs/core/boxes/modules_boxes.php +++ b/htdocs/core/boxes/modules_boxes.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Raphaël Doursenaud * Copyright (C) 2015 Frederic France * diff --git a/htdocs/core/class/CMailFile.class.php b/htdocs/core/class/CMailFile.class.php index a37f6b1562b..ed1fccbc444 100644 --- a/htdocs/core/class/CMailFile.class.php +++ b/htdocs/core/class/CMailFile.class.php @@ -5,7 +5,7 @@ * Copyright (C) 2000-2005 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/CSMSFile.class.php b/htdocs/core/class/CSMSFile.class.php index b6c334f7e1c..86ffed48551 100644 --- a/htdocs/core/class/CSMSFile.class.php +++ b/htdocs/core/class/CSMSFile.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2000-2005 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/antivir.class.php b/htdocs/core/class/antivir.class.php index c67e3f5f59d..1b45d490d9d 100644 --- a/htdocs/core/class/antivir.class.php +++ b/htdocs/core/class/antivir.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2000-2005 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/canvas.class.php b/htdocs/core/class/canvas.class.php index cf830048cc0..4694a5e4652 100644 --- a/htdocs/core/class/canvas.class.php +++ b/htdocs/core/class/canvas.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * Copyright (C) 2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index 92458831d0b..d429d96ccac 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Marcos García * Copyright (C) 2016 Charlie Benke * Copyright (C) 2018 Frédéric France diff --git a/htdocs/core/class/commoninvoice.class.php b/htdocs/core/class/commoninvoice.class.php index b5b363db923..92ee8b06f2e 100644 --- a/htdocs/core/class/commoninvoice.class.php +++ b/htdocs/core/class/commoninvoice.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2012-2014 Raphaël Doursenaud * diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index aa318a48bcc..bb173daf303 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2012-2013 Christophe Battarel * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/core/class/commonorder.class.php b/htdocs/core/class/commonorder.class.php index 2ea53a345d8..199b29b87cd 100644 --- a/htdocs/core/class/commonorder.class.php +++ b/htdocs/core/class/commonorder.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 420b90926dd..b02036a015f 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2003 Xavier Dutoit * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006 Jean Heimburger * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/dolexception.class.php b/htdocs/core/class/dolexception.class.php index cb3c71cfd5c..b61bc6e388c 100644 --- a/htdocs/core/class/dolexception.class.php +++ b/htdocs/core/class/dolexception.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/events.class.php b/htdocs/core/class/events.class.php index 020998fa37a..c4b726b19d1 100644 --- a/htdocs/core/class/events.class.php +++ b/htdocs/core/class/events.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php index 9ebdbd22836..aaacee51b50 100644 --- a/htdocs/core/class/extrafields.class.php +++ b/htdocs/core/class/extrafields.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2009-2012 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Charles-Fr BENKE * Copyright (C) 2016 Raphaël Doursenaud diff --git a/htdocs/core/class/fileupload.class.php b/htdocs/core/class/fileupload.class.php index c3a40599877..027fdda0514 100644 --- a/htdocs/core/class/fileupload.class.php +++ b/htdocs/core/class/fileupload.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2012 Regis Houssin * Copyright (C) 2011-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/hookmanager.class.php b/htdocs/core/class/hookmanager.class.php index b078fdc0405..4b0ed682e49 100644 --- a/htdocs/core/class/hookmanager.class.php +++ b/htdocs/core/class/hookmanager.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2014 Regis Houssin + * Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index c30dcec6e01..de943a27b0e 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2006 Marc Barilley/Ocebo * Copyright (C) 2007 Franky Van Liedekerke diff --git a/htdocs/core/class/html.formactions.class.php b/htdocs/core/class/html.formactions.class.php index 25a3973cbd8..821bff099d2 100644 --- a/htdocs/core/class/html.formactions.class.php +++ b/htdocs/core/class/html.formactions.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010-2018 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/html.formadmin.class.php b/htdocs/core/class/html.formadmin.class.php index 510b34c8f47..32a421a7b61 100644 --- a/htdocs/core/class/html.formadmin.class.php +++ b/htdocs/core/class/html.formadmin.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2007 Patrick Raguin * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/html.formbarcode.class.php b/htdocs/core/class/html.formbarcode.class.php index eb08aab6de7..857f8ee5c42 100644 --- a/htdocs/core/class/html.formbarcode.class.php +++ b/htdocs/core/class/html.formbarcode.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2008-2012 Laurent Destailleur * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/class/html.formcompany.class.php b/htdocs/core/class/html.formcompany.class.php index 273a84cbc94..60017d82570 100644 --- a/htdocs/core/class/html.formcompany.class.php +++ b/htdocs/core/class/html.formcompany.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2017 Rui Strecht * diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 34f0b9ab750..713a84ad8e6 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2014 Regis Houssin + * Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2013 Charles-Fr BENKE * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 68da2dce777..f9f0365dbc7 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2015-2017 Marcos García * Copyright (C) 2015-2017 Nicolas ZABOURI diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php index d2800ce1906..8ca0b988fda 100644 --- a/htdocs/core/class/html.formother.class.php +++ b/htdocs/core/class/html.formother.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2006 Marc Barilley/Ocebo * Copyright (C) 2007 Franky Van Liedekerke diff --git a/htdocs/core/class/infobox.class.php b/htdocs/core/class/infobox.class.php index 1c5c733491c..dedf3ec384f 100644 --- a/htdocs/core/class/infobox.class.php +++ b/htdocs/core/class/infobox.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/interfaces.class.php b/htdocs/core/class/interfaces.class.php index 51eafd3ef7a..abcf2132efa 100644 --- a/htdocs/core/class/interfaces.class.php +++ b/htdocs/core/class/interfaces.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2006 Rodolphe Quiedeville - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/class/ldap.class.php b/htdocs/core/class/ldap.class.php index 38f7a1f2f53..8c42d691d39 100644 --- a/htdocs/core/class/ldap.class.php +++ b/htdocs/core/class/ldap.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/menubase.class.php b/htdocs/core/class/menubase.class.php index 1ca10d9dd9b..7f4ab7c6d4a 100644 --- a/htdocs/core/class/menubase.class.php +++ b/htdocs/core/class/menubase.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index dfb070aa5b9..1a58e14796a 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2008-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index 2e489f6ba65..756dbade364 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Destailleur Laurent - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/datepicker.php b/htdocs/core/datepicker.php index 546ca757234..6d0cd48ccfe 100644 --- a/htdocs/core/datepicker.php +++ b/htdocs/core/datepicker.php @@ -1,7 +1,7 @@ - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2014 Juanjo Menent * * This file is a modified version of datepicker.php from phpBSM to fix some diff --git a/htdocs/core/db/Database.interface.php b/htdocs/core/db/Database.interface.php index db233dda1b4..54b950fdee7 100644 --- a/htdocs/core/db/Database.interface.php +++ b/htdocs/core/db/Database.interface.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2007 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014-2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/db/mssql.class.php b/htdocs/core/db/mssql.class.php index a8483ec1401..f9e982961c9 100644 --- a/htdocs/core/db/mssql.class.php +++ b/htdocs/core/db/mssql.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2007 Simon Desee * Copyright (C) 2015 Cedric GROSS * diff --git a/htdocs/core/db/mysqli.class.php b/htdocs/core/db/mysqli.class.php index 868712a31d0..185ebe1a56f 100644 --- a/htdocs/core/db/mysqli.class.php +++ b/htdocs/core/db/mysqli.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2005 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/db/pgsql.class.php b/htdocs/core/db/pgsql.class.php index 78a3b91279e..85abdf2b004 100644 --- a/htdocs/core/db/pgsql.class.php +++ b/htdocs/core/db/pgsql.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Yann Droneaud * Copyright (C) 2012 Florian Henry * Copyright (C) 2015 Marcos García diff --git a/htdocs/core/db/sqlite3.class.php b/htdocs/core/db/sqlite3.class.php index 97e799a2b69..bbd5853f95f 100644 --- a/htdocs/core/db/sqlite3.class.php +++ b/htdocs/core/db/sqlite3.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2005 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/doxygen.php b/htdocs/core/doxygen.php index 55ea34a5778..542a0effeb2 100644 --- a/htdocs/core/doxygen.php +++ b/htdocs/core/doxygen.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/js/blockUI.js b/htdocs/core/js/blockUI.js index 20c2bd348d4..b485565ee07 100644 --- a/htdocs/core/js/blockUI.js +++ b/htdocs/core/js/blockUI.js @@ -1,4 +1,4 @@ -// Copyright (C) 2012 Regis Houssin +// Copyright (C) 2012 Regis Houssin // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/js/dst.js b/htdocs/core/js/dst.js index 486e7027b43..739beebeac5 100644 --- a/htdocs/core/js/dst.js +++ b/htdocs/core/js/dst.js @@ -1,5 +1,5 @@ // Copyright (C) 2011-2014 Laurent Destailleur -// Copyright (C) 2011-2012 Regis Houssin +// Copyright (C) 2011-2012 Regis Houssin // Copyright (C) 2015 Marcos García // // This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/js/editinplace.js b/htdocs/core/js/editinplace.js index d1d4b6254ee..8501474ec0c 100644 --- a/htdocs/core/js/editinplace.js +++ b/htdocs/core/js/editinplace.js @@ -1,4 +1,4 @@ -// Copyright (C) 2011-2014 Regis Houssin +// Copyright (C) 2011-2014 Regis Houssin // Copyright (C) 2011-2017 Laurent Destailleur // // This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/js/lib_head.js.php b/htdocs/core/js/lib_head.js.php index 1aa9c458e39..ea19bc258be 100644 --- a/htdocs/core/js/lib_head.js.php +++ b/htdocs/core/js/lib_head.js.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/js/timepicker.js.php b/htdocs/core/js/timepicker.js.php index f93bb3410f2..8e67f517b44 100644 --- a/htdocs/core/js/timepicker.js.php +++ b/htdocs/core/js/timepicker.js.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index f92fd56a87b..6932cfc4c38 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * Copyright (C) 2012 J. Fernando Lagrange * Copyright (C) 2015 Raphaël Doursenaud * diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php index 86d3a68fed4..23d5fcf30dc 100644 --- a/htdocs/core/lib/agenda.lib.php +++ b/htdocs/core/lib/agenda.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/lib/ajax.lib.php b/htdocs/core/lib/ajax.lib.php index bb08018b7f6..afff8198e09 100644 --- a/htdocs/core/lib/ajax.lib.php +++ b/htdocs/core/lib/ajax.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2007-2015 Regis Houssin + * Copyright (C) 2007-2015 Regis Houssin * Copyright (C) 2012 Christophe Battarel * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/lib/bank.lib.php b/htdocs/core/lib/bank.lib.php index ded980e3246..28845122f0d 100644 --- a/htdocs/core/lib/bank.lib.php +++ b/htdocs/core/lib/bank.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2016 Juanjo Menent * diff --git a/htdocs/core/lib/categories.lib.php b/htdocs/core/lib/categories.lib.php index e8a7dfcb0ff..4d85c412bab 100644 --- a/htdocs/core/lib/categories.lib.php +++ b/htdocs/core/lib/categories.lib.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index fe9d15c8322..6193d764e43 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -2,7 +2,7 @@ /* Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2006 Rodolphe Quiedeville * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2013-2014 Juanjo Menent * Copyright (C) 2013 Christophe Battarel diff --git a/htdocs/core/lib/contact.lib.php b/htdocs/core/lib/contact.lib.php index f1d721b62e6..3c61410230f 100644 --- a/htdocs/core/lib/contact.lib.php +++ b/htdocs/core/lib/contact.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2017 Regis Houssin + * Copyright (C) 2010-2017 Regis Houssin * Copyright (C) 2015 Frederic France * Copyright (C) 2015 Raphaël Doursenaud * diff --git a/htdocs/core/lib/contract.lib.php b/htdocs/core/lib/contract.lib.php index 9d986e983bc..c7434e80878 100644 --- a/htdocs/core/lib/contract.lib.php +++ b/htdocs/core/lib/contract.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/date.lib.php b/htdocs/core/lib/date.lib.php index 84048ac9c66..7ad40349589 100644 --- a/htdocs/core/lib/date.lib.php +++ b/htdocs/core/lib/date.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011-2015 Juanjo Menent * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/core/lib/doc.lib.php b/htdocs/core/lib/doc.lib.php index ae8410bd188..b5e607fbbc5 100644 --- a/htdocs/core/lib/doc.lib.php +++ b/htdocs/core/lib/doc.lib.php @@ -2,7 +2,7 @@ /* Copyright (C) 2006-2011 Laurent Destailleur * Copyright (C) 2006 Rodolphe Quiedeville * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * diff --git a/htdocs/core/lib/doleditor.lib.php b/htdocs/core/lib/doleditor.lib.php index 1981ae63d09..459bb3e3f2b 100644 --- a/htdocs/core/lib/doleditor.lib.php +++ b/htdocs/core/lib/doleditor.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/lib/expedition.lib.php b/htdocs/core/lib/expedition.lib.php index 0fa5f0ae643..275970c41c1 100644 --- a/htdocs/core/lib/expedition.lib.php +++ b/htdocs/core/lib/expedition.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2015 Claudio Aschieri * diff --git a/htdocs/core/lib/expensereport.lib.php b/htdocs/core/lib/expensereport.lib.php index 779e6c9e174..da1a7048dee 100644 --- a/htdocs/core/lib/expensereport.lib.php +++ b/htdocs/core/lib/expensereport.lib.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/fichinter.lib.php b/htdocs/core/lib/fichinter.lib.php index 20e257eee2f..0ef39203f57 100644 --- a/htdocs/core/lib/fichinter.lib.php +++ b/htdocs/core/lib/fichinter.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2016 Gilles Poirier * Copyright (C) 2018 charlene Benke diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 1a114c62a01..1bca14827e6 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012-2015 Regis Houssin + * Copyright (C) 2012-2015 Regis Houssin * Copyright (C) 2012-2016 Juanjo Menent * Copyright (C) 2015 Marcos García * Copyright (C) 2016 Raphaël Doursenaud diff --git a/htdocs/core/lib/fourn.lib.php b/htdocs/core/lib/fourn.lib.php index ac956abf524..c251c5d03b9 100644 --- a/htdocs/core/lib/fourn.lib.php +++ b/htdocs/core/lib/fourn.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Marc Barilley * Copyright (C) 2011-2013 Philippe Grand * diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index d15d07e4c6e..8a876a95feb 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -5,7 +5,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Christophe Combelles - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2010-2018 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index 8a22337cea8..ee88cd95404 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2014-2016 Marcos García * Copyright (C) 2015 Ferran Marcet diff --git a/htdocs/core/lib/images.lib.php b/htdocs/core/lib/images.lib.php index f0a666b03e9..a37bd2818a1 100644 --- a/htdocs/core/lib/images.lib.php +++ b/htdocs/core/lib/images.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/import.lib.php b/htdocs/core/lib/import.lib.php index ea700c38845..c3b8beac249 100644 --- a/htdocs/core/lib/import.lib.php +++ b/htdocs/core/lib/import.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/lib/invoice.lib.php b/htdocs/core/lib/invoice.lib.php index 94eb4527b74..aa728e5d653 100644 --- a/htdocs/core/lib/invoice.lib.php +++ b/htdocs/core/lib/invoice.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Juanjo Menent * Copyright (C) 2017 Charlie Benke diff --git a/htdocs/core/lib/json.lib.php b/htdocs/core/lib/json.lib.php index 61d6a923c1f..f58d1b44dbf 100644 --- a/htdocs/core/lib/json.lib.php +++ b/htdocs/core/lib/json.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011-2012 Regis Houssin + * Copyright (C) 2011-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/ldap.lib.php b/htdocs/core/lib/ldap.lib.php index 3db36723b32..c64ea1fa090 100644 --- a/htdocs/core/lib/ldap.lib.php +++ b/htdocs/core/lib/ldap.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/member.lib.php b/htdocs/core/lib/member.lib.php index 3148d484ab5..a5016579cd4 100644 --- a/htdocs/core/lib/member.lib.php +++ b/htdocs/core/lib/member.lib.php @@ -2,7 +2,7 @@ /* Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2015-2016 Alexandre Spangaro * Copyright (C) 2015 Raphaël Doursenaud - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/order.lib.php b/htdocs/core/lib/order.lib.php index cdbd46b1aa7..93a7aaa71e0 100644 --- a/htdocs/core/lib/order.lib.php +++ b/htdocs/core/lib/order.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 5b8a5d6d4c4..a9e8807c66a 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -2,7 +2,7 @@ /* Copyright (C) 2006-2017 Laurent Destailleur * Copyright (C) 2006 Rodolphe Quiedeville * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010-2017 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2012 Cédric Salvador diff --git a/htdocs/core/lib/prelevement.lib.php b/htdocs/core/lib/prelevement.lib.php index 47bc2cb1974..e6393326c71 100644 --- a/htdocs/core/lib/prelevement.lib.php +++ b/htdocs/core/lib/prelevement.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2010 Laurent Destailleur - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/product.lib.php b/htdocs/core/lib/product.lib.php index 1c704392c6b..68e78a29d76 100644 --- a/htdocs/core/lib/product.lib.php +++ b/htdocs/core/lib/product.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2007 Rodolphe Quiedeville - * Copyright (C) 2009-2010 Regis Houssin + * Copyright (C) 2009-2010 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * Copyright (C) 2015-2016 Marcos García * diff --git a/htdocs/core/lib/project.lib.php b/htdocs/core/lib/project.lib.php index 1e5046d4d58..84d32725682 100644 --- a/htdocs/core/lib/project.lib.php +++ b/htdocs/core/lib/project.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/lib/propal.lib.php b/htdocs/core/lib/propal.lib.php index aec26236113..3fc37196c71 100644 --- a/htdocs/core/lib/propal.lib.php +++ b/htdocs/core/lib/propal.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/report.lib.php b/htdocs/core/lib/report.lib.php index 475fbaa48d5..10fd7bc8919 100644 --- a/htdocs/core/lib/report.lib.php +++ b/htdocs/core/lib/report.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/security.lib.php b/htdocs/core/lib/security.lib.php index 235421a598e..08933f13968 100644 --- a/htdocs/core/lib/security.lib.php +++ b/htdocs/core/lib/security.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2017 Regis Houssin + * Copyright (C) 2008-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/security2.lib.php b/htdocs/core/lib/security2.lib.php index c9f4ece6445..88dae462058 100644 --- a/htdocs/core/lib/security2.lib.php +++ b/htdocs/core/lib/security2.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2017 Regis Houssin + * Copyright (C) 2008-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/sendings.lib.php b/htdocs/core/lib/sendings.lib.php index 38660cc272a..1cafb6dc3d4 100644 --- a/htdocs/core/lib/sendings.lib.php +++ b/htdocs/core/lib/sendings.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/supplier_proposal.lib.php b/htdocs/core/lib/supplier_proposal.lib.php index a0f52d6de15..53dcf1c443f 100644 --- a/htdocs/core/lib/supplier_proposal.lib.php +++ b/htdocs/core/lib/supplier_proposal.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/tax.lib.php b/htdocs/core/lib/tax.lib.php index 1cce7527018..a61026fa67d 100644 --- a/htdocs/core/lib/tax.lib.php +++ b/htdocs/core/lib/tax.lib.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2007 Yannick Warnier - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * Copyright (C) 2012-2017 Juanjo Menent * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2012-2014 Raphaël Doursenaud diff --git a/htdocs/core/lib/trip.lib.php b/htdocs/core/lib/trip.lib.php index 33f977bcf34..76dde5be734 100644 --- a/htdocs/core/lib/trip.lib.php +++ b/htdocs/core/lib/trip.lib.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index ae469b89552..32b2be816df 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2017 Regis Houssin + * Copyright (C) 2010-2017 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/core/login/functions_dolibarr.php b/htdocs/core/login/functions_dolibarr.php index 25cc45c2b6c..70cb1e4fa86 100644 --- a/htdocs/core/login/functions_dolibarr.php +++ b/htdocs/core/login/functions_dolibarr.php @@ -1,6 +1,6 @@ - * Copyright (C) 2007-2015 Regis Houssin + * Copyright (C) 2007-2015 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/login/functions_empty.php b/htdocs/core/login/functions_empty.php index b2ce4a3c533..a8b90de0e46 100644 --- a/htdocs/core/login/functions_empty.php +++ b/htdocs/core/login/functions_empty.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/login/functions_openid.php b/htdocs/core/login/functions_openid.php index 79cf1a09cb9..bc8d7f45122 100644 --- a/htdocs/core/login/functions_openid.php +++ b/htdocs/core/login/functions_openid.php @@ -1,6 +1,6 @@ - * Copyright (C) 2007-2009 Regis Houssin + * Copyright (C) 2007-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/menus/standard/auguria.lib.php b/htdocs/core/menus/standard/auguria.lib.php index 9878d8a2ca8..b2bf32bf8c2 100644 --- a/htdocs/core/menus/standard/auguria.lib.php +++ b/htdocs/core/menus/standard/auguria.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/menus/standard/auguria_menu.php b/htdocs/core/menus/standard/auguria_menu.php index 33c02ce5f1c..f4cb98d9c4b 100644 --- a/htdocs/core/menus/standard/auguria_menu.php +++ b/htdocs/core/menus/standard/auguria_menu.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2008-2013 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index bb13a0c2265..68991643ac5 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * Copyright (C) 2012-2015 Juanjo Menent * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Marcos García diff --git a/htdocs/core/menus/standard/eldy_menu.php b/htdocs/core/menus/standard/eldy_menu.php index 543dbd111bb..049956e82e2 100644 --- a/htdocs/core/menus/standard/eldy_menu.php +++ b/htdocs/core/menus/standard/eldy_menu.php @@ -1,6 +1,6 @@ - * Copyright (C) 2007-2009 Regis Houssin + * Copyright (C) 2007-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index dfaaa6b26b4..4d11a1bfd5b 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Raphaël Doursenaud * Copyright (C) 2018 Josep Lluís Amador * diff --git a/htdocs/core/modules/action/modules_action.php b/htdocs/core/modules/action/modules_action.php index cbb578578e2..323675f88f6 100644 --- a/htdocs/core/modules/action/modules_action.php +++ b/htdocs/core/modules/action/modules_action.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2016 Charlie Benke * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/action/rapport.pdf.php b/htdocs/core/modules/action/rapport.pdf.php index 66c4f0a3e45..44092df6ec9 100644 --- a/htdocs/core/modules/action/rapport.pdf.php +++ b/htdocs/core/modules/action/rapport.pdf.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/bank/modules_bank.php b/htdocs/core/modules/bank/modules_bank.php index faae304222d..fe43f9cee15 100644 --- a/htdocs/core/modules/bank/modules_bank.php +++ b/htdocs/core/modules/bank/modules_bank.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/barcode/doc/phpbarcode.modules.php b/htdocs/core/modules/barcode/doc/phpbarcode.modules.php index c9068dc4d26..6d9e492d666 100644 --- a/htdocs/core/modules/barcode/doc/phpbarcode.modules.php +++ b/htdocs/core/modules/barcode/doc/phpbarcode.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php b/htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php index c37f87f17d5..ed6a7635164 100644 --- a/htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php +++ b/htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * Copyright (C) 2015 Francis Appels * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/barcode/mod_barcode_product_standard.php b/htdocs/core/modules/barcode/mod_barcode_product_standard.php index 886ff87520a..97121eebcfd 100644 --- a/htdocs/core/modules/barcode/mod_barcode_product_standard.php +++ b/htdocs/core/modules/barcode/mod_barcode_product_standard.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2014 Laurent Destailleur - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/cheque/modules_chequereceipts.php b/htdocs/core/modules/cheque/modules_chequereceipts.php index f2841a7ec8e..5a7920ce4f1 100644 --- a/htdocs/core/modules/cheque/modules_chequereceipts.php +++ b/htdocs/core/modules/cheque/modules_chequereceipts.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2016 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 6047caa55b3..d35c6c7f177 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 0bf4b91365e..07173f7db13 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php index 8d99fc00378..ebbe72f94c9 100644 --- a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/commande/mod_commande_marbre.php b/htdocs/core/modules/commande/mod_commande_marbre.php index 8345d694cff..215d2380819 100644 --- a/htdocs/core/modules/commande/mod_commande_marbre.php +++ b/htdocs/core/modules/commande/mod_commande_marbre.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/commande/mod_commande_saphir.php b/htdocs/core/modules/commande/mod_commande_saphir.php index 588d6fffc6d..1b08c9c1105 100644 --- a/htdocs/core/modules/commande/mod_commande_saphir.php +++ b/htdocs/core/modules/commande/mod_commande_saphir.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/commande/modules_commande.php b/htdocs/core/modules/commande/modules_commande.php index 7a1ffea8792..d644de33a5d 100644 --- a/htdocs/core/modules/commande/modules_commande.php +++ b/htdocs/core/modules/commande/modules_commande.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2014 Marcos García diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/htdocs/core/modules/contract/doc/pdf_strato.modules.php index fe0a79c6c8e..600d502f562 100644 --- a/htdocs/core/modules/contract/doc/pdf_strato.modules.php +++ b/htdocs/core/modules/contract/doc/pdf_strato.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011 Fabrice CHERRIER * Copyright (C) 2013-2018 Philippe Grand diff --git a/htdocs/core/modules/contract/modules_contract.php b/htdocs/core/modules/contract/modules_contract.php index cd1ce4137cc..59290de7d82 100644 --- a/htdocs/core/modules/contract/modules_contract.php +++ b/htdocs/core/modules/contract/modules_contract.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2007 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Philippe Grand diff --git a/htdocs/core/modules/dons/html_cerfafr.modules.php b/htdocs/core/modules/dons/html_cerfafr.modules.php index 8f6c10119c4..cac7329cf5b 100644 --- a/htdocs/core/modules/dons/html_cerfafr.modules.php +++ b/htdocs/core/modules/dons/html_cerfafr.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2006 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2014-2015 Alexandre Spangaro * Copyright (C) 2015 Benoit Bruchard diff --git a/htdocs/core/modules/dons/modules_don.php b/htdocs/core/modules/dons/modules_don.php index d8fbe92c2c7..aee52063227 100644 --- a/htdocs/core/modules/dons/modules_don.php +++ b/htdocs/core/modules/dons/modules_don.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2008 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2005 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php index 3d786bf111d..73de53f7904 100644 --- a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2015 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Marcos García * diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index daa8d67e5d1..5f46517e9a8 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/modules/expedition/modules_expedition.php b/htdocs/core/modules/expedition/modules_expedition.php index 51f41978732..a22ae0d0f99 100644 --- a/htdocs/core/modules/expedition/modules_expedition.php +++ b/htdocs/core/modules/expedition/modules_expedition.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2011-2013 Philippe Grand diff --git a/htdocs/core/modules/export/modules_export.php b/htdocs/core/modules/export/modules_export.php index 6436b501705..15536747a28 100644 --- a/htdocs/core/modules/export/modules_export.php +++ b/htdocs/core/modules/export/modules_export.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php index a823bae2d4b..b3366826d5c 100644 --- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php +++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php @@ -1,6 +1,6 @@ -* Copyright (C) 2012 Regis Houssin +* Copyright (C) 2012 Regis Houssin * Copyright (C) 2014 Marcos García * Copyright (C) 2016 Charlie Benke * diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index 797b48865c6..74fac8c5544 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index 439f81ab02e..7e28f11bb8a 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/facture/mod_facture_mars.php b/htdocs/core/modules/facture/mod_facture_mars.php index a1ed1e32d24..2bdad538ec9 100644 --- a/htdocs/core/modules/facture/mod_facture_mars.php +++ b/htdocs/core/modules/facture/mod_facture_mars.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/facture/mod_facture_mercure.php b/htdocs/core/modules/facture/mod_facture_mercure.php index dabd3fbd576..95e60c78398 100644 --- a/htdocs/core/modules/facture/mod_facture_mercure.php +++ b/htdocs/core/modules/facture/mod_facture_mercure.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2013 Juanjo Menent * diff --git a/htdocs/core/modules/facture/mod_facture_terre.php b/htdocs/core/modules/facture/mod_facture_terre.php index a55418a8cb5..4442451984f 100644 --- a/htdocs/core/modules/facture/mod_facture_terre.php +++ b/htdocs/core/modules/facture/mod_facture_terre.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/facture/modules_facture.php b/htdocs/core/modules/facture/modules_facture.php index 12d41903edb..fd9168150d6 100644 --- a/htdocs/core/modules/facture/modules_facture.php +++ b/htdocs/core/modules/facture/modules_facture.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php index b67da288ae7..b06922acdb9 100644 --- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php +++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2011 Fabrice CHERRIER * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/core/modules/fichinter/mod_arctic.php b/htdocs/core/modules/fichinter/mod_arctic.php index 82013e94413..86f25dc4078 100644 --- a/htdocs/core/modules/fichinter/mod_arctic.php +++ b/htdocs/core/modules/fichinter/mod_arctic.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2013 Juanjo Menent * diff --git a/htdocs/core/modules/fichinter/mod_pacific.php b/htdocs/core/modules/fichinter/mod_pacific.php index dcf6baf5ef6..24f55192ff0 100644 --- a/htdocs/core/modules/fichinter/mod_pacific.php +++ b/htdocs/core/modules/fichinter/mod_pacific.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/fichinter/modules_fichinter.php b/htdocs/core/modules/fichinter/modules_fichinter.php index 2d3c4bebfe6..a0ab40ce7a0 100644 --- a/htdocs/core/modules/fichinter/modules_fichinter.php +++ b/htdocs/core/modules/fichinter/modules_fichinter.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Philippe Grand * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/holiday/modules_holiday.php b/htdocs/core/modules/holiday/modules_holiday.php index 07234c447e6..7f1c48fec10 100644 --- a/htdocs/core/modules/holiday/modules_holiday.php +++ b/htdocs/core/modules/holiday/modules_holiday.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2007 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Philippe Grand diff --git a/htdocs/core/modules/import/import_csv.modules.php b/htdocs/core/modules/import/import_csv.modules.php index 6b2e480db86..6db495e9f04 100644 --- a/htdocs/core/modules/import/import_csv.modules.php +++ b/htdocs/core/modules/import/import_csv.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2012-2016 Juanjo Menent * diff --git a/htdocs/core/modules/import/import_xlsx.modules.php b/htdocs/core/modules/import/import_xlsx.modules.php index f8b6aa99a82..d96dc18104f 100644 --- a/htdocs/core/modules/import/import_xlsx.modules.php +++ b/htdocs/core/modules/import/import_xlsx.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2012-2016 Juanjo Menent * diff --git a/htdocs/core/modules/import/modules_import.php b/htdocs/core/modules/import/modules_import.php index 214c04ad857..4c606b8bacf 100644 --- a/htdocs/core/modules/import/modules_import.php +++ b/htdocs/core/modules/import/modules_import.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php index 4793ebe7b27..b55e5907849 100644 --- a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2008 Chiptronik * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/core/modules/livraison/mod_livraison_jade.php b/htdocs/core/modules/livraison/mod_livraison_jade.php index 1fd598d02a7..8df38cbc3a2 100644 --- a/htdocs/core/modules/livraison/mod_livraison_jade.php +++ b/htdocs/core/modules/livraison/mod_livraison_jade.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/livraison/mod_livraison_saphir.php b/htdocs/core/modules/livraison/mod_livraison_saphir.php index cbe105ef75c..76579f5e757 100644 --- a/htdocs/core/modules/livraison/mod_livraison_saphir.php +++ b/htdocs/core/modules/livraison/mod_livraison_saphir.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/livraison/modules_livraison.php b/htdocs/core/modules/livraison/modules_livraison.php index f9f7a5380f3..6dad7003ec5 100644 --- a/htdocs/core/modules/livraison/modules_livraison.php +++ b/htdocs/core/modules/livraison/modules_livraison.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2006-2011 Regis Houssin + * Copyright (C) 2006-2011 Regis Houssin * Copyright (C) 2011-2012 Philippe Grand * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/modules/mailings/advthirdparties.modules.php b/htdocs/core/modules/mailings/advthirdparties.modules.php index 4d149e0e5ef..bfd7f4b0d45 100644 --- a/htdocs/core/modules/mailings/advthirdparties.modules.php +++ b/htdocs/core/modules/mailings/advthirdparties.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This file is an example to follow to add your own email selector inside * the Dolibarr email tool. diff --git a/htdocs/core/modules/mailings/contacts1.modules.php b/htdocs/core/modules/mailings/contacts1.modules.php index 8efefdbd079..7a4d53172f4 100644 --- a/htdocs/core/modules/mailings/contacts1.modules.php +++ b/htdocs/core/modules/mailings/contacts1.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/mailings/fraise.modules.php b/htdocs/core/modules/mailings/fraise.modules.php index 9cf0f56f7e2..43798799acd 100644 --- a/htdocs/core/modules/mailings/fraise.modules.php +++ b/htdocs/core/modules/mailings/fraise.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/mailings/pomme.modules.php b/htdocs/core/modules/mailings/pomme.modules.php index 11ff4812d67..b2477c1fd55 100644 --- a/htdocs/core/modules/mailings/pomme.modules.php +++ b/htdocs/core/modules/mailings/pomme.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/htdocs/core/modules/mailings/thirdparties.modules.php index ad19264620a..49205cf6f80 100644 --- a/htdocs/core/modules/mailings/thirdparties.modules.php +++ b/htdocs/core/modules/mailings/thirdparties.modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This file is an example to follow to add your own email selector inside * the Dolibarr email tool. diff --git a/htdocs/core/modules/member/modules_cards.php b/htdocs/core/modules/member/modules_cards.php index c931abce4ed..4f498d92158 100644 --- a/htdocs/core/modules/member/modules_cards.php +++ b/htdocs/core/modules/member/modules_cards.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modAgenda.class.php b/htdocs/core/modules/modAgenda.class.php index 1f6fa467469..d69c20ab643 100644 --- a/htdocs/core/modules/modAgenda.class.php +++ b/htdocs/core/modules/modAgenda.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2009-2011 Regis Houssin + * Copyright (C) 2009-2011 Regis Houssin * Copyright (C) 2013 Cedric Gross * Copyright (C) 2015 Bahfir Abbes * Copyright (C) 2017 Juanjo Menent diff --git a/htdocs/core/modules/modBanque.class.php b/htdocs/core/modules/modBanque.class.php index d6cc2431948..8cfcaaf83da 100644 --- a/htdocs/core/modules/modBanque.class.php +++ b/htdocs/core/modules/modBanque.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2008-2011 Regis Houssin + * Copyright (C) 2008-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modBarcode.class.php b/htdocs/core/modules/modBarcode.class.php index c25d444eb8a..9e66bc3f995 100644 --- a/htdocs/core/modules/modBarcode.class.php +++ b/htdocs/core/modules/modBarcode.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modCommande.class.php b/htdocs/core/modules/modCommande.class.php index f8f96a119f0..069d36c333c 100644 --- a/htdocs/core/modules/modCommande.class.php +++ b/htdocs/core/modules/modCommande.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modContrat.class.php b/htdocs/core/modules/modContrat.class.php index 36764d43ba4..2ed01afee83 100644 --- a/htdocs/core/modules/modContrat.class.php +++ b/htdocs/core/modules/modContrat.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2011 Juanjo Menent * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modDeplacement.class.php b/htdocs/core/modules/modDeplacement.class.php index 9fd5b618c0c..285d795ea11 100644 --- a/htdocs/core/modules/modDeplacement.class.php +++ b/htdocs/core/modules/modDeplacement.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modDocumentGeneration.class.php b/htdocs/core/modules/modDocumentGeneration.class.php index f9e3378f5ea..a2ea9dea7c8 100644 --- a/htdocs/core/modules/modDocumentGeneration.class.php +++ b/htdocs/core/modules/modDocumentGeneration.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modDon.class.php b/htdocs/core/modules/modDon.class.php index 76bdb2ccb63..325f6533f51 100644 --- a/htdocs/core/modules/modDon.class.php +++ b/htdocs/core/modules/modDon.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modExpedition.class.php b/htdocs/core/modules/modExpedition.class.php index 8634adb0348..06cb8272ce0 100644 --- a/htdocs/core/modules/modExpedition.class.php +++ b/htdocs/core/modules/modExpedition.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013 Philippe Grand * diff --git a/htdocs/core/modules/modExport.class.php b/htdocs/core/modules/modExport.class.php index 9c6f7af335f..4847ae4da2e 100644 --- a/htdocs/core/modules/modExport.class.php +++ b/htdocs/core/modules/modExport.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modExternalSite.class.php b/htdocs/core/modules/modExternalSite.class.php index 374e9b2f02a..088e93955ef 100644 --- a/htdocs/core/modules/modExternalSite.class.php +++ b/htdocs/core/modules/modExternalSite.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modFacture.class.php b/htdocs/core/modules/modFacture.class.php index 54aa96b5aa3..f8982ae2893 100644 --- a/htdocs/core/modules/modFacture.class.php +++ b/htdocs/core/modules/modFacture.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modFckeditor.class.php b/htdocs/core/modules/modFckeditor.class.php index fe2fac72b7a..6f297ce3dc6 100644 --- a/htdocs/core/modules/modFckeditor.class.php +++ b/htdocs/core/modules/modFckeditor.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modFicheinter.class.php b/htdocs/core/modules/modFicheinter.class.php index 5e4dda76868..b1b18da2508 100644 --- a/htdocs/core/modules/modFicheinter.class.php +++ b/htdocs/core/modules/modFicheinter.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modFournisseur.class.php b/htdocs/core/modules/modFournisseur.class.php index 7b50cb7ae3e..16712d21ec2 100644 --- a/htdocs/core/modules/modFournisseur.class.php +++ b/htdocs/core/modules/modFournisseur.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2013-2015 Philippe Grand * diff --git a/htdocs/core/modules/modHoliday.class.php b/htdocs/core/modules/modHoliday.class.php index 91fb69dd4de..cfe722454e5 100644 --- a/htdocs/core/modules/modHoliday.class.php +++ b/htdocs/core/modules/modHoliday.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2011 Dimitri Mouillard * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2018 Charlene Benke diff --git a/htdocs/core/modules/modImport.class.php b/htdocs/core/modules/modImport.class.php index 72677787d94..528b4531074 100644 --- a/htdocs/core/modules/modImport.class.php +++ b/htdocs/core/modules/modImport.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modIncoterm.class.php b/htdocs/core/modules/modIncoterm.class.php index 95949eeb05a..be83d83311b 100644 --- a/htdocs/core/modules/modIncoterm.class.php +++ b/htdocs/core/modules/modIncoterm.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modLabel.class.php b/htdocs/core/modules/modLabel.class.php index 8c8a670a54d..6dd268fc360 100644 --- a/htdocs/core/modules/modLabel.class.php +++ b/htdocs/core/modules/modLabel.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2007-2009 Regis Houssin * Copyright (C) 2008 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modLdap.class.php b/htdocs/core/modules/modLdap.class.php index 90577ae3ccf..7762ea832a4 100644 --- a/htdocs/core/modules/modLdap.class.php +++ b/htdocs/core/modules/modLdap.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modMailing.class.php b/htdocs/core/modules/modMailing.class.php index 749369ee8e9..3605fa58d09 100644 --- a/htdocs/core/modules/modMailing.class.php +++ b/htdocs/core/modules/modMailing.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modMultiCurrency.class.php b/htdocs/core/modules/modMultiCurrency.class.php index 9e838a8605b..f371c2a2919 100644 --- a/htdocs/core/modules/modMultiCurrency.class.php +++ b/htdocs/core/modules/modMultiCurrency.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * Copyright (C) 2016 Pierre-Henry Favre * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modPaypal.class.php b/htdocs/core/modules/modPaypal.class.php index a11fa41b7a6..cc23448b3eb 100644 --- a/htdocs/core/modules/modPaypal.class.php +++ b/htdocs/core/modules/modPaypal.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modPrelevement.class.php b/htdocs/core/modules/modPrelevement.class.php index e3f8c76498e..2753c7e76ab 100644 --- a/htdocs/core/modules/modPrelevement.class.php +++ b/htdocs/core/modules/modPrelevement.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modProduct.class.php b/htdocs/core/modules/modProduct.class.php index 58fc5b78c9f..03a7676c49c 100644 --- a/htdocs/core/modules/modProduct.class.php +++ b/htdocs/core/modules/modProduct.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012-2013 Juanjo Menent * Copyright (C) 2014 Christophe Battarel * Copyright (C) 2014 Cedric Gross diff --git a/htdocs/core/modules/modProductBatch.class.php b/htdocs/core/modules/modProductBatch.class.php index 99c2a6fa73c..55a800bd366 100644 --- a/htdocs/core/modules/modProductBatch.class.php +++ b/htdocs/core/modules/modProductBatch.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013-2014 Cedric GROSS * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modProjet.class.php b/htdocs/core/modules/modProjet.class.php index 47b02916bb0..0fe29c2d209 100644 --- a/htdocs/core/modules/modProjet.class.php +++ b/htdocs/core/modules/modProjet.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2014 Charles-Fr BENKE * diff --git a/htdocs/core/modules/modPropale.class.php b/htdocs/core/modules/modPropale.class.php index 644b8f2e2f0..c7bf0f6979f 100644 --- a/htdocs/core/modules/modPropale.class.php +++ b/htdocs/core/modules/modPropale.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modSalaries.class.php b/htdocs/core/modules/modSalaries.class.php index 727b410cacb..056b2c19785 100644 --- a/htdocs/core/modules/modSalaries.class.php +++ b/htdocs/core/modules/modSalaries.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Alexandre Spangaro * diff --git a/htdocs/core/modules/modService.class.php b/htdocs/core/modules/modService.class.php index 9ddf3f8b2e5..89bb423ebd7 100644 --- a/htdocs/core/modules/modService.class.php +++ b/htdocs/core/modules/modService.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 4ee331dc017..9600732ba2f 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2012-2014 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modStock.class.php b/htdocs/core/modules/modStock.class.php index 01b4e9d4474..4cdc5aabf83 100644 --- a/htdocs/core/modules/modStock.class.php +++ b/htdocs/core/modules/modStock.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modSupplierProposal.class.php b/htdocs/core/modules/modSupplierProposal.class.php index ca8f5960f03..570680b163b 100644 --- a/htdocs/core/modules/modSupplierProposal.class.php +++ b/htdocs/core/modules/modSupplierProposal.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modTax.class.php b/htdocs/core/modules/modTax.class.php index 7dacae51b67..ee04d79ebcb 100644 --- a/htdocs/core/modules/modTax.class.php +++ b/htdocs/core/modules/modTax.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modUser.class.php b/htdocs/core/modules/modUser.class.php index 12961438b24..a8cd523959e 100644 --- a/htdocs/core/modules/modUser.class.php +++ b/htdocs/core/modules/modUser.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/modVariants.class.php b/htdocs/core/modules/modVariants.class.php index faac67da78c..1bf6c599102 100644 --- a/htdocs/core/modules/modVariants.class.php +++ b/htdocs/core/modules/modVariants.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2016 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/modWorkflow.class.php b/htdocs/core/modules/modWorkflow.class.php index 882e8aebf53..771d718af70 100644 --- a/htdocs/core/modules/modWorkflow.class.php +++ b/htdocs/core/modules/modWorkflow.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/printsheet/modules_labels.php b/htdocs/core/modules/printsheet/modules_labels.php index ddf061d95e9..7a34d5e7e64 100644 --- a/htdocs/core/modules/printsheet/modules_labels.php +++ b/htdocs/core/modules/printsheet/modules_labels.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/product/mod_codeproduct_elephant.php b/htdocs/core/modules/product/mod_codeproduct_elephant.php index f051fab7f8e..1b455743cb2 100644 --- a/htdocs/core/modules/product/mod_codeproduct_elephant.php +++ b/htdocs/core/modules/product/mod_codeproduct_elephant.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2009 Laurent Destailleur - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/product/modules_product.class.php b/htdocs/core/modules/product/modules_product.class.php index b632f387d05..10470d4d9f0 100644 --- a/htdocs/core/modules/product/modules_product.class.php +++ b/htdocs/core/modules/product/modules_product.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/product_batch/modules_product_batch.class.php b/htdocs/core/modules/product_batch/modules_product_batch.class.php index 31e0ec676b2..0a2076e4ed0 100644 --- a/htdocs/core/modules/product_batch/modules_product_batch.class.php +++ b/htdocs/core/modules/product_batch/modules_product_batch.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/project/doc/pdf_baleine.modules.php b/htdocs/core/modules/project/doc/pdf_baleine.modules.php index d7d6c154881..11305e8a246 100644 --- a/htdocs/core/modules/project/doc/pdf_baleine.modules.php +++ b/htdocs/core/modules/project/doc/pdf_baleine.modules.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2018 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/htdocs/core/modules/project/doc/pdf_beluga.modules.php index fe33d093083..40ae5097d2f 100644 --- a/htdocs/core/modules/project/doc/pdf_beluga.modules.php +++ b/htdocs/core/modules/project/doc/pdf_beluga.modules.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2015 Charlie Benke * Copyright (C) 2018 Laurent Destailleur * diff --git a/htdocs/core/modules/project/doc/pdf_timespent.modules.php b/htdocs/core/modules/project/doc/pdf_timespent.modules.php index 718e618b16d..a299a9758c7 100644 --- a/htdocs/core/modules/project/doc/pdf_timespent.modules.php +++ b/htdocs/core/modules/project/doc/pdf_timespent.modules.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/project/mod_project_simple.php b/htdocs/core/modules/project/mod_project_simple.php index 94f2db957a3..46afc144da3 100644 --- a/htdocs/core/modules/project/mod_project_simple.php +++ b/htdocs/core/modules/project/mod_project_simple.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/project/mod_project_universal.php b/htdocs/core/modules/project/mod_project_universal.php index 0d11ac820c0..d1dd95b22bc 100644 --- a/htdocs/core/modules/project/mod_project_universal.php +++ b/htdocs/core/modules/project/mod_project_universal.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/project/modules_project.php b/htdocs/core/modules/project/modules_project.php index e6a688e97e8..af9877d59cb 100644 --- a/htdocs/core/modules/project/modules_project.php +++ b/htdocs/core/modules/project/modules_project.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/project/task/mod_task_simple.php b/htdocs/core/modules/project/task/mod_task_simple.php index 48e9cfe557e..4450c57347d 100644 --- a/htdocs/core/modules/project/task/mod_task_simple.php +++ b/htdocs/core/modules/project/task/mod_task_simple.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/project/task/mod_task_universal.php b/htdocs/core/modules/project/task/mod_task_universal.php index 6f46f914b07..3272d180c50 100644 --- a/htdocs/core/modules/project/task/mod_task_universal.php +++ b/htdocs/core/modules/project/task/mod_task_universal.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/project/task/modules_task.php b/htdocs/core/modules/project/task/modules_task.php index c9d7aa52bf4..ef7a9be4e98 100644 --- a/htdocs/core/modules/project/task/modules_task.php +++ b/htdocs/core/modules/project/task/modules_task.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2010 Florian Henry * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index 8c2dfd21a89..e369018c80b 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 464bef3da96..c93fc9a7c81 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/propale/mod_propale_marbre.php b/htdocs/core/modules/propale/mod_propale_marbre.php index 427d4596636..ef91cf1d2f3 100644 --- a/htdocs/core/modules/propale/mod_propale_marbre.php +++ b/htdocs/core/modules/propale/mod_propale_marbre.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/propale/mod_propale_saphir.php b/htdocs/core/modules/propale/mod_propale_saphir.php index 913743eb93d..47f71b5ffed 100644 --- a/htdocs/core/modules/propale/mod_propale_saphir.php +++ b/htdocs/core/modules/propale/mod_propale_saphir.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/propale/modules_propale.php b/htdocs/core/modules/propale/modules_propale.php index c7514ab973c..595534c40f4 100644 --- a/htdocs/core/modules/propale/modules_propale.php +++ b/htdocs/core/modules/propale/modules_propale.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php b/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php index a95a48d20b2..c4db7a40e7b 100644 --- a/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php +++ b/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/societe/mod_codeclient_elephant.php b/htdocs/core/modules/societe/mod_codeclient_elephant.php index 621bbd08d3e..e0d6a186879 100644 --- a/htdocs/core/modules/societe/mod_codeclient_elephant.php +++ b/htdocs/core/modules/societe/mod_codeclient_elephant.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2009 Laurent Destailleur - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2013-2018 Philippe Grand * diff --git a/htdocs/core/modules/societe/mod_codeclient_monkey.php b/htdocs/core/modules/societe/mod_codeclient_monkey.php index c18950a87d1..6077296101f 100644 --- a/htdocs/core/modules/societe/mod_codeclient_monkey.php +++ b/htdocs/core/modules/societe/mod_codeclient_monkey.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2007 Laurent Destailleur - * Copyright (C) 2006-2012 Regis Houssin + * Copyright (C) 2006-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/societe/modules_societe.class.php b/htdocs/core/modules/societe/modules_societe.class.php index 692dcbf185c..a38acbc002a 100644 --- a/htdocs/core/modules/societe/modules_societe.class.php +++ b/htdocs/core/modules/societe/modules_societe.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php b/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php index 28474f094f1..908b3c8ba41 100644 --- a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php +++ b/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2016 Alexandre Spangaro * diff --git a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php b/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php index 8e6dddeebd5..a3cb291263a 100644 --- a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php +++ b/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2016 Alexandre Spangaro diff --git a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php index 064be2e1f41..d1b28ebd0bd 100644 --- a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php +++ b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013-2016 Philippe Grand * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php b/htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php index 8448c61f62b..4b599a1f769 100644 --- a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php +++ b/htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php b/htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php index 1645ce796b2..3c8af4cd5a0 100644 --- a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php +++ b/htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php index edb047510d5..7a6c7d4972d 100644 --- a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php +++ b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2005 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011-2016 Philippe Grand * Copyright (C) 2014 Marcos García diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index d869b5dd72d..e89a5afa801 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2015 Marcos García diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php index 544a1040c9f..525fdca1d59 100644 --- a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2012 Christophe Battarel diff --git a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php index e7fb65f7612..847eb49958d 100644 --- a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php +++ b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php index 4827acdc9c8..fdbd9f1f90d 100644 --- a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php +++ b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php index df7c5ba7553..b96dc2c4e12 100644 --- a/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php +++ b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/modules/ticket/mod_ticket_simple.php b/htdocs/core/modules/ticket/mod_ticket_simple.php index c744453a899..d121748c285 100644 --- a/htdocs/core/modules/ticket/mod_ticket_simple.php +++ b/htdocs/core/modules/ticket/mod_ticket_simple.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/ticket/mod_ticket_universal.php b/htdocs/core/modules/ticket/mod_ticket_universal.php index a8170935eb0..e9e89cf4b45 100644 --- a/htdocs/core/modules/ticket/mod_ticket_universal.php +++ b/htdocs/core/modules/ticket/mod_ticket_universal.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/ticket/modules_ticket.php b/htdocs/core/modules/ticket/modules_ticket.php index 28587825d34..b66eb30422f 100644 --- a/htdocs/core/modules/ticket/modules_ticket.php +++ b/htdocs/core/modules/ticket/modules_ticket.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/modules/user/modules_user.class.php b/htdocs/core/modules/user/modules_user.class.php index e7f071f01fd..3dc46707543 100644 --- a/htdocs/core/modules/user/modules_user.class.php +++ b/htdocs/core/modules/user/modules_user.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/modules/usergroup/modules_usergroup.class.php b/htdocs/core/modules/usergroup/modules_usergroup.class.php index caa79594080..fc9648ab6e9 100644 --- a/htdocs/core/modules/usergroup/modules_usergroup.class.php +++ b/htdocs/core/modules/usergroup/modules_usergroup.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/photos_resize.php b/htdocs/core/photos_resize.php index f4f178031de..bf0a7a17538 100644 --- a/htdocs/core/photos_resize.php +++ b/htdocs/core/photos_resize.php @@ -1,7 +1,7 @@ * Copyright (C) 2009 Meos - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2016 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tools.php b/htdocs/core/tools.php index 3ceaaf17d33..524dee2d787 100644 --- a/htdocs/core/tools.php +++ b/htdocs/core/tools.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/admin_extrafields_add.tpl.php b/htdocs/core/tpl/admin_extrafields_add.tpl.php index 2c971c7a553..3c852bb7b26 100644 --- a/htdocs/core/tpl/admin_extrafields_add.tpl.php +++ b/htdocs/core/tpl/admin_extrafields_add.tpl.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2016 Charlie Benke * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/tpl/admin_extrafields_edit.tpl.php b/htdocs/core/tpl/admin_extrafields_edit.tpl.php index d4dc2776fde..7a533b496a4 100644 --- a/htdocs/core/tpl/admin_extrafields_edit.tpl.php +++ b/htdocs/core/tpl/admin_extrafields_edit.tpl.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tpl/admin_extrafields_view.tpl.php b/htdocs/core/tpl/admin_extrafields_view.tpl.php index 2672e593820..42f62d03ff7 100644 --- a/htdocs/core/tpl/admin_extrafields_view.tpl.php +++ b/htdocs/core/tpl/admin_extrafields_view.tpl.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012-2017 Regis Houssin + * Copyright (C) 2012-2017 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tpl/ajax/fileupload_main.tpl.php b/htdocs/core/tpl/ajax/fileupload_main.tpl.php index 93f0826e160..c68abf1ca0a 100644 --- a/htdocs/core/tpl/ajax/fileupload_main.tpl.php +++ b/htdocs/core/tpl/ajax/fileupload_main.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2013 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/ajax/fileupload_view.tpl.php b/htdocs/core/tpl/ajax/fileupload_view.tpl.php index 482a3aef8e4..12ef47abc18 100644 --- a/htdocs/core/tpl/ajax/fileupload_view.tpl.php +++ b/htdocs/core/tpl/ajax/fileupload_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php b/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php index ad32f1b9aa8..7c18dc39309 100644 --- a/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php +++ b/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2011-2013 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/ajaxrow.tpl.php b/htdocs/core/tpl/ajaxrow.tpl.php index 4ae64ea82ed..0a282b13dc6 100644 --- a/htdocs/core/tpl/ajaxrow.tpl.php +++ b/htdocs/core/tpl/ajaxrow.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010-2016 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tpl/bloc_showhide.tpl.php b/htdocs/core/tpl/bloc_showhide.tpl.php index 3f9c1eb0a1d..8a45ab3fc37 100644 --- a/htdocs/core/tpl/bloc_showhide.tpl.php +++ b/htdocs/core/tpl/bloc_showhide.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Laurent Destailleur * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/core/tpl/contacts.tpl.php b/htdocs/core/tpl/contacts.tpl.php index cc361be5e60..9ae34602ef6 100644 --- a/htdocs/core/tpl/contacts.tpl.php +++ b/htdocs/core/tpl/contacts.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013-2015 Laurent Destailleur * Copyright (C) 2015-2016 Charlie BENKE * diff --git a/htdocs/core/tpl/error.tpl.php b/htdocs/core/tpl/error.tpl.php index 8fb1641a364..6e120851b98 100644 --- a/htdocs/core/tpl/error.tpl.php +++ b/htdocs/core/tpl/error.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/footer.tpl.php b/htdocs/core/tpl/footer.tpl.php index 8fb1641a364..6e120851b98 100644 --- a/htdocs/core/tpl/footer.tpl.php +++ b/htdocs/core/tpl/footer.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/header.tpl.php b/htdocs/core/tpl/header.tpl.php index 1b97d4fd763..63f64441f4c 100644 --- a/htdocs/core/tpl/header.tpl.php +++ b/htdocs/core/tpl/header.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php index f3367d3e90f..0403590e40d 100644 --- a/htdocs/core/tpl/login.tpl.php +++ b/htdocs/core/tpl/login.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2009-2015 Regis Houssin * Copyright (C) 2011-2013 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tpl/notes.tpl.php b/htdocs/core/tpl/notes.tpl.php index 39132dd1af7..39e5c545f1b 100644 --- a/htdocs/core/tpl/notes.tpl.php +++ b/htdocs/core/tpl/notes.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2017 Laurent Destailleur * diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/htdocs/core/tpl/objectline_create.tpl.php index 23640216cd9..2489a40c5d7 100644 --- a/htdocs/core/tpl/objectline_create.tpl.php +++ b/htdocs/core/tpl/objectline_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010-2014 Laurent Destailleur * Copyright (C) 2012-2013 Christophe Battarel * Copyright (C) 2012 Cédric Salvador diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index 0a5f3bc43bd..ebb2863dbfa 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2010-2012 Laurent Destailleur * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2012 Cédric Salvador diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php index 776506bdaee..aeaa4cf9959 100644 --- a/htdocs/core/tpl/objectline_view.tpl.php +++ b/htdocs/core/tpl/objectline_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2013 Regis Houssin * Copyright (C) 2010-2011 Laurent Destailleur * Copyright (C) 2012-2013 Christophe Battarel * Copyright (C) 2012 Cédric Salvador diff --git a/htdocs/core/tpl/originproductline.tpl.php b/htdocs/core/tpl/originproductline.tpl.php index defcdb4fd72..9274359eada 100644 --- a/htdocs/core/tpl/originproductline.tpl.php +++ b/htdocs/core/tpl/originproductline.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin /* Copyright (C) 2017 Charlie Benke * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/tpl/passwordforgotten.tpl.php b/htdocs/core/tpl/passwordforgotten.tpl.php index 101c9ec7e67..52f48c67950 100644 --- a/htdocs/core/tpl/passwordforgotten.tpl.php +++ b/htdocs/core/tpl/passwordforgotten.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2009-2010 Regis Houssin * Copyright (C) 2011-2013 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/triggers/interface_20_all_Logevents.class.php b/htdocs/core/triggers/interface_20_all_Logevents.class.php index 772e9b39a51..4d5d7e74280 100644 --- a/htdocs/core/triggers/interface_20_all_Logevents.class.php +++ b/htdocs/core/triggers/interface_20_all_Logevents.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2017 Regis Houssin + * Copyright (C) 2009-2017 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php index 90806746da8..39b48cd2315 100644 --- a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php +++ b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2011-2017 Laurent Destailleur * Copyright (C) 2014 Marcos García * diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php index 938b63d90f3..d791b7f1499 100644 --- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php +++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2009-2017 Regis Houssin + * Copyright (C) 2009-2017 Regis Houssin * Copyright (C) 2011-2014 Juanjo Menent * Copyright (C) 2013 Cedric GROSS * Copyright (C) 2014 Marcos García diff --git a/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php b/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php index 7d528b55c30..a5ef414a6e5 100644 --- a/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php +++ b/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php index f5995c47c84..41dada263b4 100644 --- a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php +++ b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * Copyright (C) 2013-2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/cron/admin/cron.php b/htdocs/cron/admin/cron.php index 647aa8b96e3..9140973a566 100644 --- a/htdocs/cron/admin/cron.php +++ b/htdocs/cron/admin/cron.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2005-2013 Laurent Destailleur * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/document.php b/htdocs/document.php index 735910f47eb..07cc7cea77b 100644 --- a/htdocs/document.php +++ b/htdocs/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2007 Rodolphe Quiedeville * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2005 Simon Tosser - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Pierre Morin * Copyright (C) 2010 Juanjo Menent * diff --git a/htdocs/don/card.php b/htdocs/don/card.php index 38465de95ca..f3d8667dffb 100644 --- a/htdocs/don/card.php +++ b/htdocs/don/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015-2016 Alexandre Spangaro * Copyright (C) 2018 Thibault FOUCART diff --git a/htdocs/don/class/don.class.php b/htdocs/don/class/don.class.php index 6abd093c8c3..5e035febd14 100644 --- a/htdocs/don/class/don.class.php +++ b/htdocs/don/class/don.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2014 Florian Henry * Copyright (C) 2015-2017 Alexandre Spangaro * Copyright (C) 2016 Juanjo Menent diff --git a/htdocs/don/class/donstats.class.php b/htdocs/don/class/donstats.class.php index ed048dc04a4..e5e34f6ad1b 100644 --- a/htdocs/don/class/donstats.class.php +++ b/htdocs/don/class/donstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/don/document.php b/htdocs/don/document.php index 01aab513a6a..cdcb5648501 100644 --- a/htdocs/don/document.php +++ b/htdocs/don/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/don/index.php b/htdocs/don/index.php index d9bee39723c..ba68a1a215c 100644 --- a/htdocs/don/index.php +++ b/htdocs/don/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/don/list.php b/htdocs/don/list.php index 782a3afba75..47408fe4bb5 100644 --- a/htdocs/don/list.php +++ b/htdocs/don/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/don/note.php b/htdocs/don/note.php index 3a5c55f7c6d..60bf2c1939f 100644 --- a/htdocs/don/note.php +++ b/htdocs/don/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2016 Alexandre Spangaro * diff --git a/htdocs/don/stats/index.php b/htdocs/don/stats/index.php index e71212e806a..5e7e08c0ee2 100644 --- a/htdocs/don/stats/index.php +++ b/htdocs/don/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/don/tpl/linkedobjectblock.tpl.php b/htdocs/don/tpl/linkedobjectblock.tpl.php index f8d51bb6e35..f2d3178fc79 100644 --- a/htdocs/don/tpl/linkedobjectblock.tpl.php +++ b/htdocs/don/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * Copyright (C) 2017 Charlene Benke diff --git a/htdocs/ecm/ajax/ecmdatabase.php b/htdocs/ecm/ajax/ecmdatabase.php index 666c6df9217..9c4b9ffa952 100644 --- a/htdocs/ecm/ajax/ecmdatabase.php +++ b/htdocs/ecm/ajax/ecmdatabase.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/ecm/class/ecmdirectory.class.php b/htdocs/ecm/class/ecmdirectory.class.php index d3fdd115ffa..3d1ecac9088 100644 --- a/htdocs/ecm/class/ecmdirectory.class.php +++ b/htdocs/ecm/class/ecmdirectory.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/ecm/dir_add_card.php b/htdocs/ecm/dir_add_card.php index 922c06f0cc2..b608f72e23e 100644 --- a/htdocs/ecm/dir_add_card.php +++ b/htdocs/ecm/dir_add_card.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2015-2016 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php index faac5eba10d..86eec8aa09a 100644 --- a/htdocs/ecm/index.php +++ b/htdocs/ecm/index.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2010 Regis Houssin + * Copyright (C) 2008-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/ecm/index_auto.php b/htdocs/ecm/index_auto.php index ea5e5c13ff2..8ff31e54e3c 100644 --- a/htdocs/ecm/index_auto.php +++ b/htdocs/ecm/index_auto.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2010 Regis Houssin + * Copyright (C) 2008-2010 Regis Houssin * Copyright (C) 2016 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/ecm/search.php b/htdocs/ecm/search.php index bbf4fbbec1c..1b9a6bcb8d7 100644 --- a/htdocs/ecm/search.php +++ b/htdocs/ecm/search.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2009 Regis Houssin + * Copyright (C) 2008-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/ecm/tpl/enablefiletreeajax.tpl.php b/htdocs/ecm/tpl/enablefiletreeajax.tpl.php index 5fe466803fb..ad992da84dc 100644 --- a/htdocs/ecm/tpl/enablefiletreeajax.tpl.php +++ b/htdocs/ecm/tpl/enablefiletreeajax.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2018 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index 292bf5e1de8..f92660a0110 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2008 Rodolphe Quiedeville * Copyright (C) 2005-2016 Laurent Destailleur * Copyright (C) 2005 Simon TOSSER - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2017 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Marcos García diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 99b288e3703..bfc356d945b 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2006-2012 Laurent Destailleur * Copyright (C) 2011-2017 Juanjo Menent diff --git a/htdocs/expedition/class/expeditionstats.class.php b/htdocs/expedition/class/expeditionstats.class.php index dcdf9c97617..26f7bda7a2a 100644 --- a/htdocs/expedition/class/expeditionstats.class.php +++ b/htdocs/expedition/class/expeditionstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expedition/contact.php b/htdocs/expedition/contact.php index ce31e760b7f..f9ea697e50d 100644 --- a/htdocs/expedition/contact.php +++ b/htdocs/expedition/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/expedition/document.php b/htdocs/expedition/document.php index 2be84cf26b7..21f357b667e 100644 --- a/htdocs/expedition/document.php +++ b/htdocs/expedition/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/expedition/index.php b/htdocs/expedition/index.php index 8dde7bf0125..b34b149026c 100644 --- a/htdocs/expedition/index.php +++ b/htdocs/expedition/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php index c3632ca57fd..19db21671d8 100644 --- a/htdocs/expedition/list.php +++ b/htdocs/expedition/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2016-2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expedition/note.php b/htdocs/expedition/note.php index f276b2d0cb4..01aa08f34af 100644 --- a/htdocs/expedition/note.php +++ b/htdocs/expedition/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php index 920b5508e59..50307a56f38 100644 --- a/htdocs/expedition/shipment.php +++ b/htdocs/expedition/shipment.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012-2015 Juanjo Menent * Copyright (C) 2018 Frédéric France * Copyright (C) 2018 Philippe Grand diff --git a/htdocs/expedition/stats/index.php b/htdocs/expedition/stats/index.php index 43cf63cd3b3..a0631d8da23 100644 --- a/htdocs/expedition/stats/index.php +++ b/htdocs/expedition/stats/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/expedition/tpl/linkedobjectblock.tpl.php b/htdocs/expedition/tpl/linkedobjectblock.tpl.php index 72abfe2c4d9..ce2b9cf8009 100644 --- a/htdocs/expedition/tpl/linkedobjectblock.tpl.php +++ b/htdocs/expedition/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expensereport/ajax/ajaxprojet.php b/htdocs/expensereport/ajax/ajaxprojet.php index bc704f7a4f3..ebb7b2d47ec 100644 --- a/htdocs/expensereport/ajax/ajaxprojet.php +++ b/htdocs/expensereport/ajax/ajaxprojet.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2010 Cyrille de Lambert * diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index d16674f67d0..27085687986 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015-2017 Alexandre Spangaro * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2018 Frédéric France diff --git a/htdocs/expensereport/class/expensereportstats.class.php b/htdocs/expensereport/class/expensereportstats.class.php index bc306d27e4b..7901e813edc 100644 --- a/htdocs/expensereport/class/expensereportstats.class.php +++ b/htdocs/expensereport/class/expensereportstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2008 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/expensereport/document.php b/htdocs/expensereport/document.php index 6cfb3a2f7bc..c788583d316 100644 --- a/htdocs/expensereport/document.php +++ b/htdocs/expensereport/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/expensereport/index.php b/htdocs/expensereport/index.php index 9a947b8596e..4748bd2c2a4 100644 --- a/htdocs/expensereport/index.php +++ b/htdocs/expensereport/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expensereport/list.php b/htdocs/expensereport/list.php index d328cd21de2..1990a2e98d6 100644 --- a/htdocs/expensereport/list.php +++ b/htdocs/expensereport/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/expensereport/note.php b/htdocs/expensereport/note.php index deb38abe8d6..3beb7f49da5 100644 --- a/htdocs/expensereport/note.php +++ b/htdocs/expensereport/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/expensereport/tpl/linkedobjectblock.tpl.php b/htdocs/expensereport/tpl/linkedobjectblock.tpl.php index 2d040834a12..aa529b17da2 100644 --- a/htdocs/expensereport/tpl/linkedobjectblock.tpl.php +++ b/htdocs/expensereport/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/exports/class/export.class.php b/htdocs/exports/class/export.class.php index 46d21eba031..7d908161071 100644 --- a/htdocs/exports/class/export.class.php +++ b/htdocs/exports/class/export.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Charles-Fr BENKE * Copyright (C) 2016 Raphaël Doursenaud * diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php index f0060ffd029..7cb69ee9a3f 100644 --- a/htdocs/exports/export.php +++ b/htdocs/exports/export.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2012 Charles-Fr BENKE * Copyright (C) 2015 Juanjo Menent diff --git a/htdocs/fichinter/admin/fichinter_extrafields.php b/htdocs/fichinter/admin/fichinter_extrafields.php index bcda9b4847b..b74010c5882 100644 --- a/htdocs/fichinter/admin/fichinter_extrafields.php +++ b/htdocs/fichinter/admin/fichinter_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fichinter/admin/fichinterdet_extrafields.php b/htdocs/fichinter/admin/fichinterdet_extrafields.php index 8046ef41a18..4dceaf9c354 100644 --- a/htdocs/fichinter/admin/fichinterdet_extrafields.php +++ b/htdocs/fichinter/admin/fichinterdet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php index 0113f7fbea6..c75ad6ab9e7 100644 --- a/htdocs/fichinter/card-rec.php +++ b/htdocs/fichinter/card-rec.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 5896a5c5723..5865159f9b8 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2011-2017 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2018 Ferran Marcet diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php index 05a139e2a9a..17117768dc6 100644 --- a/htdocs/fichinter/class/fichinter.class.php +++ b/htdocs/fichinter/class/fichinter.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * Copyright (C) 2015 Marcos García * Copyright (C) 2015 Charlie Benke diff --git a/htdocs/fichinter/class/fichinterstats.class.php b/htdocs/fichinter/class/fichinterstats.class.php index 40a1b7eef2f..0475a2116eb 100644 --- a/htdocs/fichinter/class/fichinterstats.class.php +++ b/htdocs/fichinter/class/fichinterstats.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fichinter/contact.php b/htdocs/fichinter/contact.php index b69aa5952fa..54ad6733e69 100644 --- a/htdocs/fichinter/contact.php +++ b/htdocs/fichinter/contact.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007-2009 Laurent Destailleur * Copyright (C) 2012 Juanjo Menent * diff --git a/htdocs/fichinter/document.php b/htdocs/fichinter/document.php index 42273785a61..966c3b3f7db 100644 --- a/htdocs/fichinter/document.php +++ b/htdocs/fichinter/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/fichinter/index.php b/htdocs/fichinter/index.php index 9e5f1526969..b1798d77e66 100644 --- a/htdocs/fichinter/index.php +++ b/htdocs/fichinter/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Charlie Benke * diff --git a/htdocs/fichinter/info.php b/htdocs/fichinter/info.php index fe3d14191d6..93494c122d5 100644 --- a/htdocs/fichinter/info.php +++ b/htdocs/fichinter/info.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2009-2016 Laurent Destailleur * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php index 96a1199255c..a74b8c09a3d 100644 --- a/htdocs/fichinter/list.php +++ b/htdocs/fichinter/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Jean-François Ferry diff --git a/htdocs/fichinter/note.php b/htdocs/fichinter/note.php index cece45fdab5..c40792bc8b8 100644 --- a/htdocs/fichinter/note.php +++ b/htdocs/fichinter/note.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index f886266a701..484229a1de2 100644 --- a/htdocs/filefunc.inc.php +++ b/htdocs/filefunc.inc.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2005 Simon Tosser * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php index 92498e99589..235a3c85396 100644 --- a/htdocs/fourn/card.php +++ b/htdocs/fourn/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2003 Eric Seigne * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2014 Jean Heimburger * Copyright (C) 2015 Marcos García diff --git a/htdocs/fourn/class/fournisseur.class.php b/htdocs/fourn/class/fournisseur.class.php index 878f4bee67e..0636a356111 100644 --- a/htdocs/fourn/class/fournisseur.class.php +++ b/htdocs/fourn/class/fournisseur.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2006 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index ced75842606..70c46d94eb2 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2010-2018 Philippe Grand diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 58230038fcc..5d8526ef9bd 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles * Copyright (C) 2005 Marc Barilley - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2017 Juanjo Menent * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/fourn/class/fournisseur.product.class.php b/htdocs/fourn/class/fournisseur.product.class.php index a86e728e028..c75e111b1ad 100644 --- a/htdocs/fourn/class/fournisseur.product.class.php +++ b/htdocs/fourn/class/fournisseur.product.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2011 Laurent Destailleur - * Copyright (C) 2009-2014 Regis Houssin + * Copyright (C) 2009-2014 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2015 Marcos García diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php index a366faa0400..a4a14e4049a 100644 --- a/htdocs/fourn/class/paiementfourn.class.php +++ b/htdocs/fourn/class/paiementfourn.class.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2004 Rodolphe Quiedeville * Copyright (C) 2004-2007 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2014 Marcos García * Copyright (C) 2018 Nicolas ZABOURI diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php index 70fcaf004fb..8098946b186 100644 --- a/htdocs/fourn/commande/card.php +++ b/htdocs/fourn/commande/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2006 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * Copyright (C) 2010-2015 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand * Copyright (C) 2012-2016 Marcos García diff --git a/htdocs/fourn/commande/contact.php b/htdocs/fourn/commande/contact.php index c69c92ead29..08e30d04b7f 100644 --- a/htdocs/fourn/commande/contact.php +++ b/htdocs/fourn/commande/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2009 Destailleur Laurent - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php index 7f2e5ba4139..5b5ae13f86b 100644 --- a/htdocs/fourn/commande/dispatch.php +++ b/htdocs/fourn/commande/dispatch.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2006 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2014 Cedric Gross * Copyright (C) 2016 Florian Henry diff --git a/htdocs/fourn/commande/document.php b/htdocs/fourn/commande/document.php index eb299d6a94d..2c460d1bedc 100644 --- a/htdocs/fourn/commande/document.php +++ b/htdocs/fourn/commande/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/fourn/commande/index.php b/htdocs/fourn/commande/index.php index 59e7b82e488..1bdc9a07b48 100644 --- a/htdocs/fourn/commande/index.php +++ b/htdocs/fourn/commande/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Vinicius Nogueira * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/commande/info.php b/htdocs/fourn/commande/info.php index dee7a83bc6a..5d6664347b7 100644 --- a/htdocs/fourn/commande/info.php +++ b/htdocs/fourn/commande/info.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index 7158d7b2c0e..a3005302fb2 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2014 Marcos García * Copyright (C) 2014 Juanjo Menent diff --git a/htdocs/fourn/commande/note.php b/htdocs/fourn/commande/note.php index 288b43d200b..071f87553f2 100644 --- a/htdocs/fourn/commande/note.php +++ b/htdocs/fourn/commande/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/fourn/commande/orderstoinvoice.php b/htdocs/fourn/commande/orderstoinvoice.php index 5456627384e..9c32c39c2b4 100644 --- a/htdocs/fourn/commande/orderstoinvoice.php +++ b/htdocs/fourn/commande/orderstoinvoice.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Andreu Bisquerra Gaya * Copyright (C) 2012 David Rodriguez Martinez * Copyright (C) 2012-2017 Juanjo Menent diff --git a/htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php b/htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php index 4ce44845bf6..7ffc60815e6 100644 --- a/htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php +++ b/htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2014 Marcos García * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/contact.php b/htdocs/fourn/contact.php index 3225ce63714..105ab78806c 100644 --- a/htdocs/fourn/contact.php +++ b/htdocs/fourn/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2006 Regis Houssin + * Copyright (C) 2005-2006 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 9df540da197..a9421768b8e 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles * Copyright (C) 2005 Marc Barilley - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2013-2015 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php index 58e5630c0d6..f570a33951c 100644 --- a/htdocs/fourn/facture/contact.php +++ b/htdocs/fourn/facture/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php index d38a7992bd8..d76d680bc17 100644 --- a/htdocs/fourn/facture/document.php +++ b/htdocs/fourn/facture/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2016 Alexandre Spangaro * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 4582f403b02..4884a75daff 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2005 Rodolphe Quiedeville * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Vinicius Nogueira * Copyright (C) 2012 Juanjo Menent * diff --git a/htdocs/fourn/facture/info.php b/htdocs/fourn/facture/info.php index d0ca8cbc3da..8325a3449e9 100644 --- a/htdocs/fourn/facture/info.php +++ b/htdocs/fourn/facture/info.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2016 Alexandre Spangaro * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index e1bd120b0b4..11b5e177bcb 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2013-2018 Philippe Grand * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/fourn/facture/note.php b/htdocs/fourn/facture/note.php index 109ff71980c..b29140d3e12 100644 --- a/htdocs/fourn/facture/note.php +++ b/htdocs/fourn/facture/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 7946f98cb66..e3d9c4f534e 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> * Copyright (C) 2015 Marcos García * Copyright (C) 2015 Juanjo Menent diff --git a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php index 8ba0884fa6a..324e6b8dccf 100644 --- a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php +++ b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2014 Marcos García * Copyright (C) 2015 Charlie Benke * Copyright (C) 2016 Laurent Destailleur diff --git a/htdocs/fourn/index.php b/htdocs/fourn/index.php index 7228b68f1cd..5812553db5c 100644 --- a/htdocs/fourn/index.php +++ b/htdocs/fourn/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php index 9927b6b2b5d..16ed559814d 100644 --- a/htdocs/fourn/product/list.php +++ b/htdocs/fourn/product/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/ftp/index.php b/htdocs/ftp/index.php index 64b9fb0a8ea..fd2e5e80772 100644 --- a/htdocs/ftp/index.php +++ b/htdocs/ftp/index.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2009 Regis Houssin + * Copyright (C) 2008-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index a1bf6e3fa6a..0028367cd3d 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2012-2016 Laurent Destailleur - * Copyright (C) 2012-2016 Regis Houssin + * Copyright (C) 2012-2016 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2017 Alexandre Spangaro * Copyright (C) 2014-2017 Ferran Marcet diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index 6dd49b52a93..6405d5cf664 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2012-2014 Laurent Destailleur - * Copyright (C) 2012-2016 Regis Houssin + * Copyright (C) 2012-2016 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2016 Juanjo Menent * Copyright (C) 2018 Frédéric France diff --git a/htdocs/holiday/common.inc.php b/htdocs/holiday/common.inc.php index 1f8f797eab2..96111cf6df0 100644 --- a/htdocs/holiday/common.inc.php +++ b/htdocs/holiday/common.inc.php @@ -1,7 +1,7 @@ * Copyright (C) 2011 Dimitri Mouillard - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/holiday/define_holiday.php b/htdocs/holiday/define_holiday.php index c0bfff15507..5f283d1d1d2 100644 --- a/htdocs/holiday/define_holiday.php +++ b/htdocs/holiday/define_holiday.php @@ -2,7 +2,7 @@ /* Copyright (C) 2007-2016 Laurent Destailleur * Copyright (C) 2011 Dimitri Mouillard * Copyright (C) 2013 Marcos García - * Copyright (C) 2016 Regis Houssin + * Copyright (C) 2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/holiday/document.php b/htdocs/holiday/document.php index 5f33e24e8c6..94015d6664b 100644 --- a/htdocs/holiday/document.php +++ b/htdocs/holiday/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php index f155f513a18..f62fbc98922 100644 --- a/htdocs/holiday/list.php +++ b/htdocs/holiday/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2013-2018 Laurent Destailleur - * Copyright (C) 2012-2016 Regis Houssin + * Copyright (C) 2012-2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/hrm/index.php b/htdocs/hrm/index.php index 45d10d16d8b..5344e3765d7 100644 --- a/htdocs/hrm/index.php +++ b/htdocs/hrm/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2013-2015 Laurent Destailleur - * Copyright (C) 2012-2014 Regis Houssin + * Copyright (C) 2012-2014 Regis Houssin * Copyright (C) 2015-2016 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/imports/import.php b/htdocs/imports/import.php index 54aaa8a60a5..5e69a01bcaf 100644 --- a/htdocs/imports/import.php +++ b/htdocs/imports/import.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2012 Christophe Battarel * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/index.php b/htdocs/index.php index 14f72774d92..1bab889d2a2 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2015 Marcos García * diff --git a/htdocs/install/check.php b/htdocs/install/check.php index c2eb06bffb7..15806c38a1b 100644 --- a/htdocs/install/check.php +++ b/htdocs/install/check.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004-2005 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013-2014 Juanjo Menent * Copyright (C) 2014 Marcos García * Copyright (C) 2015-2016 Raphaël Doursenaud diff --git a/htdocs/install/fileconf.php b/htdocs/install/fileconf.php index fd902b540fd..5fb832ab8a0 100644 --- a/htdocs/install/fileconf.php +++ b/htdocs/install/fileconf.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Sebastien DiCintio - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2016 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/lib/repair.lib.php b/htdocs/install/lib/repair.lib.php index 39221c3a089..43a6d2bce27 100644 --- a/htdocs/install/lib/repair.lib.php +++ b/htdocs/install/lib/repair.lib.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/data/llx_00_c_country.sql b/htdocs/install/mysql/data/llx_00_c_country.sql index 5db58817dd2..0ea1a55d3d3 100644 --- a/htdocs/install/mysql/data/llx_00_c_country.sql +++ b/htdocs/install/mysql/data/llx_00_c_country.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2010 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2014 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/data/llx_10_c_regions.sql b/htdocs/install/mysql/data/llx_10_c_regions.sql index f6229dda906..53c9ba22028 100644 --- a/htdocs/install/mysql/data/llx_10_c_regions.sql +++ b/htdocs/install/mysql/data/llx_10_c_regions.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2010 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2010-2016 Juanjo Menent -- Copyright (C) 2012 Sebastian Neuwert diff --git a/htdocs/install/mysql/data/llx_20_c_departements.sql b/htdocs/install/mysql/data/llx_20_c_departements.sql index 541aba8a30d..4ca943a076f 100644 --- a/htdocs/install/mysql/data/llx_20_c_departements.sql +++ b/htdocs/install/mysql/data/llx_20_c_departements.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2010 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2010-2016 Juanjo Menent -- Copyright (C) 2012 Sebastian Neuwert diff --git a/htdocs/install/mysql/data/llx_accounting_abc.sql b/htdocs/install/mysql/data/llx_accounting_abc.sql index 526c62693e2..853ff2bfbd4 100644 --- a/htdocs/install/mysql/data/llx_accounting_abc.sql +++ b/htdocs/install/mysql/data/llx_accounting_abc.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2018 Alexandre Spangaro -- Copyright (C) 2015-2017 Juanjo Menent diff --git a/htdocs/install/mysql/data/llx_accounting_account_be.sql b/htdocs/install/mysql/data/llx_accounting_account_be.sql index 76195e8318f..610913ed36e 100644 --- a/htdocs/install/mysql/data/llx_accounting_account_be.sql +++ b/htdocs/install/mysql/data/llx_accounting_account_be.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2017 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/data/llx_accounting_account_cl.sql b/htdocs/install/mysql/data/llx_accounting_account_cl.sql index 76fe278dd0e..3029bc9350d 100644 --- a/htdocs/install/mysql/data/llx_accounting_account_cl.sql +++ b/htdocs/install/mysql/data/llx_accounting_account_cl.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2017 Alexandre Spangaro -- Copyright (C) 2017 Juanjo Menent diff --git a/htdocs/install/mysql/data/llx_accounting_account_dk.sql b/htdocs/install/mysql/data/llx_accounting_account_dk.sql index 7f707b4c444..f7b3ea7e519 100644 --- a/htdocs/install/mysql/data/llx_accounting_account_dk.sql +++ b/htdocs/install/mysql/data/llx_accounting_account_dk.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2017 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/data/llx_accounting_account_es.sql b/htdocs/install/mysql/data/llx_accounting_account_es.sql index 3000cef31d2..ef7d5aaa634 100644 --- a/htdocs/install/mysql/data/llx_accounting_account_es.sql +++ b/htdocs/install/mysql/data/llx_accounting_account_es.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2017 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/data/llx_accounting_account_fr.sql b/htdocs/install/mysql/data/llx_accounting_account_fr.sql index 68ed8618bc7..ef8ef176597 100644 --- a/htdocs/install/mysql/data/llx_accounting_account_fr.sql +++ b/htdocs/install/mysql/data/llx_accounting_account_fr.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011-2017 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/data/llx_c_action_trigger.sql b/htdocs/install/mysql/data/llx_c_action_trigger.sql index 6f3bb5461f8..143e30e8fb7 100644 --- a/htdocs/install/mysql/data/llx_c_action_trigger.sql +++ b/htdocs/install/mysql/data/llx_c_action_trigger.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2013 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2011 Regis Houssin +-- Copyright (C) 2005-2011 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2010-2013 Juanjo Menent -- Copyright (C) 2013 Cedric Gross diff --git a/htdocs/install/mysql/data/llx_c_actioncomm.sql b/htdocs/install/mysql/data/llx_c_actioncomm.sql index 6b89ed74dd2..7f7c3d6ea2e 100644 --- a/htdocs/install/mysql/data/llx_c_actioncomm.sql +++ b/htdocs/install/mysql/data/llx_c_actioncomm.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2011 Regis Houssin +-- Copyright (C) 2005-2011 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_chargesociales.sql b/htdocs/install/mysql/data/llx_c_chargesociales.sql index d598f6fef60..d59e0cbc290 100644 --- a/htdocs/install/mysql/data/llx_c_chargesociales.sql +++ b/htdocs/install/mysql/data/llx_c_chargesociales.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_civilite.sql b/htdocs/install/mysql/data/llx_c_civilite.sql index 0d7c0753131..a14e84be27d 100644 --- a/htdocs/install/mysql/data/llx_c_civilite.sql +++ b/htdocs/install/mysql/data/llx_c_civilite.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_currencies.sql b/htdocs/install/mysql/data/llx_c_currencies.sql index 5f561f26ba0..8446618e9b5 100644 --- a/htdocs/install/mysql/data/llx_c_currencies.sql +++ b/htdocs/install/mysql/data/llx_c_currencies.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2012 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2011 Juanjo Menent -- diff --git a/htdocs/install/mysql/data/llx_c_ecotaxe.sql b/htdocs/install/mysql/data/llx_c_ecotaxe.sql index 845ffa1e685..12505ba81c6 100644 --- a/htdocs/install/mysql/data/llx_c_ecotaxe.sql +++ b/htdocs/install/mysql/data/llx_c_ecotaxe.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2018 Regis Houssin +-- Copyright (C) 2005-2018 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_effectif.sql b/htdocs/install/mysql/data/llx_c_effectif.sql index 82302c61a07..6e9bc4ed0e9 100644 --- a/htdocs/install/mysql/data/llx_c_effectif.sql +++ b/htdocs/install/mysql/data/llx_c_effectif.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_forme_juridique.sql b/htdocs/install/mysql/data/llx_c_forme_juridique.sql index 8948984e907..08d7eded1ad 100644 --- a/htdocs/install/mysql/data/llx_c_forme_juridique.sql +++ b/htdocs/install/mysql/data/llx_c_forme_juridique.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2010-2016 Juanjo Menent -- Copyright (C) 2012 Sebastian Neuwert diff --git a/htdocs/install/mysql/data/llx_c_holiday_type.sql b/htdocs/install/mysql/data/llx_c_holiday_type.sql index 87eb67be131..64ab84f410f 100644 --- a/htdocs/install/mysql/data/llx_c_holiday_type.sql +++ b/htdocs/install/mysql/data/llx_c_holiday_type.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2012 Tommaso Basilici -- diff --git a/htdocs/install/mysql/data/llx_c_incoterms.sql b/htdocs/install/mysql/data/llx_c_incoterms.sql index ad9b09f09fc..3294c8285a3 100644 --- a/htdocs/install/mysql/data/llx_c_incoterms.sql +++ b/htdocs/install/mysql/data/llx_c_incoterms.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_input_method.sql b/htdocs/install/mysql/data/llx_c_input_method.sql index 062110f6c43..f3bd0fa6590 100644 --- a/htdocs/install/mysql/data/llx_c_input_method.sql +++ b/htdocs/install/mysql/data/llx_c_input_method.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_paiement.sql b/htdocs/install/mysql/data/llx_c_paiement.sql index 2e459cd12a7..b0d9d0ed233 100644 --- a/htdocs/install/mysql/data/llx_c_paiement.sql +++ b/htdocs/install/mysql/data/llx_c_paiement.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_paper_format.sql b/htdocs/install/mysql/data/llx_c_paper_format.sql index e88393ddfad..8df46f0d325 100644 --- a/htdocs/install/mysql/data/llx_c_paper_format.sql +++ b/htdocs/install/mysql/data/llx_c_paper_format.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2011 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_payment_term.sql b/htdocs/install/mysql/data/llx_c_payment_term.sql index 852ff9db4cb..232e0ebc865 100644 --- a/htdocs/install/mysql/data/llx_c_payment_term.sql +++ b/htdocs/install/mysql/data/llx_c_payment_term.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2012 Tommaso Basilici -- diff --git a/htdocs/install/mysql/data/llx_c_propalst.sql b/htdocs/install/mysql/data/llx_c_propalst.sql index 908ed48f805..b6d8b7f56e6 100644 --- a/htdocs/install/mysql/data/llx_c_propalst.sql +++ b/htdocs/install/mysql/data/llx_c_propalst.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_prospectlevel.sql b/htdocs/install/mysql/data/llx_c_prospectlevel.sql index 6982f2d2d1e..c0bc26d883f 100644 --- a/htdocs/install/mysql/data/llx_c_prospectlevel.sql +++ b/htdocs/install/mysql/data/llx_c_prospectlevel.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_shipment_mode.sql b/htdocs/install/mysql/data/llx_c_shipment_mode.sql index 189bd3ea94b..1c154b394ca 100644 --- a/htdocs/install/mysql/data/llx_c_shipment_mode.sql +++ b/htdocs/install/mysql/data/llx_c_shipment_mode.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2017 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2011 Regis Houssin +-- Copyright (C) 2005-2011 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_stcomm.sql b/htdocs/install/mysql/data/llx_c_stcomm.sql index e1bf526d489..088be6c83ec 100644 --- a/htdocs/install/mysql/data/llx_c_stcomm.sql +++ b/htdocs/install/mysql/data/llx_c_stcomm.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_tva.sql b/htdocs/install/mysql/data/llx_c_tva.sql index 91dbe5c1cf5..17c8b7489ee 100644 --- a/htdocs/install/mysql/data/llx_c_tva.sql +++ b/htdocs/install/mysql/data/llx_c_tva.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2011 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2010-2016 Juanjo Menent -- Copyright (C) 2012 Sebastian Neuwert diff --git a/htdocs/install/mysql/data/llx_c_type_contact.sql b/htdocs/install/mysql/data/llx_c_type_contact.sql index 9a4175bef81..62107525ff9 100644 --- a/htdocs/install/mysql/data/llx_c_type_contact.sql +++ b/htdocs/install/mysql/data/llx_c_type_contact.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_type_container.sql b/htdocs/install/mysql/data/llx_c_type_container.sql index 1e915412a12..403ddd8c252 100644 --- a/htdocs/install/mysql/data/llx_c_type_container.sql +++ b/htdocs/install/mysql/data/llx_c_type_container.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_type_fees.sql b/htdocs/install/mysql/data/llx_c_type_fees.sql index 752d6a6dd57..d78455e2939 100644 --- a/htdocs/install/mysql/data/llx_c_type_fees.sql +++ b/htdocs/install/mysql/data/llx_c_type_fees.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2017 ATM Consulting -- Copyright (C) 2017 Pierre-Henry Favre diff --git a/htdocs/install/mysql/data/llx_c_type_resource.sql b/htdocs/install/mysql/data/llx_c_type_resource.sql index 8b7ca68ecf8..66480157eef 100644 --- a/htdocs/install/mysql/data/llx_c_type_resource.sql +++ b/htdocs/install/mysql/data/llx_c_type_resource.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_c_typent.sql b/htdocs/install/mysql/data/llx_c_typent.sql index 4365a2e99a6..be24586f36d 100644 --- a/htdocs/install/mysql/data/llx_c_typent.sql +++ b/htdocs/install/mysql/data/llx_c_typent.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2009 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/data/llx_const.sql b/htdocs/install/mysql/data/llx_const.sql index 5d3a96d7df2..9eb31db347a 100644 --- a/htdocs/install/mysql/data/llx_const.sql +++ b/htdocs/install/mysql/data/llx_const.sql @@ -3,7 +3,7 @@ -- Copyright (C) 2004-2010 Laurent Destailleur -- Copyright (C) 2004 Benoit Mortier -- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2007 Patrick Raguin -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_actioncomm.key.sql b/htdocs/install/mysql/tables/llx_actioncomm.key.sql index 257eb22a240..71fe3976a81 100644 --- a/htdocs/install/mysql/tables/llx_actioncomm.key.sql +++ b/htdocs/install/mysql/tables/llx_actioncomm.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005-2017 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_actioncomm.sql b/htdocs/install/mysql/tables/llx_actioncomm.sql index 72321e19db5..8aa7fe47f3e 100644 --- a/htdocs/install/mysql/tables/llx_actioncomm.sql +++ b/htdocs/install/mysql/tables/llx_actioncomm.sql @@ -1,7 +1,7 @@ -- ======================================================================== -- Copyright (C) 2001-2003 Rodolphe Quiedeville -- Copyright (C) 2005-2017 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_adherent.key.sql b/htdocs/install/mysql/tables/llx_adherent.key.sql index 2ff771b878c..c875e2cee20 100644 --- a/htdocs/install/mysql/tables/llx_adherent.key.sql +++ b/htdocs/install/mysql/tables/llx_adherent.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2009 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_adherent.sql b/htdocs/install/mysql/tables/llx_adherent.sql index 3417e1b5792..96da4ffb326 100644 --- a/htdocs/install/mysql/tables/llx_adherent.sql +++ b/htdocs/install/mysql/tables/llx_adherent.sql @@ -2,7 +2,7 @@ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo -- Copyright (C) 2006-2009 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql b/htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql index 530bc514c23..6989d271ccc 100644 --- a/htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql +++ b/htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_adherent_extrafields.sql b/htdocs/install/mysql/tables/llx_adherent_extrafields.sql index a4a4851d9a8..3ad91052c24 100644 --- a/htdocs/install/mysql/tables/llx_adherent_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_adherent_extrafields.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_adherent_type.key.sql b/htdocs/install/mysql/tables/llx_adherent_type.key.sql index 870f0f3d5a0..f70280c41c4 100644 --- a/htdocs/install/mysql/tables/llx_adherent_type.key.sql +++ b/htdocs/install/mysql/tables/llx_adherent_type.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2007-2009 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_adherent_type.sql b/htdocs/install/mysql/tables/llx_adherent_type.sql index c20eade92d6..88867f9d2ad 100644 --- a/htdocs/install/mysql/tables/llx_adherent_type.sql +++ b/htdocs/install/mysql/tables/llx_adherent_type.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_bank_account.key.sql b/htdocs/install/mysql/tables/llx_bank_account.key.sql index c5f2786fd24..7ef818522a7 100644 --- a/htdocs/install/mysql/tables/llx_bank_account.key.sql +++ b/htdocs/install/mysql/tables/llx_bank_account.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_bank_account.sql b/htdocs/install/mysql/tables/llx_bank_account.sql index af35fb0eca1..3da5a8d4ec8 100644 --- a/htdocs/install/mysql/tables/llx_bank_account.sql +++ b/htdocs/install/mysql/tables/llx_bank_account.sql @@ -1,7 +1,7 @@ -- ============================================================================= -- Copyright (C) 2000-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2014 Laurent Destailleur --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2014 Alexandre Spangaro -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_bank_categ.sql b/htdocs/install/mysql/tables/llx_bank_categ.sql index f9190f751fd..26b9eab244e 100644 --- a/htdocs/install/mysql/tables/llx_bank_categ.sql +++ b/htdocs/install/mysql/tables/llx_bank_categ.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2004-2007 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql b/htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql index 750b2b60bfc..bc1c2347eca 100644 --- a/htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql +++ b/htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_bordereau_cheque.sql b/htdocs/install/mysql/tables/llx_bordereau_cheque.sql index ec400f6cbbd..e0d3209b9ea 100644 --- a/htdocs/install/mysql/tables/llx_bordereau_cheque.sql +++ b/htdocs/install/mysql/tables/llx_bordereau_cheque.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2006 Rodolphe Quiedeville --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_boxes.key.sql b/htdocs/install/mysql/tables/llx_boxes.key.sql index 52e06daf2af..caec9208938 100644 --- a/htdocs/install/mysql/tables/llx_boxes.key.sql +++ b/htdocs/install/mysql/tables/llx_boxes.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2006-2009 Laurent Destailleur --- Copyright (C) 2006-2012 Regis Houssin +-- Copyright (C) 2006-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_boxes.sql b/htdocs/install/mysql/tables/llx_boxes.sql index 383e1bbcce4..eeb294b5209 100644 --- a/htdocs/install/mysql/tables/llx_boxes.sql +++ b/htdocs/install/mysql/tables/llx_boxes.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2006-2012 Laurent Destailleur --- Copyright (C) 2006-2012 Regis Houssin +-- Copyright (C) 2006-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_boxes_def.key.sql b/htdocs/install/mysql/tables/llx_boxes_def.key.sql index ba6c032dbb4..2173504dc26 100644 --- a/htdocs/install/mysql/tables/llx_boxes_def.key.sql +++ b/htdocs/install/mysql/tables/llx_boxes_def.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2009 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_boxes_def.sql b/htdocs/install/mysql/tables/llx_boxes_def.sql index 03016ff9a54..e9fd966fdb7 100644 --- a/htdocs/install/mysql/tables/llx_boxes_def.sql +++ b/htdocs/install/mysql/tables/llx_boxes_def.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2010 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_c_action_trigger.key.sql b/htdocs/install/mysql/tables/llx_c_action_trigger.key.sql index 182e49fbe6e..3260c01d498 100644 --- a/htdocs/install/mysql/tables/llx_c_action_trigger.key.sql +++ b/htdocs/install/mysql/tables/llx_c_action_trigger.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_action_trigger.sql b/htdocs/install/mysql/tables/llx_c_action_trigger.sql index 4f7dbccc786..9ebe139121b 100644 --- a/htdocs/install/mysql/tables/llx_c_action_trigger.sql +++ b/htdocs/install/mysql/tables/llx_c_action_trigger.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_barcode_type.key.sql b/htdocs/install/mysql/tables/llx_c_barcode_type.key.sql index 594298c952c..c87f844574e 100644 --- a/htdocs/install/mysql/tables/llx_c_barcode_type.key.sql +++ b/htdocs/install/mysql/tables/llx_c_barcode_type.key.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_barcode_type.sql b/htdocs/install/mysql/tables/llx_c_barcode_type.sql index e2eea8d4faf..ad03c14966e 100644 --- a/htdocs/install/mysql/tables/llx_c_barcode_type.sql +++ b/htdocs/install/mysql/tables/llx_c_barcode_type.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2007-2009 Regis Houssin +-- Copyright (C) 2007-2009 Regis Houssin -- Copyright (C) 2008 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_c_currencies.sql b/htdocs/install/mysql/tables/llx_c_currencies.sql index ef57ecdccaa..41a1538a002 100644 --- a/htdocs/install/mysql/tables/llx_c_currencies.sql +++ b/htdocs/install/mysql/tables/llx_c_currencies.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_ecotaxe.sql b/htdocs/install/mysql/tables/llx_c_ecotaxe.sql index cd67bb34766..96bc5e01285 100644 --- a/htdocs/install/mysql/tables/llx_c_ecotaxe.sql +++ b/htdocs/install/mysql/tables/llx_c_ecotaxe.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2007-2018 Regis Houssin +-- Copyright (C) 2007-2018 Regis Houssin -- Copyright (C) 2009 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_c_field_list.sql b/htdocs/install/mysql/tables/llx_c_field_list.sql index 21adba42cfa..44b02c35248 100644 --- a/htdocs/install/mysql/tables/llx_c_field_list.sql +++ b/htdocs/install/mysql/tables/llx_c_field_list.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2010-2018 Regis Houssin +-- Copyright (C) 2010-2018 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_paiement.key.sql b/htdocs/install/mysql/tables/llx_c_paiement.key.sql index fc8147805ef..cf25e3a6703 100644 --- a/htdocs/install/mysql/tables/llx_c_paiement.key.sql +++ b/htdocs/install/mysql/tables/llx_c_paiement.key.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2012 Florian Henry --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_paiement.sql b/htdocs/install/mysql/tables/llx_c_paiement.sql index 1c26cb7aaeb..9e752b7e186 100644 --- a/htdocs/install/mysql/tables/llx_c_paiement.sql +++ b/htdocs/install/mysql/tables/llx_c_paiement.sql @@ -2,7 +2,7 @@ -- Copyright (C) 2001-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2014 Laurent Destailleur -- Copyright (C) 2014 Alexandre Spangaro --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_paper_format.sql b/htdocs/install/mysql/tables/llx_c_paper_format.sql index be0a57a2319..f0d7a3f14f3 100644 --- a/htdocs/install/mysql/tables/llx_c_paper_format.sql +++ b/htdocs/install/mysql/tables/llx_c_paper_format.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2007 Regis Houssin +-- Copyright (C) 2007 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_payment_term.key.sql b/htdocs/install/mysql/tables/llx_c_payment_term.key.sql index fc2f49de529..d2cb94aaeb2 100644 --- a/htdocs/install/mysql/tables/llx_c_payment_term.key.sql +++ b/htdocs/install/mysql/tables/llx_c_payment_term.key.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2012 Florian Henry --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_payment_term.sql b/htdocs/install/mysql/tables/llx_c_payment_term.sql index 39ccaa70916..188c2c4f428 100644 --- a/htdocs/install/mysql/tables/llx_c_payment_term.sql +++ b/htdocs/install/mysql/tables/llx_c_payment_term.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2016 Laurent Destailleur --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_c_ziptown.key.sql b/htdocs/install/mysql/tables/llx_c_ziptown.key.sql index 9d4ff705d04..a8bc952a160 100644 --- a/htdocs/install/mysql/tables/llx_c_ziptown.key.sql +++ b/htdocs/install/mysql/tables/llx_c_ziptown.key.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- Copyright (C) 201 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_c_ziptown.sql b/htdocs/install/mysql/tables/llx_c_ziptown.sql index 4b73d308a99..3bc41baacda 100644 --- a/htdocs/install/mysql/tables/llx_c_ziptown.sql +++ b/htdocs/install/mysql/tables/llx_c_ziptown.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_categorie.key.sql b/htdocs/install/mysql/tables/llx_categorie.key.sql index a3c9cf88963..1369378e59f 100644 --- a/htdocs/install/mysql/tables/llx_categorie.key.sql +++ b/htdocs/install/mysql/tables/llx_categorie.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2007-2009 Laurent Destailleur --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_categorie.sql b/htdocs/install/mysql/tables/llx_categorie.sql index 5493d2cfc8c..2b39cf58f7b 100644 --- a/htdocs/install/mysql/tables/llx_categorie.sql +++ b/htdocs/install/mysql/tables/llx_categorie.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2005 Brice Davoleau -- Copyright (C) 2005 Matthieu Valleton --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2017 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql b/htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql index 7293c152b9a..28a2cb6a8d4 100644 --- a/htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql +++ b/htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2012 Laurent Destailleur --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_categorie_fournisseur.sql b/htdocs/install/mysql/tables/llx_categorie_fournisseur.sql index 5a270b1fad9..8133aeb8a46 100644 --- a/htdocs/install/mysql/tables/llx_categorie_fournisseur.sql +++ b/htdocs/install/mysql/tables/llx_categorie_fournisseur.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2006 Rodolphe Quiedeville -- Copyright (C) 2012 Laurent Destailleur --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- Copyright (C) 2012 Juanjo Menent -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_categorie_lang.sql b/htdocs/install/mysql/tables/llx_categorie_lang.sql index 34dc0a3406e..ab2fb83405a 100644 --- a/htdocs/install/mysql/tables/llx_categorie_lang.sql +++ b/htdocs/install/mysql/tables/llx_categorie_lang.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- Copyright (C) 2009 Laurent Destailleur -- Copyright (C) 2014 Jean-François Ferry -- diff --git a/htdocs/install/mysql/tables/llx_chargesociales.sql b/htdocs/install/mysql/tables/llx_chargesociales.sql index a22937fa643..e1556689a29 100644 --- a/htdocs/install/mysql/tables/llx_chargesociales.sql +++ b/htdocs/install/mysql/tables/llx_chargesociales.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2001-2002 Rodolphe Quiedeville --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2017 Alexandre Spangaro -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_commande.key.sql b/htdocs/install/mysql/tables/llx_commande.key.sql index 9134092195b..eece575a238 100644 --- a/htdocs/install/mysql/tables/llx_commande.key.sql +++ b/htdocs/install/mysql/tables/llx_commande.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2006 Laurent Destailleur --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_commande.sql b/htdocs/install/mysql/tables/llx_commande.sql index 0b18f46bb51..d0522f7e5e3 100644 --- a/htdocs/install/mysql/tables/llx_commande.sql +++ b/htdocs/install/mysql/tables/llx_commande.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2017 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql b/htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql index d0d9471278a..89b1096fd8e 100644 --- a/htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql +++ b/htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2006-2007 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur.sql b/htdocs/install/mysql/tables/llx_commande_fournisseur.sql index 54ad7a33afd..5f26a87734a 100644 --- a/htdocs/install/mysql/tables/llx_commande_fournisseur.sql +++ b/htdocs/install/mysql/tables/llx_commande_fournisseur.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2004 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2007-2017 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql b/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql index 33d72f3cede..affbc94fc50 100644 --- a/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2004 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2007 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2013 Florian HENRY diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql b/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql index c1ef550b761..a3c2917491c 100644 --- a/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2004 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2007 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2013 Florian HENRY diff --git a/htdocs/install/mysql/tables/llx_commandedet.key.sql b/htdocs/install/mysql/tables/llx_commandedet.key.sql index 21765a6ad1b..4420d968d9a 100644 --- a/htdocs/install/mysql/tables/llx_commandedet.key.sql +++ b/htdocs/install/mysql/tables/llx_commandedet.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2006 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_commandedet.sql b/htdocs/install/mysql/tables/llx_commandedet.sql index 0d6468309f5..f30401304a6 100644 --- a/htdocs/install/mysql/tables/llx_commandedet.sql +++ b/htdocs/install/mysql/tables/llx_commandedet.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2006-2009 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Cédric Salvador diff --git a/htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql b/htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql index 764b39639cf..56da1940fc3 100644 --- a/htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql +++ b/htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- Copyright (C) 2013 Florian Henry -- diff --git a/htdocs/install/mysql/tables/llx_const.sql b/htdocs/install/mysql/tables/llx_const.sql index 806a3337291..c27b8c45e9f 100644 --- a/htdocs/install/mysql/tables/llx_const.sql +++ b/htdocs/install/mysql/tables/llx_const.sql @@ -2,7 +2,7 @@ -- Copyright (C) 2001-2002 Rodolphe Quiedeville -- Copyright (C) 2003 Jean-Louis Bergamo -- Copyright (C) 2008-2009 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_contrat.key.sql b/htdocs/install/mysql/tables/llx_contrat.key.sql index 3e95b75c85b..15cdb7161da 100644 --- a/htdocs/install/mysql/tables/llx_contrat.key.sql +++ b/htdocs/install/mysql/tables/llx_contrat.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2005 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_contrat.sql b/htdocs/install/mysql/tables/llx_contrat.sql index ac6f56631ec..531f96adeb7 100644 --- a/htdocs/install/mysql/tables/llx_contrat.sql +++ b/htdocs/install/mysql/tables/llx_contrat.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2005 Laurent Destailleur --- Copyright (C) 2005-2014 Regis Houssin +-- Copyright (C) 2005-2014 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_contratdet.key.sql b/htdocs/install/mysql/tables/llx_contratdet.key.sql index 6f65271ebb7..e79a3aeea33 100644 --- a/htdocs/install/mysql/tables/llx_contratdet.key.sql +++ b/htdocs/install/mysql/tables/llx_contratdet.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2004 Rodolphe Quiedeville -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_deplacement.sql b/htdocs/install/mysql/tables/llx_deplacement.sql index 34c4ab103cd..ca58f82a642 100644 --- a/htdocs/install/mysql/tables/llx_deplacement.sql +++ b/htdocs/install/mysql/tables/llx_deplacement.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- Copyright (C) 2010 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_document_model.key.sql b/htdocs/install/mysql/tables/llx_document_model.key.sql index 54f25e2169b..d813b57e1da 100644 --- a/htdocs/install/mysql/tables/llx_document_model.key.sql +++ b/htdocs/install/mysql/tables/llx_document_model.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2007 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_document_model.sql b/htdocs/install/mysql/tables/llx_document_model.sql index 0b93936837e..4092fc0ca43 100644 --- a/htdocs/install/mysql/tables/llx_document_model.sql +++ b/htdocs/install/mysql/tables/llx_document_model.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2001-2003 Rodolphe Quiedeville -- Copyright (C) 2006 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_don.sql b/htdocs/install/mysql/tables/llx_don.sql index a2e39f7039c..82728861fc6 100644 --- a/htdocs/install/mysql/tables/llx_don.sql +++ b/htdocs/install/mysql/tables/llx_don.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2001-2002 Rodolphe Quiedeville --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- Copyright (C) 2015 Alexandre Spangaro -- diff --git a/htdocs/install/mysql/tables/llx_ecm_directories.key.sql b/htdocs/install/mysql/tables/llx_ecm_directories.key.sql index 2e96a5f8e95..1467ae6839e 100644 --- a/htdocs/install/mysql/tables/llx_ecm_directories.key.sql +++ b/htdocs/install/mysql/tables/llx_ecm_directories.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2010 Laurent Destailleur --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_ecm_directories.sql b/htdocs/install/mysql/tables/llx_ecm_directories.sql index 518fdd4c9e1..a956b928ad5 100644 --- a/htdocs/install/mysql/tables/llx_ecm_directories.sql +++ b/htdocs/install/mysql/tables/llx_ecm_directories.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2008-2012 Laurent Destailleur --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_entrepot.key.sql b/htdocs/install/mysql/tables/llx_entrepot.key.sql index 3f9137e57ee..551eeda4e95 100644 --- a/htdocs/install/mysql/tables/llx_entrepot.key.sql +++ b/htdocs/install/mysql/tables/llx_entrepot.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_events.sql b/htdocs/install/mysql/tables/llx_events.sql index c153522cb09..f906cf0fcbd 100644 --- a/htdocs/install/mysql/tables/llx_events.sql +++ b/htdocs/install/mysql/tables/llx_events.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2008 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_expedition.key.sql b/htdocs/install/mysql/tables/llx_expedition.key.sql index 736945193ff..d5e041b6cdf 100644 --- a/htdocs/install/mysql/tables/llx_expedition.key.sql +++ b/htdocs/install/mysql/tables/llx_expedition.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2008-2010 Regis Houssin +-- Copyright (C) 2008-2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_expedition.sql b/htdocs/install/mysql/tables/llx_expedition.sql index e252783ac94..044f840dc07 100644 --- a/htdocs/install/mysql/tables/llx_expedition.sql +++ b/htdocs/install/mysql/tables/llx_expedition.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003-2010 Rodolphe Quiedeville --- Copyright (C) 2008-2010 Regis Houssin +-- Copyright (C) 2008-2010 Regis Houssin -- Copyright (C) 2011-2012 Laurent Destailleur -- Copyright (C) 2012 Juanjo Menent -- diff --git a/htdocs/install/mysql/tables/llx_expeditiondet.key.sql b/htdocs/install/mysql/tables/llx_expeditiondet.key.sql index 5f5b6a08183..9c3cd0aa2e9 100644 --- a/htdocs/install/mysql/tables/llx_expeditiondet.key.sql +++ b/htdocs/install/mysql/tables/llx_expeditiondet.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2008 Regis Houssin +-- Copyright (C) 2008 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_expeditiondet.sql b/htdocs/install/mysql/tables/llx_expeditiondet.sql index bd05bd08898..54e170d041b 100644 --- a/htdocs/install/mysql/tables/llx_expeditiondet.sql +++ b/htdocs/install/mysql/tables/llx_expeditiondet.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2008 Regis Houssin +-- Copyright (C) 2008 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_expensereport.key.sql b/htdocs/install/mysql/tables/llx_expensereport.key.sql index a7e4fd54425..739caa58432 100644 --- a/htdocs/install/mysql/tables/llx_expensereport.key.sql +++ b/htdocs/install/mysql/tables/llx_expensereport.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2008-2010 Regis Houssin +-- Copyright (C) 2008-2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_export_model.key.sql b/htdocs/install/mysql/tables/llx_export_model.key.sql index 53f5efbda52..4e9485f68c4 100644 --- a/htdocs/install/mysql/tables/llx_export_model.key.sql +++ b/htdocs/install/mysql/tables/llx_export_model.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2007-2011 Laurent Destailleur --- Copyright (C) 2007 Regis Houssin +-- Copyright (C) 2007 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_export_model.sql b/htdocs/install/mysql/tables/llx_export_model.sql index eaf11645f83..59bbb34ed19 100644 --- a/htdocs/install/mysql/tables/llx_export_model.sql +++ b/htdocs/install/mysql/tables/llx_export_model.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2001-2003 Rodolphe Quiedeville --- Copyright (C) 2007-2012 Regis Houssin +-- Copyright (C) 2007-2012 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_extrafields.key.sql b/htdocs/install/mysql/tables/llx_extrafields.key.sql index 90c0174e527..55bfc77b421 100644 --- a/htdocs/install/mysql/tables/llx_extrafields.key.sql +++ b/htdocs/install/mysql/tables/llx_extrafields.key.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_extrafields.sql b/htdocs/install/mysql/tables/llx_extrafields.sql index 9f37383957a..e7ec325d428 100644 --- a/htdocs/install/mysql/tables/llx_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_extrafields.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2011-2012 Regis Houssin +-- Copyright (C) 2011-2012 Regis Houssin -- Copyright (C) 2011-2012 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_facture.key.sql b/htdocs/install/mysql/tables/llx_facture.key.sql index b0755bf5d94..0a2710c86ac 100644 --- a/htdocs/install/mysql/tables/llx_facture.key.sql +++ b/htdocs/install/mysql/tables/llx_facture.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2012 Laurent Destailleur --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_facture.sql b/htdocs/install/mysql/tables/llx_facture.sql index c001d459b48..51f322b69ee 100644 --- a/htdocs/install/mysql/tables/llx_facture.sql +++ b/htdocs/install/mysql/tables/llx_facture.sql @@ -1,7 +1,7 @@ -- =========================================================================== -- Copyright (C) 2001-2005 Rodolphe Quiedeville -- Copyright (C) 2004-2012 Laurent Destailleur --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Cédric Salvador -- Copyright (C) 2014 Raphaël Doursenaud diff --git a/htdocs/install/mysql/tables/llx_facture_fourn.key.sql b/htdocs/install/mysql/tables/llx_facture_fourn.key.sql index cbea87a398f..7b8dc66c9fa 100644 --- a/htdocs/install/mysql/tables/llx_facture_fourn.key.sql +++ b/htdocs/install/mysql/tables/llx_facture_fourn.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005-2017 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_facture_fourn.sql b/htdocs/install/mysql/tables/llx_facture_fourn.sql index b1329de08ac..36ee0a69f18 100644 --- a/htdocs/install/mysql/tables/llx_facture_fourn.sql +++ b/htdocs/install/mysql/tables/llx_facture_fourn.sql @@ -1,7 +1,7 @@ -- =========================================================================== -- Copyright (C) 2001-2003 Rodolphe Quiedeville -- Copyright (C) 2007-2017 Laurent Destailleur --- Copyright (C) 2007-2012 Regis Houssin +-- Copyright (C) 2007-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_facture_rec.key.sql b/htdocs/install/mysql/tables/llx_facture_rec.key.sql index 3a41233fa4a..9529695cbe5 100644 --- a/htdocs/install/mysql/tables/llx_facture_rec.key.sql +++ b/htdocs/install/mysql/tables/llx_facture_rec.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2006 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_facture_rec.sql b/htdocs/install/mysql/tables/llx_facture_rec.sql index dc1343872c7..1add07c6e8c 100644 --- a/htdocs/install/mysql/tables/llx_facture_rec.sql +++ b/htdocs/install/mysql/tables/llx_facture_rec.sql @@ -1,7 +1,7 @@ -- =========================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2012-2014 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_facturedet.key.sql b/htdocs/install/mysql/tables/llx_facturedet.key.sql index f1a7807a910..a0e84034d64 100644 --- a/htdocs/install/mysql/tables/llx_facturedet.key.sql +++ b/htdocs/install/mysql/tables/llx_facturedet.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005-2016 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_facturedet.sql b/htdocs/install/mysql/tables/llx_facturedet.sql index bf008d41f03..ac7142c898d 100644 --- a/htdocs/install/mysql/tables/llx_facturedet.sql +++ b/htdocs/install/mysql/tables/llx_facturedet.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2001-2005 Rodolphe Quiedeville -- Copyright (C) 2004-2005 Laurent Destailleur --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Cédric Salvador -- Copyright (C) 2014 Raphaël Doursenaud diff --git a/htdocs/install/mysql/tables/llx_facturedet_rec.key.sql b/htdocs/install/mysql/tables/llx_facturedet_rec.key.sql index 5ce0d0d296b..3facb7ade29 100644 --- a/htdocs/install/mysql/tables/llx_facturedet_rec.key.sql +++ b/htdocs/install/mysql/tables/llx_facturedet_rec.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- Copyright (C) 2012 Cedric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_facturedet_rec.sql b/htdocs/install/mysql/tables/llx_facturedet_rec.sql index 341afd0d9ba..ac79dfd891d 100644 --- a/htdocs/install/mysql/tables/llx_facturedet_rec.sql +++ b/htdocs/install/mysql/tables/llx_facturedet_rec.sql @@ -2,7 +2,7 @@ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2009-2014 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent --- Copyright (C) 2010-2012 Regis Houssin +-- Copyright (C) 2010-2012 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_fichinter.sql b/htdocs/install/mysql/tables/llx_fichinter.sql index 5bc5741c014..2029e15aff5 100644 --- a/htdocs/install/mysql/tables/llx_fichinter.sql +++ b/htdocs/install/mysql/tables/llx_fichinter.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2001-2007 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_fichinter_rec.key.sql b/htdocs/install/mysql/tables/llx_fichinter_rec.key.sql index 0c420fd6395..ef164d9f8d0 100644 --- a/htdocs/install/mysql/tables/llx_fichinter_rec.key.sql +++ b/htdocs/install/mysql/tables/llx_fichinter_rec.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2006 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2018 Charlene Benke -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_fichinter_rec.sql b/htdocs/install/mysql/tables/llx_fichinter_rec.sql index 10dacbde4ee..4beea8e2db1 100644 --- a/htdocs/install/mysql/tables/llx_fichinter_rec.sql +++ b/htdocs/install/mysql/tables/llx_fichinter_rec.sql @@ -1,7 +1,7 @@ -- =========================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2012-2014 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2018 Charlene Benke -- diff --git a/htdocs/install/mysql/tables/llx_fichinterdet.key.sql b/htdocs/install/mysql/tables/llx_fichinterdet.key.sql index 4fa7c1f3fa5..3266505fba9 100644 --- a/htdocs/install/mysql/tables/llx_fichinterdet.key.sql +++ b/htdocs/install/mysql/tables/llx_fichinterdet.key.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_fichinterdet.sql b/htdocs/install/mysql/tables/llx_fichinterdet.sql index 5fcd1b1d524..676dfadbe35 100644 --- a/htdocs/install/mysql/tables/llx_fichinterdet.sql +++ b/htdocs/install/mysql/tables/llx_fichinterdet.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2007 Regis Houssin +-- Copyright (C) 2005-2007 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql b/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql index 682453f2dfd..40475b80d7d 100644 --- a/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql +++ b/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql @@ -2,7 +2,7 @@ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2009-2014 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent --- Copyright (C) 2010-2012 Regis Houssin +-- Copyright (C) 2010-2012 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- Copyright (C) 2016-2018 Charlene Benke -- diff --git a/htdocs/install/mysql/tables/llx_holiday.key.sql b/htdocs/install/mysql/tables/llx_holiday.key.sql index 9a1a6ae49e3..6243d1eee56 100644 --- a/htdocs/install/mysql/tables/llx_holiday.key.sql +++ b/htdocs/install/mysql/tables/llx_holiday.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2012 Laurent Destailleur --- Copyright (C) 2016 Regis Houssin +-- Copyright (C) 2016 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_livraison.key.sql b/htdocs/install/mysql/tables/llx_livraison.key.sql index f61319640ee..2769ee09c67 100644 --- a/htdocs/install/mysql/tables/llx_livraison.key.sql +++ b/htdocs/install/mysql/tables/llx_livraison.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2008-2010 Regis Houssin +-- Copyright (C) 2008-2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_livraison.sql b/htdocs/install/mysql/tables/llx_livraison.sql index 32e9de8b2a7..5f7a6c52ef8 100644 --- a/htdocs/install/mysql/tables/llx_livraison.sql +++ b/htdocs/install/mysql/tables/llx_livraison.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2008-2010 Regis Houssin +-- Copyright (C) 2008-2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_livraisondet.key.sql b/htdocs/install/mysql/tables/llx_livraisondet.key.sql index 5b9b37767eb..f6783d55a04 100644 --- a/htdocs/install/mysql/tables/llx_livraisondet.key.sql +++ b/htdocs/install/mysql/tables/llx_livraisondet.key.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2008 Regis Houssin +-- Copyright (C) 2008 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_livraisondet.sql b/htdocs/install/mysql/tables/llx_livraisondet.sql index fc0644830c5..cac8819f206 100644 --- a/htdocs/install/mysql/tables/llx_livraisondet.sql +++ b/htdocs/install/mysql/tables/llx_livraisondet.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2008 Regis Houssin +-- Copyright (C) 2008 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_localtax.sql b/htdocs/install/mysql/tables/llx_localtax.sql index 65c9fbe496b..e1cef882e7c 100644 --- a/htdocs/install/mysql/tables/llx_localtax.sql +++ b/htdocs/install/mysql/tables/llx_localtax.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2011-2014 Juanjo Menent --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_mailing.sql b/htdocs/install/mysql/tables/llx_mailing.sql index a365aba0be1..74f022d8887 100644 --- a/htdocs/install/mysql/tables/llx_mailing.sql +++ b/htdocs/install/mysql/tables/llx_mailing.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2005 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_mailing_cibles.sql b/htdocs/install/mysql/tables/llx_mailing_cibles.sql index c533eb0ff8a..f7a3c357168 100644 --- a/htdocs/install/mysql/tables/llx_mailing_cibles.sql +++ b/htdocs/install/mysql/tables/llx_mailing_cibles.sql @@ -1,7 +1,7 @@ -- ======================================================================== -- Copyright (C) 2005 Rodolphe Quiedeville -- Copyright (C) 2009-2016 Laurent Destailleur --- Copyright (C) 2011-2012 Regis Houssin +-- Copyright (C) 2011-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_menu.key.sql b/htdocs/install/mysql/tables/llx_menu.key.sql index f98bb00fae0..53b26de8a04 100644 --- a/htdocs/install/mysql/tables/llx_menu.key.sql +++ b/htdocs/install/mysql/tables/llx_menu.key.sql @@ -1,7 +1,7 @@ -- ======================================================================== -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2005-2008 Laurent Destailleur --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_menu.sql b/htdocs/install/mysql/tables/llx_menu.sql index 18862ff496a..7cbd86bb1a1 100644 --- a/htdocs/install/mysql/tables/llx_menu.sql +++ b/htdocs/install/mysql/tables/llx_menu.sql @@ -1,7 +1,7 @@ -- ======================================================================== -- Copyright (C) 2007 Patrick Raguin -- Copyright (C) 2007-2008 Laurent Destailleur --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- Copyright (C) 2012 Marcos García -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_paiement.sql b/htdocs/install/mysql/tables/llx_paiement.sql index 25c0097f10e..9f40cb2cfc9 100644 --- a/htdocs/install/mysql/tables/llx_paiement.sql +++ b/htdocs/install/mysql/tables/llx_paiement.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2001-2004 Rodolphe Quiedeville -- Copyright (C) 2004 Laurent Destailleur --- Copyright (C) 2012 Regis Houssin +-- Copyright (C) 2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_prelevement_bons.key.sql b/htdocs/install/mysql/tables/llx_prelevement_bons.key.sql index 999ddc9a848..29c11790339 100644 --- a/htdocs/install/mysql/tables/llx_prelevement_bons.key.sql +++ b/htdocs/install/mysql/tables/llx_prelevement_bons.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_prelevement_bons.sql b/htdocs/install/mysql/tables/llx_prelevement_bons.sql index 25e9381afe0..b796ffabcd6 100644 --- a/htdocs/install/mysql/tables/llx_prelevement_bons.sql +++ b/htdocs/install/mysql/tables/llx_prelevement_bons.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2005 Rodolphe Quiedeville --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_product.key.sql b/htdocs/install/mysql/tables/llx_product.key.sql index 40b4eb130a9..d339f2082ee 100644 --- a/htdocs/install/mysql/tables/llx_product.key.sql +++ b/htdocs/install/mysql/tables/llx_product.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2013 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- Copyright (C) 2014 Marcos García -- diff --git a/htdocs/install/mysql/tables/llx_product.sql b/htdocs/install/mysql/tables/llx_product.sql index 1e201038122..8569c6e28d2 100755 --- a/htdocs/install/mysql/tables/llx_product.sql +++ b/htdocs/install/mysql/tables/llx_product.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2006 Rodolphe Quiedeville -- Copyright (C) 2008-2017 Laurent Destailleur --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012-2013 Cédric Salvador -- Copyright (C) 2014 Marcos García diff --git a/htdocs/install/mysql/tables/llx_product_customer_price.sql b/htdocs/install/mysql/tables/llx_product_customer_price.sql index 339de2bb4be..443e48c0f5c 100644 --- a/htdocs/install/mysql/tables/llx_product_customer_price.sql +++ b/htdocs/install/mysql/tables/llx_product_customer_price.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2009-2011 Laurent Destailleur --- Copyright (C) 2009-2013 Regis Houssin +-- Copyright (C) 2009-2013 Regis Houssin -- Copyright (C) 2012 Juanjo Menent -- Copyright (C) 2013 Florian Henry -- diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql b/htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql index c290ad5518e..110736718d1 100644 --- a/htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql +++ b/htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2005-2012 Laurent Destailleur --- Copyright (C) 2009-2012 Regis Houssin +-- Copyright (C) 2009-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql b/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql index daccb2d7927..940967b13d4 100755 --- a/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql +++ b/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2009-2011 Laurent Destailleur --- Copyright (C) 2009-2013 Regis Houssin +-- Copyright (C) 2009-2013 Regis Houssin -- Copyright (C) 2012 Juanjo Menent -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_product_lang.key.sql b/htdocs/install/mysql/tables/llx_product_lang.key.sql index 8aa0e8c3280..5c8ab0a5fc9 100644 --- a/htdocs/install/mysql/tables/llx_product_lang.key.sql +++ b/htdocs/install/mysql/tables/llx_product_lang.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_product_lang.sql b/htdocs/install/mysql/tables/llx_product_lang.sql index 7363a65a95c..cbccac26020 100644 --- a/htdocs/install/mysql/tables/llx_product_lang.sql +++ b/htdocs/install/mysql/tables/llx_product_lang.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- Copyright (C) 2009 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_product_price.sql b/htdocs/install/mysql/tables/llx_product_price.sql index 4e5920e1dff..665470239e7 100755 --- a/htdocs/install/mysql/tables/llx_product_price.sql +++ b/htdocs/install/mysql/tables/llx_product_price.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql b/htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql index 56dbfbd1ae0..57426b53d1b 100644 --- a/htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql +++ b/htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Maxime Kohlhaas -- diff --git a/htdocs/install/mysql/tables/llx_product_price_by_qty.sql b/htdocs/install/mysql/tables/llx_product_price_by_qty.sql index 9dbeb530a34..480b9239407 100644 --- a/htdocs/install/mysql/tables/llx_product_price_by_qty.sql +++ b/htdocs/install/mysql/tables/llx_product_price_by_qty.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Maxime Kohlhaas -- diff --git a/htdocs/install/mysql/tables/llx_projet.key.sql b/htdocs/install/mysql/tables/llx_projet.key.sql index 75ad8cb7fef..b3a18f39b03 100644 --- a/htdocs/install/mysql/tables/llx_projet.key.sql +++ b/htdocs/install/mysql/tables/llx_projet.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2009 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_projet.sql b/htdocs/install/mysql/tables/llx_projet.sql index 8e58f0ad8c8..7216a0f20b1 100644 --- a/htdocs/install/mysql/tables/llx_projet.sql +++ b/htdocs/install/mysql/tables/llx_projet.sql @@ -1,6 +1,6 @@ -- =========================================================================== -- Copyright (C) 2002 Rodolphe Quiedeville --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_projet_task.key.sql b/htdocs/install/mysql/tables/llx_projet_task.key.sql index 620bbc17eaa..a64d8395b9f 100644 --- a/htdocs/install/mysql/tables/llx_projet_task.key.sql +++ b/htdocs/install/mysql/tables/llx_projet_task.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2009 Laurent Destailleur --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_projet_task.sql b/htdocs/install/mysql/tables/llx_projet_task.sql index a7418f2688c..1adc6c6b2b6 100644 --- a/htdocs/install/mysql/tables/llx_projet_task.sql +++ b/htdocs/install/mysql/tables/llx_projet_task.sql @@ -1,6 +1,6 @@ -- =========================================================================== -- Copyright (C) 2005 Rodolphe Quiedeville --- Copyright (C) 2010 Regis Houssin +-- Copyright (C) 2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_propal.key.sql b/htdocs/install/mysql/tables/llx_propal.key.sql index 0c202bea2cb..85cd86b70e1 100644 --- a/htdocs/install/mysql/tables/llx_propal.key.sql +++ b/htdocs/install/mysql/tables/llx_propal.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2002-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2005 Laurent Destailleur --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_propal.sql b/htdocs/install/mysql/tables/llx_propal.sql index e4c997b940a..d8eee18629b 100644 --- a/htdocs/install/mysql/tables/llx_propal.sql +++ b/htdocs/install/mysql/tables/llx_propal.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2001-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Laurent Destailleur -- Copyright (C) 2010 Juanjo Menent -- diff --git a/htdocs/install/mysql/tables/llx_propaldet.key.sql b/htdocs/install/mysql/tables/llx_propaldet.key.sql index 3d3467ea888..f442ad36106 100644 --- a/htdocs/install/mysql/tables/llx_propaldet.key.sql +++ b/htdocs/install/mysql/tables/llx_propaldet.key.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2009-2011 Regis Houssin +-- Copyright (C) 2009-2011 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_propaldet.sql b/htdocs/install/mysql/tables/llx_propaldet.sql index 283708fd7ce..fdee7a5dcca 100644 --- a/htdocs/install/mysql/tables/llx_propaldet.sql +++ b/htdocs/install/mysql/tables/llx_propaldet.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2012 Regis Houssin +-- Copyright (C) 2005-2012 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2012 Cédric Salvador -- diff --git a/htdocs/install/mysql/tables/llx_rights_def.key.sql b/htdocs/install/mysql/tables/llx_rights_def.key.sql index b1d86a0cd04..d68316c7273 100644 --- a/htdocs/install/mysql/tables/llx_rights_def.key.sql +++ b/htdocs/install/mysql/tables/llx_rights_def.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_rights_def.sql b/htdocs/install/mysql/tables/llx_rights_def.sql index 297772730c7..3de223d1606 100644 --- a/htdocs/install/mysql/tables/llx_rights_def.sql +++ b/htdocs/install/mysql/tables/llx_rights_def.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_societe.sql b/htdocs/install/mysql/tables/llx_societe.sql index a05051024eb..6225ae416e8 100644 --- a/htdocs/install/mysql/tables/llx_societe.sql +++ b/htdocs/install/mysql/tables/llx_societe.sql @@ -1,7 +1,7 @@ -- ======================================================================== -- Copyright (C) 2000-2004 Rodolphe Quiedeville -- Copyright (C) 2004-2017 Laurent Destailleur --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- Copyright (C) 2010 Juanjo Menent -- Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> -- Copyright (C) 2015 Marcos García diff --git a/htdocs/install/mysql/tables/llx_societe_address.sql b/htdocs/install/mysql/tables/llx_societe_address.sql index aa596333b2c..8ae2d07f389 100644 --- a/htdocs/install/mysql/tables/llx_societe_address.sql +++ b/htdocs/install/mysql/tables/llx_societe_address.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2000-2004 Rodolphe Quiedeville --- Copyright (C) 2005-2013 Houssin Regis +-- Copyright (C) 2005-2013 Houssin Regis -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_societe_remise.sql b/htdocs/install/mysql/tables/llx_societe_remise.sql index a9d41fcd502..a94ff35085e 100644 --- a/htdocs/install/mysql/tables/llx_societe_remise.sql +++ b/htdocs/install/mysql/tables/llx_societe_remise.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2000-2004 Rodolphe Quiedeville --- Copyright (C) 2011-2016 Regis Houssin +-- Copyright (C) 2011-2016 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_societe_remise_supplier.sql b/htdocs/install/mysql/tables/llx_societe_remise_supplier.sql index c1b56f225c7..1e3e3edd5fe 100644 --- a/htdocs/install/mysql/tables/llx_societe_remise_supplier.sql +++ b/htdocs/install/mysql/tables/llx_societe_remise_supplier.sql @@ -1,6 +1,6 @@ -- ======================================================================== -- Copyright (C) 2000-2004 Rodolphe Quiedeville --- Copyright (C) 2011-2016 Regis Houssin +-- Copyright (C) 2011-2016 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_societe_rib.sql b/htdocs/install/mysql/tables/llx_societe_rib.sql index 2463378067a..57b22493c85 100644 --- a/htdocs/install/mysql/tables/llx_societe_rib.sql +++ b/htdocs/install/mysql/tables/llx_societe_rib.sql @@ -1,6 +1,6 @@ -- ============================================================================= -- Copyright (C) 2000-2004 Rodolphe Quiedeville --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2012 Juanjo Menent -- Copyright (C) 2013 Peter Fontaine -- diff --git a/htdocs/install/mysql/tables/llx_socpeople.sql b/htdocs/install/mysql/tables/llx_socpeople.sql index e0e99993f47..94cf869543d 100644 --- a/htdocs/install/mysql/tables/llx_socpeople.sql +++ b/htdocs/install/mysql/tables/llx_socpeople.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2001-2004 Rodolphe Quiedeville -- Copyright (C) 2008 Laurent Destailleur --- Copyright (C) 2005-2010 Regis Houssin +-- Copyright (C) 2005-2010 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_supplier_proposaldet.key.sql b/htdocs/install/mysql/tables/llx_supplier_proposaldet.key.sql index e6af3c7e515..cb6064c61f2 100644 --- a/htdocs/install/mysql/tables/llx_supplier_proposaldet.key.sql +++ b/htdocs/install/mysql/tables/llx_supplier_proposaldet.key.sql @@ -1,5 +1,5 @@ -- =================================================================== --- Copyright (C) 2009-2011 Regis Houssin +-- Copyright (C) 2009-2011 Regis Houssin -- Copyright (C) 2012 Cédric Salvador -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_tva.sql b/htdocs/install/mysql/tables/llx_tva.sql index 34ab53a5b22..56678f4ffa6 100644 --- a/htdocs/install/mysql/tables/llx_tva.sql +++ b/htdocs/install/mysql/tables/llx_tva.sql @@ -1,6 +1,6 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user.key.sql b/htdocs/install/mysql/tables/llx_user.key.sql index 82d5f28ef06..eaed60a3b0b 100644 --- a/htdocs/install/mysql/tables/llx_user.key.sql +++ b/htdocs/install/mysql/tables/llx_user.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2006-2007 Laurent Destailleur --- Copyright (C) 2007 Regis Houssin +-- Copyright (C) 2007 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user.sql b/htdocs/install/mysql/tables/llx_user.sql index 56a03f81782..90dc8a835ef 100644 --- a/htdocs/install/mysql/tables/llx_user.sql +++ b/htdocs/install/mysql/tables/llx_user.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2001-2003 Rodolphe Quiedeville -- Copyright (C) 2006-2013 Laurent Destailleur --- Copyright (C) 2007-2013 Regis Houssin +-- Copyright (C) 2007-2013 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user_extrafields.key.sql b/htdocs/install/mysql/tables/llx_user_extrafields.key.sql index 3c3d6e8df7f..387934ba9be 100644 --- a/htdocs/install/mysql/tables/llx_user_extrafields.key.sql +++ b/htdocs/install/mysql/tables/llx_user_extrafields.key.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- Copyright (C) 2011 Laurent Destailleur -- -- This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/mysql/tables/llx_user_extrafields.sql b/htdocs/install/mysql/tables/llx_user_extrafields.sql index 9adb684da1b..b3c47a0cf0d 100644 --- a/htdocs/install/mysql/tables/llx_user_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_user_extrafields.sql @@ -1,7 +1,7 @@ -- =================================================================== -- Copyright (C) 2002-2003 Rodolphe Quiedeville -- Copyright (C) 2002-2003 Jean-Louis Bergamo --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user_param.key.sql b/htdocs/install/mysql/tables/llx_user_param.key.sql index 976fea1195b..b37bd16f3f8 100644 --- a/htdocs/install/mysql/tables/llx_user_param.key.sql +++ b/htdocs/install/mysql/tables/llx_user_param.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user_param.sql b/htdocs/install/mysql/tables/llx_user_param.sql index 365f49b060d..7738cab93de 100644 --- a/htdocs/install/mysql/tables/llx_user_param.sql +++ b/htdocs/install/mysql/tables/llx_user_param.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2004 Rodolphe Quiedeville -- Copyright (C) 2004-2017 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user_rights.key.sql b/htdocs/install/mysql/tables/llx_user_rights.key.sql index 8fae1c1a160..51f95566651 100644 --- a/htdocs/install/mysql/tables/llx_user_rights.key.sql +++ b/htdocs/install/mysql/tables/llx_user_rights.key.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_user_rights.sql b/htdocs/install/mysql/tables/llx_user_rights.sql index cedfa8a00c9..092243b2c46 100644 --- a/htdocs/install/mysql/tables/llx_user_rights.sql +++ b/htdocs/install/mysql/tables/llx_user_rights.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2003 Rodolphe Quiedeville --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup.key.sql b/htdocs/install/mysql/tables/llx_usergroup.key.sql index cc0f28bd9d2..c3ee77bd62e 100644 --- a/htdocs/install/mysql/tables/llx_usergroup.key.sql +++ b/htdocs/install/mysql/tables/llx_usergroup.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2009 Regis Houssin +-- Copyright (C) 2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup.sql b/htdocs/install/mysql/tables/llx_usergroup.sql index f82c21eae87..cde18968d43 100644 --- a/htdocs/install/mysql/tables/llx_usergroup.sql +++ b/htdocs/install/mysql/tables/llx_usergroup.sql @@ -1,7 +1,7 @@ -- ============================================================================ -- Copyright (C) 2005 Rodolphe Quiedeville -- Copyright (C) 2005-2017 Laurent Destailleur --- Copyright (C) 2005-2009 Regis Houssin +-- Copyright (C) 2005-2009 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup_rights.key.sql b/htdocs/install/mysql/tables/llx_usergroup_rights.key.sql index f08a6f62637..88da9c98875 100644 --- a/htdocs/install/mysql/tables/llx_usergroup_rights.key.sql +++ b/htdocs/install/mysql/tables/llx_usergroup_rights.key.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup_rights.sql b/htdocs/install/mysql/tables/llx_usergroup_rights.sql index e8a3af37e7c..a139dcc6317 100644 --- a/htdocs/install/mysql/tables/llx_usergroup_rights.sql +++ b/htdocs/install/mysql/tables/llx_usergroup_rights.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005 Laurent Destailleur --- Copyright (C) 2017 Regis Houssin +-- Copyright (C) 2017 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup_user.key.sql b/htdocs/install/mysql/tables/llx_usergroup_user.key.sql index c88ac4004fc..d05b45070d1 100644 --- a/htdocs/install/mysql/tables/llx_usergroup_user.key.sql +++ b/htdocs/install/mysql/tables/llx_usergroup_user.key.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/mysql/tables/llx_usergroup_user.sql b/htdocs/install/mysql/tables/llx_usergroup_user.sql index ce29b211299..335cd58baac 100644 --- a/htdocs/install/mysql/tables/llx_usergroup_user.sql +++ b/htdocs/install/mysql/tables/llx_usergroup_user.sql @@ -1,6 +1,6 @@ -- ============================================================================ -- Copyright (C) 2005 Rodolphe Quiedeville --- Copyright (C) 2011 Regis Houssin +-- Copyright (C) 2011 Regis Houssin -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by diff --git a/htdocs/install/repair.php b/htdocs/install/repair.php index 9014fe1924b..888daa4abe2 100644 --- a/htdocs/install/repair.php +++ b/htdocs/install/repair.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/step1.php b/htdocs/install/step1.php index 34bd117504a..50af0cc7219 100644 --- a/htdocs/install/step1.php +++ b/htdocs/install/step1.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Sebastien Di Cintio - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2015-2016 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/step5.php b/htdocs/install/step5.php index b2d3083a624..97770d39e9d 100644 --- a/htdocs/install/step5.php +++ b/htdocs/install/step5.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Sebastien DiCintio - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015-2016 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/upgrade.php b/htdocs/install/upgrade.php index 5f372f521f8..14856d8b6b7 100644 --- a/htdocs/install/upgrade.php +++ b/htdocs/install/upgrade.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2015-2016 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php index 603d521f5ec..fdffc7af7fd 100644 --- a/htdocs/install/upgrade2.php +++ b/htdocs/install/upgrade2.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2018 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2015-2016 Raphaël Doursenaud * diff --git a/htdocs/livraison/card.php b/htdocs/livraison/card.php index 06b9d6e5682..260c333f362 100644 --- a/htdocs/livraison/card.php +++ b/htdocs/livraison/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2005-2010 Laurent Destailleur * Copyright (C) 2005 Simon TOSSER - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Claudio Aschieri diff --git a/htdocs/livraison/class/livraison.class.php b/htdocs/livraison/class/livraison.class.php index c5e4b36ed25..9968f4d3d38 100644 --- a/htdocs/livraison/class/livraison.class.php +++ b/htdocs/livraison/class/livraison.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2006-2007 Laurent Destailleur * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/loan/note.php b/htdocs/loan/note.php index 2ed8e82f20b..fea8388979b 100644 --- a/htdocs/loan/note.php +++ b/htdocs/loan/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2007 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Frederic France * Copyright (C) 2016-2018 Alexandre Spangaro diff --git a/htdocs/mailmanspip/class/mailmanspip.class.php b/htdocs/mailmanspip/class/mailmanspip.class.php index 2e6cae459c1..213febdc4b5 100644 --- a/htdocs/mailmanspip/class/mailmanspip.class.php +++ b/htdocs/mailmanspip/class/mailmanspip.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 7fbb0cbb07b..20eee6e496e 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2011-2014 Philippe Grand * Copyright (C) 2008 Matteli * Copyright (C) 2011-2016 Juanjo Menent diff --git a/htdocs/master.inc.php b/htdocs/master.inc.php index 56ff709da8a..10ff15fbabf 100644 --- a/htdocs/master.inc.php +++ b/htdocs/master.inc.php @@ -4,7 +4,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2005 Simon Tosser * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/modulebuilder/template/mymoduleindex.php b/htdocs/modulebuilder/template/mymoduleindex.php index b2b9356217e..61413f2393f 100644 --- a/htdocs/modulebuilder/template/mymoduleindex.php +++ b/htdocs/modulebuilder/template/mymoduleindex.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/opensurvey/css/style.css b/htdocs/opensurvey/css/style.css index e790d2d59f8..ab17de0a0ac 100644 --- a/htdocs/opensurvey/css/style.css +++ b/htdocs/opensurvey/css/style.css @@ -1,6 +1,6 @@ /* Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2006 Rodolphe Quiedeville - * Copyright (C) 2007-2012 Regis Houssin + * Copyright (C) 2007-2012 Regis Houssin * Copyright (C) 2011 Philippe Grand * Copyright (C) 2012 Juanjo Menent * diff --git a/htdocs/opensurvey/wizard/index.php b/htdocs/opensurvey/wizard/index.php index f15284e2e83..2e62a02fbae 100644 --- a/htdocs/opensurvey/wizard/index.php +++ b/htdocs/opensurvey/wizard/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2014 Marcos García - * Copyright (C) 2016 Regis Houssin + * Copyright (C) 2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/paybox/lib/paybox.lib.php b/htdocs/paybox/lib/paybox.lib.php index a904c372099..849d8a7129c 100644 --- a/htdocs/paybox/lib/paybox.lib.php +++ b/htdocs/paybox/lib/paybox.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2007 Regis Houssin + * Copyright (C) 2005-2007 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/paypal/admin/paypal.php b/htdocs/paypal/admin/paypal.php index c4fb21c99e5..1669639c52e 100644 --- a/htdocs/paypal/admin/paypal.php +++ b/htdocs/paypal/admin/paypal.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2013 Laurent Destailleur - * Copyright (C) 2011-2012 Regis Houssin + * Copyright (C) 2011-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/paypal/lib/paypal.lib.php b/htdocs/paypal/lib/paypal.lib.php index e99acdedf5d..37cc2fdbeba 100644 --- a/htdocs/paypal/lib/paypal.lib.php +++ b/htdocs/paypal/lib/paypal.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011-2012 Regis Houssin + * Copyright (C) 2011-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/paypal/lib/paypalfunctions.lib.php b/htdocs/paypal/lib/paypalfunctions.lib.php index 92b24ec60fb..00f67bfa1f0 100644 --- a/htdocs/paypal/lib/paypalfunctions.lib.php +++ b/htdocs/paypal/lib/paypalfunctions.lib.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index 45f938431c3..334640e87d3 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -3,7 +3,7 @@ * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2006-2007 Rodolphe Quiedeville * Copyright (C) 2007 Auguria SARL - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2012 Cedric Salvador diff --git a/htdocs/product/admin/product_extrafields.php b/htdocs/product/admin/product_extrafields.php index 82eafd230d7..23780df895e 100644 --- a/htdocs/product/admin/product_extrafields.php +++ b/htdocs/product/admin/product_extrafields.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2012 Marcos García - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/admin/product_lot_extrafields.php b/htdocs/product/admin/product_lot_extrafields.php index 8e57daf7491..911c96e1b88 100644 --- a/htdocs/product/admin/product_lot_extrafields.php +++ b/htdocs/product/admin/product_lot_extrafields.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2012 Marcos García - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/admin/product_tools.php b/htdocs/product/admin/product_tools.php index b0c62c81d4f..4ab8698f4cb 100644 --- a/htdocs/product/admin/product_tools.php +++ b/htdocs/product/admin/product_tools.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2012 Regis Houssin * Copyright (C) 2013-2015 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/agenda.php b/htdocs/product/agenda.php index 2dfe8aa425f..64ff9c66119 100644 --- a/htdocs/product/agenda.php +++ b/htdocs/product/agenda.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/product/ajax/products.php b/htdocs/product/ajax/products.php index cce0f4254a0..6a286d6e7d2 100644 --- a/htdocs/product/ajax/products.php +++ b/htdocs/product/ajax/products.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2007-2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/canvas/product/actions_card_product.class.php b/htdocs/product/canvas/product/actions_card_product.class.php index bcd9773c719..cf9fcff98c8 100644 --- a/htdocs/product/canvas/product/actions_card_product.class.php +++ b/htdocs/product/canvas/product/actions_card_product.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/product/tpl/card_create.tpl.php b/htdocs/product/canvas/product/tpl/card_create.tpl.php index dbaaed35319..ca668037e93 100644 --- a/htdocs/product/canvas/product/tpl/card_create.tpl.php +++ b/htdocs/product/canvas/product/tpl/card_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/product/tpl/card_edit.tpl.php b/htdocs/product/canvas/product/tpl/card_edit.tpl.php index f114020a4bc..36a4b7543c6 100644 --- a/htdocs/product/canvas/product/tpl/card_edit.tpl.php +++ b/htdocs/product/canvas/product/tpl/card_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/product/tpl/card_view.tpl.php b/htdocs/product/canvas/product/tpl/card_view.tpl.php index 61964399e1c..082a983305b 100644 --- a/htdocs/product/canvas/product/tpl/card_view.tpl.php +++ b/htdocs/product/canvas/product/tpl/card_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/service/actions_card_service.class.php b/htdocs/product/canvas/service/actions_card_service.class.php index 2f0489b6f91..7ba746af06e 100644 --- a/htdocs/product/canvas/service/actions_card_service.class.php +++ b/htdocs/product/canvas/service/actions_card_service.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/service/tpl/card_create.tpl.php b/htdocs/product/canvas/service/tpl/card_create.tpl.php index f748edc03e6..79f40d4f6e0 100644 --- a/htdocs/product/canvas/service/tpl/card_create.tpl.php +++ b/htdocs/product/canvas/service/tpl/card_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/service/tpl/card_edit.tpl.php b/htdocs/product/canvas/service/tpl/card_edit.tpl.php index 969ce3de2da..2c48be3e0ef 100644 --- a/htdocs/product/canvas/service/tpl/card_edit.tpl.php +++ b/htdocs/product/canvas/service/tpl/card_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/canvas/service/tpl/card_view.tpl.php b/htdocs/product/canvas/service/tpl/card_view.tpl.php index 5826d78583f..02cefb38e7d 100644 --- a/htdocs/product/canvas/service/tpl/card_view.tpl.php +++ b/htdocs/product/canvas/service/tpl/card_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/card.php b/htdocs/product/card.php index 31d2d7509c9..f94c34d1804 100644 --- a/htdocs/product/card.php +++ b/htdocs/product/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2006 Auguria SARL * Copyright (C) 2010-2015 Juanjo Menent diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 805d5d214a2..f68464e3bc1 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2007-2011 Jean Heimburger * Copyright (C) 2010-2018 Juanjo Menent diff --git a/htdocs/product/composition/card.php b/htdocs/product/composition/card.php index d2ef4210e9c..521b9dfeca7 100644 --- a/htdocs/product/composition/card.php +++ b/htdocs/product/composition/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2011-2014 Juanjo Menent * Copyright (C) 2015 Raphaël Doursenaud diff --git a/htdocs/product/document.php b/htdocs/product/document.php index d0bc7b3f9be..1e426e512cb 100644 --- a/htdocs/product/document.php +++ b/htdocs/product/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/product/fournisseurs.php b/htdocs/product/fournisseurs.php index 7ad740eab0a..26346b1017b 100644 --- a/htdocs/product/fournisseurs.php +++ b/htdocs/product/fournisseurs.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010-2012 Juanjo Menent * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2014 Ion Agorria diff --git a/htdocs/product/index.php b/htdocs/product/index.php index 2089193e208..8fb1fe7dd12 100644 --- a/htdocs/product/index.php +++ b/htdocs/product/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2014-2016 Charlie BENKE * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 562d09056c7..a20308c72a9 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012-2016 Marcos García * Copyright (C) 2013-2018 Juanjo Menent * Copyright (C) 2013-2015 Raphaël Doursenaud diff --git a/htdocs/product/note.php b/htdocs/product/note.php index 8bf30c3d6e0..e77360b46be 100644 --- a/htdocs/product/note.php +++ b/htdocs/product/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Marcos García diff --git a/htdocs/product/popuprop.php b/htdocs/product/popuprop.php index 0d54808ecef..687054d1cde 100644 --- a/htdocs/product/popuprop.php +++ b/htdocs/product/popuprop.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2003 Rodolphe Quiedeville * Copyright (C) 2004-2005 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Marcos García * Copyright (C) 2015 Jean-François Ferry * diff --git a/htdocs/product/price.php b/htdocs/product/price.php index 561e6663b42..06f49757d5a 100644 --- a/htdocs/product/price.php +++ b/htdocs/product/price.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2014 Florian Henry * Copyright (C) 2014-2018 Juanjo Menent diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 662873b7cf8..71482d6c86a 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Raphaël Doursenaud * diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index 24aa1864a02..2f1827d2647 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Raphaël Doursenaud * Copyright (C) 2016 Ferran Marcet diff --git a/htdocs/product/stats/card.php b/htdocs/product/stats/card.php index e7c50e8309e..40848e6bb81 100644 --- a/htdocs/product/stats/card.php +++ b/htdocs/product/stats/card.php @@ -1,7 +1,7 @@ * Copyright (c) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005 Eric Seigne * Copyright (C) 2013 Juanjo Menent * diff --git a/htdocs/product/stats/commande.php b/htdocs/product/stats/commande.php index f85fb375b5a..083dcd6ea52 100644 --- a/htdocs/product/stats/commande.php +++ b/htdocs/product/stats/commande.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stats/commande_fournisseur.php b/htdocs/product/stats/commande_fournisseur.php index ed49d34fbc3..21bb3f6fd9a 100644 --- a/htdocs/product/stats/commande_fournisseur.php +++ b/htdocs/product/stats/commande_fournisseur.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stats/contrat.php b/htdocs/product/stats/contrat.php index 55ae3a29939..86e8e0ed616 100644 --- a/htdocs/product/stats/contrat.php +++ b/htdocs/product/stats/contrat.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/stats/facture.php b/htdocs/product/stats/facture.php index fa4e468a5f9..cd2dc221bb9 100644 --- a/htdocs/product/stats/facture.php +++ b/htdocs/product/stats/facture.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Florian Henry * diff --git a/htdocs/product/stats/facture_fournisseur.php b/htdocs/product/stats/facture_fournisseur.php index b3f8d1e41c0..95bea4650c4 100644 --- a/htdocs/product/stats/facture_fournisseur.php +++ b/htdocs/product/stats/facture_fournisseur.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Florian Henry * diff --git a/htdocs/product/stats/propal.php b/htdocs/product/stats/propal.php index a58bb01961e..1c2d0f56e3c 100644 --- a/htdocs/product/stats/propal.php +++ b/htdocs/product/stats/propal.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stats/supplier_proposal.php b/htdocs/product/stats/supplier_proposal.php index ca165a7cfd1..55cafd034cf 100644 --- a/htdocs/product/stats/supplier_proposal.php +++ b/htdocs/product/stats/supplier_proposal.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index 25e22faabcc..6977ac28acf 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2006 Rodolphe Quiedeville * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005 Simon Tosser - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2016 Francis Appels * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stock/class/entrepot.class.php b/htdocs/product/stock/class/entrepot.class.php index 3f298aed85d..9bc0fd8477f 100644 --- a/htdocs/product/stock/class/entrepot.class.php +++ b/htdocs/product/stock/class/entrepot.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2008 Regis Houssin + * Copyright (C) 2005-2008 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2016 Francis Appels * diff --git a/htdocs/product/stock/index.php b/htdocs/product/stock/index.php index c85f40ef9c2..61990fa1cfb 100644 --- a/htdocs/product/stock/index.php +++ b/htdocs/product/stock/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/stock/list.php b/htdocs/product/stock/list.php index ca6cad1d664..5682b6855d3 100644 --- a/htdocs/product/stock/list.php +++ b/htdocs/product/stock/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2015 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/product/stock/massstockmove.php b/htdocs/product/stock/massstockmove.php index e456f966cf5..66ed28b8ec8 100644 --- a/htdocs/product/stock/massstockmove.php +++ b/htdocs/product/stock/massstockmove.php @@ -1,6 +1,6 @@ - * Copyright (C) 2014 Regis Houssin + * Copyright (C) 2014 Regis Houssin * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index 27c50d075aa..547bf09441d 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2014 Regis Houssin + * Copyright (C) 2005-2014 Regis Houssin * Copyright (C) 2015 Juanjo Menent * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/product/stock/product.php b/htdocs/product/stock/product.php index beb3135d9f4..7f3f3d99ebf 100644 --- a/htdocs/product/stock/product.php +++ b/htdocs/product/stock/product.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Simon TOSSER - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2013-2018 Juanjo Menent * Copyright (C) 2014-2015 Cédric Gross diff --git a/htdocs/product/stock/productlot_document.php b/htdocs/product/stock/productlot_document.php index 1ce4f9ba224..29b01e376b1 100644 --- a/htdocs/product/stock/productlot_document.php +++ b/htdocs/product/stock/productlot_document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/product/stock/replenish.php b/htdocs/product/stock/replenish.php index 994edfa823e..90bbe063e67 100644 --- a/htdocs/product/stock/replenish.php +++ b/htdocs/product/stock/replenish.php @@ -1,7 +1,7 @@ * Copyright (C) 2013-2018 Laurent Destaileur - * Copyright (C) 2014 Regis Houssin + * Copyright (C) 2014 Regis Houssin * Copyright (C) 2016 Juanjo Menent * Copyright (C) 2016 ATM Consulting * diff --git a/htdocs/product/stock/replenishorders.php b/htdocs/product/stock/replenishorders.php index 316d463fb27..a028ab13031 100644 --- a/htdocs/product/stock/replenishorders.php +++ b/htdocs/product/stock/replenishorders.php @@ -1,7 +1,7 @@ - * Copyright (C) 2014 Regis Houssin + * Copyright (C) 2014 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software: you can redistribute it and/or modify diff --git a/htdocs/product/stock/valo.php b/htdocs/product/stock/valo.php index 09524c5066a..45f96510e38 100644 --- a/htdocs/product/stock/valo.php +++ b/htdocs/product/stock/valo.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/product/traduction.php b/htdocs/product/traduction.php index 9f18f644e4c..855675be956 100644 --- a/htdocs/product/traduction.php +++ b/htdocs/product/traduction.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2007 Rodolphe Quiedeville * Copyright (C) 2010-2012 Destailleur Laurent * Copyright (C) 2014 Henry Florian diff --git a/htdocs/projet/activity/index.php b/htdocs/projet/activity/index.php index e43700287cb..f5897650740 100644 --- a/htdocs/projet/activity/index.php +++ b/htdocs/projet/activity/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2015 Laurent Destailleur - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/activity/perday.php b/htdocs/projet/activity/perday.php index 623838f8149..0ebfa37bef8 100644 --- a/htdocs/projet/activity/perday.php +++ b/htdocs/projet/activity/perday.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010 François Legastelois * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/projet/activity/perweek.php b/htdocs/projet/activity/perweek.php index 214879c7f92..f68c899992b 100644 --- a/htdocs/projet/activity/perweek.php +++ b/htdocs/projet/activity/perweek.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010 François Legastelois * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/projet/admin/project.php b/htdocs/projet/admin/project.php index f82a71514c4..71755fbdca3 100644 --- a/htdocs/projet/admin/project.php +++ b/htdocs/projet/admin/project.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2014 Regis Houssin * Copyright (C) 2011-2016 Laurent Destailleur * Copyright (C) 2011-2015 Juanjo Menent * Copyright (C) 2011-2018 Philippe Grand diff --git a/htdocs/projet/admin/project_extrafields.php b/htdocs/projet/admin/project_extrafields.php index 15ccd50bf76..00a0853ce19 100644 --- a/htdocs/projet/admin/project_extrafields.php +++ b/htdocs/projet/admin/project_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Juanjo Menent * diff --git a/htdocs/projet/admin/project_task_extrafields.php b/htdocs/projet/admin/project_task_extrafields.php index 90729840035..3a5b3c5749f 100644 --- a/htdocs/projet/admin/project_task_extrafields.php +++ b/htdocs/projet/admin/project_task_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Juanjo Menent * diff --git a/htdocs/projet/ajax/projects.php b/htdocs/projet/ajax/projects.php index f2417df5353..46699ba01dd 100644 --- a/htdocs/projet/ajax/projects.php +++ b/htdocs/projet/ajax/projects.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2007-2011 Laurent Destailleur * Copyright (C) 2014-2015 Marcos García * diff --git a/htdocs/projet/card.php b/htdocs/projet/card.php index 7aaa6805189..8bf377a9844 100644 --- a/htdocs/projet/card.php +++ b/htdocs/projet/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index ab47079c9d0..84b47429211 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2017 Marcos García * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index c5a7a334eb0..50c7f0d007f 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2014 Marcos García * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/projet/comment.php b/htdocs/projet/comment.php index f6cd6ac0005..4d13161042d 100644 --- a/htdocs/projet/comment.php +++ b/htdocs/projet/comment.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/contact.php b/htdocs/projet/contact.php index 4b9aaf58b8b..cd2e722ecd3 100644 --- a/htdocs/projet/contact.php +++ b/htdocs/projet/contact.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2012-2015 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/projet/document.php b/htdocs/projet/document.php index af9f7c2d8fc..47188547d8d 100644 --- a/htdocs/projet/document.php +++ b/htdocs/projet/document.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2012 Laurent Destailleur * Copyright (C) 2013 Cédric Salvador * diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 7c44fb9850b..93142d8189f 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2012-2016 Juanjo Menent * Copyright (C) 2015-2018 Alexandre Spangaro * Copyright (C) 2015 Marcos García diff --git a/htdocs/projet/ganttview.php b/htdocs/projet/ganttview.php index 00f568271e0..723b96c6b44 100644 --- a/htdocs/projet/ganttview.php +++ b/htdocs/projet/ganttview.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/index.php b/htdocs/projet/index.php index 50143057205..e613c5642ad 100644 --- a/htdocs/projet/index.php +++ b/htdocs/projet/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/info.php b/htdocs/projet/info.php index 7aa0dccd67d..1f9b35b8420 100644 --- a/htdocs/projet/info.php +++ b/htdocs/projet/info.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 5a13b16560d..2c8fb856938 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Bariley / Ocebo - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Claudio Aschieri * Copyright (C) 2018 Ferran Marcet diff --git a/htdocs/projet/note.php b/htdocs/projet/note.php index 4d455bdcbc7..adbd98c37c8 100644 --- a/htdocs/projet/note.php +++ b/htdocs/projet/note.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index 47c88885bc4..540cb888784 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/tasks/comment.php b/htdocs/projet/tasks/comment.php index ba54b35a59e..9bdb1c2cec0 100644 --- a/htdocs/projet/tasks/comment.php +++ b/htdocs/projet/tasks/comment.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/tasks/contact.php b/htdocs/projet/tasks/contact.php index d86c8b469ae..82c722f2485 100644 --- a/htdocs/projet/tasks/contact.php +++ b/htdocs/projet/tasks/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2015 Laurent Destailleur - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/tasks/document.php b/htdocs/projet/tasks/document.php index a186c89988f..b8ff9a175ab 100644 --- a/htdocs/projet/tasks/document.php +++ b/htdocs/projet/tasks/document.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2006-2012 Laurent Destailleur * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/projet/tasks/list.php b/htdocs/projet/tasks/list.php index 2366ccc738b..ea6236d3e18 100644 --- a/htdocs/projet/tasks/list.php +++ b/htdocs/projet/tasks/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2016 Laurent Destailleur - * Copyright (C) 2006-2010 Regis Houssin + * Copyright (C) 2006-2010 Regis Houssin * Copyright (C) 2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/projet/tasks/note.php b/htdocs/projet/tasks/note.php index 668c2a96d83..b19d3ed5b0a 100644 --- a/htdocs/projet/tasks/note.php +++ b/htdocs/projet/tasks/note.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/projet/tasks/task.php b/htdocs/projet/tasks/task.php index fa9796449db..73ce4a562e4 100644 --- a/htdocs/projet/tasks/task.php +++ b/htdocs/projet/tasks/task.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/projet/tasks/time.php b/htdocs/projet/tasks/time.php index 7ff93c7b4da..4ac6f8a4621 100644 --- a/htdocs/projet/tasks/time.php +++ b/htdocs/projet/tasks/time.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2018 Laurent Destailleur - * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2018 Ferran Marcet * Copyright (C) 2018 Frédéric France diff --git a/htdocs/public/cron/cron_run_jobs.php b/htdocs/public/cron/cron_run_jobs.php index df207e87d85..57cde107f24 100644 --- a/htdocs/public/cron/cron_run_jobs.php +++ b/htdocs/public/cron/cron_run_jobs.php @@ -2,7 +2,7 @@ /* Copyright (C) 2012 Nicolas Villa aka Boyquotes http://informetic.fr * Copyright (C) 2013 Florian Henry * Copyright (C) 2013-2015 Laurent Destailleur - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/demo/index.php b/htdocs/public/demo/index.php index f9169bb47d2..0409e849df0 100644 --- a/htdocs/public/demo/index.php +++ b/htdocs/public/demo/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2010 Regis Houssin + * Copyright (C) 2010 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/public/members/new.php b/htdocs/public/members/new.php index f2395020bda..78b3ceb75db 100644 --- a/htdocs/public/members/new.php +++ b/htdocs/public/members/new.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2001-2002 Jean-Louis Bergamo * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 J. Fernando Lagrange * Copyright (C) 2018 Frédéric France * diff --git a/htdocs/public/members/public_card.php b/htdocs/public/members/public_card.php index bc8fd0cde17..c7a9fa45b3a 100644 --- a/htdocs/public/members/public_card.php +++ b/htdocs/public/members/public_card.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2003 Rodolphe Quiedeville * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2007-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/members/public_list.php b/htdocs/public/members/public_list.php index 6ba46182427..6481851900a 100644 --- a/htdocs/public/members/public_list.php +++ b/htdocs/public/members/public_list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2003 Rodolphe Quiedeville * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/onlinesign/newonlinesign.php b/htdocs/public/onlinesign/newonlinesign.php index 277cd1ada78..b580a508ed0 100644 --- a/htdocs/public/onlinesign/newonlinesign.php +++ b/htdocs/public/onlinesign/newonlinesign.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/paybox/newpayment.php b/htdocs/public/paybox/newpayment.php index 3dc990c30f4..7693660b4ee 100644 --- a/htdocs/public/paybox/newpayment.php +++ b/htdocs/public/paybox/newpayment.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2012 Laurent Destailleur - * Copyright (C) 2009 Regis Houssin + * Copyright (C) 2009 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 0975186eb03..836540e6a58 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/payment/paymentko.php b/htdocs/public/payment/paymentko.php index 33fc1fb5101..cd220a5764f 100644 --- a/htdocs/public/payment/paymentko.php +++ b/htdocs/public/payment/paymentko.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/payment/paymentok.php b/htdocs/public/payment/paymentok.php index 36723658946..a1fd65940d9 100644 --- a/htdocs/public/payment/paymentok.php +++ b/htdocs/public/payment/paymentok.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/paypal/newpayment.php b/htdocs/public/paypal/newpayment.php index 1a3ee3964ff..1ec8f058408 100644 --- a/htdocs/public/paypal/newpayment.php +++ b/htdocs/public/paypal/newpayment.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2017 Laurent Destailleur - * Copyright (C) 2009-2012 Regis Houssin + * Copyright (C) 2009-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/paypal/paymentko.php b/htdocs/public/paypal/paymentko.php index 03645244e91..16f360dd0d9 100644 --- a/htdocs/public/paypal/paymentko.php +++ b/htdocs/public/paypal/paymentko.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/public/paypal/paymentok.php b/htdocs/public/paypal/paymentok.php index 72a43dcbc7b..da815b061a7 100644 --- a/htdocs/public/paypal/paymentok.php +++ b/htdocs/public/paypal/paymentok.php @@ -1,7 +1,7 @@ * Copyright (C) 2006-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/resource/agenda.php b/htdocs/resource/agenda.php index 442be89f923..f4980e698da 100644 --- a/htdocs/resource/agenda.php +++ b/htdocs/resource/agenda.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/resource/contact.php b/htdocs/resource/contact.php index a90d68ff94c..e4f588b7f0d 100644 --- a/htdocs/resource/contact.php +++ b/htdocs/resource/contact.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007-2009 Laurent Destailleur * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2016 Gilles Poirier diff --git a/htdocs/resource/document.php b/htdocs/resource/document.php index 85ec5b96c79..1d2c3efd9e7 100644 --- a/htdocs/resource/document.php +++ b/htdocs/resource/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2007 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2005 Simon TOSSER * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2013 Cédric Salvador diff --git a/htdocs/resource/note.php b/htdocs/resource/note.php index f811d0e07ed..79ba2b159a8 100644 --- a/htdocs/resource/note.php +++ b/htdocs/resource/note.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2016 Laurent Destailleur * Copyright (C) 2013 Florian Henry diff --git a/htdocs/societe/admin/contact_extrafields.php b/htdocs/societe/admin/contact_extrafields.php index 5eaba3c1cb1..2cd65982c8e 100644 --- a/htdocs/societe/admin/contact_extrafields.php +++ b/htdocs/societe/admin/contact_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/admin/societe.php b/htdocs/societe/admin/societe.php index 0166b6a233a..dac7f9ea126 100644 --- a/htdocs/societe/admin/societe.php +++ b/htdocs/societe/admin/societe.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/admin/societe_extrafields.php b/htdocs/societe/admin/societe_extrafields.php index 0835df13e22..1ae10d10703 100644 --- a/htdocs/societe/admin/societe_extrafields.php +++ b/htdocs/societe/admin/societe_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/agenda.php b/htdocs/societe/agenda.php index ffcd894e84a..d682ad43d4d 100644 --- a/htdocs/societe/agenda.php +++ b/htdocs/societe/agenda.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/societe/ajax/company.php b/htdocs/societe/ajax/company.php index d62c8a445d6..2cfdce9c01c 100644 --- a/htdocs/societe/ajax/company.php +++ b/htdocs/societe/ajax/company.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007-2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/ajaxcompanies.php b/htdocs/societe/ajaxcompanies.php index 9d38a97a0a0..15ef4dd19e7 100644 --- a/htdocs/societe/ajaxcompanies.php +++ b/htdocs/societe/ajaxcompanies.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2007-2010 Laurent Destailleur * Copyright (C) 2010 Cyrille de Lambert * diff --git a/htdocs/societe/ajaxcountries.php b/htdocs/societe/ajaxcountries.php index b9d1bf5fc8c..f67d01facce 100644 --- a/htdocs/societe/ajaxcountries.php +++ b/htdocs/societe/ajaxcountries.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/actions_card_common.class.php b/htdocs/societe/canvas/actions_card_common.class.php index 92d009db604..ffcd7c7a00f 100644 --- a/htdocs/societe/canvas/actions_card_common.class.php +++ b/htdocs/societe/canvas/actions_card_common.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2011-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/company/actions_card_company.class.php b/htdocs/societe/canvas/company/actions_card_company.class.php index 09172f1ea5a..c8b1a296e24 100644 --- a/htdocs/societe/canvas/company/actions_card_company.class.php +++ b/htdocs/societe/canvas/company/actions_card_company.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2011 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/company/tpl/card_create.tpl.php b/htdocs/societe/canvas/company/tpl/card_create.tpl.php index 795acefb43c..5007fe32af4 100644 --- a/htdocs/societe/canvas/company/tpl/card_create.tpl.php +++ b/htdocs/societe/canvas/company/tpl/card_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2010-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/company/tpl/card_edit.tpl.php b/htdocs/societe/canvas/company/tpl/card_edit.tpl.php index 6edf5a16b2e..f06b6aa5446 100644 --- a/htdocs/societe/canvas/company/tpl/card_edit.tpl.php +++ b/htdocs/societe/canvas/company/tpl/card_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2010-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/company/tpl/card_view.tpl.php b/htdocs/societe/canvas/company/tpl/card_view.tpl.php index 24ddfbaaaac..26cf6bb6787 100644 --- a/htdocs/societe/canvas/company/tpl/card_view.tpl.php +++ b/htdocs/societe/canvas/company/tpl/card_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/canvas/individual/actions_card_individual.class.php b/htdocs/societe/canvas/individual/actions_card_individual.class.php index 5fd7ee01faf..6107d8ac8b1 100644 --- a/htdocs/societe/canvas/individual/actions_card_individual.class.php +++ b/htdocs/societe/canvas/individual/actions_card_individual.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/canvas/individual/tpl/card_create.tpl.php b/htdocs/societe/canvas/individual/tpl/card_create.tpl.php index 121422c520f..b1d02006f16 100644 --- a/htdocs/societe/canvas/individual/tpl/card_create.tpl.php +++ b/htdocs/societe/canvas/individual/tpl/card_create.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2010-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/individual/tpl/card_edit.tpl.php b/htdocs/societe/canvas/individual/tpl/card_edit.tpl.php index 11d6a0430ca..7319b394d56 100644 --- a/htdocs/societe/canvas/individual/tpl/card_edit.tpl.php +++ b/htdocs/societe/canvas/individual/tpl/card_edit.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010 Regis Houssin * Copyright (C) 2010-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/societe/canvas/individual/tpl/card_view.tpl.php b/htdocs/societe/canvas/individual/tpl/card_view.tpl.php index fd9b3487f50..18023d93978 100644 --- a/htdocs/societe/canvas/individual/tpl/card_view.tpl.php +++ b/htdocs/societe/canvas/individual/tpl/card_view.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 5935a1d01a1..d267dba7732 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Brian Fraval * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2008 Patrick Raguin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011-2013 Alexandre Spangaro diff --git a/htdocs/societe/class/address.class.php b/htdocs/societe/class/address.class.php index 4f9915a844c..b381e7cf8a2 100644 --- a/htdocs/societe/class/address.class.php +++ b/htdocs/societe/class/address.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2014 Laurent Destailleur - * Copyright (C) 2005-2011 Regis Houssin + * Copyright (C) 2005-2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/class/client.class.php b/htdocs/societe/class/client.class.php index 400dc65b0c2..39a90c43eb9 100644 --- a/htdocs/societe/class/client.class.php +++ b/htdocs/societe/class/client.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/societe/class/companybankaccount.class.php b/htdocs/societe/class/companybankaccount.class.php index 73210ade104..2891724ac7e 100644 --- a/htdocs/societe/class/companybankaccount.class.php +++ b/htdocs/societe/class/companybankaccount.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2010-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Peter Fontaine * Copyright (C) 2016 Marcos García * diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index dd1aada283b..59e79376411 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -4,7 +4,7 @@ * Copyright (C) 2004 Eric Seigne * Copyright (C) 2003 Brian Fraval * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2008 Patrick Raguin * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2013 Florian Henry diff --git a/htdocs/societe/contact.php b/htdocs/societe/contact.php index 24ec0026455..4077a0b1815 100644 --- a/htdocs/societe/contact.php +++ b/htdocs/societe/contact.php @@ -3,7 +3,7 @@ * Copyright (C) 2003 Brian Fraval * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2008 Patrick Raguin * Copyright (C) 2010-2016 Juanjo Menent * Copyright (C) 2011-2013 Alexandre Spangaro diff --git a/htdocs/societe/document.php b/htdocs/societe/document.php index a9aae7a8654..04e5b78682e 100644 --- a/htdocs/societe/document.php +++ b/htdocs/societe/document.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2015 Marcos García diff --git a/htdocs/societe/index.php b/htdocs/societe/index.php index 0759008c435..6c429e35a22 100644 --- a/htdocs/societe/index.php +++ b/htdocs/societe/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2014 Charles-Fr Benke * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Ferran Marcet diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 684f6f8c471..30c3c06675b 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2013-2015 Raphaël Doursenaud * Copyright (C) 2015 Florian Henry diff --git a/htdocs/societe/note.php b/htdocs/societe/note.php index 169d2b687e9..9f1adb16fc7 100644 --- a/htdocs/societe/note.php +++ b/htdocs/societe/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Florian Henry * Copyright (C) 2015 Marcos García diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 13fdf048382..0853b7ee571 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2004 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Peter Fontaine * Copyright (C) 2015-2016 Marcos García * Copyright (C) 2017 Ferran Marcet diff --git a/htdocs/societe/price.php b/htdocs/societe/price.php index a9b280a3f47..92bad9ecf61 100644 --- a/htdocs/societe/price.php +++ b/htdocs/societe/price.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2007 Rodolphe Quiedeville * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005 Eric Seigne - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2015 Marcos García * diff --git a/htdocs/societe/project.php b/htdocs/societe/project.php index f92d274fe46..97e6817f5d5 100644 --- a/htdocs/societe/project.php +++ b/htdocs/societe/project.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/societe/societecontact.php b/htdocs/societe/societecontact.php index edfa2f28d5c..630b8fa4723 100644 --- a/htdocs/societe/societecontact.php +++ b/htdocs/societe/societecontact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011-2015 Philippe Grand * Copyright (C) 2014 Charles-Fr Benke * Copyright (C) 2015 Marcos García diff --git a/htdocs/societe/website.php b/htdocs/societe/website.php index 760bfef4d27..3f6f3ba197a 100644 --- a/htdocs/societe/website.php +++ b/htdocs/societe/website.php @@ -1,7 +1,7 @@ * Copyright (C) 2005 Brice Davoleau - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin * Copyright (C) 2010 Juanjo Menent diff --git a/htdocs/stripe/class/actions_stripe.class.php b/htdocs/stripe/class/actions_stripe.class.php index a74b2d52eef..3ecb02a6300 100644 --- a/htdocs/stripe/class/actions_stripe.class.php +++ b/htdocs/stripe/class/actions_stripe.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2009-2016 Regis Houssin * Copyright (C) 2011 Herve Prot * Copyright (C) 2014 Philippe Grand * diff --git a/htdocs/stripe/payment.php b/htdocs/stripe/payment.php index 9a7ecfd5470..8bada8a96e7 100644 --- a/htdocs/stripe/payment.php +++ b/htdocs/stripe/payment.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2006 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke * Copyright (C) 2012 Cédric Salvador * Copyright (C) 2014 Raphaël Doursenaud diff --git a/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php b/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php index 24ae20848f1..d5d208b945e 100644 --- a/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php +++ b/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php b/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php index 7d153a78cdc..531151740b6 100644 --- a/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php +++ b/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2013 Philippe Grand * Copyright (C) 2013 Florian Henry diff --git a/htdocs/supplier_proposal/card.php b/htdocs/supplier_proposal/card.php index 248165727cf..99e99517f75 100644 --- a/htdocs/supplier_proposal/card.php +++ b/htdocs/supplier_proposal/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2010-2011 Philippe Grand diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index a05d0485aaf..82b8b09220d 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -3,7 +3,7 @@ * Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005 Marc Barilley - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2008 Raphael Bertrand * Copyright (C) 2010-2015 Juanjo Menent diff --git a/htdocs/supplier_proposal/contact.php b/htdocs/supplier_proposal/contact.php index 881fae4d1a7..7e862e7682d 100644 --- a/htdocs/supplier_proposal/contact.php +++ b/htdocs/supplier_proposal/contact.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2018 Destailleur Laurent - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/supplier_proposal/document.php b/htdocs/supplier_proposal/document.php index cf500246290..63d1f96893a 100644 --- a/htdocs/supplier_proposal/document.php +++ b/htdocs/supplier_proposal/document.php @@ -2,7 +2,7 @@ /* Copyright (C) 2003-2004 Rodolphe Quiedeville * Copyright (C) 2004-2009 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/supplier_proposal/index.php b/htdocs/supplier_proposal/index.php index cec80662c41..2eb2fb05032 100644 --- a/htdocs/supplier_proposal/index.php +++ b/htdocs/supplier_proposal/index.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2011 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/supplier_proposal/info.php b/htdocs/supplier_proposal/info.php index 95a753272be..43e6a70f3c3 100644 --- a/htdocs/supplier_proposal/info.php +++ b/htdocs/supplier_proposal/info.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/supplier_proposal/list.php b/htdocs/supplier_proposal/list.php index 2fcb296b433..9dea9c7f8dd 100644 --- a/htdocs/supplier_proposal/list.php +++ b/htdocs/supplier_proposal/list.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Marc Barilley / Ocebo - * Copyright (C) 2005-2013 Regis Houssin + * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2010-2011 Philippe Grand diff --git a/htdocs/supplier_proposal/note.php b/htdocs/supplier_proposal/note.php index ff531b05d83..e57c5260013 100644 --- a/htdocs/supplier_proposal/note.php +++ b/htdocs/supplier_proposal/note.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2017 Ferran Marcet * diff --git a/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php b/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php index 794ed96f3ec..33ab23bd962 100644 --- a/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php +++ b/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2011 Regis Houssin * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2014 Marcos García * diff --git a/htdocs/support/index.php b/htdocs/support/index.php index bc0ef1a79c5..9b7142acd2f 100644 --- a/htdocs/support/index.php +++ b/htdocs/support/index.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/takepos/admin/orderprinters.php b/htdocs/takepos/admin/orderprinters.php index 4c72031b41b..a37a1d71c61 100644 --- a/htdocs/takepos/admin/orderprinters.php +++ b/htdocs/takepos/admin/orderprinters.php @@ -3,7 +3,7 @@ * Copyright (C) 2005 Eric Seigne * Copyright (C) 2006-2016 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Raphaël Doursenaud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/takepos/customers.php b/htdocs/takepos/customers.php index f5bcb8557cf..99b6d1eaf89 100644 --- a/htdocs/takepos/customers.php +++ b/htdocs/takepos/customers.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2013-2015 Raphaël Doursenaud * Copyright (C) 2015 Florian Henry diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 9eba59317bc..4d80f57b342 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1,7 +1,7 @@ * Copyright (C) 2006 Rodolphe Quiedeville - * Copyright (C) 2007-2017 Regis Houssin + * Copyright (C) 2007-2017 Regis Houssin * Copyright (C) 2011 Philippe Grand * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2018 Ferran Marcet diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 80a79b0245a..e6842d97fe3 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1,7 +1,7 @@ * Copyright (C) 2006 Rodolphe Quiedeville - * Copyright (C) 2007-2017 Regis Houssin + * Copyright (C) 2007-2017 Regis Houssin * Copyright (C) 2011 Philippe Grand * Copyright (C) 2012 Juanjo Menent * Copyright (C) 2015 Alexandre Spangaro diff --git a/htdocs/ticket/contact.php b/htdocs/ticket/contact.php index 22199bed745..e836db4e1be 100644 --- a/htdocs/ticket/contact.php +++ b/htdocs/ticket/contact.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * Copyright (C) 2016 Christophe Battarel * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/ticket/document.php b/htdocs/ticket/document.php index d1d80387f6e..69b06e431bc 100644 --- a/htdocs/ticket/document.php +++ b/htdocs/ticket/document.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013-2016 Jean-François Ferry * diff --git a/htdocs/ticket/list.php b/htdocs/ticket/list.php index 1b43d0054b7..9d7391f693e 100644 --- a/htdocs/ticket/list.php +++ b/htdocs/ticket/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2016 Christophe Battarel - * Copyright (C) 2018 Regis Houssin + * Copyright (C) 2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/ticket/tpl/linkedobjectblock.tpl.php b/htdocs/ticket/tpl/linkedobjectblock.tpl.php index dd9f340429e..07ee09cea05 100644 --- a/htdocs/ticket/tpl/linkedobjectblock.tpl.php +++ b/htdocs/ticket/tpl/linkedobjectblock.tpl.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2010-2012 Regis Houssin * Copyright (C) 2013 Jean-François FERRY * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/user/admin/group_extrafields.php b/htdocs/user/admin/group_extrafields.php index 48e2b4091d6..27fbc7c152c 100644 --- a/htdocs/user/admin/group_extrafields.php +++ b/htdocs/user/admin/group_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2014 Alexis Algoud * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/user/admin/user_extrafields.php b/htdocs/user/admin/user_extrafields.php index 81dc7c290c1..eaf118d361a 100644 --- a/htdocs/user/admin/user_extrafields.php +++ b/htdocs/user/admin/user_extrafields.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2002 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/bank.php b/htdocs/user/bank.php index 13b555b6d5c..0b65e48c2bb 100644 --- a/htdocs/user/bank.php +++ b/htdocs/user/bank.php @@ -2,7 +2,7 @@ /* Copyright (C) 2002-2004 Rodolphe Quiedeville * Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Peter Fontaine * Copyright (C) 2015-2016 Marcos García * Copyright (C) 2015 Alexandre Spangaro diff --git a/htdocs/user/card.php b/htdocs/user/card.php index a87438eda95..c8cb474b12d 100644 --- a/htdocs/user/card.php +++ b/htdocs/user/card.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2005 Lionel Cousteix * Copyright (C) 2011 Herve Prot * Copyright (C) 2012 Juanjo Menent diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index d1a8cae636b..9e790437cb7 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -4,7 +4,7 @@ * Copyright (c) 2004-2012 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2005 Lionel Cousteix * Copyright (C) 2011 Herve Prot * Copyright (C) 2013-2018 Philippe Grand diff --git a/htdocs/user/class/userbankaccount.class.php b/htdocs/user/class/userbankaccount.class.php index b1769edea6f..7870fe9c35e 100644 --- a/htdocs/user/class/userbankaccount.class.php +++ b/htdocs/user/class/userbankaccount.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2010-2013 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * Copyright (C) 2013 Peter Fontaine * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2016 Marcos García diff --git a/htdocs/user/class/usergroup.class.php b/htdocs/user/class/usergroup.class.php index 6f3e333f6f5..cfc6d13427c 100644 --- a/htdocs/user/class/usergroup.class.php +++ b/htdocs/user/class/usergroup.class.php @@ -1,7 +1,7 @@ * Copyright (c) 2005-2018 Laurent Destailleur - * Copyright (c) 2005-2018 Regis Houssin + * Copyright (c) 2005-2018 Regis Houssin * Copyright (C) 2012 Florian Henry * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Alexis Algoud diff --git a/htdocs/user/clicktodial.php b/htdocs/user/clicktodial.php index 918d8c394ca..a6618f3a7c0 100644 --- a/htdocs/user/clicktodial.php +++ b/htdocs/user/clicktodial.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2012 Laurent Destailleur - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/document.php b/htdocs/user/document.php index decc53a379c..6f7e27b13dd 100644 --- a/htdocs/user/document.php +++ b/htdocs/user/document.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2013 Cédric Salvador * diff --git a/htdocs/user/group/card.php b/htdocs/user/group/card.php index 44eef8dfc1f..f4b484a72e0 100644 --- a/htdocs/user/group/card.php +++ b/htdocs/user/group/card.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2015 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2011 Herve Prot * Copyright (C) 2012 Florian Henry * diff --git a/htdocs/user/group/ldap.php b/htdocs/user/group/ldap.php index 5bc6130a2b6..0103f63884a 100644 --- a/htdocs/user/group/ldap.php +++ b/htdocs/user/group/ldap.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/group/list.php b/htdocs/user/group/list.php index 745f9002055..b9de423f19f 100644 --- a/htdocs/user/group/list.php +++ b/htdocs/user/group/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2018 Laurent Destailleur - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * Copyright (C) 2011 Herve Prot * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/user/group/perms.php b/htdocs/user/group/perms.php index 4b4b181cdc8..6b1b011b85c 100644 --- a/htdocs/user/group/perms.php +++ b/htdocs/user/group/perms.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/hierarchy.php b/htdocs/user/hierarchy.php index 3212fe6fb6e..7882bfb24e2 100644 --- a/htdocs/user/hierarchy.php +++ b/htdocs/user/hierarchy.php @@ -3,7 +3,7 @@ * Copyright (C) 2005 Eric Seigne * Copyright (C) 2006-2015 Laurent Destailleur * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/home.php b/htdocs/user/home.php index d232c3cf7f1..da31b6027ed 100644 --- a/htdocs/user/home.php +++ b/htdocs/user/home.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2018 Regis Houssin + * Copyright (C) 2005-2018 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/info.php b/htdocs/user/info.php index bb262804d33..5e1bfaddc4c 100644 --- a/htdocs/user/info.php +++ b/htdocs/user/info.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/ldap.php b/htdocs/user/ldap.php index fa5e5e023eb..45b575b9843 100644 --- a/htdocs/user/ldap.php +++ b/htdocs/user/ldap.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2017 Regis Houssin + * Copyright (C) 2006-2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/list.php b/htdocs/user/list.php index 64c63c05426..3d0a883d431 100644 --- a/htdocs/user/list.php +++ b/htdocs/user/list.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2017 Laurent Destailleur - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2016 Marcos García * diff --git a/htdocs/user/logout.php b/htdocs/user/logout.php index 4250465ff09..3f53a4c67dd 100644 --- a/htdocs/user/logout.php +++ b/htdocs/user/logout.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2003 Xavier Dutoit * Copyright (C) 2004-2009 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/note.php b/htdocs/user/note.php index 1cf994db9e9..c4f657a29bc 100644 --- a/htdocs/user/note.php +++ b/htdocs/user/note.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2015 Laurent Destailleur - * Copyright (C) 2005-2015 Regis Houssin + * Copyright (C) 2005-2015 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/user/param_ihm.php b/htdocs/user/param_ihm.php index e0e6935bc48..0c43a12361d 100644 --- a/htdocs/user/param_ihm.php +++ b/htdocs/user/param_ihm.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2015 Regis Houssin + * Copyright (C) 2010-2015 Regis Houssin * Copyright (C) 2013 Florian Henry * Copyright (C) 2018 Ferran Marcet * diff --git a/htdocs/user/passwordforgotten.php b/htdocs/user/passwordforgotten.php index 26555d6f59e..519a0ef0a98 100644 --- a/htdocs/user/passwordforgotten.php +++ b/htdocs/user/passwordforgotten.php @@ -1,6 +1,6 @@ - * Copyright (C) 2008-2012 Regis Houssin + * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2008-2011 Juanjo Menent * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> * diff --git a/htdocs/user/perms.php b/htdocs/user/perms.php index 8b7599f3707..f45b2b155fd 100644 --- a/htdocs/user/perms.php +++ b/htdocs/user/perms.php @@ -3,7 +3,7 @@ * Copyright (C) 2002-2003 Jean-Louis Bergamo * Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2012 Juanjo Menent * * This program is free software; you can redistribute it and/or modify diff --git a/htdocs/viewimage.php b/htdocs/viewimage.php index 45393d07303..200230e5ca7 100644 --- a/htdocs/viewimage.php +++ b/htdocs/viewimage.php @@ -1,7 +1,7 @@ * Copyright (C) 2005-2016 Laurent Destailleur - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/webservices/admin/index.php b/htdocs/webservices/admin/index.php index 5c49e457c4f..3cd9aacdac8 100644 --- a/htdocs/webservices/admin/index.php +++ b/htdocs/webservices/admin/index.php @@ -2,7 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2005-2010 Laurent Destailleur * Copyright (C) 2011 Juanjo Menent - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/webservices/index.php b/htdocs/webservices/index.php index adbdb7a25f7..e0a1ba998c8 100644 --- a/htdocs/webservices/index.php +++ b/htdocs/webservices/index.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011 Regis Houssin + * Copyright (C) 2011 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/webservices/server_order.php b/htdocs/webservices/server_order.php index d41b2880210..c74b5660873 100644 --- a/htdocs/webservices/server_order.php +++ b/htdocs/webservices/server_order.php @@ -1,7 +1,7 @@ * Copyright (C) 2012 JF FERRY - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/scripts/emailings/mailing-send.php b/scripts/emailings/mailing-send.php index c36e7ea1cc3..52f54a4c7b8 100755 --- a/scripts/emailings/mailing-send.php +++ b/scripts/emailings/mailing-send.php @@ -3,7 +3,7 @@ /* * Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2005-2013 Laurent Destailleur - * Copyright (C) 2005-2016 Regis Houssin + * Copyright (C) 2005-2016 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/scripts/members/sync_members_types_dolibarr2ldap.php b/scripts/members/sync_members_types_dolibarr2ldap.php index dac7ccfd0bc..dc1570c847f 100755 --- a/scripts/members/sync_members_types_dolibarr2ldap.php +++ b/scripts/members/sync_members_types_dolibarr2ldap.php @@ -3,7 +3,7 @@ /** * Copyright (C) 2005 Rodolphe Quiedeville * Copyright (C) 2006 Laurent Destailleur - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/scripts/members/sync_members_types_ldap2dolibarr.php b/scripts/members/sync_members_types_ldap2dolibarr.php index 27d7be686eb..cb85e38bd89 100755 --- a/scripts/members/sync_members_types_ldap2dolibarr.php +++ b/scripts/members/sync_members_types_ldap2dolibarr.php @@ -4,7 +4,7 @@ * Copyright (C) 2005 Rodolphe Quiedeville * Copyright (C) 2006-2012 Laurent Destailleur * Copyright (C) 2013 Maxime Kohlhaas - * Copyright (C) 2017 Regis Houssin + * Copyright (C) 2017 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/test/phpunit/AllTests.php b/test/phpunit/AllTests.php index 008014fbcb5..ee7ec9375d6 100644 --- a/test/phpunit/AllTests.php +++ b/test/phpunit/AllTests.php @@ -1,6 +1,6 @@ - * Copyright (C) 2011-2012 Regis Houssin + * Copyright (C) 2011-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/test/phpunit/BuildDocTest.php b/test/phpunit/BuildDocTest.php index cc2ac2339dc..985250aa705 100644 --- a/test/phpunit/BuildDocTest.php +++ b/test/phpunit/BuildDocTest.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/test/phpunit/FilesLibTest.php b/test/phpunit/FilesLibTest.php index 72e809aa051..c1a2a21b270 100644 --- a/test/phpunit/FilesLibTest.php +++ b/test/phpunit/FilesLibTest.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/test/phpunit/GetUrlLibTest.php b/test/phpunit/GetUrlLibTest.php index 2a6d218dc93..c99f71a972f 100644 --- a/test/phpunit/GetUrlLibTest.php +++ b/test/phpunit/GetUrlLibTest.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/test/phpunit/ImagesLibTest.php b/test/phpunit/ImagesLibTest.php index cc8ea5cdf67..1083eacf270 100644 --- a/test/phpunit/ImagesLibTest.php +++ b/test/phpunit/ImagesLibTest.php @@ -1,6 +1,6 @@ - * Copyright (C) 2012 Regis Houssin + * Copyright (C) 2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From e1625990f27cc2699f90e255fc446762de7c4611 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 20:54:53 +0200 Subject: [PATCH 200/769] use strict compare --- htdocs/fourn/class/fournisseur.commande.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index ced75842606..bb0f8724907 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -9,6 +9,7 @@ * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -800,8 +801,7 @@ class CommandeFournisseur extends CommonOrder $mybool|=@include_once $dir.$file; } - if (! $mybool) - { + if ($mybool === false) { dol_print_error('',"Failed to include file ".$file); return ''; } From 84219039a21764768254acb121dd6518c41aaaa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 20:57:59 +0200 Subject: [PATCH 201/769] use strict compare --- htdocs/fourn/class/paiementfourn.class.php | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php index a366faa0400..be3b9fbdcaa 100644 --- a/htdocs/fourn/class/paiementfourn.class.php +++ b/htdocs/fourn/class/paiementfourn.class.php @@ -6,6 +6,7 @@ * Copyright (C) 2010-2011 Juanjo Menent * Copyright (C) 2014 Marcos García * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -654,14 +655,12 @@ class PaiementFourn extends Paiement } // For compatibility - if (! $mybool) - { + if ($mybool === false) { $file = $conf->global->SUPPLIER_PAYMENT_ADDON.".php"; $classname = "mod_supplier_payment_".$conf->global->SUPPLIER_PAYMENT_ADDON; $classname = preg_replace('/\-.*$/','',$classname); // Include file with class - foreach ($conf->file->dol_document_root as $dirroot) - { + foreach ($conf->file->dol_document_root as $dirroot) { $dir = $dirroot."/core/modules/supplier_payment/"; // Load file with numbering class (if found) @@ -671,8 +670,7 @@ class PaiementFourn extends Paiement } } - if (! $mybool) - { + if ($mybool === false) { dol_print_error('',"Failed to include file ".$file); return ''; } From d7507ac858d855923f016134df286a862a0aeed1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 21:00:59 +0200 Subject: [PATCH 202/769] use strict compare --- htdocs/fourn/class/fournisseur.facture.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 58230038fcc..dd33c290f45 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -12,6 +12,7 @@ * Copyright (C) 2015 Ferran Marcet * Copyright (C) 2016 Alexandre Spangaro * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -2280,9 +2281,8 @@ class FactureFournisseur extends CommonInvoice $mybool|=@include_once $dir.$file; } - if (! $mybool) - { - dol_print_error('',"Failed to include file ".$file); + if ($mybool === false) { + dol_print_error('', "Failed to include file ".$file); return ''; } From 5ad03fcd35bbc9ba972503c03e2f448337c67baf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 21:19:19 +0200 Subject: [PATCH 203/769] use strict compare --- htdocs/fichinter/class/fichinter.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php index 05a139e2a9a..70e95624c13 100644 --- a/htdocs/fichinter/class/fichinter.class.php +++ b/htdocs/fichinter/class/fichinter.class.php @@ -6,6 +6,7 @@ * Copyright (C) 2015 Marcos García * Copyright (C) 2015 Charlie Benke * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -805,15 +806,14 @@ class Fichinter extends CommonObject $mybool|=@include_once $dir.$file; } - if (! $mybool) - { - dol_print_error('',"Failed to include file ".$file); + if ($mybool === false) { + dol_print_error('', "Failed to include file ".$file); return ''; } $obj = new $classname(); $numref = ""; - $numref = $obj->getNextValue($soc,$this); + $numref = $obj->getNextValue($soc, $this); if ( $numref != "") { From fa48a442d6e2ffa92911c566630bcb7891db64a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 27 Oct 2018 21:21:59 +0200 Subject: [PATCH 204/769] use strict compare --- htdocs/expensereport/class/expensereport.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index 2b343dd0074..efb5c41e300 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -4,6 +4,7 @@ * Copyright (C) 2015 Alexandre Spangaro * Copyright (C) 2016 Ferran Marcet * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (c) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1512,7 +1513,7 @@ class ExpenseReport extends CommonObject $classname = $conf->global->EXPENSEREPORT_ADDON; // Include file with class - $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']); + $dirmodels=array_merge(array('/'), (array) $conf->modules_parts['models']); foreach ($dirmodels as $reldir) { $dir = dol_buildpath($reldir."core/modules/expensereport/"); @@ -1521,9 +1522,8 @@ class ExpenseReport extends CommonObject $mybool|=@include_once $dir.$file; } - if (! $mybool) - { - dol_print_error('',"Failed to include file ".$file); + if ($mybool === false) { + dol_print_error('', "Failed to include file ".$file); return ''; } From 2fe4763570848f4f36611ea1a6aa837aacbf5842 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sun, 28 Oct 2018 09:22:55 +0100 Subject: [PATCH 205/769] Fix default accounting accounts on loan creation #9643 --- htdocs/loan/card.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 79569f62df3..d7e81c9e2dd 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -340,19 +340,19 @@ if ($action == 'create') // Accountancy_account_capital print '
'.$langs->trans("LoanAccountancyCapitalCode").''; - print $formaccounting->select_account($object->accountancy_account_capital, 'accountancy_account_capital', 1, '', 0, 1); + print $formaccounting->select_account(GETPOST('accountancy_account_capital')?GETPOST('accountancy_account_capital'):$conf->global->LOAN_ACCOUNTING_ACCOUNT_CAPITAL, 'accountancy_account_capital', 1, '', 1, 1); print '
'.$langs->trans("LoanAccountancyInsuranceCode").''; - print $formaccounting->select_account($object->accountancy_account_insurance, 'accountancy_account_insurance', 1, '', 0, 1); + print $formaccounting->select_account(GETPOST('accountancy_account_insurance')?GETPOST('accountancy_account_insurance'):$conf->global->LOAN_ACCOUNTING_ACCOUNT_INSURANCE, 'accountancy_account_insurance', 1, '', 1, 1); print '
'.$langs->trans("LoanAccountancyInterestCode").''; - print $formaccounting->select_account($object->accountancy_account_interest, 'accountancy_account_interest', 1, '', 0, 1); + print $formaccounting->select_account(GETPOST('accountancy_account_interest')?GETPOST('accountancy_account_interest'):$conf->global->LOAN_ACCOUNTING_ACCOUNT_INTEREST, 'accountancy_account_interest', 1, '', 1, 1); print '
'.$langs->trans("MailFile").''; + + // If a template was selected, we use setup of template to define if join file checkbox is selected or not. + if (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) + { + $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); + } + if (! empty($this->withmaindocfile)) { if ($this->withmaindocfile == 1) From dbb2168b83207ec077cab073a8489d9a5d0780f7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 02:02:43 +0100 Subject: [PATCH 213/769] FIX thirdparty property of object not loaded when only one record --- htdocs/core/actions_massactions.inc.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index 6621ffaeb8a..d3cdc0093b1 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -333,12 +333,16 @@ if (! $error && $massaction == 'confirm_presend') if ($objectclass == 'CommandeFournisseur') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_ORDER_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_ORDER_TO)); if ($objectclass == 'FactureFournisseur') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_INVOICE_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_INVOICE_TO)); - // $listofqualifiedobj is array with key = object id of qualified objects for the current thirdparty + // $listofqualifiedobj is array with key = object id and value is instance of qualified objects, for the current thirdparty (but thirdparty property is not loaded yet) $oneemailperrecipient=(GETPOST('oneemailperrecipient')=='on'?1:0); $looparray=array(); if (! $oneemailperrecipient) { $looparray = $listofqualifiedobj; + foreach ($looparray as $key => $objecttmp) + { + $looparray[$key]->thirdparty = $thirdparty; + } } else { @@ -348,7 +352,7 @@ if (! $error && $massaction == 'confirm_presend') } //var_dump($looparray);exit; - foreach ($looparray as $objecttmp) // $objecttmp is a real object or an empty if we choose to send one email per thirdparty instead of per record + foreach ($looparray as $objecttmp) // $objecttmp is a real object or an empty object if we choose to send one email per thirdparty instead of one per record { // Make substitution in email content $substitutionarray=getCommonSubstitutionArray($langs, 0, null, $objecttmp); From 770f8c3f3b6fc171fcb4cf598871be4274c38d9d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 02:11:33 +0100 Subject: [PATCH 214/769] FIX Selection of addmaindocfile is lost on error --- htdocs/core/class/html.formmail.class.php | 8 ++++++-- htdocs/core/tpl/massactions_pre.tpl.php | 11 ++++++----- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 640355c1295..de93ee8f66d 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -881,8 +881,12 @@ class FormMail extends Form $out.= ''; + if (GETPOSTISSET('sendmail')) + { + $this->withmaindocfile = (GETPOST('addmaindocfile', 'alpha') ? -1 : 1); + } // If a template was selected, we use setup of template to define if join file checkbox is selected or not. - if (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) + elseif (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) { $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); } @@ -895,7 +899,7 @@ class FormMail extends Form } if ($this->withmaindocfile == -1) { - $out.=''; + $out.=''; } $out.=' '.$langs->trans("JoinMainDoc").'.
'; } diff --git a/htdocs/core/tpl/massactions_pre.tpl.php b/htdocs/core/tpl/massactions_pre.tpl.php index d46e27e28af..a66e9ba270e 100644 --- a/htdocs/core/tpl/massactions_pre.tpl.php +++ b/htdocs/core/tpl/massactions_pre.tpl.php @@ -41,11 +41,12 @@ if ($massaction == 'presend') { $langs->load("mails"); + $listofselectedid = array(); + $listofselectedthirdparties = array(); + $listofselectedref = array(); + if (! GETPOST('cancel', 'alpha')) { - $listofselectedid = array(); - $listofselectedthirdparties = array(); - $listofselectedref = array(); foreach ($arrayofselected as $toselectid) { $result = $objecttmp->fetch($toselectid); @@ -110,8 +111,8 @@ if ($massaction == 'presend') } else { $formmail->withtoreadonly = 1; } - - $formmail->withoptiononeemailperrecipient = empty($liste)?0:((GETPOST('oneemailperrecipient')=='on')?1:-1); + + $formmail->withoptiononeemailperrecipient = (count($listofselectedref) == 1 || empty($liste))? 0 : ((GETPOST('oneemailperrecipient')=='on')?1:-1); $formmail->withto = empty($liste)?(GETPOST('sendto','alpha')?GETPOST('sendto','alpha'):array()):$liste; $formmail->withtofree = empty($liste)?1:0; $formmail->withtocc = 1; From 6e3822345cec2bc1f497a10a23e110fd0be6bb62 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 00:55:55 +0100 Subject: [PATCH 215/769] Fix use setup of template for attached files in mass actions --- htdocs/core/class/html.formmail.class.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 117bfb13769..6c74c1ca612 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -845,6 +845,13 @@ class FormMail extends Form $out.= '
'.$langs->trans("MailFile").''; + + // If a template was selected, we use setup of template to define if join file checkbox is selected or not. + if (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) + { + $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); + } + if (! empty($this->withmaindocfile)) { if ($this->withmaindocfile == 1) From 244c7f8dc3a7f359f1fd356d72ec22c4dfb76dba Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 02:02:43 +0100 Subject: [PATCH 216/769] FIX thirdparty property of object not loaded when only one record --- htdocs/core/actions_massactions.inc.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index b59b03d536f..710091a1661 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -333,12 +333,16 @@ if (! $error && $massaction == 'confirm_presend') if ($objectclass == 'CommandeFournisseur') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_ORDER_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_ORDER_TO)); if ($objectclass == 'FactureFournisseur') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_INVOICE_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_INVOICE_TO)); - // $listofqualifiedobj is array with key = object id of qualified objects for the current thirdparty + // $listofqualifiedobj is array with key = object id and value is instance of qualified objects, for the current thirdparty (but thirdparty property is not loaded yet) $oneemailperrecipient=(GETPOST('oneemailperrecipient')=='on'?1:0); $looparray=array(); if (! $oneemailperrecipient) { $looparray = $listofqualifiedobj; + foreach ($looparray as $key => $objecttmp) + { + $looparray[$key]->thirdparty = $thirdparty; + } } else { @@ -348,7 +352,7 @@ if (! $error && $massaction == 'confirm_presend') } //var_dump($looparray);exit; - foreach ($looparray as $objecttmp) // $objecttmp is a real object or an empty if we choose to send one email per thirdparty instead of per record + foreach ($looparray as $objecttmp) // $objecttmp is a real object or an empty object if we choose to send one email per thirdparty instead of one per record { // Make substitution in email content $substitutionarray=getCommonSubstitutionArray($langs, 0, null, $objecttmp); From 553e984465609c7d1454f4f3e623805c65ca627c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 02:11:33 +0100 Subject: [PATCH 217/769] FIX Selection of addmaindocfile is lost on error --- htdocs/core/class/html.formmail.class.php | 8 ++++++-- htdocs/core/tpl/massactions_pre.tpl.php | 11 ++++++----- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 6c74c1ca612..434f49bb3d6 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -846,8 +846,12 @@ class FormMail extends Form $out.= ''; + if (GETPOSTISSET('sendmail')) + { + $this->withmaindocfile = (GETPOST('addmaindocfile', 'alpha') ? -1 : 1); + } // If a template was selected, we use setup of template to define if join file checkbox is selected or not. - if (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) + elseif (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) { $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); } @@ -860,7 +864,7 @@ class FormMail extends Form } if ($this->withmaindocfile == -1) { - $out.=''; + $out.=''; } $out.=' '.$langs->trans("JoinMainDoc").'.
'; } diff --git a/htdocs/core/tpl/massactions_pre.tpl.php b/htdocs/core/tpl/massactions_pre.tpl.php index d46e27e28af..a66e9ba270e 100644 --- a/htdocs/core/tpl/massactions_pre.tpl.php +++ b/htdocs/core/tpl/massactions_pre.tpl.php @@ -41,11 +41,12 @@ if ($massaction == 'presend') { $langs->load("mails"); + $listofselectedid = array(); + $listofselectedthirdparties = array(); + $listofselectedref = array(); + if (! GETPOST('cancel', 'alpha')) { - $listofselectedid = array(); - $listofselectedthirdparties = array(); - $listofselectedref = array(); foreach ($arrayofselected as $toselectid) { $result = $objecttmp->fetch($toselectid); @@ -110,8 +111,8 @@ if ($massaction == 'presend') } else { $formmail->withtoreadonly = 1; } - - $formmail->withoptiononeemailperrecipient = empty($liste)?0:((GETPOST('oneemailperrecipient')=='on')?1:-1); + + $formmail->withoptiononeemailperrecipient = (count($listofselectedref) == 1 || empty($liste))? 0 : ((GETPOST('oneemailperrecipient')=='on')?1:-1); $formmail->withto = empty($liste)?(GETPOST('sendto','alpha')?GETPOST('sendto','alpha'):array()):$liste; $formmail->withtofree = empty($liste)?1:0; $formmail->withtocc = 1; From 04f80f0925279bd614d20107aac94e32b52a0043 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 02:27:51 +0100 Subject: [PATCH 218/769] FIX Do not show check box if not applicable --- htdocs/core/actions_massactions.inc.php | 2 +- htdocs/core/class/html.formmail.class.php | 17 ++++++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index 710091a1661..312d6c3d507 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -93,7 +93,7 @@ if (! $error && $massaction == 'confirm_presend') } // Check mandatory parameters - if (empty($user->email)) + if (GETPOST('fromtype','alpha') === 'user' && empty($user->email)) { $error++; setEventMessages($langs->trans("NoSenderEmailDefined"), null, 'warnings'); diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 434f49bb3d6..99f14e973ca 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -846,14 +846,17 @@ class FormMail extends Form $out.= '
'; - if (GETPOSTISSET('sendmail')) + if ($this->withmaindocfile) // withmaindocfile is set to 1 or -1 to show the checkbox (-1 = checked or 1 = not checked) { - $this->withmaindocfile = (GETPOST('addmaindocfile', 'alpha') ? -1 : 1); - } - // If a template was selected, we use setup of template to define if join file checkbox is selected or not. - elseif (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) - { - $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); + if (GETPOSTISSET('sendmail')) + { + $this->withmaindocfile = (GETPOST('addmaindocfile', 'alpha') ? -1 : 1); + } + // If a template was selected, we use setup of template to define if join file checkbox is selected or not. + elseif (is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) + { + $this->withmaindocfile = ($arraydefaultmessage->joinfiles ? -1 : 1); + } } if (! empty($this->withmaindocfile)) From 08862fb482f49fe5d35d4d7eac6a0fbb30274fff Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 03:25:21 +0100 Subject: [PATCH 219/769] Log success of emails --- htdocs/core/actions_massactions.inc.php | 3 ++- htdocs/core/class/CMailFile.class.php | 10 +++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index adf7b9b7c89..088ae69ebed 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -83,9 +83,10 @@ if (! $error && $massaction == 'confirm_presend') if ($result > 0) { $listofobjectid[$toselectid]=$toselectid; - $thirdpartyid=$objecttmp->fk_soc?$objecttmp->fk_soc:$objecttmp->socid; + $thirdpartyid=($objecttmp->fk_soc?$objecttmp->fk_soc:$objecttmp->socid); if ($objecttmp->element == 'societe') $thirdpartyid=$objecttmp->id; if ($objecttmp->element == 'expensereport') $thirdpartyid=$objecttmp->fk_user_author; + if ($objecttmp->element == 'holiday') $thirdpartyid=$objecttmp->fk_user; $listofobjectthirdparties[$thirdpartyid]=$thirdpartyid; $listofobjectref[$thirdpartyid][$toselectid]=$objecttmp; } diff --git a/htdocs/core/class/CMailFile.class.php b/htdocs/core/class/CMailFile.class.php index a37f6b1562b..f64e18abb32 100644 --- a/htdocs/core/class/CMailFile.class.php +++ b/htdocs/core/class/CMailFile.class.php @@ -735,7 +735,11 @@ class CMailFile if (! empty($conf->global->MAIN_MAIL_DEBUG)) $this->dump_mail(); $result=$this->smtps->getErrors(); - if (empty($this->error) && empty($result)) $res=true; + if (empty($this->error) && empty($result)) + { + dol_syslog("CMailFile::sendfile: mail end success", LOG_DEBUG); + $res=true; + } else { if (empty($this->error)) $this->error=$result; @@ -798,6 +802,10 @@ class CMailFile dol_syslog("CMailFile::sendfile: mail end error=".$this->error, LOG_ERR); $res=false; } + else + { + dol_syslog("CMailFile::sendfile: mail end success", LOG_DEBUG); + } } else { From fcfb9746a858aef3319193b23d0471b6c478b444 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 03:42:02 +0100 Subject: [PATCH 220/769] Fix trackid when email sent from mass actions --- htdocs/core/actions_massactions.inc.php | 29 +++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index 088ae69ebed..cbb3d70fbf4 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -74,6 +74,7 @@ if (! $error && $massaction == 'confirm_presend') { $thirdparty=new Societe($db); if ($objecttmp->element == 'expensereport') $thirdparty=new User($db); + if ($objecttmp->element == 'holiday') $thirdparty=new User($db); $objecttmp=new $objectclass($db); foreach($toselect as $toselectid) @@ -84,9 +85,9 @@ if (! $error && $massaction == 'confirm_presend') { $listofobjectid[$toselectid]=$toselectid; $thirdpartyid=($objecttmp->fk_soc?$objecttmp->fk_soc:$objecttmp->socid); - if ($objecttmp->element == 'societe') $thirdpartyid=$objecttmp->id; + if ($objecttmp->element == 'societe') $thirdpartyid=$objecttmp->id; if ($objecttmp->element == 'expensereport') $thirdpartyid=$objecttmp->fk_user_author; - if ($objecttmp->element == 'holiday') $thirdpartyid=$objecttmp->fk_user; + if ($objecttmp->element == 'holiday') $thirdpartyid=$objecttmp->fk_user; $listofobjectthirdparties[$thirdpartyid]=$thirdpartyid; $listofobjectref[$thirdpartyid][$toselectid]=$objecttmp; } @@ -327,7 +328,7 @@ if (! $error && $massaction == 'confirm_presend') $message = GETPOST('message','none'); $sendtobcc = GETPOST('sendtoccc'); - if ($objectclass == 'Propale') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO)); + if ($objectclass == 'Propal') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO)); if ($objectclass == 'Commande') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_ORDER_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_ORDER_TO)); if ($objectclass == 'Facture') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_INVOICE_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_INVOICE_TO)); if ($objectclass == 'Supplier_Proposal') $sendtobcc .= (empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_PROPOSAL_TO) ? '' : (($sendtobcc?", ":"").$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_PROPOSAL_TO)); @@ -380,11 +381,31 @@ if (! $error && $massaction == 'confirm_presend') $filename = $attachedfiles['names']; $mimetype = $attachedfiles['mimes']; + // Define the trackid when emails sent from the mass action + if ($oneemailperrecipient) + { + $trackid='thi'.$thirdparty->id; + if ($objecttmp->element == 'expensereport') $trackid='use'.$thirdparty->id; + if ($objecttmp->element == 'holiday') $trackid='use'.$thirdparty->id; + } + else + { + $trackid=strtolower(get_class($objecttmp)); + if (get_class($objecttmp)=='Contrat') $trackid='con'; + if (get_class($objecttmp)=='Propal') $trackid='pro'; + if (get_class($objecttmp)=='Commande') $trackid='ord'; + if (get_class($objecttmp)=='Facture') $trackid='inv'; + if (get_class($objecttmp)=='Supplier_Proposal') $trackid='spr'; + if (get_class($objecttmp)=='CommandeFournisseur') $trackid='sor'; + if (get_class($objecttmp)=='FactureFournisseur') $trackid='sin'; + + $trackid.=$objecttmp->id; + } //var_dump($filepath); // Send mail (substitutionarray must be done just before this) require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,$sendtobcc,$deliveryreceipt,-1); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,$sendtobcc,$deliveryreceipt,-1,'','',$trackid); if ($mailfile->error) { $resaction.='
'.$mailfile->error.'
'; From 7785cae9aa4f87e8ca92826050e4d40128b1349b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 03:46:45 +0100 Subject: [PATCH 221/769] Code comment --- htdocs/core/actions_massactions.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index cbb3d70fbf4..39b89ba21f9 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -402,6 +402,7 @@ if (! $error && $massaction == 'confirm_presend') $trackid.=$objecttmp->id; } //var_dump($filepath); + //var_dump($trackid);exit; // Send mail (substitutionarray must be done just before this) require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; From 31497e867f8ff76227f1af3db72220fc4189ee73 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 29 Oct 2018 11:01:02 +0100 Subject: [PATCH 222/769] FIX missing entity filter --- htdocs/projet/class/project.class.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index a704c7d641e..4a67b948c72 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -529,11 +529,11 @@ class Project extends CommonObject if ($type == 'agenda') { - $sql = "SELECT id as rowid FROM " . MAIN_DB_PREFIX . "actioncomm WHERE fk_project IN (". $ids .")"; + $sql = "SELECT id as rowid FROM " . MAIN_DB_PREFIX . "actioncomm WHERE fk_project IN (". $ids .") AND entity IN (".getEntity('agenda').")"; } elseif ($type == 'expensereport') { - $sql = "SELECT ed.rowid FROM " . MAIN_DB_PREFIX . "expensereport as e, " . MAIN_DB_PREFIX . "expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND ed.fk_projet IN (". $ids .")"; + $sql = "SELECT ed.rowid FROM " . MAIN_DB_PREFIX . "expensereport as e, " . MAIN_DB_PREFIX . "expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND ed.fk_projet IN (". $ids .") AND entity IN (".getEntity('expensereport').")"; } elseif ($type == 'project_task') { @@ -545,11 +545,11 @@ class Project extends CommonObject } elseif ($type == 'stock_mouvement') { - $sql = 'SELECT ms.rowid, ms.fk_user_author as fk_user FROM ' . MAIN_DB_PREFIX . "stock_mouvement as ms WHERE ms.origintype = 'project' AND ms.fk_origin IN (". $ids .") AND ms.type_mouvement = 1"; + $sql = 'SELECT ms.rowid, ms.fk_user_author as fk_user FROM ' . MAIN_DB_PREFIX . "stock_mouvement as ms WHERE ms.origintype = 'project' AND ms.fk_origin IN (". $ids .") AND ms.type_mouvement = 1"; } else { - $sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . $tablename." WHERE fk_projet IN (". $ids .")"; + $sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . $tablename." WHERE fk_projet IN (". $ids .") AND entity IN (".getEntity($type).")"; } if ($dates > 0) @@ -723,10 +723,10 @@ class Project extends CommonObject return -1; } } - + /** * Delete tasks with no children first, then task with children recursively - * + * * @param User $user User * @return int <0 if KO, 1 if OK */ @@ -754,7 +754,7 @@ class Project extends CommonObject { if (count($this->lines)) $this->deleteTasks($this->lines); } - + return 1; } From c83e67123d3ca50e3309dbe3c86d9107ee5dae1a Mon Sep 17 00:00:00 2001 From: atm-ph Date: Mon, 29 Oct 2018 11:04:16 +0100 Subject: [PATCH 223/769] Fix pgsql : operator does not exist: timestamp without time zone ~~ unknown --- htdocs/adherents/subscription/list.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/adherents/subscription/list.php b/htdocs/adherents/subscription/list.php index 21ba01088e4..575bd3a233a 100644 --- a/htdocs/adherents/subscription/list.php +++ b/htdocs/adherents/subscription/list.php @@ -126,7 +126,8 @@ $sql.= " WHERE d.rowid = c.fk_adherent"; $sql.= " AND d.entity IN (".getEntity('adherent').")"; if (isset($date_select) && $date_select != '') { - $sql.= " AND c.dateadh LIKE '".$date_select."%'"; + $sql.= " AND c.dateadh >= '".$date_select."-01-01 00:00:00'"; + $sql.= " AND c.dateadh < '".($date_select+1)."-01-01 00:00:00'"; } if ($search_ref) { From 9e3800d7fda8b5c5a5108e595f503e23d3ba0fe2 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 29 Oct 2018 11:14:05 +0100 Subject: [PATCH 224/769] FIX missing entity filter for stock --- htdocs/projet/class/project.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index 4a67b948c72..8aa867458ee 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -533,7 +533,7 @@ class Project extends CommonObject } elseif ($type == 'expensereport') { - $sql = "SELECT ed.rowid FROM " . MAIN_DB_PREFIX . "expensereport as e, " . MAIN_DB_PREFIX . "expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND ed.fk_projet IN (". $ids .") AND entity IN (".getEntity('expensereport').")"; + $sql = "SELECT ed.rowid FROM " . MAIN_DB_PREFIX . "expensereport as e, " . MAIN_DB_PREFIX . "expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND e.entity IN (".getEntity('expensereport').") AND ed.fk_projet IN (". $ids .")"; } elseif ($type == 'project_task') { @@ -545,7 +545,7 @@ class Project extends CommonObject } elseif ($type == 'stock_mouvement') { - $sql = 'SELECT ms.rowid, ms.fk_user_author as fk_user FROM ' . MAIN_DB_PREFIX . "stock_mouvement as ms WHERE ms.origintype = 'project' AND ms.fk_origin IN (". $ids .") AND ms.type_mouvement = 1"; + $sql = 'SELECT ms.rowid, ms.fk_user_author as fk_user FROM ' . MAIN_DB_PREFIX . "stock_mouvement as ms, " . MAIN_DB_PREFIX . "entrepot as e WHERE e.rowid = ms.fk_entrepot AND e.entity IN (".getEntity('stock').") AND ms.origintype = 'project' AND ms.fk_origin IN (". $ids .") AND ms.type_mouvement = 1"; } else { From d8bf635530d0a0f21ee598c5bef9794a0c78556a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 11:21:57 +0100 Subject: [PATCH 225/769] Prepare module --- build/rpm/dolibarr_fedora.spec | 1 + build/rpm/dolibarr_generic.spec | 1 + build/rpm/dolibarr_mandriva.spec | 1 + build/rpm/dolibarr_opensuse.spec | 1 + htdocs/emailcollector/index.html | 1 + 5 files changed, 5 insertions(+) create mode 100644 htdocs/emailcollector/index.html diff --git a/build/rpm/dolibarr_fedora.spec b/build/rpm/dolibarr_fedora.spec index 727875485b4..b6d526bf8e1 100755 --- a/build/rpm/dolibarr_fedora.spec +++ b/build/rpm/dolibarr_fedora.spec @@ -181,6 +181,7 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/dav %_datadir/dolibarr/htdocs/don %_datadir/dolibarr/htdocs/ecm +%_datadir/dolibarr/htdocs/emailcollector %_datadir/dolibarr/htdocs/expedition %_datadir/dolibarr/htdocs/expensereport %_datadir/dolibarr/htdocs/exports diff --git a/build/rpm/dolibarr_generic.spec b/build/rpm/dolibarr_generic.spec index 3fb68d06a15..32c6e50018e 100755 --- a/build/rpm/dolibarr_generic.spec +++ b/build/rpm/dolibarr_generic.spec @@ -261,6 +261,7 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/dav %_datadir/dolibarr/htdocs/don %_datadir/dolibarr/htdocs/ecm +%_datadir/dolibarr/htdocs/emailcollector %_datadir/dolibarr/htdocs/expedition %_datadir/dolibarr/htdocs/expensereport %_datadir/dolibarr/htdocs/exports diff --git a/build/rpm/dolibarr_mandriva.spec b/build/rpm/dolibarr_mandriva.spec index a4004273211..dbb8e0d1310 100755 --- a/build/rpm/dolibarr_mandriva.spec +++ b/build/rpm/dolibarr_mandriva.spec @@ -178,6 +178,7 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/dav %_datadir/dolibarr/htdocs/don %_datadir/dolibarr/htdocs/ecm +%_datadir/dolibarr/htdocs/emailcollector %_datadir/dolibarr/htdocs/expedition %_datadir/dolibarr/htdocs/expensereport %_datadir/dolibarr/htdocs/exports diff --git a/build/rpm/dolibarr_opensuse.spec b/build/rpm/dolibarr_opensuse.spec index 478a889c8d6..aa810a737b9 100755 --- a/build/rpm/dolibarr_opensuse.spec +++ b/build/rpm/dolibarr_opensuse.spec @@ -189,6 +189,7 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/dav %_datadir/dolibarr/htdocs/don %_datadir/dolibarr/htdocs/ecm +%_datadir/dolibarr/htdocs/emailcollector %_datadir/dolibarr/htdocs/expedition %_datadir/dolibarr/htdocs/expensereport %_datadir/dolibarr/htdocs/exports diff --git a/htdocs/emailcollector/index.html b/htdocs/emailcollector/index.html new file mode 100644 index 00000000000..8b137891791 --- /dev/null +++ b/htdocs/emailcollector/index.html @@ -0,0 +1 @@ + From 0500f54237b33b90b2b3da3c18f7a420a7dca979 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 11:29:08 +0100 Subject: [PATCH 226/769] Email collector --- htdocs/core/modules/modDav.class.php | 4 +- .../core/modules/modEmailCollector.class.php | 323 ++++++++++++++++++ 2 files changed, 325 insertions(+), 2 deletions(-) create mode 100644 htdocs/core/modules/modEmailCollector.class.php diff --git a/htdocs/core/modules/modDav.class.php b/htdocs/core/modules/modDav.class.php index f57e7f12dfe..92153d83688 100644 --- a/htdocs/core/modules/modDav.class.php +++ b/htdocs/core/modules/modDav.class.php @@ -44,7 +44,7 @@ class modDav extends DolibarrModules // Id for module (must be unique). // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). - $this->numero = 50310; // TODO Go on page https://wiki.dolibarr.org/index.php/List_of_modules_id to reserve id number for your module + $this->numero = 50310; // Key text used to identify module (for permissions, menus, etc...) $this->rights_class = 'dav'; @@ -104,7 +104,7 @@ class modDav extends DolibarrModules // 1=>array('DAV_MYNEWCONST2','chaine','myvalue','This is another constant to add',0, 'current', 1) // ); $this->const = array( - 1=>array('DAV_MYCONSTANT', 'chaine', 'avalue', 'This is a constant to add', 1, 'allentities', 1) + //1=>array('DAV_MYCONSTANT', 'chaine', 'avalue', 'This is a constant to add', 1, 'allentities', 1) ); diff --git a/htdocs/core/modules/modEmailCollector.class.php b/htdocs/core/modules/modEmailCollector.class.php new file mode 100644 index 00000000000..6d266fbe6f7 --- /dev/null +++ b/htdocs/core/modules/modEmailCollector.class.php @@ -0,0 +1,323 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \defgroup dav Module dav + * \brief dav module descriptor. + * + * \file htdocs/dav/core/modules/modDav.class.php + * \ingroup dav + * \brief Description and activation file for module dav + */ +include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; + + +/** + * Description and activation class for module dav + */ +class modEmailCollector extends DolibarrModules +{ + /** + * Constructor. Define names, constants, directories, boxes, permissions + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + global $langs,$conf; + + $this->db = $db; + + // Id for module (must be unique). + // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). + $this->numero = 50320; + // Key text used to identify module (for permissions, menus, etc...) + $this->rights_class = 'dav'; + + // Family can be 'base' (core modules),'crm','financial','hr','projects','products','ecm','technic' (transverse modules),'interface' (link with external tools),'other','...' + // It is used to group modules by family in module setup page + $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '75'; + // Gives the possibility to the module, to provide his own family info and position of this family (Overwrite $this->family and $this->module_position. Avoid this) + //$this->familyinfo = array('myownfamily' => array('position' => '01', 'label' => $langs->trans("MyOwnFamily"))); + + // Module label (no space allowed), used if translation string 'ModuledavName' not found (MyModue is name of module). + $this->name = preg_replace('/^mod/i','',get_class($this)); + // Module description, used if translation string 'ModuledavDesc' not found (MyModue is name of module). + $this->description = "EmailCollectorDescription"; + // Used only if file README.md and README-LL.md not found. + $this->descriptionlong = "EmailCollectorDescription"; + + // Possible values for version are: 'development', 'experimental', 'dolibarr', 'dolibarr_deprecated' or a version string like 'x.y.z' + $this->version = 'development'; + // Key used in llx_const table to save module status enabled/disabled (where DAV is value of property name of module in uppercase) + $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); + // Name of image file used for this module. + // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' + // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' + $this->picto='generic'; + + // Defined all module parts (triggers, login, substitutions, menus, css, etc...) + // for default path (eg: /dav/core/xxxxx) (0=disable, 1=enable) + // for specific path of parts (eg: /dav/core/modules/barcode) + // for specific css file (eg: /dav/css/dav.css.php) + $this->module_parts = array(); + + // Data directories to create when module is enabled. + // Example: this->dirs = array("/dav/temp","/dav/subdir"); + $this->dirs = array(); + + // Config pages. Put here list of php page, stored into dav/admin directory, to use to setup module. + $this->config_page_url = array("emailcollector.php"); + + // Dependencies + $this->hidden = false; // A condition to hide module + $this->depends = array(); // List of module class names as string that must be enabled if this module is enabled + $this->requiredby = array(); // List of module ids to disable if this one is disabled + $this->conflictwith = array(); // List of module class names as string this module is in conflict with + $this->langfiles = array("admin"); + $this->phpmin = array(5,4); // Minimum version of PHP required by module + $this->need_dolibarr_version = array(7,0); // Minimum version of Dolibarr required by module + $this->warnings_activation = array(); // Warning to show when we activate module. array('always'='text') or array('FR'='textfr','ES'='textes'...) + $this->warnings_activation_ext = array(); // Warning to show when we activate an external module. array('always'='text') or array('FR'='textfr','ES'='textes'...) + //$this->automatic_activation = array('FR'=>'davWasAutomaticallyActivatedBecauseOfYourCountryChoice'); + //$this->always_enabled = true; // If true, can't be disabled + + // Constants + // List of particular constants to add when module is enabled (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive) + // Example: $this->const=array(0=>array('DAV_MYNEWCONST1','chaine','myvalue','This is a constant to add',1), + // 1=>array('DAV_MYNEWCONST2','chaine','myvalue','This is another constant to add',0, 'current', 1) + // ); + $this->const = array( + //1=>array('DAV_MYCONSTANT', 'chaine', 'avalue', 'This is a constant to add', 1, 'allentities', 1) + ); + + + if (! isset($conf->dav) || ! isset($conf->dav->enabled)) + { + $conf->dav=new stdClass(); + $conf->dav->enabled=0; + } + + + // Array to add new pages in new tabs + $this->tabs = array(); + // Example: + // $this->tabs[] = array('data'=>'objecttype:+tabname1:Title1:mylangfile@dav:$user->rights->dav->read:/dav/mynewtab1.php?id=__ID__'); // To add a new tab identified by code tabname1 + // $this->tabs[] = array('data'=>'objecttype:+tabname2:SUBSTITUTION_Title2:mylangfile@dav:$user->rights->othermodule->read:/dav/mynewtab2.php?id=__ID__', // To add another new tab identified by code tabname2. Label will be result of calling all substitution functions on 'Title2' key. + // $this->tabs[] = array('data'=>'objecttype:-tabname:NU:conditiontoremove'); // To remove an existing tab identified by code tabname + // + // Where objecttype can be + // 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member) + // 'contact' to add a tab in contact view + // 'contract' to add a tab in contract view + // 'group' to add a tab in group view + // 'intervention' to add a tab in intervention view + // 'invoice' to add a tab in customer invoice view + // 'invoice_supplier' to add a tab in supplier invoice view + // 'member' to add a tab in fundation member view + // 'opensurveypoll' to add a tab in opensurvey poll view + // 'order' to add a tab in customer order view + // 'order_supplier' to add a tab in supplier order view + // 'payment' to add a tab in payment view + // 'payment_supplier' to add a tab in supplier payment view + // 'product' to add a tab in product view + // 'propal' to add a tab in propal view + // 'project' to add a tab in project view + // 'stock' to add a tab in stock view + // 'thirdparty' to add a tab in third party view + // 'user' to add a tab in user view + + + // Dictionaries + $this->dictionaries=array(); + /* Example: + $this->dictionaries=array( + 'langs'=>'mylangfile@dav', + 'tabname'=>array(MAIN_DB_PREFIX."table1",MAIN_DB_PREFIX."table2",MAIN_DB_PREFIX."table3"), // List of tables we want to see into dictonnary editor + 'tablib'=>array("Table1","Table2","Table3"), // Label of tables + 'tabsql'=>array('SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table1 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table2 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table3 as f'), // Request to select fields + 'tabsqlsort'=>array("label ASC","label ASC","label ASC"), // Sort order + 'tabfield'=>array("code,label","code,label","code,label"), // List of fields (result of select to show dictionary) + 'tabfieldvalue'=>array("code,label","code,label","code,label"), // List of fields (list of fields to edit a record) + 'tabfieldinsert'=>array("code,label","code,label","code,label"), // List of fields (list of fields for insert) + 'tabrowid'=>array("rowid","rowid","rowid"), // Name of columns with primary key (try to always name it 'rowid') + 'tabcond'=>array($conf->dav->enabled,$conf->dav->enabled,$conf->dav->enabled) // Condition to show each dictionary + ); + */ + + + // Boxes/Widgets + // Add here list of php file(s) stored in dav/core/boxes that contains class to show a widget. + $this->boxes = array( + //0=>array('file'=>'davwidget1.php@dav','note'=>'Widget provided by dav','enabledbydefaulton'=>'Home'), + //1=>array('file'=>'davwidget2.php@dav','note'=>'Widget provided by dav'), + //2=>array('file'=>'davwidget3.php@dav','note'=>'Widget provided by dav') + ); + + + // Cronjobs (List of cron jobs entries to add when module is enabled) + // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week + //$this->cronjobs = array( + //0=>array('label'=>'MyJob label', 'jobtype'=>'method', 'class'=>'/dav/class/myobject.class.php', 'objectname'=>'MyObject', 'method'=>'doScheduledJob', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>true) + //); + // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>true), + // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>true) + // ); + + + // Permissions + $this->rights = array(); // Permission array used by this module + + /* + $r=0; + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Read myobject of dav'; // Permission label + $this->rights[$r][3] = 1; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'read'; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + $this->rights[$r][5] = ''; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + + $r++; + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Create/Update myobject of dav'; // Permission label + $this->rights[$r][3] = 1; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'write'; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + $this->rights[$r][5] = ''; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + + $r++; + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Delete myobject of dav'; // Permission label + $this->rights[$r][3] = 1; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'delete'; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + $this->rights[$r][5] = ''; // In php code, permission will be checked by test if ($user->rights->dav->level1->level2) + */ + + // Main menu entries + $this->menu = array(); // List of menus to add + $r=0; + + // Add here entries to declare new menus + + /* BEGIN MODULEBUILDER TOPMENU */ + /*$this->menu[$r++]=array('fk_menu'=>'', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'top', // This is a Top menu entry + 'titre'=>'dav', + 'mainmenu'=>'dav', + 'leftmenu'=>'', + 'url'=>'/dav/davindex.php', + 'langs'=>'dav@dav', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->dav->enabled', // Define condition to show or hide menu entry. Use '$conf->dav->enabled' if entry must be visible if module is enabled. + 'perms'=>'1', // Use 'perms'=>'$user->rights->dav->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + */ + /* END MODULEBUILDER TOPMENU */ + + /* BEGIN MODULEBUILDER LEFTMENU MYOBJECT + $this->menu[$r++]=array( 'fk_menu'=>'fk_mainmenu=dav', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'left', // This is a Left menu entry + 'titre'=>'List MyObject', + 'mainmenu'=>'dav', + 'leftmenu'=>'dav_myobject_list', + 'url'=>'/dav/myobject_list.php', + 'langs'=>'dav@dav', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->dav->enabled', // Define condition to show or hide menu entry. Use '$conf->dav->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + 'perms'=>'1', // Use 'perms'=>'$user->rights->dav->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + $this->menu[$r++]=array( 'fk_menu'=>'fk_mainmenu=dav,fk_leftmenu=dav', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'left', // This is a Left menu entry + 'titre'=>'New MyObject', + 'mainmenu'=>'dav', + 'leftmenu'=>'dav_myobject_new', + 'url'=>'/dav/myobject_page.php?action=create', + 'langs'=>'dav@dav', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->dav->enabled', // Define condition to show or hide menu entry. Use '$conf->dav->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + 'perms'=>'1', // Use 'perms'=>'$user->rights->dav->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + END MODULEBUILDER LEFTMENU MYOBJECT */ + + + // Exports + $r=1; + + /* BEGIN MODULEBUILDER EXPORT MYOBJECT */ + /* + $langs->load("dav@dav"); + $this->export_code[$r]=$this->rights_class.'_'.$r; + $this->export_label[$r]='MyObjectLines'; // Translation key (used only if key ExportDataset_xxx_z not found) + $this->export_icon[$r]='myobject@dav'; + $keyforclass = 'MyObject'; $keyforclassfile='/mymobule/class/myobject.class.php'; $keyforelement='myobject'; + include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; + $keyforselect='myobject'; $keyforaliasextra='extra'; $keyforelement='myobject'; + include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; + //$this->export_dependencies_array[$r]=array('mysubobject'=>'ts.rowid', 't.myfield'=>array('t.myfield2','t.myfield3')); // To force to activate one or several fields if we select some fields that need same (like to select a unique key if we ask a field of a child to avoid the DISTINCT to discard them, or for computed field than need several other fields) + $this->export_sql_start[$r]='SELECT DISTINCT '; + $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'myobject as t'; + $this->export_sql_end[$r] .=' WHERE 1 = 1'; + $this->export_sql_end[$r] .=' AND t.entity IN ('.getEntity('myobject').')'; + $r++; */ + /* END MODULEBUILDER EXPORT MYOBJECT */ + } + + /** + * Function called when module is enabled. + * The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database. + * It also creates data directories + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + public function init($options='') + { + //$this->_load_tables('/dav/sql/'); + + // Create extrafields + include_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; + $extrafields = new ExtraFields($this->db); + + //$result1=$extrafields->addExtraField('myattr1', "New Attr 1 label", 'boolean', 1, 3, 'thirdparty', 0, 0, '', '', 1, '', 0, 0, '', '', 'dav@dav', '$conf->dav->enabled'); + //$result2=$extrafields->addExtraField('myattr2', "New Attr 2 label", 'varchar', 1, 10, 'project', 0, 0, '', '', 1, '', 0, 0, '', '', 'dav@dav', '$conf->dav->enabled'); + //$result3=$extrafields->addExtraField('myattr3', "New Attr 3 label", 'varchar', 1, 10, 'bank_account', 0, 0, '', '', 1, '', 0, 0, '', '', 'dav@dav', '$conf->dav->enabled'); + //$result4=$extrafields->addExtraField('myattr4', "New Attr 4 label", 'select', 1, 3, 'thirdparty', 0, 1, '', array('options'=>array('code1'=>'Val1','code2'=>'Val2','code3'=>'Val3')), 1 '', 0, 0, '', '', 'dav@dav', '$conf->dav->enabled'); + //$result5=$extrafields->addExtraField('myattr5', "New Attr 5 label", 'text', 1, 10, 'user', 0, 0, '', '', 1, '', 0, 0, '', '', 'dav@dav', '$conf->dav->enabled'); + + $sql = array(); + + return $this->_init($sql, $options); + } + + /** + * Function called when module is disabled. + * Remove from database constants, boxes and permissions from Dolibarr database. + * Data directories are not deleted + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + public function remove($options = '') + { + $sql = array(); + + return $this->_remove($sql, $options); + } +} From 6e2d62bea6a555d9df33298a214c56ddd48c64e0 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 29 Oct 2018 12:30:36 +0100 Subject: [PATCH 227/769] FIX wrong entity id --- htdocs/core/class/html.formfile.class.php | 10 ++++------ htdocs/projet/element.php | 6 +++--- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 7a0c07bb996..72e14fefdd6 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -879,15 +879,13 @@ class FormFile $out=''; $this->infofiles=array('nboffiles'=>0,'extensions'=>array(),'files'=>array()); + $entity = 1; // Without multicompany + // Get object entity - if (empty($conf->multicompany->enabled)) - { - $entity = $conf->entity; - } - else + if (! empty($conf->multicompany->enabled)) { preg_match('/\/([0-9]+)\/[^\/]+\/'.preg_quote($modulesubdir,'/').'$/', $filedir, $regs); - $entity = ((! empty($regs[1]) && $regs[1] > 1) ? $regs[1] : $conf->entity); + $entity = ((! empty($regs[1]) && $regs[1] > 1) ? $regs[1] : 1); // If entity id not found in $filedir this is entity 1 by default } // Get list of files starting with name of ref (but not followed by "-" to discard uploaded files and get only generated files) diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 3f611e5525e..d2b1948b5ec 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -882,16 +882,16 @@ foreach ($listofreferent as $key => $value) $element_doc = $element->element; $filename=dol_sanitizeFileName($element->ref); - $filedir=$conf->{$element_doc}->dir_output . '/' . dol_sanitizeFileName($element->ref); + $filedir=$conf->{$element_doc}->multidir_output[$element->entity] . '/' . dol_sanitizeFileName($element->ref); if ($element_doc === 'order_supplier') { $element_doc='commande_fournisseur'; - $filedir = $conf->fournisseur->commande->dir_output.'/'.dol_sanitizeFileName($element->ref); + $filedir = $conf->fournisseur->commande->multidir_output[$element->entity].'/'.dol_sanitizeFileName($element->ref); } else if ($element_doc === 'invoice_supplier') { $element_doc='facture_fournisseur'; $filename = get_exdir($element->id,2,0,0,$element,'product').dol_sanitizeFileName($element->ref); - $filedir = $conf->fournisseur->facture->dir_output.'/'.get_exdir($element->id,2,0,0,$element,'invoice_supplier').dol_sanitizeFileName($element->ref); + $filedir = $conf->fournisseur->facture->multidir_output[$element->entity].'/'.get_exdir($element->id,2,0,0,$element,'invoice_supplier').dol_sanitizeFileName($element->ref); } print '
'.$formfile->getDocumentsLink($element_doc, $filename, $filedir).'
'; From 977a88363e5b898a353a9e961b1185fef37b2207 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 29 Oct 2018 12:50:40 +0100 Subject: [PATCH 228/769] FIX missing multidir_output for supplier modules --- htdocs/core/class/conf.class.php | 42 +++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 4a76abff06f..ae6a73a0973 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -344,32 +344,46 @@ class Conf if (! empty($this->fournisseur)) { $this->fournisseur->commande=new stdClass(); - $this->fournisseur->commande->dir_output=$rootfordata."/fournisseur/commande"; - $this->fournisseur->commande->dir_temp =$rootfordata."/fournisseur/commande/temp"; + $this->fournisseur->commande->multidir_output=array($this->entity => $rootfordata."/fournisseur/commande"); + $this->fournisseur->commande->multidir_temp =array($this->entity => $rootfordata."/fournisseur/commande/temp"); + $this->fournisseur->commande->dir_output=$rootfordata."/fournisseur/commande"; // For backward compatibility + $this->fournisseur->commande->dir_temp =$rootfordata."/fournisseur/commande/temp"; // For backward compatibility $this->fournisseur->facture=new stdClass(); - $this->fournisseur->facture->dir_output =$rootfordata."/fournisseur/facture"; - $this->fournisseur->facture->dir_temp =$rootfordata."/fournisseur/facture/temp"; + $this->fournisseur->facture->multidir_output=array($this->entity => $rootfordata."/fournisseur/facture"); + $this->fournisseur->facture->multidir_temp =array($this->entity => $rootfordata."/fournisseur/facture/temp"); + $this->fournisseur->facture->dir_output =$rootfordata."/fournisseur/facture"; // For backward compatibility + $this->fournisseur->facture->dir_temp =$rootfordata."/fournisseur/facture/temp"; // For backward compatibility $this->supplierproposal=new stdClass(); - $this->supplierproposal->dir_output=$rootfordata."/supplier_proposal"; - $this->supplierproposal->dir_temp=$rootfordata."/supplier_proposal/temp"; + $this->supplierproposal->multidir_output=array($this->entity => $rootfordata."/supplier_proposal"); + $this->supplierproposal->multidir_temp =array($this->entity => $rootfordata."/supplier_proposal/temp"); + $this->supplierproposal->dir_output=$rootfordata."/supplier_proposal"; // For backward compatibility + $this->supplierproposal->dir_temp=$rootfordata."/supplier_proposal/temp"; // For backward compatibility $this->fournisseur->payment=new stdClass(); - $this->fournisseur->payment->dir_output =$rootfordata."/fournisseur/payment"; - $this->fournisseur->payment->dir_temp =$rootfordata."/fournisseur/payment/temp"; + $this->fournisseur->payment->multidir_output=array($this->entity => $rootfordata."/fournisseur/payment"); + $this->fournisseur->payment->multidir_temp =array($this->entity => $rootfordata."/fournisseur/payment/temp"); + $this->fournisseur->payment->dir_output =$rootfordata."/fournisseur/payment"; // For backward compatibility + $this->fournisseur->payment->dir_temp =$rootfordata."/fournisseur/payment/temp"; // For backward compatibility // To prepare split of module fournisseur into fournisseur + supplier_order + supplier_invoice if (! empty($this->fournisseur->enabled) && empty($this->global->MAIN_USE_NEW_SUPPLIERMOD)) // By default, if module supplier is on, we set new properties { $this->supplier_order=new stdClass(); $this->supplier_order->enabled=1; - $this->supplier_order->dir_output=$rootfordata."/fournisseur/commande"; - $this->supplier_order->dir_temp=$rootfordata."/fournisseur/commande/temp"; + $this->supplier_order->multidir_output=array($this->entity => $rootfordata."/fournisseur/commande"); + $this->supplier_order->multidir_temp =array($this->entity => $rootfordata."/fournisseur/commande/temp"); + $this->supplier_order->dir_output=$rootfordata."/fournisseur/commande"; // For backward compatibility + $this->supplier_order->dir_temp=$rootfordata."/fournisseur/commande/temp"; // For backward compatibility $this->supplier_invoice=new stdClass(); $this->supplier_invoice->enabled=1; - $this->supplier_invoice->dir_output=$rootfordata."/fournisseur/facture"; - $this->supplier_invoice->dir_temp=$rootfordata."/fournisseur/facture/temp"; + $this->supplier_invoice->multidir_output=array($this->entity => $rootfordata."/fournisseur/facture"); + $this->supplier_invoice->multidir_temp =array($this->entity => $rootfordata."/fournisseur/facture/temp"); + $this->supplier_invoice->dir_output=$rootfordata."/fournisseur/facture"; // For backward compatibility + $this->supplier_invoice->dir_temp=$rootfordata."/fournisseur/facture/temp"; // For backward compatibility $this->supplierproposal=new stdClass(); - $this->supplierproposal->dir_output=$rootfordata."/supplier_proposal"; - $this->supplierproposal->dir_temp=$rootfordata."/supplier_proposal/temp"; + $this->supplierproposal->multidir_output=array($this->entity => $rootfordata."/supplier_proposal"); + $this->supplierproposal->multidir_temp =array($this->entity => $rootfordata."/supplier_proposal/temp"); + $this->supplierproposal->dir_output=$rootfordata."/supplier_proposal"; // For backward compatibility + $this->supplierproposal->dir_temp=$rootfordata."/supplier_proposal/temp"; // For backward compatibility } } From 85b8c9f21920be7c4e2559f02bc8ae0b28b49c31 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 14:35:42 +0100 Subject: [PATCH 229/769] FIX Delete of draft invoice --- htdocs/compta/facture/card.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index be65b2ec5ab..8c80c5caa9c 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -959,7 +959,7 @@ if (empty($reshook)) if($facture_source->type == Facture::TYPE_SITUATION) { - $source_fk_prev_id = $line->fk_prev_id; // temporary storing situation invoice fk_prev_id + $source_fk_prev_id = $line->fk_prev_id; // temporary storing situation invoice fk_prev_id $line->fk_prev_id = $line->id; // Credit note line need to be linked to the situation invoice it is create from if(!empty($facture_source->tab_previous_situation_invoice)) @@ -1543,8 +1543,8 @@ if (empty($reshook)) $line->origin_id = $line->id; $line->fk_prev_id = $line->id; $line->fetch_optionals($line->id); - $line->situation_percent = $line->get_prev_progress($object->id); // get good progress including credit note - + $line->situation_percent = $line->get_prev_progress($object->id); // get good progress including credit note + // Si fk_remise_except defini on vérifie si la réduction à déjà été appliquée if ($line->fk_remise_except) { @@ -4811,9 +4811,9 @@ else if ($id > 0 || ! empty($ref)) } // Delete - if ($user->rights->facture->supprimer) + $isErasable = $object->is_erasable(); + if ($user->rights->facture->supprimer || $isErasable == 1) // isErasable = 1 means draft (draft can always be deleted with no need of permissions) { - $isErasable = $object->is_erasable(); //var_dump($isErasable); if ($isErasable == -4) { print ''; From 27d82d0e8e723ba26784cbb3da9c2d7227af153e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 14:41:00 +0100 Subject: [PATCH 230/769] FIX Delete of draft invoice --- htdocs/compta/facture/card.php | 4 ++-- htdocs/core/class/commoninvoice.class.php | 5 +++-- htdocs/fourn/facture/card.php | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 8c80c5caa9c..7589801787c 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -190,7 +190,7 @@ if (empty($reshook)) $qualified_for_stock_change = $object->hasProductsOrServices(1); } - if ($object->is_erasable()) + if ($object->is_erasable() > 0) { $result = $object->delete($user, 0, $idwarehouse); if ($result > 0) { @@ -4812,7 +4812,7 @@ else if ($id > 0 || ! empty($ref)) // Delete $isErasable = $object->is_erasable(); - if ($user->rights->facture->supprimer || $isErasable == 1) // isErasable = 1 means draft (draft can always be deleted with no need of permissions) + if ($user->rights->facture->supprimer || $isErasable == 1) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) { //var_dump($isErasable); if ($isErasable == -4) { diff --git a/htdocs/core/class/commoninvoice.class.php b/htdocs/core/class/commoninvoice.class.php index 9bab103d2e4..3aa8eb4e1ab 100644 --- a/htdocs/core/class/commoninvoice.class.php +++ b/htdocs/core/class/commoninvoice.class.php @@ -328,12 +328,13 @@ abstract class CommonInvoice extends CommonObject /** * Return if an invoice can be deleted * Rule is: - * If invoice is draft and has a temporary ref -> yes + * If invoice is draft and has a temporary ref -> yes (1) * If hidden option INVOICE_CAN_NEVER_BE_REMOVED is on -> no (0) * If invoice is dispatched in bookkeeping -> no (-1) * If invoice has a definitive ref, is not last and INVOICE_CAN_ALWAYS_BE_REMOVED off -> no (-2) * If invoice not last in a cycle -> no (-3) * If there is payment -> no (-4) + * Otherwise -> yes (2) * * @return int <=0 if no, >0 if yes */ @@ -381,7 +382,7 @@ abstract class CommonInvoice extends CommonObject // Test if there is at least one payment. If yes, refuse to delete. if (empty($conf->global->INVOICE_CAN_ALWAYS_BE_REMOVED) && $this->getSommePaiement() > 0) return -4; - return 1; + return 2; } /** diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 36785a154dc..75e0f15220d 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -3117,9 +3117,9 @@ else } // Delete - if ($action != 'confirm_edit' && $user->rights->fournisseur->facture->supprimer) + $isErasable=$object->is_erasable(); + if ($action != 'confirm_edit' && ($user->rights->fournisseur->facture->supprimer || $isErasable == 1)) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) { - $isErasable=$object->is_erasable(); //var_dump($isErasable); if ($isErasable == -4) { print ''; From 824757bca6eba8dcf64522a9fb3f7745c498970a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 14:47:33 +0100 Subject: [PATCH 231/769] Fix perm to delete --- htdocs/compta/facture/card.php | 2 +- htdocs/fourn/facture/card.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 7589801787c..856b430c646 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -4812,7 +4812,7 @@ else if ($id > 0 || ! empty($ref)) // Delete $isErasable = $object->is_erasable(); - if ($user->rights->facture->supprimer || $isErasable == 1) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) + if ($user->rights->facture->supprimer || ($user->rights->facture->creer && $isErasable == 1)) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) { //var_dump($isErasable); if ($isErasable == -4) { diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 75e0f15220d..78c64ae1062 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -3118,7 +3118,7 @@ else // Delete $isErasable=$object->is_erasable(); - if ($action != 'confirm_edit' && ($user->rights->fournisseur->facture->supprimer || $isErasable == 1)) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) + if ($action != 'confirm_edit' && ($user->rights->fournisseur->facture->supprimer || ($user->rights->fournisseur->facture->creer && $isErasable == 1))) // isErasable = 1 means draft with temporary ref (draft can always be deleted with no need of permissions) { //var_dump($isErasable); if ($isErasable == -4) { From d02fccd7e41671e6521c3aba9604202634f92701 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 14:56:00 +0100 Subject: [PATCH 232/769] Fix deletion of draft invoice --- htdocs/compta/facture/card.php | 7 +++++-- htdocs/fourn/facture/card.php | 25 ++++++++++++++++--------- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 856b430c646..14a1ead5098 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -177,7 +177,7 @@ if (empty($reshook)) } // Delete invoice - else if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->facture->supprimer) { + else if ($action == 'confirm_delete' && $confirm == 'yes') { $result = $object->fetch($id); $object->fetch_thirdparty(); @@ -190,7 +190,10 @@ if (empty($reshook)) $qualified_for_stock_change = $object->hasProductsOrServices(1); } - if ($object->is_erasable() > 0) + $isErasable=$object->is_erasable(); + + if (($user->rights->facture->supprimer && $isErasable > 0) + || ($user->rights->facture->creer && $isErasable == 1)) { $result = $object->delete($user, 0, $idwarehouse); if ($result > 0) { diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 78c64ae1062..2ce28875425 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -218,19 +218,26 @@ if (empty($reshook)) } } - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->fournisseur->facture->supprimer) + elseif ($action == 'confirm_delete' && $confirm == 'yes') { $object->fetch($id); $object->fetch_thirdparty(); - $result=$object->delete($user); - if ($result > 0) + + $isErasable=$object->is_erasable(); + + if (($user->rights->fournisseur->facture->supprimer && $isErasable > 0) + || ($user->rights->fournisseur->facture->creer && $isErasable == 1)) { - header('Location: list.php?restore_lastsearch_values=1'); - exit; - } - else - { - setEventMessages($object->error, $object->errors, 'errors'); + $result=$object->delete($user); + if ($result > 0) + { + header('Location: list.php?restore_lastsearch_values=1'); + exit; + } + else + { + setEventMessages($object->error, $object->errors, 'errors'); + } } } From 0266db7aa8688698ae41a662274a06dd17891b33 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 18:19:40 +0100 Subject: [PATCH 233/769] FIX deletion on draft is allowed if we are allwoed to create --- htdocs/compta/facture/card.php | 10 +- htdocs/core/lib/security.lib.php | 479 ++++++++++++++++--------------- htdocs/fourn/facture/card.php | 10 +- 3 files changed, 250 insertions(+), 249 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 14a1ead5098..aa1176e0295 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -92,11 +92,6 @@ $hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') : $hidedesc = (GETPOST('hidedesc', 'int') ? GETPOST('hidedesc', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0)); $hideref = (GETPOST('hideref', 'int') ? GETPOST('hideref', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0)); -// Security check -$fieldid = (! empty($ref) ? 'facnumber' : 'rowid'); -if ($user->societe_id) $socid = $user->societe_id; -$result = restrictedArea($user, 'facture', $id, '', '', 'fk_soc', $fieldid); - // Nombre de ligne pour choix de produit/service predefinis $NBLINES = 4; @@ -117,6 +112,11 @@ $permissionnote = $user->rights->facture->creer; // Used by the include of actio $permissiondellink=$user->rights->facture->creer; // Used by the include of actions_dellink.inc.php $permissiontoedit = $user->rights->facture->creer; // Used by the include of actions_lineupdonw.inc.php +// Security check +$fieldid = (! empty($ref) ? 'facnumber' : 'rowid'); +if ($user->societe_id) $socid = $user->societe_id; +$result = restrictedArea($user, 'facture', $id, '', '', 'fk_soc', $fieldid, null, (($object->statut == Facture::STATUS_DRAFT) ? 1 : 0)); + /* * Actions diff --git a/htdocs/core/lib/security.lib.php b/htdocs/core/lib/security.lib.php index 9fa5fb8b7c3..d2b768d75d5 100644 --- a/htdocs/core/lib/security.lib.php +++ b/htdocs/core/lib/security.lib.php @@ -39,7 +39,7 @@ function dol_encode($chain, $key='1') if (is_numeric($key) && $key == '1') // rule 1 is offset of 17 for char { $output_tab=array(); - $strlength=dol_strlen($chain); + $strlength=dol_strlen($chain); for ($i=0; $i < $strlength; $i++) { $output_tab[$i] = chr(ord(substr($chain,$i,1))+17); @@ -175,18 +175,19 @@ function dol_verifyHash($chain, $hash, $type='0') * @param string $dbt_keyfield Field name for socid foreign key if not fk_soc. Not used if objectid is null (optional) * @param string $dbt_select Field name for select if not rowid. Not used if objectid is null (optional) * @param Canvas $objcanvas Object canvas + * @param int $isdraft 1=The object with id=$objectid is a draft * @return int Always 1, die process if not allowed * @see dol_check_secure_access_document */ -function restrictedArea($user, $features, $objectid=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $objcanvas=null) +function restrictedArea($user, $features, $objectid=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $objcanvas=null, $isdraft=0) { global $db, $conf; global $hookmanager; - //dol_syslog("functions.lib:restrictedArea $feature, $objectid, $dbtablename,$feature2,$dbt_socfield,$dbt_select"); - //print "user_id=".$user->id.", features=".$features.", feature2=".$feature2.", objectid=".$objectid; - //print ", dbtablename=".$dbtablename.", dbt_socfield=".$dbt_keyfield.", dbt_select=".$dbt_select; - //print ", perm: ".$features."->".$feature2."=".($user->rights->$features->$feature2->lire)."
"; + //dol_syslog("functions.lib:restrictedArea $feature, $objectid, $dbtablename,$feature2,$dbt_socfield,$dbt_select"); + //print "user_id=".$user->id.", features=".$features.", feature2=".$feature2.", objectid=".$objectid; + //print ", dbtablename=".$dbtablename.", dbt_socfield=".$dbt_keyfield.", dbt_select=".$dbt_select; + //print ", perm: ".$features."->".$feature2."=".($user->rights->$features->$feature2->lire)."
"; // Get more permissions checks from hooks $parameters=array('features'=>$features, 'objectid'=>$objectid, 'idtype'=>$dbt_select); @@ -197,225 +198,225 @@ function restrictedArea($user, $features, $objectid=0, $tableandshare='', $featu if ($dbt_select != 'rowid' && $dbt_select != 'id') $objectid = "'".$objectid."'"; // Features/modules to check - $featuresarray = array($features); - if (preg_match('/&/', $features)) $featuresarray = explode("&", $features); - else if (preg_match('/\|/', $features)) $featuresarray = explode("|", $features); + $featuresarray = array($features); + if (preg_match('/&/', $features)) $featuresarray = explode("&", $features); + else if (preg_match('/\|/', $features)) $featuresarray = explode("|", $features); - // More subfeatures to check - if (! empty($feature2)) $feature2 = explode("|", $feature2); + // More subfeatures to check + if (! empty($feature2)) $feature2 = explode("|", $feature2); - // More parameters - $params = explode('&', $tableandshare); - $dbtablename=(! empty($params[0]) ? $params[0] : ''); - $sharedelement=(! empty($params[1]) ? $params[1] : $dbtablename); + // More parameters + $params = explode('&', $tableandshare); + $dbtablename=(! empty($params[0]) ? $params[0] : ''); + $sharedelement=(! empty($params[1]) ? $params[1] : $dbtablename); $listofmodules=explode(',',$conf->global->MAIN_MODULES_FOR_EXTERNAL); // Check read permission from module - $readok=1; $nbko=0; - foreach ($featuresarray as $feature) // first we check nb of test ko - { - $featureforlistofmodule=$feature; - if ($featureforlistofmodule == 'produit') $featureforlistofmodule='product'; - if (! empty($user->societe_id) && ! empty($conf->global->MAIN_MODULES_FOR_EXTERNAL) && ! in_array($featureforlistofmodule,$listofmodules)) // If limits on modules for external users, module must be into list of modules for external users - { - $readok=0; $nbko++; - continue; - } + $readok=1; $nbko=0; + foreach ($featuresarray as $feature) // first we check nb of test ko + { + $featureforlistofmodule=$feature; + if ($featureforlistofmodule == 'produit') $featureforlistofmodule='product'; + if (! empty($user->societe_id) && ! empty($conf->global->MAIN_MODULES_FOR_EXTERNAL) && ! in_array($featureforlistofmodule,$listofmodules)) // If limits on modules for external users, module must be into list of modules for external users + { + $readok=0; $nbko++; + continue; + } - if ($feature == 'societe') - { - if (! $user->rights->societe->lire && ! $user->rights->fournisseur->lire) { $readok=0; $nbko++; } - } - else if ($feature == 'contact') - { - if (! $user->rights->societe->contact->lire) { $readok=0; $nbko++; } - } - else if ($feature == 'produit|service') - { - if (! $user->rights->produit->lire && ! $user->rights->service->lire) { $readok=0; $nbko++; } - } - else if ($feature == 'prelevement') - { - if (! $user->rights->prelevement->bons->lire) { $readok=0; $nbko++; } - } - else if ($feature == 'cheque') - { - if (! $user->rights->banque->cheque) { $readok=0; $nbko++; } - } - else if ($feature == 'projet') - { - if (! $user->rights->projet->lire && ! $user->rights->projet->all->lire) { $readok=0; $nbko++; } - } - else if (! empty($feature2)) // This should be used for future changes - { - $tmpreadok=1; - foreach($feature2 as $subfeature) - { - if (! empty($subfeature) && empty($user->rights->$feature->$subfeature->lire) && empty($user->rights->$feature->$subfeature->read)) { $tmpreadok=0; } - else if (empty($subfeature) && empty($user->rights->$feature->lire) && empty($user->rights->$feature->read)) { $tmpreadok=0; } - else { $tmpreadok=1; break; } // Break is to bypass second test if the first is ok - } - if (! $tmpreadok) // We found a test on feature that is ko - { - $readok=0; // All tests are ko (we manage here the and, the or will be managed later using $nbko). - $nbko++; - } - } - else if (! empty($feature) && ($feature!='user' && $feature!='usergroup')) // This is for old permissions - { - if (empty($user->rights->$feature->lire) - && empty($user->rights->$feature->read) - && empty($user->rights->$feature->run)) { $readok=0; $nbko++; } - } - } + if ($feature == 'societe') + { + if (! $user->rights->societe->lire && ! $user->rights->fournisseur->lire) { $readok=0; $nbko++; } + } + else if ($feature == 'contact') + { + if (! $user->rights->societe->contact->lire) { $readok=0; $nbko++; } + } + else if ($feature == 'produit|service') + { + if (! $user->rights->produit->lire && ! $user->rights->service->lire) { $readok=0; $nbko++; } + } + else if ($feature == 'prelevement') + { + if (! $user->rights->prelevement->bons->lire) { $readok=0; $nbko++; } + } + else if ($feature == 'cheque') + { + if (! $user->rights->banque->cheque) { $readok=0; $nbko++; } + } + else if ($feature == 'projet') + { + if (! $user->rights->projet->lire && ! $user->rights->projet->all->lire) { $readok=0; $nbko++; } + } + else if (! empty($feature2)) // This should be used for future changes + { + $tmpreadok=1; + foreach($feature2 as $subfeature) + { + if (! empty($subfeature) && empty($user->rights->$feature->$subfeature->lire) && empty($user->rights->$feature->$subfeature->read)) { $tmpreadok=0; } + else if (empty($subfeature) && empty($user->rights->$feature->lire) && empty($user->rights->$feature->read)) { $tmpreadok=0; } + else { $tmpreadok=1; break; } // Break is to bypass second test if the first is ok + } + if (! $tmpreadok) // We found a test on feature that is ko + { + $readok=0; // All tests are ko (we manage here the and, the or will be managed later using $nbko). + $nbko++; + } + } + else if (! empty($feature) && ($feature!='user' && $feature!='usergroup')) // This is for old permissions + { + if (empty($user->rights->$feature->lire) + && empty($user->rights->$feature->read) + && empty($user->rights->$feature->run)) { $readok=0; $nbko++; } + } + } - // If a or and at least one ok - if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $readok=1; + // If a or and at least one ok + if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $readok=1; - if (! $readok) accessforbidden(); - //print "Read access is ok"; + if (! $readok) accessforbidden(); + //print "Read access is ok"; - // Check write permission from module - $createok=1; $nbko=0; - if (GETPOST('action','aZ09') == 'create') - { - foreach ($featuresarray as $feature) - { - if ($feature == 'contact') - { - if (! $user->rights->societe->contact->creer) { $createok=0; $nbko++; } - } - else if ($feature == 'produit|service') - { - if (! $user->rights->produit->creer && ! $user->rights->service->creer) { $createok=0; $nbko++; } - } - else if ($feature == 'prelevement') - { - if (! $user->rights->prelevement->bons->creer) { $createok=0; $nbko++; } - } - else if ($feature == 'commande_fournisseur') - { - if (! $user->rights->fournisseur->commande->creer) { $createok=0; $nbko++; } - } - else if ($feature == 'banque') - { - if (! $user->rights->banque->modifier) { $createok=0; $nbko++; } - } - else if ($feature == 'cheque') - { - if (! $user->rights->banque->cheque) { $createok=0; $nbko++; } - } - else if (! empty($feature2)) // This should be used - { - foreach($feature2 as $subfeature) - { - if (empty($user->rights->$feature->$subfeature->creer) - && empty($user->rights->$feature->$subfeature->write) - && empty($user->rights->$feature->$subfeature->create)) { $createok=0; $nbko++; } - else { $createok=1; break; } // Break to bypass second test if the first is ok - } - } - else if (! empty($feature)) // This is for old permissions ('creer' or 'write') - { - //print '
feature='.$feature.' creer='.$user->rights->$feature->creer.' write='.$user->rights->$feature->write; - if (empty($user->rights->$feature->creer) - && empty($user->rights->$feature->write) - && empty($user->rights->$feature->create)) { $createok=0; $nbko++; } - } - } + // Check write permission from module (we need to know write permission to create but also to delete drafts record) + $createok=1; $nbko=0; + if (GETPOST('action','aZ09') == 'create' || ((GETPOST("action","aZ09") == 'confirm_delete' && GETPOST("confirm","aZ09") == 'yes') || GETPOST("action","aZ09") == 'delete')) + { + foreach ($featuresarray as $feature) + { + if ($feature == 'contact') + { + if (! $user->rights->societe->contact->creer) { $createok=0; $nbko++; } + } + else if ($feature == 'produit|service') + { + if (! $user->rights->produit->creer && ! $user->rights->service->creer) { $createok=0; $nbko++; } + } + else if ($feature == 'prelevement') + { + if (! $user->rights->prelevement->bons->creer) { $createok=0; $nbko++; } + } + else if ($feature == 'commande_fournisseur') + { + if (! $user->rights->fournisseur->commande->creer) { $createok=0; $nbko++; } + } + else if ($feature == 'banque') + { + if (! $user->rights->banque->modifier) { $createok=0; $nbko++; } + } + else if ($feature == 'cheque') + { + if (! $user->rights->banque->cheque) { $createok=0; $nbko++; } + } + else if (! empty($feature2)) // This should be used + { + foreach($feature2 as $subfeature) + { + if (empty($user->rights->$feature->$subfeature->creer) + && empty($user->rights->$feature->$subfeature->write) + && empty($user->rights->$feature->$subfeature->create)) { $createok=0; $nbko++; } + else { $createok=1; break; } // Break to bypass second test if the first is ok + } + } + else if (! empty($feature)) // This is for old permissions ('creer' or 'write') + { + //print '
feature='.$feature.' creer='.$user->rights->$feature->creer.' write='.$user->rights->$feature->write; + if (empty($user->rights->$feature->creer) + && empty($user->rights->$feature->write) + && empty($user->rights->$feature->create)) { $createok=0; $nbko++; } + } + } - // If a or and at least one ok - if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $createok=1; + // If a or and at least one ok + if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $createok=1; - if (! $createok) accessforbidden(); - //print "Write access is ok"; - } + if (GETPOST('action','aZ09') == 'create' && ! $createok) accessforbidden(); + //print "Write access is ok"; + } - // Check create user permission - $createuserok=1; - if (GETPOST('action','aZ09') == 'confirm_create_user' && GETPOST("confirm",'aZ09') == 'yes') - { - if (! $user->rights->user->user->creer) $createuserok=0; + // Check create user permission + $createuserok=1; + if (GETPOST('action','aZ09') == 'confirm_create_user' && GETPOST("confirm",'aZ09') == 'yes') + { + if (! $user->rights->user->user->creer) $createuserok=0; - if (! $createuserok) accessforbidden(); - //print "Create user access is ok"; - } + if (! $createuserok) accessforbidden(); + //print "Create user access is ok"; + } - // Check delete permission from module - $deleteok=1; $nbko=0; - if ((GETPOST("action","aZ09") == 'confirm_delete' && GETPOST("confirm","aZ09") == 'yes') || GETPOST("action","aZ09") == 'delete') - { - foreach ($featuresarray as $feature) - { - if ($feature == 'contact') - { - if (! $user->rights->societe->contact->supprimer) $deleteok=0; - } - else if ($feature == 'produit|service') - { - if (! $user->rights->produit->supprimer && ! $user->rights->service->supprimer) $deleteok=0; - } - else if ($feature == 'commande_fournisseur') - { - if (! $user->rights->fournisseur->commande->supprimer) $deleteok=0; - } - else if ($feature == 'banque') - { - if (! $user->rights->banque->modifier) $deleteok=0; - } - else if ($feature == 'cheque') - { - if (! $user->rights->banque->cheque) $deleteok=0; - } - else if ($feature == 'ecm') - { - if (! $user->rights->ecm->upload) $deleteok=0; - } - else if ($feature == 'ftp') - { - if (! $user->rights->ftp->write) $deleteok=0; - }else if ($feature == 'salaries') - { - if (! $user->rights->salaries->delete) $deleteok=0; - } - else if ($feature == 'salaries') - { - if (! $user->rights->salaries->delete) $deleteok=0; - } - else if (! empty($feature2)) // This should be used for future changes - { - foreach($feature2 as $subfeature) - { - if (empty($user->rights->$feature->$subfeature->supprimer) && empty($user->rights->$feature->$subfeature->delete)) $deleteok=0; - else { $deleteok=1; break; } // For bypass the second test if the first is ok - } - } - else if (! empty($feature)) // This is for old permissions - { - //print '
feature='.$feature.' creer='.$user->rights->$feature->supprimer.' write='.$user->rights->$feature->delete; - if (empty($user->rights->$feature->supprimer) - && empty($user->rights->$feature->delete) - && empty($user->rights->$feature->run)) $deleteok=0; - } - } + // Check delete permission from module + $deleteok=1; $nbko=0; + if ((GETPOST("action","aZ09") == 'confirm_delete' && GETPOST("confirm","aZ09") == 'yes') || GETPOST("action","aZ09") == 'delete') + { + foreach ($featuresarray as $feature) + { + if ($feature == 'contact') + { + if (! $user->rights->societe->contact->supprimer) $deleteok=0; + } + else if ($feature == 'produit|service') + { + if (! $user->rights->produit->supprimer && ! $user->rights->service->supprimer) $deleteok=0; + } + else if ($feature == 'commande_fournisseur') + { + if (! $user->rights->fournisseur->commande->supprimer) $deleteok=0; + } + else if ($feature == 'banque') + { + if (! $user->rights->banque->modifier) $deleteok=0; + } + else if ($feature == 'cheque') + { + if (! $user->rights->banque->cheque) $deleteok=0; + } + else if ($feature == 'ecm') + { + if (! $user->rights->ecm->upload) $deleteok=0; + } + else if ($feature == 'ftp') + { + if (! $user->rights->ftp->write) $deleteok=0; + }else if ($feature == 'salaries') + { + if (! $user->rights->salaries->delete) $deleteok=0; + } + else if ($feature == 'salaries') + { + if (! $user->rights->salaries->delete) $deleteok=0; + } + else if (! empty($feature2)) // This should be used for permissions on 2 levels + { + foreach($feature2 as $subfeature) + { + if (empty($user->rights->$feature->$subfeature->supprimer) && empty($user->rights->$feature->$subfeature->delete)) $deleteok=0; + else { $deleteok=1; break; } // For bypass the second test if the first is ok + } + } + else if (! empty($feature)) // This is used for permissions on 1 level + { + //print '
feature='.$feature.' creer='.$user->rights->$feature->supprimer.' write='.$user->rights->$feature->delete; + if (empty($user->rights->$feature->supprimer) + && empty($user->rights->$feature->delete) + && empty($user->rights->$feature->run)) $deleteok=0; + } + } - // If a or and at least one ok - if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $deleteok=1; + // If a or and at least one ok + if (preg_match('/\|/', $features) && $nbko < count($featuresarray)) $deleteok=1; - if (! $deleteok) accessforbidden(); - //print "Delete access is ok"; - } + if (! $deleteok && ! ($isdraft && $createok)) accessforbidden(); + //print "Delete access is ok"; + } - // If we have a particular object to check permissions on, we check this object - // is linked to a company allowed to $user. - if (! empty($objectid) && $objectid > 0) - { - $ok = checkUserAccessToObject($user, $featuresarray, $objectid, $tableandshare, $feature2, $dbt_keyfield, $dbt_select); - return $ok ? 1 : accessforbidden(); - } + // If we have a particular object to check permissions on, we check this object + // is linked to a company allowed to $user. + if (! empty($objectid) && $objectid > 0) + { + $ok = checkUserAccessToObject($user, $featuresarray, $objectid, $tableandshare, $feature2, $dbt_keyfield, $dbt_select); + return $ok ? 1 : accessforbidden(); + } - return 1; + return 1; } /** @@ -577,8 +578,8 @@ function checkUserAccessToObject($user, $featuresarray, $objectid=0, $tableandsh { if (! empty($conf->projet->enabled) && empty($user->rights->projet->all->lire)) { - $task = new Task($db); - $task->fetch($objectid); + $task = new Task($db); + $task->fetch($objectid); include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; $projectstatic=new Project($db); @@ -658,37 +659,37 @@ function checkUserAccessToObject($user, $featuresarray, $objectid=0, $tableandsh */ function accessforbidden($message='',$printheader=1,$printfooter=1,$showonlymessage=0) { - global $conf, $db, $user, $langs; - if (! is_object($langs)) - { - include_once DOL_DOCUMENT_ROOT.'/core/class/translate.class.php'; - $langs=new Translate('',$conf); - } + global $conf, $db, $user, $langs; + if (! is_object($langs)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/translate.class.php'; + $langs=new Translate('',$conf); + } - $langs->load("errors"); + $langs->load("errors"); - if ($printheader) - { - if (function_exists("llxHeader")) llxHeader(''); - else if (function_exists("llxHeaderVierge")) llxHeaderVierge(''); - } - print '
'; - if (! $message) print $langs->trans("ErrorForbidden"); - else print $message; - print '
'; - print '
'; - if (empty($showonlymessage)) - { - if ($user->login) - { - print $langs->trans("CurrentLogin").': '.$user->login.'
'; - print $langs->trans("ErrorForbidden2",$langs->trans("Home"),$langs->trans("Users")); - } - else - { - print $langs->trans("ErrorForbidden3"); - } - } - if ($printfooter && function_exists("llxFooter")) llxFooter(); - exit(0); + if ($printheader) + { + if (function_exists("llxHeader")) llxHeader(''); + else if (function_exists("llxHeaderVierge")) llxHeaderVierge(''); + } + print '
'; + if (! $message) print $langs->trans("ErrorForbidden"); + else print $message; + print '
'; + print '
'; + if (empty($showonlymessage)) + { + if ($user->login) + { + print $langs->trans("CurrentLogin").': '.$user->login.'
'; + print $langs->trans("ErrorForbidden2",$langs->trans("Home"),$langs->trans("Users")); + } + else + { + print $langs->trans("ErrorForbidden3"); + } + } + if ($printfooter && function_exists("llxFooter")) llxFooter(); + exit(0); } diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 2ce28875425..29e9f6fe85e 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -72,11 +72,6 @@ $hidedetails = (GETPOST('hidedetails','int') ? GETPOST('hidedetails','int') : (! $hidedesc = (GETPOST('hidedesc','int') ? GETPOST('hidedesc','int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0)); $hideref = (GETPOST('hideref','int') ? GETPOST('hideref','int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0)); -// Security check -$socid=''; -if (! empty($user->societe_id)) $socid=$user->societe_id; -$result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture'); - // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('invoicesuppliercard','globalcard')); @@ -95,6 +90,11 @@ if ($id > 0 || ! empty($ref)) if ($ret < 0) dol_print_error($db,$object->error); } +// Security check +$socid=''; +if (! empty($user->societe_id)) $socid=$user->societe_id; +$result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture', 'fk_soc', 'rowid', null, (($object->statut == FactureFournisseur::STATUS_DRAFT) ? 1 : 0)); + $permissionnote=$user->rights->fournisseur->facture->creer; // Used by the include of actions_setnotes.inc.php $permissiondellink=$user->rights->fournisseur->facture->creer; // Used by the include of actions_dellink.inc.php $permissionedit=$user->rights->fournisseur->facture->creer; // Used by the include of actions_lineupdown.inc.php From 8fbf5b1f338819fe4aa1ee097ebcccd697acb2d4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 29 Oct 2018 18:28:19 +0100 Subject: [PATCH 234/769] FIX deletion on draft is allowed if we are allwoed to create --- htdocs/compta/facture/card.php | 3 ++- htdocs/fourn/facture/card.php | 3 ++- htdocs/modulebuilder/template/myobject_card.php | 10 +++++----- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index aa1176e0295..4ab316e638d 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -115,7 +115,8 @@ $permissiontoedit = $user->rights->facture->creer; // Used by the include of act // Security check $fieldid = (! empty($ref) ? 'facnumber' : 'rowid'); if ($user->societe_id) $socid = $user->societe_id; -$result = restrictedArea($user, 'facture', $id, '', '', 'fk_soc', $fieldid, null, (($object->statut == Facture::STATUS_DRAFT) ? 1 : 0)); +$isdraft = (($object->statut == Facture::STATUS_DRAFT) ? 1 : 0); +$result = restrictedArea($user, 'facture', $id, '', '', 'fk_soc', $fieldid, null, $isdraft); /* diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 29e9f6fe85e..a51da110195 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -93,7 +93,8 @@ if ($id > 0 || ! empty($ref)) // Security check $socid=''; if (! empty($user->societe_id)) $socid=$user->societe_id; -$result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture', 'fk_soc', 'rowid', null, (($object->statut == FactureFournisseur::STATUS_DRAFT) ? 1 : 0)); +$isdraft = (($object->statut == FactureFournisseur::STATUS_DRAFT) ? 1 : 0); +$result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture', 'fk_soc', 'rowid', null, $isdraft); $permissionnote=$user->rights->fournisseur->facture->creer; // Used by the include of actions_setnotes.inc.php $permissiondellink=$user->rights->fournisseur->facture->creer; // Used by the include of actions_dellink.inc.php diff --git a/htdocs/modulebuilder/template/myobject_card.php b/htdocs/modulebuilder/template/myobject_card.php index 6c6324e6e8d..3d811d53381 100644 --- a/htdocs/modulebuilder/template/myobject_card.php +++ b/htdocs/modulebuilder/template/myobject_card.php @@ -93,14 +93,14 @@ foreach($object->fields as $key => $val) if (empty($action) && empty($id) && empty($ref)) $action='view'; -// Security check - Protection if external user -//if ($user->societe_id > 0) access_forbidden(); -//if ($user->societe_id > 0) $socid = $user->societe_id; -//$result = restrictedArea($user, 'mymodule', $id); - // Load object include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once // Must be include, not include_once. Include fetch and fetch_thirdparty but not fetch_optionals +// Security check - Protection if external user +//if ($user->societe_id > 0) access_forbidden(); +//if ($user->societe_id > 0) $socid = $user->societe_id; +//$isdraft = (($object->statut == MyObject::STATUS_DRAFT) ? 1 : 0); +//$result = restrictedArea($user, 'mymodule', $id, '', '', 'fk_soc', 'rowid', null, $isdraft); /* From 450a837393993e922bb2b3bcd32f747902cba013 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 29 Oct 2018 18:50:15 +0100 Subject: [PATCH 235/769] make play and playdisable equals --- htdocs/core/lib/functions.lib.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index d15d07e4c6e..d3d1e41cb61 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -3237,6 +3237,9 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ elseif ($pictowithoutext == 'playdisabled') { $fakey = 'fa-play'; $facolor = '#ccc'; + } elseif ($pictowithoutext == 'play') { + $fakey = 'fa-play'; + $facolor = '#444'; } else { $fakey = 'fa-'.$pictowithoutext; From 7f7df8d001e4e771509f2dcb33bbecf29afc79ba Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Mon, 29 Oct 2018 22:33:59 +0100 Subject: [PATCH 236/769] Fix: To be possibly intercepted : create, update and delete of the object instead of commonobject must be called --- htdocs/core/actions_addupdatedelete.inc.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/actions_addupdatedelete.inc.php b/htdocs/core/actions_addupdatedelete.inc.php index c7cb1dc6f78..31a6549cc27 100644 --- a/htdocs/core/actions_addupdatedelete.inc.php +++ b/htdocs/core/actions_addupdatedelete.inc.php @@ -72,7 +72,7 @@ if ($action == 'add' && ! empty($permissiontoadd)) if (! $error) { - $result=$object->createCommon($user); + $result=$object->create($user); if ($result > 0) { // Creation OK @@ -127,7 +127,7 @@ if ($action == 'update' && ! empty($permissiontoadd)) if (! $error) { - $result=$object->updateCommon($user); + $result=$object->update($user); if ($result > 0) { $action='view'; @@ -169,7 +169,7 @@ if ($action == "update_extras" && ! empty($permissiontoadd)) // Action to delete if ($action == 'confirm_delete' && ! empty($permissiontodelete)) { - $result=$object->deleteCommon($user); + $result=$object->delete($user); if ($result > 0) { // Delete OK From ca47d1b8b1e7f23cfa05f9e73ea46d4ea16c691c Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Tue, 30 Oct 2018 10:26:59 +0100 Subject: [PATCH 237/769] Fix clone fourn order and invoice lines special code --- htdocs/fourn/class/fournisseur.commande.class.php | 3 +++ htdocs/fourn/class/fournisseur.facture.class.php | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index dfceb8d4e73..ff3d109613f 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -1236,6 +1236,9 @@ class CommandeFournisseur extends CommonOrder // insert products details into database for ($i=0;$i<$num;$i++) { + + $this->special_code = $this->lines[$i]->special_code; // TODO : remove this in 9.0 and add special_code param to addline() + $result = $this->addline( // This include test on qty if option SUPPLIER_ORDER_WITH_NOPRICEDEFINED is not set $this->lines[$i]->desc, $this->lines[$i]->subprice, diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 7f5496094f7..0aca70fbba6 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -357,8 +357,8 @@ class FactureFournisseur extends CommonInvoice dol_syslog("There is ".count($this->lines)." lines that are invoice lines objects"); foreach ($this->lines as $i => $val) { - $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn)'; - $sql .= ' VALUES ('.$this->id.')'; + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn, special_code)'; + $sql .= ' VALUES ('.$this->id.','.intval($this->lines[$i]->special_code).')'; $resql_insert=$this->db->query($sql); if ($resql_insert) @@ -398,8 +398,8 @@ class FactureFournisseur extends CommonInvoice //if (! is_object($line)) $line=json_decode(json_encode($line), false); // convert recursively array into object. if (! is_object($line)) $line = (object) $line; - $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn)'; - $sql .= ' VALUES ('.$this->id.')'; + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn, special_code)'; + $sql .= ' VALUES ('.$this->id.','.intval($this->lines[$i]->special_code).')'; $resql_insert=$this->db->query($sql); if ($resql_insert) From 1e819ca7c14a4ef4375cd879e9b9ba13d86f669b Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Tue, 30 Oct 2018 10:46:33 +0100 Subject: [PATCH 238/769] FIX special code on create supplier invoice from supplier order --- htdocs/fourn/facture/card.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 36785a154dc..2b581e43be9 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -896,6 +896,9 @@ if (empty($reshook)) if ($lines[$i]->date_fin_reel) $date_end=$lines[$i]->date_fin_reel; if ($lines[$i]->date_end) $date_end=$lines[$i]->date_end; + // FIXME Missing special_code into addline and updateline methods + $object->special_code = $lines[$i]->special_code; + // FIXME Missing $lines[$i]->ref_supplier and $lines[$i]->label into addline and updateline methods. They are filled when coming from order for example. $result = $object->addline( $desc, From 8911d72be84bd64c16cf5f8fa31329185d0a2b7d Mon Sep 17 00:00:00 2001 From: Marc de Lima Lucio Date: Tue, 30 Oct 2018 12:28:04 +0100 Subject: [PATCH 239/769] FIX: task time screen: prevent users with access to all project from assigning to tasks they're not allowed to do --- htdocs/core/class/html.formprojet.class.php | 37 ++++++++++++--------- htdocs/projet/activity/perday.php | 2 +- htdocs/projet/activity/perweek.php | 2 +- 3 files changed, 24 insertions(+), 17 deletions(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index 616355eab28..c2d8377add5 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -295,22 +295,29 @@ class FormProjets /** * Output a combo list with projects qualified for a third party * - * @param int $socid Id third party (-1=all, 0=only projects not linked to a third party, id=projects not linked or linked to third party id) - * @param int $selected Id task preselected - * @param string $htmlname Name of HTML select - * @param int $maxlength Maximum length of label - * @param int $option_only Return only html options lines without the select tag - * @param string $show_empty Add an empty line ('1' or string to show for empty line) - * @param int $discard_closed Discard closed projects (0=Keep,1=hide completely,2=Disable) - * @param int $forcefocus Force focus on field (works with javascript only) - * @param int $disabled Disabled - * @param string $morecss More css added to the select component - * @return int Nbr of project if OK, <0 if KO + * @param int $socid Id third party (-1=all, 0=only projects not linked to a third party, id=projects not linked or linked to third party id) + * @param int $selected Id task preselected + * @param string $htmlname Name of HTML select + * @param int $maxlength Maximum length of label + * @param int $option_only Return only html options lines without the select tag + * @param string $show_empty Add an empty line ('1' or string to show for empty line) + * @param int $discard_closed Discard closed projects (0=Keep,1=hide completely,2=Disable) + * @param int $forcefocus Force focus on field (works with javascript only) + * @param int $disabled Disabled + * @param string $morecss More css added to the select component + * @param User $usertofilter User object to use for filtering + * @param int $forceuserfilter 1=Force individual task user rights even if user has right to see all + * @return int Nbr of project if OK, <0 if KO */ - function selectTasks($socid=-1, $selected='', $htmlname='taskid', $maxlength=24, $option_only=0, $show_empty='1', $discard_closed=0, $forcefocus=0, $disabled=0, $morecss='maxwidth500') + function selectTasks($socid=-1, $selected='', $htmlname='taskid', $maxlength=24, $option_only=0, $show_empty='1', $discard_closed=0, $forcefocus=0, $disabled=0, $morecss='maxwidth500', $usertofilter=null, $forceuserfilter=0) { global $user,$conf,$langs; + if(is_null($usertofilter)) + { + $usertofilter = $user; + } + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; $out=''; @@ -319,10 +326,10 @@ class FormProjets if (! empty($conf->global->PROJECT_HIDE_UNSELECTABLES)) $hideunselectables = true; $projectsListId = false; - if (empty($user->rights->projet->all->lire)) + if (empty($usertofilter->rights->projet->all->lire) || $forceuserfilter) { $projectstatic=new Project($this->db); - $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user,0,1); + $projectsListId = $projectstatic->getProjectsAuthorizedForUser($usertofilter,0,1); } // Search all projects @@ -367,7 +374,7 @@ class FormProjets { $obj = $this->db->fetch_object($resql); // If we ask to filter on a company and user has no permission to see all companies and project is linked to another company, we hide project. - if ($socid > 0 && (empty($obj->fk_soc) || $obj->fk_soc == $socid) && empty($user->rights->societe->lire)) + if ($socid > 0 && (empty($obj->fk_soc) || $obj->fk_soc == $socid) && empty($usertofilter->rights->societe->lire)) { // Do nothing } diff --git a/htdocs/projet/activity/perday.php b/htdocs/projet/activity/perday.php index b4329ac9237..b1214f0bff7 100644 --- a/htdocs/projet/activity/perday.php +++ b/htdocs/projet/activity/perday.php @@ -399,7 +399,7 @@ print '
'; $titleassigntask = $langs->trans("AssignTaskToMe"); if ($usertoprocess->id != $user->id) $titleassigntask = $langs->trans("AssignTaskToUser", $usertoprocess->getFullName($langs)); print '
'; -$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1); +$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess, 1); print '
'; print ' '; print $formcompany->selectTypeContact($object, '', 'type','internal','rowid', 0, 'maxwidth200'); diff --git a/htdocs/projet/activity/perweek.php b/htdocs/projet/activity/perweek.php index 591f8b3ab6f..d18afc573e1 100644 --- a/htdocs/projet/activity/perweek.php +++ b/htdocs/projet/activity/perweek.php @@ -402,7 +402,7 @@ print '
'; $titleassigntask = $langs->trans("AssignTaskToMe"); if ($usertoprocess->id != $user->id) $titleassigntask = $langs->trans("AssignTaskToUser", $usertoprocess->getFullName($langs)); print '
'; -$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1); +$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess, 1); print '
'; print ' '; print $formcompany->selectTypeContact($object, '', 'type','internal','rowid', 0, 'maxwidth200'); From a8e6c3832e4263e514d70dc0423f29eba1464f5d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 12:30:56 +0100 Subject: [PATCH 240/769] Update list.php --- htdocs/adherents/subscription/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/adherents/subscription/list.php b/htdocs/adherents/subscription/list.php index 575bd3a233a..c8f7bce5f95 100644 --- a/htdocs/adherents/subscription/list.php +++ b/htdocs/adherents/subscription/list.php @@ -40,7 +40,7 @@ $search_account=GETPOST('search_account','int'); $search_amount=GETPOST('search_amount','alpha'); $optioncss = GETPOST('optioncss','alpha'); -$date_select=isset($_GET["date_select"])?$_GET["date_select"]:$_POST["date_select"]; +$date_select=GETPOST("date_select",'alpha'); $limit = GETPOST('limit','int')?GETPOST('limit','int'):$conf->liste_limit; $sortfield = GETPOST("sortfield",'alpha'); From 9bb1572e632761c1def90408412f9029cb90dd09 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 12:41:06 +0100 Subject: [PATCH 241/769] Update functions.lib.php --- htdocs/core/lib/functions.lib.php | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 6649bf17bbb..a289c967055 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -6529,7 +6529,7 @@ function get_htmloutput_mesg($mesgstring='',$mesgarray='', $style='ok', $keepemb /** * Get formated error messages to output (Used to show messages on html output). * - * @param string $mesgstring Error message + * @param string $mesgstring Error message * @param array $mesgarray Error messages array * @param int $keepembedded Set to 1 in error message must be kept embedded into its html place (this disable jnotify) * @return string Return html output @@ -6537,7 +6537,7 @@ function get_htmloutput_mesg($mesgstring='',$mesgarray='', $style='ok', $keepemb * @see dol_print_error * @see dol_htmloutput_mesg */ -function get_htmloutput_errors($mesgstring='', $mesgarray='', $keepembedded=0) +function get_htmloutput_errors($mesgstring='', $mesgarray=array(), $keepembedded=0) { return get_htmloutput_mesg($mesgstring, $mesgarray,'error',$keepembedded); } @@ -6547,15 +6547,15 @@ function get_htmloutput_errors($mesgstring='', $mesgarray='', $keepembedded=0) * * @param string $mesgstring Message string or message key * @param string[] $mesgarray Array of message strings or message keys - * @param string $style Which style to use ('ok', 'warning', 'error') - * @param int $keepembedded Set to 1 if message must be kept embedded into its html place (this disable jnotify) - * @return void + * @param string $style Which style to use ('ok', 'warning', 'error') + * @param int $keepembedded Set to 1 if message must be kept embedded into its html place (this disable jnotify) + * @return void * - * @see dol_print_error - * @see dol_htmloutput_errors - * @see setEventMessages + * @see dol_print_error + * @see dol_htmloutput_errors + * @see setEventMessages */ -function dol_htmloutput_mesg($mesgstring = '',$mesgarray = [], $style = 'ok', $keepembedded=0) +function dol_htmloutput_mesg($mesgstring = '',$mesgarray = array(), $style = 'ok', $keepembedded=0) { if (empty($mesgstring) && (! is_array($mesgarray) || count($mesgarray) == 0)) return; @@ -6609,7 +6609,7 @@ function dol_htmloutput_mesg($mesgstring = '',$mesgarray = [], $style = 'ok', $k * @see dol_print_error * @see dol_htmloutput_mesg */ -function dol_htmloutput_errors($mesgstring='', $mesgarray='', $keepembedded=0) +function dol_htmloutput_errors($mesgstring='', $mesgarray=array(), $keepembedded=0) { dol_htmloutput_mesg($mesgstring, $mesgarray, 'error', $keepembedded); } From d4fd55c4cf3a61d2840b978f3cc8abbaa1db02d6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 13:54:11 +0100 Subject: [PATCH 242/769] FIX #9907 --- htdocs/admin/modules.php | 2 +- htdocs/core/lib/admin.lib.php | 6 ++++-- htdocs/core/modules/DolibarrModules.class.php | 2 +- htdocs/core/modules/modTakePos.class.php | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index 81eec5a4247..3dbedae32bb 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -805,7 +805,7 @@ if ($mode == 'common') { foreach ($arrayofwarningsextbycountry as $keycountry => $cursorwarningmessage) { - if ($keycountry == 'always' || $keycountry == $mysoc->country_code) + if (preg_match('/^always/', $keycountry) || ($mysoc->country_code && preg_match('/^'.$mysoc->country_code.'/', $keycountry))) { $warningmessage .= ($warningmessage?"\n":"").$langs->trans($cursorwarningmessage, $objMod->getName(), $mysoc->country_code, $modules[$keymodule]->getName()); $warningmessage .= ($warningmessage?"\n":"").($warningmessage?"\n":"").$langs->trans("Module").' : '.$objMod->getName(); diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index f92fd56a87b..34ca8e48079 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -932,10 +932,11 @@ function activateModule($value,$withdeps=1) if (isset($objMod->depends) && is_array($objMod->depends) && ! empty($objMod->depends)) { // Activation of modules this module depends on - // this->depends may be array('modModule1', 'mmodModule2') or array('always'=>"modModule1", 'FR'=>'modModule2') + // this->depends may be array('modModule1', 'mmodModule2') or array('always1'=>"modModule1", 'FR'=>'modModule2') foreach ($objMod->depends as $key => $modulestring) { - if ((! is_numeric($key)) && $key != 'always' && $key != $mysoc->country_code) + //var_dump((! is_numeric($key)) && ! preg_match('/^always/', $key) && $mysoc->country_code && ! preg_match('/^'.$mysoc->country_code.'/', $key));exit; + if ((! is_numeric($key)) && ! preg_match('/^always/', $key) && $mysoc->country_code && ! preg_match('/^'.$mysoc->country_code.'/', $key)) { dol_syslog("We are not concerned by dependency with key=".$key." because our country is ".$mysoc->country_code); continue; @@ -943,6 +944,7 @@ function activateModule($value,$withdeps=1) $activate = false; foreach ($modulesdir as $dir) { + var_dump($modulestring); if (file_exists($dir.$modulestring.".class.php")) { $resarray = activateModule($modulestring); diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index dfaaa6b26b4..24541c353e8 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -300,7 +300,7 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it /** * @var string[] List of module class names that must be enabled if this module is enabled. * - * e.g.: array('modAnotherModule', 'modYetAnotherModule') + * e.g.: array('modAnotherModule', 'FR'=>'modYetAnotherModule') */ public $depends; diff --git a/htdocs/core/modules/modTakePos.class.php b/htdocs/core/modules/modTakePos.class.php index 4603ba74c04..4404ee9de63 100644 --- a/htdocs/core/modules/modTakePos.class.php +++ b/htdocs/core/modules/modTakePos.class.php @@ -98,7 +98,7 @@ class modTakePos extends DolibarrModules // Dependencies $this->hidden = false; // A condition to hide module - $this->depends = array('always'=>"modBanque", 'always'=>"modFacture", 'always'=>"modProduct", 'always'=>'modCategorie', 'FR'=>'modBlockedLog'); // List of module class names as string that must be enabled if this module is enabled + $this->depends = array('always1'=>"modBanque", 'always2'=>"modFacture", 'always3'=>"modProduct", 'always4'=>'modCategorie', 'FR1'=>'modBlockedLog'); // List of module class names as string that must be enabled if this module is enabled $this->requiredby = array(); // List of module ids to disable if this one is disabled $this->conflictwith = array(); // List of module class names as string this module is in conflict with $this->langfiles = array("cashdesk"); From b4c9df65f9a0fb2b850cb5a24b411a144c69539e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 13:56:51 +0100 Subject: [PATCH 243/769] FIX #9907 Can set several modules on ->depends --- .../modulebuilder/template/core/modules/modMyModule.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php index e81b75c1815..d638ee874fd 100644 --- a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php +++ b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php @@ -108,7 +108,7 @@ class modMyModule extends DolibarrModules // Dependencies $this->hidden = false; // A condition to hide module - $this->depends = array(); // List of module class names as string that must be enabled if this module is enabled + $this->depends = array(); // List of module class names as string that must be enabled if this module is enabled. array('always1'=>'modModule1','always2'=>'modModule2', 'FR1'=>'modModuleFR'...) $this->requiredby = array(); // List of module class names to disable if this one is disabled $this->conflictwith = array(); // List of module class names as string this module is in conflict with $this->langfiles = array("mymodule@mymodule"); From 7a268d8d9fbc2c8b518417aa418709e283770a32 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 14:27:14 +0100 Subject: [PATCH 244/769] Clean code --- htdocs/core/class/html.form.class.php | 8 ++++---- htdocs/core/lib/functions.lib.php | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 70ffa6ea006..730c75867d6 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2071,7 +2071,7 @@ class Form $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_stock as ps on ps.fk_product = p.rowid"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."entrepot as e on ps.fk_entrepot = e.rowid"; } - + // include search in supplier ref if(!empty($conf->global->MAIN_SEARCH_PRODUCT_BY_FOURN_REF)) { @@ -3508,7 +3508,7 @@ class Form { $unitLabel = $langs->trans('unit'.$res->code)!=$res->label?$langs->trans('unit'.$res->code):$res->label; } - + if ($selected == $res->rowid) { $return.=''; @@ -7145,7 +7145,7 @@ class Form } /** - * Return HTML to show the select categories of expense category + * Return HTML to show the select of expense categories * * @param string $selected preselected category * @param string $htmlname name of HTML select list @@ -7161,7 +7161,7 @@ class Form global $db, $conf, $langs, $user; $sql = 'SELECT rowid, label FROM '.MAIN_DB_PREFIX.'c_exp_tax_cat WHERE active = 1'; - $sql.= ' AND entity IN (0,'.getEntity('').')'; + $sql.= ' AND entity IN (0,'.getEntity('exp_tax_cat').')'; if (!empty($excludeid)) $sql.= ' AND rowid NOT IN ('.implode(',', $excludeid).')'; $sql.= ' ORDER BY label'; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index d15d07e4c6e..10aa25c86ba 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -7682,7 +7682,7 @@ function getDictvalue($tablename, $field, $id, $checkentity=false, $rowidfield=' { $dictvalues[$tablename] = array(); $sql = 'SELECT * FROM '.$tablename.' WHERE 1'; - if ($checkentity) $sql.= ' AND entity IN (0,'.getEntity('').')'; + if ($checkentity) $sql.= ' AND entity IN (0,'.getEntity($tablename).')'; $resql = $db->query($sql); if ($resql) From 2b526f74693b38db7f0a1e2abceb1fea1daedb15 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 15:28:11 +0100 Subject: [PATCH 245/769] Fix phpcs --- htdocs/adherents/card.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index 2aceb437d23..c29743b60c4 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -634,7 +634,7 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse) || (int)$labeltouse === -1) { + if (empty($labeltouse) || (int) $labeltouse === -1) { //fallback on the old configuration. setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); $error++; @@ -715,7 +715,7 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse) || (int)$labeltouse === -1) { + if (empty($labeltouse) || (int) $labeltouse === -1) { //fallback on the old configuration. setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); $error++; From b9078c6d582a08e750458df269ee8bc89717187b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 15:30:04 +0100 Subject: [PATCH 246/769] Fix phpcs --- htdocs/core/modules/modSyslog.class.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/htdocs/core/modules/modSyslog.class.php b/htdocs/core/modules/modSyslog.class.php index ba08d54c888..b9db018a1c3 100644 --- a/htdocs/core/modules/modSyslog.class.php +++ b/htdocs/core/modules/modSyslog.class.php @@ -82,7 +82,20 @@ class modSyslog extends DolibarrModules // Cronjobs $this->cronjobs = array( - 0=>array('label'=>'CompressSyslogs', 'jobtype'=>'method', 'class'=>'core/class/utils.class.php', 'objectname'=>'Utils', 'method'=>'compressSyslogs', 'parameters'=>'', 'comment'=>'Compress and archive log files. Warning: batch must be run with same account than your web server to avoid to get log files with different owner than required by web server. Another solution is to set web server Operating System group as the group of directory documents and set GROUP permission "rws" on this directory so log files will always have the group and permissions of the web server Operating System group', 'frequency'=>1, 'unitfrequency'=> 3600 * 24, 'priority'=>50, 'status'=>0, 'test'=>true), + 0=>array( + 'label'=>'CompressSyslogs', + 'jobtype'=>'method', + 'class'=>'core/class/utils.class.php', + 'objectname'=>'Utils', + 'method'=>'compressSyslogs', + 'parameters'=>'', + 'comment'=>'Compress and archive log files. Warning: batch must be run with same account than your web server to avoid to get log files with different owner than required by web server. Another solution is to set web server Operating System group as the group of directory documents and set GROUP permission "rws" on this directory so log files will always have the group and permissions of the web server Operating System group', + 'frequency'=>1, + 'unitfrequency'=> 3600 * 24, + 'priority'=>50, + 'status'=>0, + 'test'=>true + ) ); } } From 2fbc305683c9cacba509e4fb0a67cac4f7c98fd5 Mon Sep 17 00:00:00 2001 From: Marc de Lima Lucio Date: Tue, 30 Oct 2018 16:00:56 +0100 Subject: [PATCH 247/769] FIX: task time screen: last fix was overkill --- htdocs/core/class/html.formprojet.class.php | 5 ++--- htdocs/projet/activity/perday.php | 2 +- htdocs/projet/activity/perweek.php | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index c2d8377add5..cb31107c65c 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -306,10 +306,9 @@ class FormProjets * @param int $disabled Disabled * @param string $morecss More css added to the select component * @param User $usertofilter User object to use for filtering - * @param int $forceuserfilter 1=Force individual task user rights even if user has right to see all * @return int Nbr of project if OK, <0 if KO */ - function selectTasks($socid=-1, $selected='', $htmlname='taskid', $maxlength=24, $option_only=0, $show_empty='1', $discard_closed=0, $forcefocus=0, $disabled=0, $morecss='maxwidth500', $usertofilter=null, $forceuserfilter=0) + function selectTasks($socid=-1, $selected='', $htmlname='taskid', $maxlength=24, $option_only=0, $show_empty='1', $discard_closed=0, $forcefocus=0, $disabled=0, $morecss='maxwidth500', $usertofilter=null) { global $user,$conf,$langs; @@ -326,7 +325,7 @@ class FormProjets if (! empty($conf->global->PROJECT_HIDE_UNSELECTABLES)) $hideunselectables = true; $projectsListId = false; - if (empty($usertofilter->rights->projet->all->lire) || $forceuserfilter) + if (empty($usertofilter->rights->projet->all->lire)) { $projectstatic=new Project($this->db); $projectsListId = $projectstatic->getProjectsAuthorizedForUser($usertofilter,0,1); diff --git a/htdocs/projet/activity/perday.php b/htdocs/projet/activity/perday.php index b1214f0bff7..b27572790dd 100644 --- a/htdocs/projet/activity/perday.php +++ b/htdocs/projet/activity/perday.php @@ -399,7 +399,7 @@ print '
'; $titleassigntask = $langs->trans("AssignTaskToMe"); if ($usertoprocess->id != $user->id) $titleassigntask = $langs->trans("AssignTaskToUser", $usertoprocess->getFullName($langs)); print '
'; -$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess, 1); +$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess); print '
'; print ' '; print $formcompany->selectTypeContact($object, '', 'type','internal','rowid', 0, 'maxwidth200'); diff --git a/htdocs/projet/activity/perweek.php b/htdocs/projet/activity/perweek.php index d18afc573e1..3d2e638849e 100644 --- a/htdocs/projet/activity/perweek.php +++ b/htdocs/projet/activity/perweek.php @@ -402,7 +402,7 @@ print '
'; $titleassigntask = $langs->trans("AssignTaskToMe"); if ($usertoprocess->id != $user->id) $titleassigntask = $langs->trans("AssignTaskToUser", $usertoprocess->getFullName($langs)); print '
'; -$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess, 1); +$formproject->selectTasks($socid?$socid:-1, $taskid, 'taskid', 32, 0, 1, 1, 0, 0, '', $usertoprocess); print '
'; print ' '; print $formcompany->selectTypeContact($object, '', 'type','internal','rowid', 0, 'maxwidth200'); From f845a52b20b991ce29670b9102346a58f62042a9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 30 Oct 2018 16:37:50 +0100 Subject: [PATCH 248/769] Fix phpcs --- htdocs/adherents/card.php | 76 +++++++++++++++++++-------------------- 1 file changed, 37 insertions(+), 39 deletions(-) diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index f347c73192c..fee1848b925 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -644,27 +644,26 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse) || (int) $labeltouse === -1) { - //fallback on the old configuration. - setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); - $error++; - }else{ - $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); - complete_substitutions_array($substitutionarray, $outputlangs, $object); - $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); - $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnValid()), $substitutionarray, $outputlangs); - - $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; - - $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - if ($result < 0) - { - $error++; - setEventMessages($object->error, $object->errors, 'errors'); - } - } + if (empty($labeltouse) || (int) $labeltouse === -1) { + //fallback on the old configuration. + setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); + $error++; + } + else { + $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); + $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnValid()), $substitutionarray, $outputlangs); + $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; + $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); + if ($result < 0) + { + $error++; + setEventMessages($object->error, $object->errors, 'errors'); + } + } } } else @@ -726,28 +725,27 @@ if (empty($reshook)) $msg = $arraydefaultmessage->content; } - if (empty($labeltouse) || (int) $labeltouse === -1) { - //fallback on the old configuration. - setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); - $error++; - }else{ - $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); - complete_substitutions_array($substitutionarray, $outputlangs, $object); - $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); - $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnResiliate()), $substitutionarray, $outputlangs); - - $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; - - $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - if ($result < 0) - { - $error++; - setEventMessages($object->error, $object->errors, 'errors'); - } - } - } + if (empty($labeltouse) || (int) $labeltouse === -1) { + //fallback on the old configuration. + setEventMessages('WarningMandatorySetupNotComplete', [], 'errors'); + $error++; + } + else { + $substitutionarray=getCommonSubstitutionArray($outputlangs, 0, null, $object); + complete_substitutions_array($substitutionarray, $outputlangs, $object); + $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); + $texttosend = make_substitutions(dol_concatdesc($msg, $adht->getMailOnResiliate()), $substitutionarray, $outputlangs); + $moreinheader='X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; + $result=$object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); + if ($result < 0) + { + $error++; + setEventMessages($object->error, $object->errors, 'errors'); + } + } + } } else { From 395e9ceae2708662f3b14c23589d55fd4a248095 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 30 Oct 2018 20:36:12 +0100 Subject: [PATCH 249/769] fix stats display expensereport --- htdocs/expensereport/stats/index.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/expensereport/stats/index.php b/htdocs/expensereport/stats/index.php index e53757be1db..c192fb83447 100644 --- a/htdocs/expensereport/stats/index.php +++ b/htdocs/expensereport/stats/index.php @@ -2,6 +2,7 @@ /* Copyright (C) 2003-2006 Rodolphe Quiedeville * Copyright (c) 2004-2012 Laurent Destailleur * Copyright (C) 2012 Marcos García + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -282,7 +283,7 @@ foreach ($data as $val) } print '
'; -print '
'; +print '
'; print '
'; From 46fd3bcaf87843dd576ea11b35dac93eb00491ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 30 Oct 2018 21:15:52 +0100 Subject: [PATCH 250/769] fix display holiday month report if none --- htdocs/holiday/month_report.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/holiday/month_report.php b/htdocs/holiday/month_report.php index 6a4da422ea3..a19a193bc73 100644 --- a/htdocs/holiday/month_report.php +++ b/htdocs/holiday/month_report.php @@ -1,6 +1,7 @@ * Copyright (C) 2011 François Legastelois + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -120,7 +121,7 @@ print '
'.$langs->trans('None').'
'.$langs->trans('None').'
'; - if ($objp->fk_project >0) { - $projectstatic->fecth($objp->fk_projet); + if ($objp->fk_project > 0) { + $projectstatic->fetch($objp->fk_projet); print $projectstatic->getNomUrl(1); } print '
'."\n"; + + // Common attributes + include DOL_DOCUMENT_ROOT . '/core/tpl/commonfields_add.tpl.php'; + + // Other attributes + include DOL_DOCUMENT_ROOT . '/core/tpl/extrafields_add.tpl.php'; + + print '
'."\n"; + + dol_fiche_end(); + + print '
'; + print ''; + print '  '; + print ''; // Cancel for create does not post form if we don't know the backtopage + print '
'; + + print ''; +} + +// Part to edit record +if (($id || $ref) && $action == 'edit') +{ + print load_fiche_titre($langs->trans("EmailCollector")); + + print '
'; + print ''; + print ''; + print ''; + print ''; + + dol_fiche_head(); + + print '' . "\n"; + + // Common attributes + include DOL_DOCUMENT_ROOT . '/core/tpl/commonfields_edit.tpl.php'; + + // Other attributes + include DOL_DOCUMENT_ROOT . '/core/tpl/extrafields_edit.tpl.php'; + + print '
'; + + dol_fiche_end(); + + print '
'; + print '   '; + print '
'; + + print '
'; +} + +// Part to show record +if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'create'))) +{ + $res = $object->fetch_optionals(); + + $head = emailcollectorPrepareHead($object); + dol_fiche_head($head, 'card', $langs->trans("EmailCollector"), -1, 'emailcollector'); + + $formconfirm = ''; + + // Confirmation to delete + if ($action == 'delete') + { + $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $object->id, $langs->trans('DeleteEmailCollector'), $langs->trans('ConfirmDeleteEmailCollector'), 'confirm_delete', '', 0, 1); + } + + // Clone confirmation + if ($action == 'clone') { + // Create an array for form + $formquestion = array(); + $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $object->id, $langs->trans('CloneMyObject'), $langs->trans('ConfirmCloneMyObject', $object->ref), 'confirm_clone', $formquestion, 'yes', 1); + } + + // Confirmation of action process + if ($action == 'collect') { + $formquestion = array( + 'text' => $langs->trans("EmailCollectorConfirmCollect"), + ); + $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $object->id, $langs->trans('EmailCollectorConfirmCollectTitle'), $text, 'confirm_collect', $formquestion, 0, 1, 220); + } + + // Call Hook formConfirm + $parameters = array('lineid' => $lineid); + $reshook = $hookmanager->executeHooks('formConfirm', $parameters, $object, $action); // Note that $action and $object may have been modified by hook + if (empty($reshook)) $formconfirm.=$hookmanager->resPrint; + elseif ($reshook > 0) $formconfirm=$hookmanager->resPrint; + + // Print form confirm + print $formconfirm; + + // Object card + // ------------------------------------------------------------ + $linkback = '' . $langs->trans("BackToList") . ''; + + $morehtmlref = '
'; + /* + // Ref bis + $morehtmlref.=$form->editfieldkey("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->emailcollector->creer, 'string', '', 0, 1); + $morehtmlref.=$form->editfieldval("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->emailcollector->creer, 'string', '', null, null, '', 1); + // Thirdparty + $morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1); + // Project + if (! empty($conf->projet->enabled)) + { + $langs->load("projects"); + $morehtmlref.='
'.$langs->trans('Project') . ' '; + if ($user->rights->emailcollector->creer) + { + if ($action != 'classify') + { + $morehtmlref.='' . img_edit($langs->transnoentitiesnoconv('SetProject')) . ' : '; + if ($action == 'classify') { + //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); + $morehtmlref.='
'; + $morehtmlref.=''; + $morehtmlref.=''; + $morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); + $morehtmlref.=''; + $morehtmlref.='
'; + } else { + $morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); + } + } + } else { + if (! empty($object->fk_project)) { + $proj = new Project($db); + $proj->fetch($object->fk_project); + $morehtmlref.=''; + $morehtmlref.=$proj->ref; + $morehtmlref.=''; + } else { + $morehtmlref.=''; + } + } + } + */ + $morehtmlref .= '
'; + + dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref); + + print '
'; + print '
'; + print '
'; + print ''."\n"; + + // Common attributes + //$keyforbreak='fieldkeytoswithonsecondcolumn'; + include DOL_DOCUMENT_ROOT . '/core/tpl/commonfields_view.tpl.php'; + + // Other attributes + include DOL_DOCUMENT_ROOT . '/core/tpl/extrafields_view.tpl.php'; + + print '
'; + + + if ($action == 'confirm_collect') + { + print_fiche_titre($langs->trans('MessagesFetchingResults'), '', ''); + + dol_include_once('/emailcollector/class/emailcollector.class.php'); + $emailcollector = new EmailCollector($object); + + $res = $emailcollector->collectEmails(); + if (is_array($res)) { + if (count($res['actions_done']) > 0) { + setEventMessages($langs->trans('XActionsDone', count($res['actions_done'])), null, 'info'); + } else { + setEventMessages($langs->trans('NoActionsdone'), null, 'info'); + } + } else { + setEventMessages($langs->trans('NoEmailsToProcess'), null, 'info'); + } + $action = ''; + } + print '
'; + print '
'; + + + print '

'; + + dol_fiche_end(); + + // Buttons for actions + if ($action != 'presend' && $action != 'editline') { + print '
' . "\n"; + $parameters = array(); + $reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been modified by hook + if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + + if (empty($reshook)) + { + print '' . $langs->trans("CollectNow") . '' . "\n"; + + print '' . $langs->trans('Delete') . '' . "\n"; + } + print '
' . "\n"; + } + + // Select mail models is same action as presend + if (GETPOST('modelselected')) { + $action = 'presend'; + } + + /* + if ($action != 'presend') { + print '
'; + print ''; // ancre + */ + // Documents + /*$objref = dol_sanitizeFileName($object->ref); + $relativepath = $comref . '/' . $comref . '.pdf'; + $filedir = $conf->emailcollector->dir_output . '/' . $objref; + $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id; + $genallowed = $user->rights->emailcollector->read; // If you can read, you can build the PDF to read content + $delallowed = $user->rights->emailcollector->create; // If you can create/edit, you can remove a file on card + print $formfile->showdocuments('emailcollector', $objref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang); + */ + /* + // Show links to link elements + $linktoelem = $form->showLinkToObjectBlock($object, null, array('emailcollector')); + $somethingshown = $form->showLinkedObjectBlock($object, $linktoelem); + + print '
'; + + $MAXEVENT = 10; + + $morehtmlright = ''; + $morehtmlright .= $langs->trans("SeeAll"); + $morehtmlright .= ''; + + // List of actions on element + include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php'; + $formactions = new FormActions($db); + $somethingshown = $formactions->showactions($object, 'emailcollector_emailcollector', $socid, 1, '', $MAXEVENT, '', $morehtmlright); + + print '
'; + } + */ + + //Select mail models is same action as presend + /* + if (GETPOST('modelselected')) $action = 'presend'; + + // Presend form + $modelmail='inventory'; + $defaulttopic='InformationMessage'; + $diroutput = $conf->product->dir_output.'/inventory'; + $trackid = 'stockinv'.$object->id; + + include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php'; + */ +} + +// End of page +llxFooter(); +$db->close(); diff --git a/htdocs/admin/emailcollector_list.php b/htdocs/admin/emailcollector_list.php new file mode 100644 index 00000000000..6de67299871 --- /dev/null +++ b/htdocs/admin/emailcollector_list.php @@ -0,0 +1,551 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file htdocs/admin/emailcollector_list.php + * \ingroup emailcollector + * \brief List page for emailcollector + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/agenda.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/events.class.php'; + +require_once DOL_DOCUMENT_ROOT . '/core/class/html.formcompany.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/company.lib.php'; +dol_include_once('/emailcollector/class/emailcollector.class.php'); + +if (!$user->admin) accessforbidden(); + +// Load traductions files requiredby by page +$langs->loadLangs(array("admin", "other")); + +$action = GETPOST('action','aZ09')?GETPOST('action','aZ09'):'view'; // The action 'add', 'create', 'edit', 'update', 'view', ... +$massaction = GETPOST('massaction','alpha'); // The bulk action (combo box choice into lists) +$show_files = GETPOST('show_files','int'); // Show files area generated by bulk actions ? +$confirm = GETPOST('confirm','alpha'); // Result of a confirmation +$cancel = GETPOST('cancel', 'alpha'); // We click on a Cancel button +$toselect = GETPOST('toselect', 'array'); // Array of ids of elements selected into a list +$contextpage= GETPOST('contextpage','aZ')?GETPOST('contextpage','aZ'):'emailcollectorlist'; // To manage different context of search +$backtopage = GETPOST('backtopage','alpha'); // Go back to a dedicated page +$optioncss = GETPOST('optioncss','aZ'); // Option for the css output (always '' except when 'print') + +$id = GETPOST('id','int'); + +// Load variable for pagination +$limit = GETPOST('limit','int')?GETPOST('limit','int'):$conf->liste_limit; +$sortfield = GETPOST('sortfield','alpha'); +$sortorder = GETPOST('sortorder','alpha'); +$page = GETPOST('page','int'); +if (empty($page) || $page == -1 || GETPOST('button_search','alpha') || GETPOST('button_removefilter','alpha') || (empty($toselect) && $massaction === '0')) { $page = 0; } // If $page is not defined, or '' or -1 or if we click on clear filters or if we select empty mass action +$offset = $limit * $page; +$pageprev = $page - 1; +$pagenext = $page + 1; +//if (! $sortfield) $sortfield="p.date_fin"; +//if (! $sortorder) $sortorder="DESC"; + +// Initialize technical objects +$object = new EmailCollector($db); +$extrafields = new ExtraFields($db); +$diroutputmassaction = $conf->emailcollector->dir_output . '/temp/massgeneration/' . $user->id; +$hookmanager->initHooks(array('emailcollectorlist')); // Note that conf->hooks_modules contains array +// Fetch optionals attributes and labels +$extralabels = $extrafields->fetch_name_optionals_label('emailcollector'); +$search_array_options = $extrafields->getOptionalsFromPost($extralabels, '', 'search_'); + +// Default sort order (if not yet defined by previous GETPOST) +if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. +if (! $sortorder) $sortorder="ASC"; + +// Security check +$socid=0; +if ($user->societe_id > 0) // Protection if external user +{ + //$socid = $user->societe_id; + accessforbidden(); +} +//$result = restrictedArea($user, 'emailcollector', $id, ''); + +// Initialize array of search criterias +$search_all=trim(GETPOST("search_all",'alpha')); +$search=array(); +foreach($object->fields as $key => $val) +{ + if (GETPOST('search_'.$key,'alpha')) $search[$key]=GETPOST('search_'.$key,'alpha'); +} + +// List of fields to search into when doing a "search in all" +$fieldstosearchall = array(); +foreach($object->fields as $key => $val) +{ + if ($val['searchall']) $fieldstosearchall['t.'.$key]=$val['label']; +} + +// Definition of fields for list +$arrayfields=array(); +foreach($object->fields as $key => $val) +{ + // If $val['visible']==0, then we never show the field + if (! empty($val['visible'])) $arrayfields['t.'.$key]=array('label'=>$val['label'], 'checked'=>(($val['visible']<0)?0:1), 'enabled'=>$val['enabled'], 'position'=>$val['position']); +} +// Extra fields +if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label']) > 0) +{ + foreach($extrafields->attributes[$object->table_element]['label'] as $key => $val) + { + if (! empty($extrafields->attributes[$object->table_element]['list'][$key])) + $arrayfields["ef.".$key]=array('label'=>$extrafields->attributes[$object->table_element]['label'][$key], 'checked'=>(($extrafields->attributes[$object->table_element]['list'][$key]<0)?0:1), 'position'=>$extrafields->attributes[$object->table_element]['pos'][$key], 'enabled'=>(abs($extrafields->attributes[$object->table_element]['list'][$key])!=3 && $extrafields->attributes[$object->table_element]['perms'][$key])); + } +} +$object->fields = dol_sort_array($object->fields, 'position'); +$arrayfields = dol_sort_array($arrayfields, 'position'); + + + +/* + * Actions + * + * Put here all code to do according to value of "$action" parameter + */ + +if (GETPOST('cancel','alpha')) { $action='list'; $massaction=''; } +if (! GETPOST('confirmmassaction','alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') { $massaction=''; } + +$parameters=array(); +$reshook=$hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks +if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + +if (empty($reshook)) +{ + // Selection of new fields + include DOL_DOCUMENT_ROOT.'/core/actions_changeselectedfields.inc.php'; + + // Purge search criteria + if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') ||GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers + { + foreach($object->fields as $key => $val) + { + $search[$key]=''; + } + $toselect=''; + $search_array_options=array(); + } + if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha') + || GETPOST('button_search_x','alpha') || GETPOST('button_search.x','alpha') || GETPOST('button_search','alpha')) + { + $massaction=''; // Protection to avoid mass action if we force a new search during a mass action confirmation + } + + // Mass actions + $objectclass='EmailCollector'; + $objectlabel='EmailCollector'; + $permtoread = $user->rights->emailcollector->read; + $permtodelete = $user->rights->emailcollector->delete; + $uploaddir = $conf->emailcollector->dir_output; + include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php'; +} + + + +/* + * View + * + * Put here all code to render page + */ + +$form=new Form($db); + +$now=dol_now(); + +//$help_url="EN:Module_EmailCollector|FR:Module_EmailCollector_FR|ES:Módulo_EmailCollector"; +$help_url=''; +$title = $langs->trans('ListOf', $langs->transnoentitiesnoconv("EmailCollector")); + + +// Build and execute select +// -------------------------------------------------------------------- +$sql = 'SELECT '; +foreach($object->fields as $key => $val) +{ + $sql.='t.'.$key.', '; +} +// Add fields from extrafields +if (! empty($extrafields->attributes[$object->table_element]['label'])) + foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.' as options_'.$key.', ' : ''); +// Add fields from hooks +$parameters=array(); +$reshook=$hookmanager->executeHooks('printFieldListSelect', $parameters, $object); // Note that $action and $object may have been modified by hook +$sql.=$hookmanager->resPrint; +$sql=preg_replace('/, $/','', $sql); +$sql.= " FROM ".MAIN_DB_PREFIX.$object->table_element." as t"; +if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX.$object->table_element."_extrafields as ef on (t.rowid = ef.fk_object)"; +if ($object->ismultientitymanaged == 1) $sql.= " WHERE t.entity IN (".getEntity($object->element).")"; +else $sql.=" WHERE 1 = 1"; +foreach($search as $key => $val) +{ + if ($key == 'status' && $search[$key] == -1) continue; + $mode_search=(($object->isInt($object->fields[$key]) || $object->isFloat($object->fields[$key]))?1:0); + if ($search[$key] != '') $sql.=natural_search($key, $search[$key], (($key == 'status')?2:$mode_search)); +} +if ($search_all) $sql.= natural_search(array_keys($fieldstosearchall), $search_all); +// Add where from extra fields +include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_sql.tpl.php'; +// Add where from hooks +$parameters=array(); +$reshook=$hookmanager->executeHooks('printFieldListWhere', $parameters, $object); // Note that $action and $object may have been modified by hook +$sql.=$hookmanager->resPrint; + +/* If a group by is required + $sql.= " GROUP BY " + foreach($object->fields as $key => $val) + { + $sql.='t.'.$key.', '; + } + // Add fields from extrafields + if (! empty($extrafields->attributes[$object->table_element]['label'])) { + foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : ''); + // Add where from hooks + $parameters=array(); + $reshook=$hookmanager->executeHooks('printFieldListGroupBy',$parameters); // Note that $action and $object may have been modified by hook + $sql.=$hookmanager->resPrint; + $sql=preg_replace('/, $/','', $sql); + */ + +$sql.=$db->order($sortfield,$sortorder); + +// Count total nb of records +$nbtotalofrecords = ''; +if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) +{ + $resql = $db->query($sql); + $nbtotalofrecords = $db->num_rows($resql); + if (($page * $limit) > $nbtotalofrecords) // if total of record found is smaller than page * limit, goto and load page 0 + { + $page = 0; + $offset = 0; + } +} +// if total of record found is smaller than limit, no need to do paging and to restart another select with limits set. +if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) +{ + $num = $nbtotalofrecords; +} +else +{ + $sql.= $db->plimit($limit+1, $offset); + + $resql=$db->query($sql); + if (! $resql) + { + dol_print_error($db); + exit; + } + + $num = $db->num_rows($resql); +} + +// Direct jump if only one record found +if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $search_all) +{ + $obj = $db->fetch_object($resql); + $id = $obj->rowid; + header("Location: ".DOL_URL_ROOT.'/emailcollector/emailcollector_card.php?id='.$id); + exit; +} + + +// Output page +// -------------------------------------------------------------------- + +llxHeader('', $title, $help_url); + +// Example : Adding jquery code +print ''; + +$arrayofselected=is_array($toselect)?$toselect:array(); + +$param=''; +if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage); +if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.urlencode($limit); +foreach($search as $key => $val) +{ + $param.= '&search_'.$key.'='.urlencode($search[$key]); +} +if ($optioncss != '') $param.='&optioncss='.urlencode($optioncss); +// Add $param from extra fields +include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_param.tpl.php'; + +// List of mass actions available +$arrayofmassactions = array( +//'presend'=>$langs->trans("SendByMail"), +//'builddoc'=>$langs->trans("PDFMerge"), +); +if ($user->rights->emailcollector->delete) $arrayofmassactions['predelete']=$langs->trans("Delete"); +if (GETPOST('nomassaction','int') || in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array(); +$massactionbutton=$form->selectMassAction('', $arrayofmassactions); + +print '
'; +if ($optioncss != '') print ''; +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; + +$newcardbutton=''; +//if ($user->rights->emailcollector->creer) + //{ +$newcardbutton=''.$langs->trans('New').''; +$newcardbutton.= ''; +$newcardbutton.= ''; +//} + +print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'title_companies', 0, $newcardbutton, '', $limit); + +// Add code for pre mass action (confirmation or email presend form) +include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php'; + +if ($sall) +{ + foreach($fieldstosearchall as $key => $val) $fieldstosearchall[$key]=$langs->trans($val); + print '
'.$langs->trans("FilterOnInto", $sall) . join(', ',$fieldstosearchall).'
'; +} + +$moreforfilter = ''; +/*$moreforfilter.='
'; + $moreforfilter.= $langs->trans('MyFilter') . ': '; + $moreforfilter.= '
';*/ + +$parameters=array(); +$reshook=$hookmanager->executeHooks('printFieldPreListTitle', $parameters, $object); // Note that $action and $object may have been modified by hook +if (empty($reshook)) $moreforfilter .= $hookmanager->resPrint; +else $moreforfilter = $hookmanager->resPrint; + +if (! empty($moreforfilter)) +{ + print '
'; + print $moreforfilter; + print '
'; +} + +$varpage=empty($contextpage)?$_SERVER["PHP_SELF"]:$contextpage; +$selectedfields=$form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields +$selectedfields.=(count($arrayofmassactions) ? $form->showCheckAddButtons('checkforselect', 1) : ''); + +print '
'; // You can use div-table-responsive-no-min if you dont need reserved height for your table +print ''."\n"; + + +// Fields title search +// -------------------------------------------------------------------- +print ''; +foreach($object->fields as $key => $val) +{ + $align=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; + if ($key == 'status') $align.=($align?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) print ''; +} +// Extra fields +include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_input.tpl.php'; + +// Fields from hook +$parameters=array('arrayfields'=>$arrayfields); +$reshook=$hookmanager->executeHooks('printFieldListOption', $parameters, $object); // Note that $action and $object may have been modified by hook +print $hookmanager->resPrint; +// Action column +print ''; +print ''."\n"; + + +// Fields title label +// -------------------------------------------------------------------- +print ''; +foreach($object->fields as $key => $val) +{ + $align=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; + if ($key == 'status') $align.=($align?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) print getTitleFieldOfList($arrayfields['t.'.$key]['label'], 0, $_SERVER['PHP_SELF'], 't.'.$key, '', $param, ($align?'class="'.$align.'"':''), $sortfield, $sortorder, $align.' ')."\n"; +} +// Extra fields +include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_title.tpl.php'; +// Hook fields +$parameters=array('arrayfields'=>$arrayfields,'param'=>$param,'sortfield'=>$sortfield,'sortorder'=>$sortorder); +$reshook=$hookmanager->executeHooks('printFieldListTitle', $parameters, $object); // Note that $action and $object may have been modified by hook +print $hookmanager->resPrint; +print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"],'','','','align="center"',$sortfield,$sortorder,'maxwidthsearch ')."\n"; +print ''."\n"; + + +// Detect if we need a fetch on each output line +$needToFetchEachLine=0; +if (is_array($extrafields->attributes[$object->table_element]['computed']) && count($extrafields->attributes[$object->table_element]['computed']) > 0) +{ + foreach ($extrafields->attributes[$object->table_element]['computed'] as $key => $val) + { + if (preg_match('/\$object/',$val)) $needToFetchEachLine++; // There is at least one compute field that use $object + } +} + + +// Loop on record +// -------------------------------------------------------------------- +$i=0; +$totalarray=array(); +while ($i < min($num, $limit)) +{ + $obj = $db->fetch_object($resql); + if (empty($obj)) break; // Should not happen + + // Store properties in $object + $object->id = $obj->rowid; + foreach($object->fields as $key => $val) + { + if (isset($obj->$key)) $object->$key = $obj->$key; + } + + // Show here line of result + print ''; + foreach($object->fields as $key => $val) + { + $align=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; + if ($key == 'status') $align.=($align?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) + { + print ''; + print $object->showOutputField($val, $key, $obj->$key, ''); + print ''; + if (! $i) $totalarray['nbfield']++; + if (! empty($val['isameasure'])) + { + if (! $i) $totalarray['pos'][$totalarray['nbfield']]='t.'.$key; + $totalarray['val']['t.'.$key] += $obj->$key; + } + } + } + // Extra fields + include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php'; + // Fields from hook + $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $reshook=$hookmanager->executeHooks('printFieldListValue', $parameters, $object); // Note that $action and $object may have been modified by hook + print $hookmanager->resPrint; + // Action column + print ''; + if (! $i) $totalarray['nbfield']++; + + print ''; + + $i++; +} + +// Show total line +if (isset($totalarray['pos'])) +{ + print ''; + $i=0; + while ($i < $totalarray['nbfield']) + { + $i++; + if (! empty($totalarray['pos'][$i])) print ''; + else + { + if ($i == 1) + { + if ($num < $limit) print ''; + else print ''; + } + else print ''; + } + } + print ''; +} + +// If no record found +if ($num == 0) +{ + $colspan=1; + foreach($arrayfields as $key => $val) { if (! empty($val['checked'])) $colspan++; } + print ''; +} + + +$db->free($resql); + +$parameters=array('arrayfields'=>$arrayfields, 'sql'=>$sql); +$reshook=$hookmanager->executeHooks('printFieldListFooter', $parameters, $object); // Note that $action and $object may have been modified by hook +print $hookmanager->resPrint; + +print '
'; +$searchpicto=$form->showFilterButtons(); +print $searchpicto; +print '
'; + if ($massactionbutton || $massaction) // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined + { + $selected=0; + if (in_array($obj->rowid, $arrayofselected)) $selected=1; + print ''; + } + print '
'.price($totalarray['val'][$totalarray['pos'][$i]]).''.$langs->trans("Total").''.$langs->trans("Totalforthispage").'
'.$langs->trans("NoRecordFound").'
'."\n"; +print '
'."\n"; + +print '
'."\n"; + +if (in_array('builddoc',$arrayofmassactions) && ($nbtotalofrecords === '' || $nbtotalofrecords)) +{ + $hidegeneratedfilelistifempty=1; + if ($massaction == 'builddoc' || $action == 'remove_file' || $show_files) $hidegeneratedfilelistifempty=0; + + require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; + $formfile = new FormFile($db); + + // Show list of available documents + $urlsource=$_SERVER['PHP_SELF'].'?sortfield='.$sortfield.'&sortorder='.$sortorder; + $urlsource.=str_replace('&','&',$param); + + $filedir=$diroutputmassaction; + $genallowed=$user->rights->emailcollector->read; + $delallowed=$user->rights->emailcollector->create; + + print $formfile->showdocuments('massfilesarea_emailcollector','',$filedir,$urlsource,0,$delallowed,'',1,1,0,48,1,$param,$title,'','','',null,$hidegeneratedfilelistifempty); +} + +// End of page +llxFooter(); +$db->close(); diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index 2e489f6ba65..79d633027e0 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -577,7 +577,7 @@ class Translate //$newstr=$this->getLabelFromKey($db,$reg[1],'c_ordersource','code','label'); } - if (! empty($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL >= 2) dol_syslog(__METHOD__." missing translation for key '".$newstr."' in ".$_SERVER["PHP_SELF"], LOG_DEBUG); + if (! empty($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL >= 2) dol_syslog(__METHOD__." MAIN_FEATURES_LEVEL=DEVELOP: missing translation for key '".$newstr."' in ".$_SERVER["PHP_SELF"], LOG_DEBUG); return $newstr; } diff --git a/htdocs/core/modules/modEmailCollector.class.php b/htdocs/core/modules/modEmailCollector.class.php index 6d266fbe6f7..26d78a7fb0e 100644 --- a/htdocs/core/modules/modEmailCollector.class.php +++ b/htdocs/core/modules/modEmailCollector.class.php @@ -83,7 +83,7 @@ class modEmailCollector extends DolibarrModules $this->dirs = array(); // Config pages. Put here list of php page, stored into dav/admin directory, to use to setup module. - $this->config_page_url = array("emailcollector.php"); + $this->config_page_url = array("emailcollector_list.php"); // Dependencies $this->hidden = false; // A condition to hide module diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php new file mode 100644 index 00000000000..4a7986e5d8a --- /dev/null +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -0,0 +1,641 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file emailcollector/class/emailcollector.class.php + * \ingroup emailcollector + * \brief This file is a CRUD class file for EmailCollector (Create/Read/Update/Delete) + */ + +// Put here all includes required by your class file +require_once DOL_DOCUMENT_ROOT . '/core/class/commonobject.class.php'; +//require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; +//require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; + +/** + * Class for EmailCollector + */ +class EmailCollector extends CommonObject +{ + /** + * @var string ID to identify managed object + */ + public $element = 'emailcollector'; + /** + * @var string Name of table without prefix where object is stored + */ + public $table_element = 'emailcollector_emailcollector'; + /** + * @var int Does emailcollector support multicompany module ? 0=No test on entity, 1=Test with field entity, 2=Test with link by societe + */ + public $ismultientitymanaged = 0; + /** + * @var int Does emailcollector support extrafields ? 0=No, 1=Yes + */ + public $isextrafieldmanaged = 0; + /** + * @var string String with name of icon for emailcollector. Must be the part after the 'object_' into object_emailcollector.png + */ + public $picto = 'generic'; + + + /** + * 'type' if the field format. + * 'label' the translation key. + * 'enabled' is a condition when the field must be managed. + * 'visible' says if field is visible in list (Examples: 0=Not visible, 1=Visible on list and create/update/view forms, 2=Visible on list only. Using a negative value means field is not shown by default on list but can be selected for viewing) + * 'notnull' is set to 1 if not null in database. Set to -1 if we must set data to null if empty ('' or 0). + * 'default' is a default value for creation (can still be replaced by the global setup of default values) + * 'index' if we want an index in database. + * 'foreignkey'=>'tablename.field' if the field is a foreign key (it is recommanded to name the field fk_...). + * 'position' is the sort order of field. + * 'searchall' is 1 if we want to search in this field when making a search from the quick search button. + * 'isameasure' must be set to 1 if you want to have a total on list for this field. Field type must be summable like integer or double(24,8). + * 'css' is the CSS style to use on field. For example: 'maxwidth200' + * 'help' is a string visible as a tooltip on field + * 'comment' is not used. You can store here any text of your choice. It is not used by application. + * 'showoncombobox' if value of the field must be visible into the label of the combobox that list record + * 'arraykeyval' to set list of value if type is a list of predefined values. For example: array("0"=>"Draft","1"=>"Active","-1"=>"Cancel") + */ + + // BEGIN MODULEBUILDER PROPERTIES + /** + * @var array Array with all fields and their property. Do not use it as a static var. It may be modified by constructor. + */ + public $fields=array( + 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID','visible'=>2, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1), + 'entity' =>array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'default'=>1, 'notnull'=>1, 'index'=>1, 'position'=>20), + 'ref' =>array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1), + 'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'notnull'=>-1, 'searchall'=>1), + 'description' => array('type'=>'text', 'label'=>'Description', 'visible'=>-1, 'enabled'=>1, 'position'=>60, 'notnull'=>-1, 'searchall'=>1), + 'host' => array('type'=>'varchar(255)', 'label'=>'EMailHost', 'visible'=>1, 'enabled'=>1, 'position'=>100, 'notnull'=>1, 'searchall'=>1, 'comment'=>"IMPA server",), + 'user' => array('type'=>'varchar(128)', 'label'=>'User', 'visible'=>1, 'enabled'=>1, 'position'=>101, 'notnull'=>1, 'index'=>1, 'comment'=>"IMAP login",), + 'password' => array('type'=>'password', 'label'=>'Password', 'visible'=>-1, 'enabled'=>1, 'position'=>102, 'notnull'=>1, 'comment'=>"IMAP password",), + 'source_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxSourceDirectory', 'visible'=>-1, 'enabled'=>1, 'position'=>103, 'notnull'=>-1, 'default' => 'Inbox'), + 'filter' => array('type'=>'text', 'label'=>'Filter', 'visible'=>1, 'enabled'=>1, 'position'=>105), + 'actiontodo' => array('type'=>'varchar(255)', 'label'=>'ActionToDo', 'visible'=>1, 'enabled'=>1, 'position'=>106), + 'target_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxTargetDirectory', 'visible'=>1, 'enabled'=>1, 'position'=>110, 'notnull'=>1, 'comment'=>"Where to store messages once processed"), + 'datelastresult' => array('type'=>'datetime', 'label'=>'DateLastResult', 'visible'=>-2, 'enabled'=>1, 'position'=>121, 'notnull'=>-1,), + 'lastresult' => array('type'=>'varchar(255)', 'label'=>'LastResult', 'visible'=>1, 'enabled'=>1, 'position'=>122, 'notnull'=>-1,), + 'note_public' => array('type'=>'html', 'label'=>'NotePublic', 'visible'=>0, 'enabled'=>1, 'position'=>61, 'notnull'=>-1,), + 'note_private' => array('type'=>'html', 'label'=>'NotePrivate', 'visible'=>0, 'enabled'=>1, 'position'=>62, 'notnull'=>-1,), + 'date_creation' => array('type'=>'datetime', 'label'=>'DateCreation', 'visible'=>-2, 'enabled'=>1, 'position'=>500, 'notnull'=>1,), + 'tms' => array('type'=>'timestamp', 'label'=>'DateModification', 'visible'=>-2, 'enabled'=>1, 'position'=>501, 'notnull'=>1,), + //'date_validation' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'position'=>502), + 'fk_user_creat' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserAuthor', 'visible'=>-2, 'enabled'=>1, 'position'=>510, 'notnull'=>1,), + 'fk_user_modif' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'visible'=>-2, 'enabled'=>1, 'position'=>511, 'notnull'=>-1,), + //'fk_user_valid' =>array('type'=>'integer', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>512), + 'import_key' => array('type'=>'varchar(14)', 'label'=>'ImportId', 'visible'=>-2, 'enabled'=>1, 'position'=>1000, 'notnull'=>-1,), + 'status' => array('type'=>'integer', 'label'=>'Status', 'visible'=>1, 'enabled'=>1, 'position'=>1000, 'notnull'=>1, 'index'=>1, 'arrayofkeyval'=>array('0'=>'Inactive', '1'=>'Active')) + ); + + + /** + * @var int ID + */ + public $rowid; + + /** + * @var string Ref + */ + public $ref; + + /** + * @var int Entity + */ + public $entity; + + /** + * @var string label + */ + public $label; + + public $amount; + + /** + * @var int Status + */ + public $status; + + public $date_creation; + public $tms; + + /** + * @var int ID + */ + public $fk_user_creat; + + /** + * @var int ID + */ + public $fk_user_modif; + + public $import_key; + + + public $host; + public $user; + public $password; + public $source_directory; + public $filter; + public $actiontodo; + public $target_directory; + public $datelastresult; + public $lastresult; + // END MODULEBUILDER PROPERTIES + + + + /** + * Constructor + * + * @param DoliDb $db Database handler + */ + public function __construct(DoliDB $db) + { + global $conf, $langs, $user; + + $this->db = $db; + + if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) $this->fields['rowid']['visible']=0; + if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) $this->fields['entity']['enabled']=0; + + // Unset fields that are disabled + foreach($this->fields as $key => $val) + { + if (isset($val['enabled']) && empty($val['enabled'])) + { + unset($this->fields[$key]); + } + } + + // Translate some data of arrayofkeyval + foreach($this->fields as $key => $val) + { + if (is_array($this->fields['status']['arrayofkeyval'])) + { + foreach($this->fields['status']['arrayofkeyval'] as $key2 => $val2) + { + $this->fields['status']['arrayofkeyval'][$key2]=$langs->trans($val2); + } + } + } + } + + /** + * Create object into database + * + * @param User $user User that creates + * @param bool $notrigger false=launch triggers after, true=disable triggers + * @return int <0 if KO, Id of created object if OK + */ + public function create(User $user, $notrigger = false) + { + return $this->createCommon($user, $notrigger); + } + + /** + * Clone and object into another one + * + * @param User $user User that creates + * @param int $fromid Id of object to clone + * @return mixed New object created, <0 if KO + */ + public function createFromClone(User $user, $fromid) + { + global $langs, $hookmanager, $extrafields; + $error = 0; + + dol_syslog(__METHOD__, LOG_DEBUG); + + $object = new self($this->db); + + $this->db->begin(); + + // Load source object + $object->fetchCommon($fromid); + // Reset some properties + unset($object->id); + unset($object->fk_user_creat); + unset($object->import_key); + + // Clear fields + $object->ref = "copy_of_".$object->ref; + $object->title = $langs->trans("CopyOf")." ".$object->title; + // ... + // Clear extrafields that are unique + if (is_array($object->array_options) && count($object->array_options) > 0) + { + $extrafields->fetch_name_optionals_label($this->element); + foreach($object->array_options as $key => $option) + { + $shortkey = preg_replace('/options_/', '', $key); + if (! empty($extrafields->attributes[$this->element]['unique'][$shortkey])) + { + //var_dump($key); var_dump($clonedObj->array_options[$key]); exit; + unset($object->array_options[$key]); + } + } + } + + // Create clone + $object->context['createfromclone'] = 'createfromclone'; + $result = $object->createCommon($user); + if ($result < 0) { + $error++; + $this->error = $object->error; + $this->errors = $object->errors; + } + + // End + if (!$error) { + $this->db->commit(); + return $object; + } else { + $this->db->rollback(); + return -1; + } + } + + /** + * Load object in memory from the database + * + * @param int $id Id object + * @param string $ref Ref + * @return int <0 if KO, 0 if not found, >0 if OK + */ + public function fetch($id, $ref = null) + { + $result = $this->fetchCommon($id, $ref); + if ($result > 0 && ! empty($this->table_element_line)) $this->fetchLines(); + return $result; + } + + /** + * Load object lines in memory from the database + * + * @return int <0 if KO, 0 if not found, >0 if OK + */ + /*public function fetchLines() + { + $this->lines=array(); + + // Load lines with object EmailCollectorLine + + return count($this->lines)?1:0; + }*/ + + /** + * Fetch all account and load objects into an array + * + * @return array Array with key => EmailCollector object + * @author + */ + public function fetchAll(User $user, $activeOnly = 0, $sortfield = 's.rowid', $sortorder = 'ASC', $limit = 100, $page = 0) + { + global $langs; + + $obj_ret = array(); + + $socid = $user->societe_id ? $user->societe_id : ''; + + // If the internal user must only see his customers, force searching by him + if (! $user->rights->societe->client->voir && !$socid) { + $search_sale = $user->id; + } + $sql = "SELECT s.rowid"; + //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { + // $sql .= ", sc.fk_soc, sc.fk_user"; // We need these fields in order to filter by sale (including the case where the user can only see his prospects) + //} + $sql.= " FROM ".MAIN_DB_PREFIX."emailcollector as s"; + + //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { + // $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; // We need this table joined to the select in order to filter by sale + //} + //$sql.= ", ".MAIN_DB_PREFIX."c_stcomm as st"; + //$sql.= " WHERE s.fk_stcomm = st.id"; + + // Example of use $mode + //if ($mode == 1) $sql.= " AND s.client IN (1, 3)"; + //if ($mode == 2) $sql.= " AND s.client IN (2, 3)"; + + $sql.= ' WHERE s.entity IN ('.getEntity('emailcollector').')'; + //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { + // $sql.= " AND s.fk_soc = sc.fk_soc"; + //} + //if ($socid) { + // $sql.= " AND s.fk_soc = ".$socid; + //} + if ($activeOnly) { + $sql.= " AND s.status = 1"; + } + $sql.= $this->db->order($sortfield, $sortorder); + if ($limit) { + if ($page < 0) { + $page = 0; + } + $offset = $limit * $page; + + $sql.= $this->db->plimit($limit + 1, $offset); + } + + $result = $this->db->query($sql); + + if ($result) { + $num = $this->db->num_rows($result); + while ($i < $num) { + $obj = $this->db->fetch_object($result); + $emailcollector_static = new EmailCollector($this->db); + if ($emailcollector_static->fetch($obj->rowid)) { + $obj_ret[] = $emailcollector_static; + } + $i++; + } + } else { + dol_syslog(__METHOD__.':: Error when retrieve emailcollector list', LOG_ERR); + $ret = -1; + } + if (! count($obj_ret)) { + dol_syslog(__METHOD__.':: No emailcollector found', LOG_DEBUG); + } + + return $obj_ret; + } + + /** + * Update object into database + * + * @param User $user User that modifies + * @param bool $notrigger false=launch triggers after, true=disable triggers + * @return int <0 if KO, >0 if OK + */ + public function update(User $user, $notrigger = false) + { + return $this->updateCommon($user, $notrigger); + } + + /** + * Delete object in database + * + * @param User $user User that deletes + * @param bool $notrigger false=launch triggers after, true=disable triggers + * @return int <0 if KO, >0 if OK + */ + public function delete(User $user, $notrigger = false) + { + return $this->deleteCommon($user, $notrigger); + } + + /** + * Return a link to the object card (with optionaly the picto) + * + * @param int $withpicto Include picto in link (0=No picto, 1=Include picto into link, 2=Only picto) + * @param string $option On what the link point to ('nolink', ...) + * @param int $notooltip 1=Disable tooltip + * @param string $morecss Add more css on link + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @return string String with URL + */ + function getNomUrl($withpicto=0, $option='', $notooltip=0, $morecss='', $save_lastsearch_value=-1) + { + global $db, $conf, $langs, $hookmanager; + global $dolibarr_main_authentication, $dolibarr_main_demo; + global $menumanager; + + if (! empty($conf->dol_no_mouse_hover)) $notooltip=1; // Force disable tooltips + + $result = ''; + $companylink = ''; + + $label = '' . $langs->trans("EmailCollector") . ''; + $label.= '
'; + $label.= '' . $langs->trans('Ref') . ': ' . $this->ref; + + $url = dol_buildpath('/admin/emailcollector_card.php', 1).'?id='.$this->id; + + if ($option != 'nolink') + { + // Add param to save lastsearch_values or not + $add_save_lastsearch_values=($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) { + $add_save_lastsearch_values=1; + } + if ($add_save_lastsearch_values) { + $url.='&save_lastsearch_values=1'; + } + } + + $linkclose=''; + if (empty($notooltip)) + { + if (! empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) + { + $label=$langs->trans("ShowEmailCollector"); + $linkclose.=' alt="'.dol_escape_htmltag($label, 1).'"'; + } + $linkclose.=' title="'.dol_escape_htmltag($label, 1).'"'; + $linkclose.=' class="classfortooltip'.($morecss?' '.$morecss:'').'"'; + + /* + $hookmanager->initHooks(array('myobjectdao')); + $parameters=array('id'=>$this->id); + $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) $linkclose = $hookmanager->resPrint; + */ + } + else $linkclose = ($morecss?' class="'.$morecss.'"':''); + + $linkstart = ''; + $linkend=''; + + $result .= $linkstart; + if ($withpicto) $result.=img_object(($notooltip?'':$label), ($this->picto?$this->picto:'generic'), ($notooltip?(($withpicto != 2) ? 'class="paddingright"' : ''):'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip?0:1); + if ($withpicto != 2) $result.= $this->ref; + $result .= $linkend; + //if ($withpicto != 2) $result.=(($addlabel && $this->label) ? $sep . dol_trunc($this->label, ($addlabel > 1 ? $addlabel : 0)) : ''); + + global $action,$hookmanager; + $hookmanager->initHooks(array('emailcollectordao')); + $parameters=array('id'=>$this->id, 'getnomurl'=>$result); + $reshook=$hookmanager->executeHooks('getNomUrl',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) $result = $hookmanager->resPrint; + else $result .= $hookmanager->resPrint; + + return $result; + } + + /** + * Return label of the status + * + * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto + * @return string Label of status + */ + public function getLibStatut($mode=0) + { + return $this->LibStatut($this->status, $mode); + } + + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + /** + * Return the status + * + * @param int $status Id status + * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto + * @return string Label of status + */ + public function LibStatut($status, $mode=0) + { + // phpcs:enable + if (empty($this->labelstatus)) + { + global $langs; + //$langs->load("mymodule"); + $this->labelstatus[1] = $langs->trans('Enabled'); + $this->labelstatus[0] = $langs->trans('Disabled'); + } + + if ($mode == 0) + { + return $this->labelstatus[$status]; + } + elseif ($mode == 1) + { + return $this->labelstatus[$status]; + } + elseif ($mode == 2) + { + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + } + elseif ($mode == 3) + { + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4'); + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5'); + } + elseif ($mode == 4) + { + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + } + elseif ($mode == 5) + { + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + } + elseif ($mode == 6) + { + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + } + } + + /** + * Charge les informations d'ordre info dans l'objet commande + * + * @param int $id Id of order + * @return void + */ + public function info($id) + { + $sql = 'SELECT rowid, date_creation as datec, tms as datem,'; + $sql.= ' fk_user_creat, fk_user_modif'; + $sql.= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' as t'; + $sql.= ' WHERE t.rowid = '.$id; + $result=$this->db->query($sql); + if ($result) + { + if ($this->db->num_rows($result)) + { + $obj = $this->db->fetch_object($result); + $this->id = $obj->rowid; + if ($obj->fk_user_author) + { + $cuser = new User($this->db); + $cuser->fetch($obj->fk_user_author); + $this->user_creation = $cuser; + } + + if ($obj->fk_user_valid) + { + $vuser = new User($this->db); + $vuser->fetch($obj->fk_user_valid); + $this->user_validation = $vuser; + } + + if ($obj->fk_user_cloture) + { + $cluser = new User($this->db); + $cluser->fetch($obj->fk_user_cloture); + $this->user_cloture = $cluser; + } + + $this->date_creation = $this->db->jdate($obj->datec); + $this->date_modification = $this->db->jdate($obj->datem); + $this->date_validation = $this->db->jdate($obj->datev); + } + + $this->db->free($result); + } + else + { + dol_print_error($this->db); + } + } + + /** + * Initialise object with example values + * Id must be 0 if object instance is a specimen + * + * @return void + */ + public function initAsSpecimen() + { + $this->initAsSpecimenCommon(); + } + + + /** + * Action executed by scheduler + * CAN BE A CRON TASK. In such a case, paramerts come from the schedule job setup field 'Parameters' + * + * @return int 0 if OK, <>0 if KO (this function is used also by cron so only 0 is OK) + */ + //public function doScheduledJob($param1, $param2, ...) + public function doScheduledJob() + { + global $conf, $langs; + + //$conf->global->SYSLOG_FILE = 'DOL_DATA_ROOT/dolibarr_mydedicatedlofile.log'; + + $error = 0; + $this->output = ''; + $this->error=''; + + dol_syslog(__METHOD__, LOG_DEBUG); + + $now = dol_now(); + + $this->db->begin(); + + // ... + + $this->db->commit(); + + return $error; + } +} diff --git a/htdocs/emailcollector/lib/emailcollector.lib.php b/htdocs/emailcollector/lib/emailcollector.lib.php new file mode 100644 index 00000000000..e7cc3bcb3a0 --- /dev/null +++ b/htdocs/emailcollector/lib/emailcollector.lib.php @@ -0,0 +1,85 @@ +. + */ + +/** + * \file emailcollector/lib/emailcollector.lib.php + * \ingroup emailcollector + * \brief Library files with common functions for EmailCollector + */ + + +/** + * Prepare array of tabs for EmailCollector + * + * @param EmailCollector $object EmailCollector + * @return array Array of tabs + */ +function emailcollectorPrepareHead($object) +{ + global $db, $langs, $conf; + + $langs->load("emailcollector@emailcollector"); + + $h = 0; + $head = array(); + + $head[$h][0] = dol_buildpath("/admin/emailcollector_card.php", 1).'?id='.$object->id; + $head[$h][1] = $langs->trans("Card"); + $head[$h][2] = 'card'; + $h++; + + /*if (isset($object->fields['note_public']) || isset($object->fields['note_private'])) + { + $nbNote = 0; + if (!empty($object->note_private)) $nbNote++; + if (!empty($object->note_public)) $nbNote++; + $head[$h][0] = dol_buildpath('/emailcollector/emailcollector_note.php', 1).'?id='.$object->id; + $head[$h][1] = $langs->trans('Notes'); + if ($nbNote > 0) $head[$h][1].= ' '.$nbNote.''; + $head[$h][2] = 'note'; + $h++; + }*/ + + /*require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + require_once DOL_DOCUMENT_ROOT.'/core/class/link.class.php'; + $upload_dir = $conf->emailcollector->dir_output . "/emailcollector/" . dol_sanitizeFileName($object->ref); + $nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview.*\.png)$')); + $nbLinks=Link::count($db, $object->element, $object->id); + $head[$h][0] = dol_buildpath("/emailcollector/emailcollector_document.php", 1).'?id='.$object->id; + $head[$h][1] = $langs->trans('Documents'); + if (($nbFiles+$nbLinks) > 0) $head[$h][1].= ' '.($nbFiles+$nbLinks).''; + $head[$h][2] = 'document'; + $h++; + + $head[$h][0] = dol_buildpath("/emailcollector/emailcollector_agenda.php", 1).'?id='.$object->id; + $head[$h][1] = $langs->trans("Events"); + $head[$h][2] = 'agenda'; + $h++; + */ + + // Show more tabs from modules + // Entries must be declared in modules descriptor with line + //$this->tabs = array( + // 'entity:+tabname:Title:@emailcollector:/emailcollector/mypage.php?id=__ID__' + //); // to add new tab + //$this->tabs = array( + // 'entity:-tabname:Title:@emailcollector:/emailcollector/mypage.php?id=__ID__' + //); // to remove a tab + complete_head_from_modules($conf, $langs, $object, $head, $h, 'emailcollector'); + + return $head; +} diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index a7efecbdc5f..5abc1772eef 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -137,3 +137,46 @@ CREATE TABLE llx_takepos_floor_tables( UPDATE llx_c_payment_term SET decalage = nbjour, nbjour = 0 where decalage IS NULL AND type_cdr = 2; UPDATE llx_holiday SET ref = rowid WHERE ref IS NULL; + + + +CREATE TABLE llx_emailcollector_emailcollector( + -- BEGIN MODULEBUILDER FIELDS + rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL, + entity integer DEFAULT 1 NOT NULL, + ref varchar(128) NOT NULL, + label varchar(255), + description text, + host varchar(255), + user varchar(128), + password varchar(128), + source_directory varchar(255), + filter text, + actiontodos varchar(255), + target_directory varchar(255), + datelastresult datetime, + lastresult varchar(255), + note_public text, + note_private text, + date_creation datetime NOT NULL, + tms timestamp NOT NULL, + fk_user_creat integer NOT NULL, + fk_user_modif integer, + import_key varchar(14), + status integer NOT NULL, + -- END MODULEBUILDER FIELDS +) ENGINE=innodb; + +-- BEGIN MODULEBUILDER INDEXES +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_rowid (rowid); +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_entity (entity); +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_status (status); +-- END MODULEBUILDER INDEXES + +--ALTER TABLE llx_emailcollector_emailcollector ADD UNIQUE INDEX uk_emailcollector_emailcollector_fieldxyz(fieldx, fieldy); + +--ALTER TABLE llx_emailcollector_emailcollector ADD CONSTRAINT llx_emailcollector_emailcollector_field_id FOREIGN KEY (fk_field) REFERENCES llx_myotherobject(rowid); + + + + diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.key.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.key.sql new file mode 100644 index 00000000000..e2447c206f5 --- /dev/null +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.key.sql @@ -0,0 +1,26 @@ +-- Copyright (C) 2018 Laurent Destailleur +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see http://www.gnu.org/licenses/. + + +-- BEGIN MODULEBUILDER INDEXES +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_rowid (rowid); +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_entity (entity); +ALTER TABLE llx_emailcollector_emailcollector ADD INDEX idx_emailcollector_status (status); +-- END MODULEBUILDER INDEXES + +--ALTER TABLE llx_emailcollector_emailcollector ADD UNIQUE INDEX uk_emailcollector_emailcollector_fieldxyz(fieldx, fieldy); + +--ALTER TABLE llx_emailcollector_emailcollector ADD CONSTRAINT llx_emailcollector_emailcollector_field_id FOREIGN KEY (fk_field) REFERENCES llx_myotherobject(rowid); + diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql new file mode 100644 index 00000000000..98426cd85a7 --- /dev/null +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql @@ -0,0 +1,42 @@ +-- Copyright (C) 2018 Laurent Destailleur +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see http://www.gnu.org/licenses/. + + +CREATE TABLE llx_emailcollector_emailcollector( + -- BEGIN MODULEBUILDER FIELDS + rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL, + entity integer DEFAULT 1 NOT NULL, + ref varchar(128) NOT NULL, + label varchar(255), + description text, + host varchar(255), + user varchar(128), + password varchar(128), + source_directory varchar(255), + filter text, + actiontodo varchar(255), + target_directory varchar(255), + datelastresult datetime, + lastresult varchar(255), + note_public text, + note_private text, + date_creation datetime NOT NULL, + tms timestamp NOT NULL, + fk_user_creat integer NOT NULL, + fk_user_modif integer, + import_key varchar(14), + status integer NOT NULL, + -- END MODULEBUILDER FIELDS +) ENGINE=innodb; diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index 706b90f6eac..71446c53211 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -98,7 +98,7 @@ class MyObject extends CommonObject 'fk_user_modif' =>array('type'=>'integer', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>511), //'fk_user_valid' =>array('type'=>'integer', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>512), 'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000), - 'status' =>array('type'=>'integer', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Active', -1=>'Cancel')), + 'status' =>array('type'=>'integer', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Active', -1=>'Canceled')), ); /** @@ -198,8 +198,17 @@ class MyObject extends CommonObject } } - // Translate some data - $this->fields['status']['arrayofkeyval']=array(0=>$langs->trans('Draft'), 1=>$langs->trans('Active'), -1=>$langs->trans('Cancel')); + // Translate some data of arrayofkeyval + foreach($this->fields as $key => $val) + { + if (is_array($this->fields['status']['arrayofkeyval'])) + { + foreach($this->fields['status']['arrayofkeyval'] as $key2 => $val2) + { + $this->fields['status']['arrayofkeyval'][$key2]=$langs->trans($val2); + } + } + } } /** diff --git a/htdocs/modulebuilder/template/myobject_card.php b/htdocs/modulebuilder/template/myobject_card.php index 81715228033..2fd970a33a4 100644 --- a/htdocs/modulebuilder/template/myobject_card.php +++ b/htdocs/modulebuilder/template/myobject_card.php @@ -347,7 +347,6 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; print '
'; print '
'; - print '
'; print '

'; diff --git a/htdocs/modulebuilder/template/myobject_list.php b/htdocs/modulebuilder/template/myobject_list.php index ece26aba6cb..beb03c183a6 100644 --- a/htdocs/modulebuilder/template/myobject_list.php +++ b/htdocs/modulebuilder/template/myobject_list.php @@ -292,7 +292,7 @@ if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && { $obj = $db->fetch_object($resql); $id = $obj->rowid; - header("Location: ".DOL_URL_ROOT.'/mymodule/myobject_card.php?id='.$id); + header("Location: ".dol_buildpath('/mymodule/myobject_card.php', 1).'?id='.$id); exit; } @@ -352,7 +352,7 @@ print ''; $newcardbutton=''; //if ($user->rights->mymodule->creer) //{ - $newcardbutton=''.$langs->trans('New').''; + $newcardbutton=''.$langs->trans('New').''; $newcardbutton.= ''; $newcardbutton.= ''; //} From aa8236dd9840e2e42ef359420b31329d05695a93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 31 Oct 2018 21:33:37 +0100 Subject: [PATCH 263/769] fix phpcs --- htdocs/emailcollector/class/emailcollector.class.php | 11 ++++++++--- .../modulebuilder/template/class/myobject.class.php | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 4a7986e5d8a..471058e6b8d 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -302,8 +302,13 @@ class EmailCollector extends CommonObject /** * Fetch all account and load objects into an array * - * @return array Array with key => EmailCollector object - * @author + * @param User $user User + * @param int $activeOnly filter if active + * @param string $sortfield field for sorting + * @param string $sortorder sorting order + * @param int $limit sort limit + * @param int $page page to start on + * @return array Array with key => EmailCollector object */ public function fetchAll(User $user, $activeOnly = 0, $sortfield = 's.rowid', $sortorder = 'ASC', $limit = 100, $page = 0) { @@ -490,7 +495,7 @@ class EmailCollector extends CommonObject return $this->LibStatut($this->status, $mode); } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Return the status * diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index 71446c53211..58dfe5924cf 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -424,7 +424,7 @@ class MyObject extends CommonObject return $this->LibStatut($this->status, $mode); } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Return the status * From af1305a0a878a1cc5dd9ca4c20a8557f033f9ce6 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Thu, 1 Nov 2018 07:24:48 +0100 Subject: [PATCH 264/769] Fix Specific finename for FEC export only available on general ledger export --- htdocs/accountancy/bookkeeping/balance.php | 1 + htdocs/accountancy/class/accountancyexport.class.php | 1 + htdocs/accountancy/journal/bankjournal.php | 1 + htdocs/accountancy/journal/expensereportsjournal.php | 1 + htdocs/accountancy/journal/purchasesjournal.php | 1 + htdocs/accountancy/journal/sellsjournal.php | 1 + htdocs/accountancy/tpl/export_journal.tpl.php | 3 +-- 7 files changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index 9feb2a7c234..9b9598074cb 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -151,6 +151,7 @@ if ($action == 'export_csv') $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $filename = 'balance'; + $type_export = 'balance'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; $result = $object->fetchAllBalance($sortorder, $sortfield, 0, 0, $filter); diff --git a/htdocs/accountancy/class/accountancyexport.class.php b/htdocs/accountancy/class/accountancyexport.class.php index 7b832976e89..5d76a7155d6 100644 --- a/htdocs/accountancy/class/accountancyexport.class.php +++ b/htdocs/accountancy/class/accountancyexport.class.php @@ -218,6 +218,7 @@ class AccountancyExport // Define name of file to save $filename = 'general_ledger-'.$this->getFormatCode($conf->global->ACCOUNTING_EXPORT_MODELCSV); + $type_export = 'general_ledger'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; diff --git a/htdocs/accountancy/journal/bankjournal.php b/htdocs/accountancy/journal/bankjournal.php index 3b86835e927..da974af644e 100644 --- a/htdocs/accountancy/journal/bankjournal.php +++ b/htdocs/accountancy/journal/bankjournal.php @@ -750,6 +750,7 @@ if ($action == 'exportcsv') { // ISO and not UTF8 ! $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $filename = 'journal'; + $type_export = 'journal'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; // CSV header line diff --git a/htdocs/accountancy/journal/expensereportsjournal.php b/htdocs/accountancy/journal/expensereportsjournal.php index 9c39016f008..182be61d61c 100644 --- a/htdocs/accountancy/journal/expensereportsjournal.php +++ b/htdocs/accountancy/journal/expensereportsjournal.php @@ -429,6 +429,7 @@ $userstatic = new User($db); $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $filename = 'journal'; + $type_export = 'journal'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; // Model Cegid Expert Export diff --git a/htdocs/accountancy/journal/purchasesjournal.php b/htdocs/accountancy/journal/purchasesjournal.php index beb9891276f..034348fbee8 100644 --- a/htdocs/accountancy/journal/purchasesjournal.php +++ b/htdocs/accountancy/journal/purchasesjournal.php @@ -586,6 +586,7 @@ if ($action == 'exportcsv') { // ISO and not UTF8 ! $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $filename = 'journal'; + $type_export = 'journal'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; $companystatic = new Fournisseur($db); diff --git a/htdocs/accountancy/journal/sellsjournal.php b/htdocs/accountancy/journal/sellsjournal.php index ee7d45d6c66..b4a364cd912 100644 --- a/htdocs/accountancy/journal/sellsjournal.php +++ b/htdocs/accountancy/journal/sellsjournal.php @@ -547,6 +547,7 @@ if ($action == 'exportcsv') { // ISO and not UTF8 ! $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $filename = 'journal'; + $type_export = 'journal'; include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; $companystatic = new Client($db); diff --git a/htdocs/accountancy/tpl/export_journal.tpl.php b/htdocs/accountancy/tpl/export_journal.tpl.php index d0d902770c0..ca3c9c49ea0 100644 --- a/htdocs/accountancy/tpl/export_journal.tpl.php +++ b/htdocs/accountancy/tpl/export_journal.tpl.php @@ -35,9 +35,8 @@ $endaccountingperiod = dol_print_date(dol_now(), '%Y%m%d'); header('Content-Type: text/csv'); -if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == "11") // Specific filename for FEC model export +if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == "11" && $type_export == "general_ledger") // Specific filename for FEC model export into the general ledger { - // FEC format is defined here: https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000027804775&cidTexte=LEGITEXT000006069583&dateTexte=20130802&oldAction=rechCodeArticle if (empty($search_date_end)) { From b7f5e9e6c7d0a51b6eb7fb159c509361ddf373c0 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Thu, 1 Nov 2018 11:50:55 +0100 Subject: [PATCH 265/769] complete comment --- htdocs/societe/class/societe.class.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index dd1aada283b..96e1ebb415f 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -13,6 +13,7 @@ * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2015 Raphaël Doursenaud * Copyright (C) 2017 Rui Strecht + * Copyright (C) 2018 Philippe Grand * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -3827,6 +3828,7 @@ class Societe extends CommonObject * * @return int Amount in debt for thirdparty * @deprecated + * @see getOutstandingBills() */ function get_OutstandingBill() { From a46f29cb98264ff5824664e9f7c739e63750c4cc Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 1 Nov 2018 12:02:36 +0100 Subject: [PATCH 266/769] Update Stripe Version API The description field on customer endpoints has a maximum character length limit of 350 now. The name field on product endpoints has a maximum character length limit of 250 now. The description field on invoice line items has a maximum character length limit of 500 now. The billing_reason attribute of the invoice object now can take the value of subscription_create, indicating that it is the first invoice of a subscription. For older API versions, billing_reason=subscription_create is represented as subscription_update. --- htdocs/stripe/config.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/stripe/config.php b/htdocs/stripe/config.php index 6141c2a32f8..b348b9752c3 100644 --- a/htdocs/stripe/config.php +++ b/htdocs/stripe/config.php @@ -55,4 +55,4 @@ else \Stripe\Stripe::setApiKey($stripearrayofkeys['secret_key']); \Stripe\Stripe::setAppInfo("Dolibarr Stripe", DOL_VERSION, "https://www.dolibarr.org"); // add dolibarr version -\Stripe\Stripe::setApiVersion("2018-09-24"); // force version API +\Stripe\Stripe::setApiVersion("2018-10-31"); // force version API From 114073555446e0fe6179a0a9cc1aab1e807b0e35 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 1 Nov 2018 15:20:05 +0100 Subject: [PATCH 267/769] Fix css --- htdocs/theme/eldy/style.css.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index cc1da092523..e2b87857c95 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -894,7 +894,8 @@ div.fiche { min-width: 150px; } .thumbstat150 { - min-width: 170px; + /* min-width: 170px; */ + width: 170px; } .thumbstat, .thumbstat150 { browser->name == 'ie') { ?> From d1133916e0041406b7341a8fb6888d925c74bb8f Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Thu, 1 Nov 2018 15:33:14 +0100 Subject: [PATCH 268/769] Fix tracking field in dictionnary should not be mandatory --- htdocs/admin/dict.php | 2 +- htdocs/install/mysql/migration/6.0.0-7.0.0.sql | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 72ac51e1799..c62595ea8a6 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -629,7 +629,7 @@ if (GETPOST('actionadd') || GETPOST('actionmodify')) if ($value == 'formula' && empty($_POST['formula'])) continue; if ($value == 'sortorder') continue; // For a column name 'sortorder', we use the field name 'position' if ((! isset($_POST[$value]) || $_POST[$value]=='') - && (! in_array($listfield[$f], array('decalage','module','accountancy_code','accountancy_code_sell','accountancy_code_buy')) // Fields that are not mandatory + && (! in_array($listfield[$f], array('decalage','module','accountancy_code','accountancy_code_sell','accountancy_code_buy','tracking')) // Fields that are not mandatory && (! ($id == 10 && $listfield[$f] == 'code')) // Code is mandatory fir table 10 ) ) diff --git a/htdocs/install/mysql/migration/6.0.0-7.0.0.sql b/htdocs/install/mysql/migration/6.0.0-7.0.0.sql index c2e17386488..354bf0743bd 100644 --- a/htdocs/install/mysql/migration/6.0.0-7.0.0.sql +++ b/htdocs/install/mysql/migration/6.0.0-7.0.0.sql @@ -716,3 +716,5 @@ ALTER TABLE llx_facture_rec_extrafields ADD INDEX idx_facture_rec_extrafields (f UPDATE llx_cronjob set entity = 1 where entity = 0 and label in ('RecurringInvoices', 'SendEmailsReminders'); UPDATE llx_cronjob set entity = 0 where entity = 1 and label in ('PurgeDeleteTemporaryFilesShort', 'MakeLocalDatabaseDumpShort'); + +ALTER TABLE llx_c_shipment_mode CHANGE COLUMN tracking tracking VARCHAR(255) DEFAULT NULL; \ No newline at end of file From 29c0448a2ed9bc78543b10b0da15778e3c3469c0 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Thu, 1 Nov 2018 15:41:58 +0100 Subject: [PATCH 269/769] Fix parent link was not removed on societe deletion #9106 --- htdocs/societe/class/societe.class.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 2a488aacf44..0a49bb80f1b 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -1518,6 +1518,19 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::delete error -3 ".$this->error, LOG_ERR); } } + + // Remove links to subsidiaries companies + if (! $error) + { + $sql = "UPDATE ".MAIN_DB_PREFIX."societe"; + $sql.= " SET parent = NULL"; + $sql.= " WHERE parent = " . $id; + if (! $this->db->query($sql)) + { + $error++; + $this->errors[] = $this->db->lasterror(); + } + } // Remove third party if (! $error) From 263e8ed4afc601f80916349e5360c7b5d9a48005 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 1 Nov 2018 20:45:08 +0100 Subject: [PATCH 270/769] Fix payout --- htdocs/public/stripe/ipn.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/public/stripe/ipn.php b/htdocs/public/stripe/ipn.php index ad6aee43bd4..ac366da9210 100644 --- a/htdocs/public/stripe/ipn.php +++ b/htdocs/public/stripe/ipn.php @@ -66,6 +66,7 @@ else { $servicestatus = 1; } } + $payload = @file_get_contents("php://input"); $sig_header = $_SERVER["HTTP_STRIPE_SIGNATURE"]; $event = null; @@ -159,7 +160,7 @@ elseif ($event->type == 'payout.paid') { $accountfrom->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS); $accountto=new Account($db); - $accountto->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_BANKTRANFERS); + $accountto->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_BANKTRANSFERS); if ($accountto->currency_code != $accountfrom->currency_code) { $error++; @@ -353,4 +354,3 @@ elseif ($event->type == 'customer.deleted') { $db->query($sql); $db->commit(); } - From 8d8023b405517f01c9dac02c3b3ee304717a7a3c Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Thu, 1 Nov 2018 22:32:33 +0100 Subject: [PATCH 271/769] Debug asset module --- htdocs/asset/class/asset_type.class.php | 13 +- htdocs/asset/type.php | 289 ++++-------------------- htdocs/langs/en_US/assets.lang | 7 + 3 files changed, 55 insertions(+), 254 deletions(-) diff --git a/htdocs/asset/class/asset_type.class.php b/htdocs/asset/class/asset_type.class.php index 8eb915f95eb..51d76d75155 100644 --- a/htdocs/asset/class/asset_type.class.php +++ b/htdocs/asset/class/asset_type.class.php @@ -42,7 +42,7 @@ class AssetType extends CommonObject /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'group'; + public $picto = 'invoice'; /** * 0=No test on entity, 1=Test with field entity, 2=Test with link by societe @@ -51,9 +51,9 @@ class AssetType extends CommonObject public $ismultientitymanaged = 1; /** - * @var string Asset type label - */ - public $label; + * @var string Asset type label + */ + public $label; /** @var string Accountancy code asset */ public $accountancy_code_asset; @@ -107,12 +107,14 @@ class AssetType extends CommonObject $sql.= ", accountancy_code_asset"; $sql.= ", accountancy_code_depreciation_asset"; $sql.= ", accountancy_code_depreciation_expense"; + $sql.= ", note"; $sql.= ", entity"; $sql.= ") VALUES ("; $sql.= "'".$this->db->escape($this->label)."'"; $sql.= ", '".$this->db->escape($this->accountancy_code_asset)."'"; $sql.= ", '".$this->db->escape($this->accountancy_code_depreciation_asset)."'"; $sql.= ", '".$this->db->escape($this->accountancy_code_depreciation_expense)."'"; + $sql.= ", '".$this->db->escape($this->note)."'"; $sql.= ", ".$conf->entity; $sql.= ")"; @@ -179,7 +181,8 @@ class AssetType extends CommonObject $sql.= "label = '".$this->db->escape($this->label) ."',"; $sql.= "accountancy_code_asset = '".$this->db->escape($this->accountancy_code_asset)."',"; $sql.= "accountancy_code_depreciation_asset = '".$this->db->escape($this->accountancy_code_depreciation_asset)."',"; - $sql.= "accountancy_code_depreciation_expense = '".$this->db->escape($this->accountancy_code_depreciation_expense)."'"; + $sql.= "accountancy_code_depreciation_expense = '".$this->db->escape($this->accountancy_code_depreciation_expense)."',"; + $sql.= "note = '".$this->db->escape($this->note) ."'"; $sql.= " WHERE rowid =".$this->id; $result = $this->db->query($sql); diff --git a/htdocs/asset/type.php b/htdocs/asset/type.php index 9e06c4a765d..ea8a4502264 100644 --- a/htdocs/asset/type.php +++ b/htdocs/asset/type.php @@ -49,10 +49,13 @@ $offset = $limit * $page ; $pageprev = $page - 1; $pagenext = $page + 1; if (! $sortorder) { $sortorder="DESC"; } -if (! $sortfield) { $sortfield="d.lastname"; } +if (! $sortfield) { $sortfield="a.label"; } $label=GETPOST("label","alpha"); -$comment=GETPOST("comment"); +$accountancy_code_asset=GETPOST('accountancy_code_asset','string'); +$accountancy_code_depreciation_asset=GETPOST('accountancy_code_depreciation_asset','string'); +$accountancy_code_depreciation_expense=GETPOST('accountancy_code_depreciation_expense','string'); +$comment=GETPOST('comment','string'); // Security check $result=restrictedArea($user,'asset',$rowid,'asset_type'); @@ -259,39 +262,39 @@ if (! $rowid && $action != 'create' && $action != 'edit') print ''; print ''.dol_escape_htmltag($objp->label).''; - print ''; + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount = new AccountingAccount($db); - $accountingaccount->fetch('',$object->accountancy_code_asset,1); + $accountingaccount->fetch('',$objp->accountancy_code_asset,1); - print $accountingaccount->getNomUrl(0,1,1,'',1); + print $accountingaccount->getNomUrl(0,0,0,'',0); } else { - print $object->accountancy_code_asset; + print $objp->accountancy_code_asset; } print ''; - print ''; + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount2 = new AccountingAccount($db); - $accountingaccount2->fetch('',$object->accountancy_code_depreciation_asset,1); + $accountingaccount2->fetch('',$objp->accountancy_code_depreciation_asset,1); - print $accountingaccount2->getNomUrl(0,1,1,'',1); + print $accountingaccount2->getNomUrl(0,0,0,'',0); } else { - print $object->accountancy_code_depreciation_asset; + print $objp->accountancy_code_depreciation_asset; } print ''; - print ''; + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount3 = new AccountingAccount($db); - $accountingaccount3->fetch('',$object->accountancy_code_depreciation_expense,1); + $accountingaccount3->fetch('',$objp->accountancy_code_depreciation_expense,1); - print $accountingaccount3->getNomUrl(0,1,1,'',1); + print $accountingaccount3->getNomUrl(0,0,0,'',0); } else { - print $object->accountancy_code_depreciation_expense; + print $objp->accountancy_code_depreciation_expense; } print ''; @@ -418,7 +421,7 @@ if ($rowid > 0) */ if ($action == 'delete') { - print $form->formconfirm($_SERVER['PHP_SELF']."?rowid=".$object->id,$langs->trans("DeleteAMemberType"),$langs->trans("ConfirmDeleteMemberType",$object->label),"confirm_delete", '',0,1); + print $form->formconfirm($_SERVER['PHP_SELF']."?rowid=".$object->id,$langs->trans("DeleteAnAssetType"),$langs->trans("ConfirmDeleteAssetType",$object->label),"confirm_delete", '',0,1); } $head = asset_type_prepare_head($object); @@ -427,14 +430,23 @@ if ($rowid > 0) $linkback = ''.$langs->trans("BackToList").''; - dol_banner_tab($object, 'rowid', $linkback); + $morehtmlref='
'; + // Ref asset type + $morehtmlref.=$form->editfieldkey("Label", 'label', $object->label, $object, $user->rights->asset->write, 'string', '', 0, 1); + $morehtmlref.=$form->editfieldval("Label", 'label', $object->label, $object, $user->rights->asset->write, 'string', '', null, null, '', 1); + $morehtmlref.='
'; + + dol_banner_tab($object, 'rowid', $linkback, 1, 'rowid', 'ref', $morehtmlref, '', 0, '', $morehtmlright); print '
'; print '
'; print ''; - print ''; + print ''; + print ''; + print ''; - print ''; + print ''; + print ''; - print ''; + print ''; print ''; print ''; - - print '
'; - print_barre_liste('',$page,$_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbtotalofrecords); - - $moreforfilter = ''; - - print '
'; - print '
'; + print $langs->trans("AccountancyCodeAsset"); + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount = new AccountingAccount($db); @@ -445,8 +457,12 @@ if ($rowid > 0) print $object->accountancy_code_asset; } print '
'; + print '
'; + print $langs->trans("AccountancyCodeDepreciationAsset"); + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount2 = new AccountingAccount($db); @@ -457,8 +473,12 @@ if ($rowid > 0) print $object->accountancy_code_depreciation_asset; } print '
'; + print '
'; + print $langs->trans("AccountancyCodeDepreciationExpense"); + print ''; if (! empty($conf->accounting->enabled)) { $accountingaccount3 = new AccountingAccount($db); @@ -468,6 +488,7 @@ if ($rowid > 0) } else { print $object->accountancy_code_depreciation_expense; } + print '
'.$langs->trans("Description").''; @@ -493,9 +514,6 @@ if ($rowid > 0) print ''; } - // Add - print ''; - // Delete if ($user->rights->asset->write) { @@ -504,233 +522,6 @@ if ($rowid > 0) print ""; - - // Show list of assets (nearly same code than in page list.php) - $assettypestatic=new AssetType($db); - - $now=dol_now(); - - $sql = "SELECT a.rowid, d.login, d.firstname, d.lastname, d.societe, "; - $sql.= " d.datefin,"; - $sql.= " a.fk_asset_type as type_id,"; - $sql.= " t.label as type"; - $sql.= " FROM ".MAIN_DB_PREFIX."asset as a, ".MAIN_DB_PREFIX."asset_type as t"; - $sql.= " WHERE a.fk_asset_type = t.rowid"; - $sql.= " AND a.entity IN (".getEntity('asset').")"; - $sql.= " AND t.rowid = ".$object->id; - if ($sall) - { - $sql.=natural_search(array("f.firstname","d.lastname","d.societe","d.email","d.login","d.address","d.town","d.note_public","d.note_private"), $sall); - } - if ($status != '') - { - $sql.= natural_search('d.statut', $status, 2); - } - if ($action == 'search') - { - if (GETPOST('search','alpha')) - { - $sql.= natural_search(array("d.firstname","d.lastname"), GETPOST('search','alpha')); - } - } - if (! empty($search_lastname)) - { - $sql.= natural_search(array("d.firstname","d.lastname"), $search_lastname); - } - if (! empty($search_login)) - { - $sql.= natural_search("d.login", $search_login); - } - if (! empty($search_email)) - { - $sql.= natural_search("d.email", $search_email); - } - if ($filter == 'uptodate') - { - $sql.=" AND datefin >= '".$db->idate($now)."'"; - } - if ($filter == 'outofdate') - { - $sql.=" AND datefin < '".$db->idate($now)."'"; - } - - $sql.= " ".$db->order($sortfield,$sortorder); - - // Count total nb of records - $nbtotalofrecords = ''; - if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) - { - $resql = $db->query($sql); - if ($resql) $nbtotalofrecords = $db->num_rows($result); - else dol_print_error($db); - if (($page * $limit) > $nbtotalofrecords) // if total resultset is smaller then paging size (filtering), goto and load page 0 - { - $page = 0; - $offset = 0; - } - } - - $sql.= " ".$db->plimit($conf->liste_limit+1, $offset); - - $resql = $db->query($sql); - if ($resql) - { - $num = $db->num_rows($resql); - $i = 0; - - $titre=$langs->trans("AssetsList"); - if ($status != '') - { - if ($status == '-1,1') { $titre=$langs->trans("MembersListQualified"); } - else if ($status == '-1') { $titre=$langs->trans("MembersListToValid"); } - else if ($status == '1' && ! $filter) { $titre=$langs->trans("MembersListValid"); } - else if ($status == '1' && $filter=='uptodate') { $titre=$langs->trans("MembersListUpToDate"); } - else if ($status == '1' && $filter=='outofdate') { $titre=$langs->trans("MembersListNotUpToDate"); } - else if ($status == '0') { $titre=$langs->trans("MembersListResiliated"); } - } - elseif ($action == 'search') - { - $titre=$langs->trans("MembersListQualified"); - } - - if ($type > 0) - { - $assettype=new AssetType($db); - $result=$assettype->fetch($type); - $titre.=" (".$assettype->label.")"; - } - - $param="&rowid=".$object->id; - if (! empty($status)) $param.="&status=".$status; - if (! empty($search_lastname)) $param.="&search_lastname=".$search_lastname; - if (! empty($search_firstname)) $param.="&search_firstname=".$search_firstname; - if (! empty($search_login)) $param.="&search_login=".$search_login; - if (! empty($search_email)) $param.="&search_email=".$search_email; - if (! empty($filter)) $param.="&filter=".$filter; - - if ($sall) - { - print $langs->trans("Filter")." (".$langs->trans("Lastname").", ".$langs->trans("Firstname").", ".$langs->trans("EMail").", ".$langs->trans("Address")." ".$langs->trans("or")." ".$langs->trans("Town")."): ".$sall; - } - - print '
'; - print '
'."\n"; - - // Lignes des champs de filtre - print ''; - - print ''; - - print ''; - - print ''; - - print ''; - - print ''; - - print ''; - - print "\n"; - - print ''; - print_liste_field_titre( $langs->trans("Name")." / ".$langs->trans("Company"),$_SERVER["PHP_SELF"],"d.lastname",$param,"","",$sortfield,$sortorder); - print_liste_field_titre("Login",$_SERVER["PHP_SELF"],"d.login",$param,"","",$sortfield,$sortorder); - print_liste_field_titre("Nature",$_SERVER["PHP_SELF"],"d.morphy",$param,"","",$sortfield,$sortorder); - print_liste_field_titre("EMail",$_SERVER["PHP_SELF"],"d.email",$param,"","",$sortfield,$sortorder); - print_liste_field_titre("Status",$_SERVER["PHP_SELF"],"d.statut,d.datefin",$param,"","",$sortfield,$sortorder); - print_liste_field_titre("EndSubscription",$_SERVER["PHP_SELF"],"d.datefin",$param,"",'align="center"',$sortfield,$sortorder); - print_liste_field_titre("Action",$_SERVER["PHP_SELF"],"",$param,"",'width="60" align="center"',$sortfield,$sortorder); - print "\n"; - - while ($i < $num && $i < $conf->liste_limit) - { - $objp = $db->fetch_object($resql); - - $datefin=$db->jdate($objp->datefin); - - $adh=new Asset($db); - $adh->lastname=$objp->lastname; - $adh->firstname=$objp->firstname; - - // Lastname - print ''; - if ($objp->societe != '') - { - print ''."\n"; - } - else - { - print ''."\n"; - } - - // Login - print "\n"; - - // Type - /*print ''; - */ - - // Moral/Physique - print "\n"; - - // EMail - print "\n"; - - // Statut - print '"; - - // Actions - print '"; - - print "\n"; - $i++; - } - - print "
'; - print ''; - print ' '; - print ' '; - print ''; - print '  '; - print ''; - print '
'.img_object($langs->trans("ShowMember"),"user").' '.$adh->getFullName($langs,0,-1,20).' / '.dol_trunc($objp->societe,12).''.img_object($langs->trans("ShowMember"),"user").' '.$adh->getFullName($langs,0,-1,32).'".$objp->login."'; - $assettypestatic->id=$objp->type_id; - $assettypestatic->label=$objp->type; - print $assettypestatic->getNomUrl(1,12); - print '".$adh->getmorphylib($objp->morphy)."".dol_print_email($objp->email,0,0,1)."'; - print $adh->LibStatut($objp->statut,$objp->subscription,$datefin,2); - print "'; - if ($user->rights->asset->creer) - { - print ''.img_edit().''; - } - print ' '; - if ($user->rights->asset->supprimer) - { - print ''.img_picto($langs->trans("Resiliate"),'disable.png').''; - } - print "
\n"; - print '
'; - print ''; - - if ($num > $conf->liste_limit) - { - print_barre_liste('',$page,$_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbtotalofrecords,''); - } - } - else - { - dol_print_error($db); - } } /* ************************************************************************** */ diff --git a/htdocs/langs/en_US/assets.lang b/htdocs/langs/en_US/assets.lang index 0f955fe19ce..b780fb6fcba 100644 --- a/htdocs/langs/en_US/assets.lang +++ b/htdocs/langs/en_US/assets.lang @@ -22,7 +22,14 @@ AccountancyCodeAsset = Accounting code (asset) AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) NewAssetType=New asset type +AssetsTypeSetup=Assets type setup +AssetTypeModified=Asset type modified +AssetType=Asset type AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' # Module label 'ModuleAssetsName' ModuleAssetsName = Assets From b34f78168664bc9e90be07b61ac357ac43248966 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 1 Nov 2018 23:04:10 +0100 Subject: [PATCH 272/769] Fix ext_payment_site --- htdocs/public/payment/paymentok.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/public/payment/paymentok.php b/htdocs/public/payment/paymentok.php index 36723658946..e1cd70e4a91 100644 --- a/htdocs/public/payment/paymentok.php +++ b/htdocs/public/payment/paymentok.php @@ -631,7 +631,7 @@ if ($ispaymentok) $paiement->num_paiement = ''; $paiement->note_public = 'Online payment '.dol_print_date($now, 'standard').' from '.$ipaddress; $paiement->ext_payment_id = $TRANSACTIONID; - $paiement->ext_payment_site = $paymentmethod; + $paiement->ext_payment_site = $service; if (! $error) { From d5a910841f491d8cb09eea983f8c0d0e372e96f5 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 1 Nov 2018 23:20:28 +0100 Subject: [PATCH 273/769] Fix various fix cmail, payout, const, connect --- htdocs/public/stripe/ipn.php | 71 +++++++++++++++++++++++------------- 1 file changed, 46 insertions(+), 25 deletions(-) diff --git a/htdocs/public/stripe/ipn.php b/htdocs/public/stripe/ipn.php index 45fd6489f92..28d809532d5 100644 --- a/htdocs/public/stripe/ipn.php +++ b/htdocs/public/stripe/ipn.php @@ -22,7 +22,9 @@ define("NOCSRFCHECK",1); // We accept to go on this page from external web site. $entity=(! empty($_GET['entity']) ? (int) $_GET['entity'] : (! empty($_POST['entity']) ? (int) $_POST['entity'] : 1)); if (is_numeric($entity)) define("DOLENTITY", $entity); -require '../../main.inc.php'; +$res=0; +if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php"); // to work if your module directory is into a subdir of root htdocs directory +if (! $res) die("Include of main fails"); if (empty($conf->stripe->enabled)) accessforbidden('',0,0,1); require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; @@ -43,13 +45,13 @@ if (isset($_GET['connect'])){ { $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_CONNECT_KEY; $service = 'StripeTest'; - $servicestatus = 0; + $servicestatus = 0; } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_CONNECT_KEY; $service = 'StripeLive'; - $servicestatus = 1; + $servicestatus = 1; } } else { @@ -57,15 +59,16 @@ else { { $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_KEY; $service = 'StripeTest'; - $servicestatus = 0; + $servicestatus = 0; } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_KEY; $service = 'StripeLive'; - $servicestatus = 1; + $servicestatus = 1; } } + $payload = @file_get_contents("php://input"); $sig_header = $_SERVER["HTTP_STRIPE_SIGNATURE"]; $event = null; @@ -127,7 +130,7 @@ $stripe=new Stripe($db); if ($event->type == 'payout.created') { $error=0; - $result=dolibarr_set_const($db, $servicestatus."_NEXTPAYOUT", date('Y-m-d H:i:s',$event->data->object->arrival_date), 'chaine', 0, '', $conf->entity); + $result=dolibarr_set_const($db, $service."_NEXTPAYOUT", date('Y-m-d H:i:s',$event->data->object->arrival_date), 'chaine', 0, '', $conf->entity); if ($result > 0) { @@ -172,7 +175,7 @@ if ($event->type == 'payout.created') { elseif ($event->type == 'payout.paid') { global $conf; $error=0; - $result=dolibarr_set_const($db, $servicestatus."_NEXTPAYOUT",null,'chaine',0,'',$conf->entity); + $result=dolibarr_set_const($db, $service."_NEXTPAYOUT",null,'chaine',0,'',$conf->entity); if ($result) { $langs->load("errors"); @@ -187,14 +190,9 @@ elseif ($event->type == 'payout.paid') { $accountfrom->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_PAYMENTS); $accountto=new Account($db); - $accountto->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_BANKTRANFERS); + $accountto->fetch($conf->global->STRIPE_BANK_ACCOUNT_FOR_BANKTRANSFERS); - if ($accountto->currency_code != $accountfrom->currency_code) { - $error++; - setEventMessages($langs->trans("ErrorTransferBetweenDifferentCurrencyNotPossible"), null, 'errors'); - } - - if ($accountto->id != $accountfrom->id) + if (($accountto->id != $accountfrom->id) && empty($error)) { $bank_line_id_from=0; @@ -207,21 +205,44 @@ elseif ($event->type == 'payout.paid') { if (! $error) $bank_line_id_from = $accountfrom->addline($dateo, $typefrom, $label, -1*price2num($amount), '', '', $user); if (! ($bank_line_id_from > 0)) $error++; - if ((! $error) && ($accountto->currency_code == $accountfrom->currency_code)) $bank_line_id_to = $accountto->addline($dateo, $typeto, $label, price2num($amount), '', '', $user); - if ((! $error) && ($accountto->currency_code != $accountfrom->currency_code)) $bank_line_id_to = $accountto->addline($dateo, $typeto, $label, price2num($amount_to), '', '', $user); + if (! $error) $bank_line_id_to = $accountto->addline($dateo, $typeto, $label, price2num($amount), '', '', $user); if (! ($bank_line_id_to > 0)) $error++; - if (! $error) $result=$accountfrom->add_url_line($bank_line_id_from, $bank_line_id_to, DOL_URL_ROOT.'/compta/bank/ligne.php?rowid=', '(banktransfert)', 'banktransfert'); + if (! $error) $result=$accountfrom->add_url_line($bank_line_id_from, $bank_line_id_to, DOL_URL_ROOT.'/compta/bank/ligne.php?rowid=', '(banktransfert)', 'banktransfert'); + if (! ($result > 0)) $error++; + if (! $error) $result=$accountto->add_url_line($bank_line_id_to, $bank_line_id_from, DOL_URL_ROOT.'/compta/bank/ligne.php?rowid=', '(banktransfert)', 'banktransfert'); if (! ($result > 0)) $error++; - if (! $error) $result=$accountto->add_url_line($bank_line_id_to, $bank_line_id_from, DOL_URL_ROOT.'/compta/bank/ligne.php?rowid=', '(banktransfert)', 'banktransfert'); - if (! ($result > 0)) $error++; - } - // TODO Use CMail and translation - $body = "Un virement de ".price2num($event->data->object->amount/100)." ".$event->data->object->currency." a ete effectue sur votre compte le ".date('d-m-Y H:i:s',$event->data->object->arrival_date); - $subject = '[NOTIFICATION] Virement effectué'; - $headers = 'From: "'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'" <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; - mail(''.$conf->global->MAIN_INFO_SOCIETE_MAIL.'', $subject, $body, $headers); + } + $subject = '[NOTIFICATION] Stripe payout done'; + if (!empty($user->email)) { + $sendto = dolGetFirstLastname($user->firstname, $user->lastname) . " <".$user->email.">"; + } else { + $sendto = $conf->global->MAIN_INFO_SOCIETE_MAIL.'" <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; + } + $replyto = $sendto; + $sendtocc = ''; + if (!empty($conf->global->ONLINE_PAYMENT_SENDEMAIL)) { + $sendtocc = $conf->global->ONLINE_PAYMENT_SENDEMAIL.'" <'.$conf->global->ONLINE_PAYMENT_SENDEMAIL.'>'; + } + + $message = "A bank transfer of ".price2num($event->data->object->amount/100)." ".$event->data->object->currency." has been transfert in your account the ".dol_print_date($event->data->object->arrival_date, 'dayhour'); + + $mailfile = new CMailFile( + $subject, + $sendto, + $replyto, + $message, + array(), + array(), + array(), + $sendtocc, + '', + 0, + -1 + ); + + $ret = $mailfile->sendfile(); return 1; } From cb5988bf3006d266221a3cd8ab09412813096496 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Fri, 2 Nov 2018 15:47:02 +0100 Subject: [PATCH 274/769] fix minor SQL error --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 5abc1772eef..e8d575926f1 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -163,7 +163,7 @@ CREATE TABLE llx_emailcollector_emailcollector( fk_user_creat integer NOT NULL, fk_user_modif integer, import_key varchar(14), - status integer NOT NULL, + status integer NOT NULL -- END MODULEBUILDER FIELDS ) ENGINE=innodb; From 1052cb0534672ac27dd5ec96d6af92553224f5e5 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Fri, 2 Nov 2018 16:04:49 +0100 Subject: [PATCH 275/769] Also in install table --- .../install/mysql/tables/llx_emailcollector_emailcollector.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql index 98426cd85a7..8f1fdf1ae7f 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql @@ -37,6 +37,6 @@ CREATE TABLE llx_emailcollector_emailcollector( fk_user_creat integer NOT NULL, fk_user_modif integer, import_key varchar(14), - status integer NOT NULL, + status integer NOT NULL -- END MODULEBUILDER FIELDS ) ENGINE=innodb; From ab53885ef8ddce927f69453fcb6770c56bd52edc Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Nov 2018 17:22:42 +0100 Subject: [PATCH 276/769] Fix with new stripe payment function --- htdocs/stripe/payment.php | 45 ++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/htdocs/stripe/payment.php b/htdocs/stripe/payment.php index 9a7ecfd5470..03014761f62 100644 --- a/htdocs/stripe/payment.php +++ b/htdocs/stripe/payment.php @@ -8,7 +8,7 @@ * Copyright (C) 2014 Raphaël Doursenaud * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> * Copyright (C) 2015 Juanjo Menent - * Copyright (C) 2018 ThibaultFOUCART + * Copyright (C) 2018 Thibault FOUCART * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -63,21 +63,6 @@ $addwarning=0; $multicurrency_amounts=array(); $multicurrency_amountsresttopay=array(); -if (! empty($conf->stripe->enabled)) -{ - $service = 'StripeTest'; - $servicestatus = 0; - if (! empty($conf->global->STRIPE_LIVE) && ! GETPOST('forcesandbox','alpha')) - { - $service = 'StripeLive'; - $servicestatus = 0; - } - - $stripe = new Stripe($db); - $stripeacc = $stripe->getStripeAccount($service); // Stripe OAuth connect account of dolibarr user (no network access here) - $stripecu = $stripe->getStripeCustomerAccount($object->id, $servicestatus); // Get thirdparty cu_... -} - // Security check $socid=0; if ($user->societe_id > 0) @@ -93,6 +78,20 @@ if ($facid > 0) $ret=$object->fetch($facid); } +if (! empty($conf->stripe->enabled)) +{ + $service = 'StripeTest'; + $servicestatus = 0; + if (! empty($conf->global->STRIPE_LIVE) && ! GETPOST('forcesandbox','alpha')) + { + $service = 'StripeLive'; + $servicestatus = 0; + } + +$stripe=new Stripe($db); +$stripeacc = $stripe->getStripeAccount($service); // Stripe OAuth connect account of dolibarr user (no network access here) +} + // Initialize technical object to manage hooks of paiements. Note that conf->hooks_modules contains array array $hookmanager->initHooks(array('paiementcard','globalcard')); @@ -307,12 +306,16 @@ if (empty($reshook)) $paiementcode ="CB"; } } + + $societe = new Societe($db); $societe->fetch($facture->socid); - dol_syslog("Create charge", LOG_DEBUG, 0, '_stripe'); + dol_syslog("Create charge", LOG_DEBUG, 0, '_stripe'); + + $stripecu = $stripe->getStripeCustomerAccount($societe->id, $servicestatus); // Get thirdparty cu_... - $charge=$stripe->CreatePaymentStripe($stripeamount,"EUR","invoice",$facid,$source,$customer->id,$stripe->getStripeAccount($conf->entity)); + $charge=$stripe->createPaymentStripe($stripeamount,$facture->multicurrency_code,"invoice",$facid,$source,$stripecu,$stripeacc,$servicestatus); if (!$error) { @@ -324,6 +327,8 @@ if (empty($reshook)) $paiement->paiementid = dol_getIdFromCode($db,$paiementcode,'c_paiement'); $paiement->num_paiement = $charge->message; $paiement->note = GETPOST('comment'); + $paiement->ext_payment_id = $charge->id; + $paiement->ext_payment_site = $service; } if (! $error) @@ -388,8 +393,8 @@ if (empty($reshook)) exit; } else - { - $loc = DOL_URL_ROOT.'/stripeconnect/payment.php?facid='.$facid.'&action=create&error='.$e->getMessage(); + { + $loc = DOL_URL_ROOT.'/stripe/payment.php?facid='.$facid.'&action=create&error='.$charge->message; $db->rollback(); header('Location: '.$loc); From 171d36d4fcf32b0fb6155bd3d9fd02fe7ea5d949 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Nov 2018 17:49:11 +0100 Subject: [PATCH 277/769] Update payment.php --- htdocs/stripe/payment.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/stripe/payment.php b/htdocs/stripe/payment.php index 03014761f62..51b6cee4505 100644 --- a/htdocs/stripe/payment.php +++ b/htdocs/stripe/payment.php @@ -327,8 +327,8 @@ if (empty($reshook)) $paiement->paiementid = dol_getIdFromCode($db,$paiementcode,'c_paiement'); $paiement->num_paiement = $charge->message; $paiement->note = GETPOST('comment'); - $paiement->ext_payment_id = $charge->id; - $paiement->ext_payment_site = $service; + $paiement->ext_payment_id = $charge->id; + $paiement->ext_payment_site = $service; } if (! $error) From 5f4d644cab8ce0336cf08ed516f275576c0a0659 Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Sat, 3 Nov 2018 11:05:12 +0100 Subject: [PATCH 278/769] New : help picto for fields in creation --- htdocs/core/tpl/commonfields_add.tpl.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/core/tpl/commonfields_add.tpl.php b/htdocs/core/tpl/commonfields_add.tpl.php index 4c81e50c65c..67e118c1b72 100644 --- a/htdocs/core/tpl/commonfields_add.tpl.php +++ b/htdocs/core/tpl/commonfields_add.tpl.php @@ -49,6 +49,9 @@ foreach($object->fields as $key => $val) print '"'; print '>'; print $langs->trans($val['label']); + if(!empty($val['help'])){ + print $form->textwithpicto('',$langs->trans($val['help'])); + } print ''; print ''; if (in_array($val['type'], array('int', 'integer'))) $value = GETPOST($key, 'int'); From 28d5f1d50bdddc0dbffdeb32dab99691b5f7b997 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 11:30:32 +0100 Subject: [PATCH 279/769] Fix sql syntax error --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- .../install/mysql/tables/llx_emailcollector_emailcollector.sql | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 5abc1772eef..e8d575926f1 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -163,7 +163,7 @@ CREATE TABLE llx_emailcollector_emailcollector( fk_user_creat integer NOT NULL, fk_user_modif integer, import_key varchar(14), - status integer NOT NULL, + status integer NOT NULL -- END MODULEBUILDER FIELDS ) ENGINE=innodb; diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql index 98426cd85a7..8f1fdf1ae7f 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql @@ -37,6 +37,6 @@ CREATE TABLE llx_emailcollector_emailcollector( fk_user_creat integer NOT NULL, fk_user_modif integer, import_key varchar(14), - status integer NOT NULL, + status integer NOT NULL -- END MODULEBUILDER FIELDS ) ENGINE=innodb; From 0229b961784a4a0cc527d0e99ed7a408ace7b319 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 11:38:29 +0100 Subject: [PATCH 280/769] Fix family of module --- htdocs/core/modules/modDataPolicy.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/modules/modDataPolicy.class.php b/htdocs/core/modules/modDataPolicy.class.php index b6f4c4e0139..4987bec3856 100644 --- a/htdocs/core/modules/modDataPolicy.class.php +++ b/htdocs/core/modules/modDataPolicy.class.php @@ -57,9 +57,9 @@ class modDataPolicy extends DolibarrModules { // Family can be 'base' (core modules),'crm','financial','hr','projects','products','ecm','technic' (transverse modules),'interface' (link with external tools),'other','...' // It is used to group modules by family in module setup page - $this->family = "hr"; + $this->family = "technic"; // Module position in the family on 2 digits ('01', '10', '20', ...) - $this->module_position = '70'; + $this->module_position = '81'; // Gives the possibility to the module, to provide his own family info and position of this family (Overwrite $this->family and $this->module_position. Avoid this) //$this->familyinfo = array('myownfamily' => array('position' => '01', 'label' => $langs->trans("MyOwnFamily"))); // Module label (no space allowed), used if translation string 'ModuledatapolicyName' not found (MyModue is name of module). From 64b5e432c244055a207179efdade34aa5cfd53bb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 11:40:43 +0100 Subject: [PATCH 281/769] 2 remind of expired subscription by default --- htdocs/core/modules/modAdherent.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/modAdherent.class.php b/htdocs/core/modules/modAdherent.class.php index e6a3f294c82..8fa19e44e0c 100644 --- a/htdocs/core/modules/modAdherent.class.php +++ b/htdocs/core/modules/modAdherent.class.php @@ -355,7 +355,7 @@ class modAdherent extends DolibarrModules 'jobtype'=>'method', 'class'=>'adherents/class/adherent.class.php', 'objectname'=>'Adherent', 'method'=>'sendReminderForExpiredSubscription', - 'parameters'=>'10', + 'parameters'=>'10,0', 'comment'=>'SendReminderForExpiredSubscription', 'frequency'=>1, 'unitfrequency'=> 3600 * 24, From 7e55701774a0f90d9afa036cc636bc7182e2704b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 11:41:45 +0100 Subject: [PATCH 282/769] 2 remind of subscription expired by default --- htdocs/core/modules/modAdherent.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/modAdherent.class.php b/htdocs/core/modules/modAdherent.class.php index 8fa19e44e0c..30aa21c4201 100644 --- a/htdocs/core/modules/modAdherent.class.php +++ b/htdocs/core/modules/modAdherent.class.php @@ -355,7 +355,7 @@ class modAdherent extends DolibarrModules 'jobtype'=>'method', 'class'=>'adherents/class/adherent.class.php', 'objectname'=>'Adherent', 'method'=>'sendReminderForExpiredSubscription', - 'parameters'=>'10,0', + 'parameters'=>'10;0', 'comment'=>'SendReminderForExpiredSubscription', 'frequency'=>1, 'unitfrequency'=> 3600 * 24, From 68ec172798cf1032cd051f57c7ea6fbceecb297d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 12:37:52 +0100 Subject: [PATCH 283/769] Fix setup to enable reminder b email --- htdocs/adherents/admin/adherent_emails.php | 3 ++- htdocs/adherents/class/adherent.class.php | 12 +++++++--- htdocs/comm/action/class/actioncomm.class.php | 10 +++++++-- htdocs/core/lib/admin.lib.php | 22 ++++++++++++++----- htdocs/langs/en_US/admin.lang | 1 + 5 files changed, 37 insertions(+), 11 deletions(-) diff --git a/htdocs/adherents/admin/adherent_emails.php b/htdocs/adherents/admin/adherent_emails.php index 60e0b2c3b48..36c7091a47b 100644 --- a/htdocs/adherents/admin/adherent_emails.php +++ b/htdocs/adherents/admin/adherent_emails.php @@ -147,8 +147,9 @@ $constantes=array( 'ADHERENT_EMAIL_TEMPLATE_AUTOREGISTER' =>'emailtemplate:member', /* old was ADHERENT_AUTOREGISTER_MAIL */ 'ADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION' =>'emailtemplate:member', /* old was ADHERENT_MAIL_VALID */ 'ADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION' =>'emailtemplate:member', /* old was ADHERENT_MAIL_COTIS */ - 'ADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION' =>'emailtemplate:member', 'ADHERENT_EMAIL_TEMPLATE_CANCELATION' =>'emailtemplate:member', /* old was ADHERENT_MAIL_RESIL */ + 'MEMBER_REMINDER_EMAIL'=>array('type'=>'yesno', 'label'=>$langs->trans('MEMBER_REMINDER_EMAIL', $langs->transnoentities("Module2300Name"))), + 'ADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION' =>'emailtemplate:member', ); $helptext='*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
'; diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 3df36ef3eda..4277b274a1d 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -2644,13 +2644,19 @@ class Adherent extends CommonObject $blockingerrormsg = ''; - /*if (empty($conf->global->MEMBER_REMINDER_EMAIL)) + if (empty($conf->adherent->enabled)) // Should not happen. If module disabled, cron job should not be visible. + { + $langs->load("agenda"); + $this->output = $langs->trans('ModuleNotEnabled', $langs->transnoentitiesnoconv("Adherent")); + return 0; + } + if (empty($conf->global->MEMBER_REMINDER_EMAIL)) { $langs->load("agenda"); $this->output = $langs->trans('EventRemindersByEmailNotEnabled', $langs->transnoentitiesnoconv("Adherent")); return 0; - }*/ - + } + $now = dol_now(); $nbok = 0; $nbko = 0; diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index 92af9fef6da..e84ef93da2d 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -1679,13 +1679,19 @@ class ActionComm extends CommonObject $this->output = ''; $this->error=''; - if (empty($conf->global->AGENDA_REMINDER_EMAIL)) + if (empty($conf->agenda->enabled)) // Should not happen. If module disabled, cron job should not be visible. + { + $langs->load("agenda"); + $this->output = $langs->trans('ModuleNotEnabled', $langs->transnoentitiesnoconv("Agenda")); + return 0; + } + if (empty($conf->global->AGENDA_REMINDER_EMAIL)) { $langs->load("agenda"); $this->output = $langs->trans('EventRemindersByEmailNotEnabled', $langs->transnoentitiesnoconv("Agenda")); return 0; } - + $now = dol_now(); dol_syslog(__METHOD__, LOG_DEBUG); diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index f5efa5c5b7e..89f511c18c2 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -1353,7 +1353,8 @@ function complete_elementList_with_modules(&$elementList) /** * Show array with constants to edit * - * @param array $tableau Array of constants array('key'=>type, ) where type can be 'string', 'text', 'textarea', 'html', 'yesno', 'emailtemplate:xxx', ... + * @param array $tableau Array of constants array('key'=>array('type'=>type, 'label'=>label) + * where type can be 'string', 'text', 'textarea', 'html', 'yesno', 'emailtemplate:xxx', ... * @param int $strictw3c 0=Include form into table (deprecated), 1=Form is outside table to respect W3C (no form into table), 2=No form nor button at all * @param string $helptext Help * @return void @@ -1377,17 +1378,28 @@ function form_constantes($tableau, $strictw3c=0, $helptext='') if (empty($strictw3c)) print ''.$langs->trans("Action").''; print "\n"; + $label=''; $listofparam=array(); foreach($tableau as $key => $const) // Loop on each param { + $label=''; // $const is a const key like 'MYMODULE_ABC' - if (is_numeric($key)) { + if (is_numeric($key)) { // Very old behaviour $type = 'string'; } else { - $type = $const; - $const = $key; + if (is_array($const)) + { + $type = $const['type']; + $label = $const['label']; + $const = $key; + } + else + { + $type = $const; + $const = $key; + } } $sql = "SELECT "; @@ -1428,7 +1440,7 @@ function form_constantes($tableau, $strictw3c=0, $helptext='') print ''; print ''; - print $langs->trans('Desc'.$const); + print ($label ? $label : $langs->trans('Desc'.$const)); if ($const == 'ADHERENT_MAILMAN_URL') { diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 190b7cded97..a59cc0eee2e 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1282,6 +1282,7 @@ AdherentLoginRequired= Manage a Login for each member AdherentMailRequired=EMail required to create a new member MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default VisitorCanChooseItsPaymentMode=Visitor can choose among available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by emails of expired subscriptions. Note: Module %s must be enabled and correctly setup to have reminder sent. ##### LDAP setup ##### LDAPSetup=LDAP Setup LDAPGlobalParameters=Global parameters From 8ab53012b71b2dd149ea743abfd4063f5faf489c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 3 Nov 2018 18:20:36 +0100 Subject: [PATCH 284/769] mode is only customer in stats fichinter --- htdocs/fichinter/stats/index.php | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index 1c0ba5764ed..0dacf19c600 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -30,7 +30,7 @@ $WIDTH=DolGraph::getDefaultGraphSizeForStats('width'); $HEIGHT=DolGraph::getDefaultGraphSizeForStats('height'); $mode='customer'; -if ($mode == 'customer' && ! $user->rights->ficheinter->lire) accessforbidden(); +if (! $user->rights->ficheinter->lire) accessforbidden(); $userid=GETPOST('userid','int'); $socid=GETPOST('socid','int'); @@ -129,14 +129,12 @@ $data = $stats->getAmountByMonthWithPrevYear($endyear,$startyear); if (!$user->rights->societe->client->voir || $user->societe_id) { $filenameamount = $dir.'/interventionsamountinyear-'.$user->id.'-'.$year.'.png'; - if ($mode == 'customer') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$user->id.'-'.$year.'.png'; - if ($mode == 'supplier') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstatssupplier&file=interventionsamountinyear-'.$user->id.'-'.$year.'.png'; + $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$user->id.'-'.$year.'.png'; } else { $filenameamount = $dir.'/interventionsamountinyear-'.$year.'.png'; - if ($mode == 'customer') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$year.'.png'; - if ($mode == 'supplier') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstatssupplier&file=interventionsamountinyear-'.$year.'.png'; + $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$year.'.png'; } $px2 = new DolGraph(); @@ -171,14 +169,12 @@ $data = $stats->getAverageByMonthWithPrevYear($endyear, $startyear); if (!$user->rights->societe->client->voir || $user->societe_id) { $filename_avg = $dir.'/interventionsaverage-'.$user->id.'-'.$year.'.png'; - if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$user->id.'-'.$year.'.png'; - if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstatssupplier&file=interventionsaverage-'.$user->id.'-'.$year.'.png'; + $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$user->id.'-'.$year.'.png'; } else { $filename_avg = $dir.'/interventionsaverage-'.$year.'.png'; - if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$year.'.png'; - if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstatssupplier&file=interventionsaverage-'.$year.'.png'; + $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$year.'.png'; } $px3 = new DolGraph(); @@ -221,13 +217,12 @@ if (! count($arrayyears)) $arrayyears[$nowyear]=$nowyear; $h=0; $head = array(); -$head[$h][0] = DOL_URL_ROOT . '/commande/stats/index.php?mode='.$mode; +$head[$h][0] = DOL_URL_ROOT . '/fichinter/stats/index.php?mode='.$mode; $head[$h][1] = $langs->trans("ByMonthYear"); $head[$h][2] = 'byyear'; $h++; -if ($mode == 'customer') $type='order_stats'; -if ($mode == 'supplier') $type='supplier_order_stats'; +$type='fichinter_stats'; complete_head_from_modules($conf,$langs,null,$head,$h,$type); @@ -247,7 +242,6 @@ print '
'; // Company print ''.$langs->trans("ThirdParty").''; if ($mode == 'customer') $filter='s.client in (1,2,3)'; - if ($mode == 'supplier') $filter='s.fournisseur = 1'; print $form->select_company($socid,'socid',$filter,1,0,0,array(),0,'','style="width: 95%"'); print ''; // User From d6b909a28063712acfed8ba2e6b4a9d7ade4d1fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 3 Nov 2018 18:26:11 +0100 Subject: [PATCH 285/769] Update index.php --- htdocs/fichinter/stats/index.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index 0dacf19c600..39cad7ca4f1 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -217,12 +217,12 @@ if (! count($arrayyears)) $arrayyears[$nowyear]=$nowyear; $h=0; $head = array(); -$head[$h][0] = DOL_URL_ROOT . '/fichinter/stats/index.php?mode='.$mode; +$head[$h][0] = DOL_URL_ROOT . '/fichinter/stats/index.php'; $head[$h][1] = $langs->trans("ByMonthYear"); $head[$h][2] = 'byyear'; $h++; -$type='fichinter_stats'; +$type = 'fichinter_stats'; complete_head_from_modules($conf,$langs,null,$head,$h,$type); From c4bf0f0e038dd41a02ce1c121122e92d981379cb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 18:57:18 +0100 Subject: [PATCH 286/769] CSS Flex --- htdocs/index.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/index.php b/htdocs/index.php index 14f72774d92..a3d6a45475e 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -552,7 +552,8 @@ if ($showweather) $nbworkboardempty=0; if (! empty($valid_dashboardlines)) { - $boxwork.=''; + $boxwork.='
'; + foreach($valid_dashboardlines as $board) { if (empty($board->nbtodo)) $nbworkboardempty++; @@ -592,6 +593,8 @@ if (! empty($valid_dashboardlines)) $boxwork .='
'; $boxwork .='
'; $boxwork .='
'; + + $boxwork .='
'; $boxwork .=''; } else From f4346c1469e351419291bc5a1f613e192acfbe2e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 19:24:28 +0100 Subject: [PATCH 287/769] Fix css --- htdocs/theme/eldy/style.css.php | 2 +- htdocs/theme/md/style.css.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 8d3b21a327d..a58031b2889 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -3567,7 +3567,7 @@ div.boximport { .widthpictotitle { width: 40px; text-align: ; } .dolgraphtitle { margin-top: 6px; margin-bottom: 4px; } -.dolgraphtitlecssboxes { margin: 0px; } +.dolgraphtitlecssboxes { /* margin: 0px; */ } .legendColorBox, .legendLabel { border: none !important; } div.dolgraph div.legend, div.dolgraph div.legend div { background-color: rgba(255,255,255,0) !important; } div.dolgraph div.legend table tbody tr { height: auto; } diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 80a79b0245a..a246786a53a 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -3486,7 +3486,7 @@ div.boximport { .widthpictotitle { width: 40px; text-align: ; } .dolgraphtitle { margin-top: 6px; margin-bottom: 4px; } -.dolgraphtitlecssboxes { margin: 0px; } +.dolgraphtitlecssboxes { /* margin: 0px; */ } .legendColorBox, .legendLabel { border: none !important; } div.dolgraph div.legend, div.dolgraph div.legend div { background-color: rgba(255,255,255,0) !important; } div.dolgraph div.legend table tbody tr { height: auto; } From c01113e28bc76e8123f2525c67d637d3a0588e42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 3 Nov 2018 22:49:30 +0100 Subject: [PATCH 288/769] typo --- htdocs/ticket/index.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/ticket/index.php b/htdocs/ticket/index.php index 9acfd66c3bb..43be6bd2f57 100644 --- a/htdocs/ticket/index.php +++ b/htdocs/ticket/index.php @@ -184,8 +184,8 @@ if ($result) { $dataseries[] = array('label' => $langs->trans("Assigned"), 'data' => round($tick['assigned'])); $dataseries[] = array('label' => $langs->trans("InProgress"), 'data' => round($tick['inprogress'])); $dataseries[] = array('label' => $langs->trans("Waiting"), 'data' => round($tick['waiting'])); - $dataseries[] = array('label' => $langs->trans("Closed"), 'data' => round($tick['Closed'])); - $dataseries[] = array('label' => $langs->trans("Deleted"), 'data' => round($tick['Deleted'])); + $dataseries[] = array('label' => $langs->trans("Closed"), 'data' => round($tick['closed'])); + $dataseries[] = array('label' => $langs->trans("Deleted"), 'data' => round($tick['deleted'])); } } else { dol_print_error($db); From 90d3b80efb7e202f1dc561041f0795af9b93391b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Nov 2018 22:53:55 +0100 Subject: [PATCH 289/769] NEW Add email in event histor for reminder email of expired subsription --- htdocs/adherents/class/adherent.class.php | 53 ++++++++++++++++++- htdocs/core/actions_sendmails.inc.php | 4 ++ ...terface_50_modAgenda_ActionsAuto.class.php | 21 ++++---- 3 files changed, 68 insertions(+), 10 deletions(-) diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 4277b274a1d..ea8850931dc 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -2742,7 +2742,58 @@ class Adherent extends CommonObject { $nbok++; - // TODO Add event email sent for member + $message = $msg; + $sendto = $to; + $sendtocc = ''; + $sendtobcc = ''; + $actioncode='EMAIL'; + $extraparams=''; + + $actionmsg=''; + $actionmsg2=$langs->transnoentities('MailSentBy').' '.CMailFile::getValidAddress($from,4,0,1).' '.$langs->transnoentities('To').' '.CMailFile::getValidAddress($sendto,4,0,1); + if ($message) + { + $actionmsg=$langs->transnoentities('MailFrom').': '.dol_escape_htmltag($from); + $actionmsg=dol_concatdesc($actionmsg, $langs->transnoentities('MailTo').': '.dol_escape_htmltag($sendto)); + if ($sendtocc) $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('Bcc') . ": " . dol_escape_htmltag($sendtocc)); + $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('MailTopic') . ": " . $subject); + $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":"); + $actionmsg = dol_concatdesc($actionmsg, $message); + } + + require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; + + // Insert record of emails sent + $actioncomm = new ActionComm($this->db); + + $actioncomm->type_code = 'AC_OTH_AUTO'; // Type of event ('AC_OTH', 'AC_OTH_AUTO', 'AC_XXX'...) + $actioncomm->code = 'AC_'.$actioncode; + $actioncomm->label = $actionmsg2; + $actioncomm->note = $actionmsg; + $actioncomm->fk_project = 0; + $actioncomm->datep = $now; + $actioncomm->datef = $now; + $actioncomm->percentage = -1; // Not applicable + $actioncomm->socid = $adherent->thirdparty->id; + $actioncomm->contactid = 0; + $actioncomm->authorid = $user->id; // User saving action + $actioncomm->userownerid = $user->id; // Owner of action + // Fields when action is en email (content should be added into note) + $actioncomm->email_msgid = $cmail->msgid; + $actioncomm->email_from = $from; + $actioncomm->email_sender= ''; + $actioncomm->email_to = $to; + $actioncomm->email_tocc = $sendtocc; + $actioncomm->email_tobcc = $sendtobcc; + $actioncomm->email_subject = $subject; + $actioncomm->errors_to = ''; + + $actioncomm->fk_element = $adherent->id; + $actioncomm->elementtype = $adherent->element; + + $actioncomm->extraparams = $extraparams; + + $actioncomm->create($user); } } else diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index 0715a78495e..61c4b636758 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -439,6 +439,10 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO $object->sendtouserid = $sendtouserid; } + // TODO Set object->email_xxx properties + $object->email_msgid = $mailfile->msgid; + //... + // Call of triggers if (! empty($trigger_name)) { diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php index 938b63d90f3..0823a536cbf 100644 --- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php +++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php @@ -818,7 +818,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $actioncomm->type_code = $object->actiontypecode; // Type of event ('AC_OTH', 'AC_OTH_AUTO', 'AC_XXX'...) $actioncomm->code = 'AC_'.$action; $actioncomm->label = $object->actionmsg2; - $actioncomm->note = $object->actionmsg; // TODO Replace with $actioncomm->email_msgid ? $object->email_content : $object->actionmsg + $actioncomm->note = $object->actionmsg; // TODO Replace with ($actioncomm->email_msgid ? $object->email_content : $object->actionmsg) $actioncomm->fk_project = $projectid; $actioncomm->datep = $now; $actioncomm->datef = $now; @@ -831,19 +831,22 @@ class InterfaceActionsAuto extends DolibarrTriggers $actioncomm->contactid = $contactforaction->id; $actioncomm->authorid = $user->id; // User saving action $actioncomm->userownerid = $user->id; // Owner of action - // Fields when action is en email (content should be added into note) - $actioncomm->email_msgid = $object->email_msgid; - $actioncomm->email_from = $object->email_from; - $actioncomm->email_sender= $object->email_sender; - $actioncomm->email_to = $object->email_to; - $actioncomm->email_tocc = $object->email_tocc; - $actioncomm->email_tobcc = $object->email_tobcc; + // Fields defined when action is an email (content should be into object->actionmsg to be added into note, subject into object->actionms2 to be added into label) + $actioncomm->email_msgid = $object->email_msgid; + $actioncomm->email_from = $object->email_from; + $actioncomm->email_sender = $object->email_sender; + $actioncomm->email_to = $object->email_to; + $actioncomm->email_tocc = $object->email_tocc; + $actioncomm->email_tobcc = $object->email_tobcc; $actioncomm->email_subject = $object->email_subject; - $actioncomm->errors_to = $object->errors_to; + $actioncomm->errors_to = $object->errors_to; $actioncomm->fk_element = $elementid; $actioncomm->elementtype = $elementtype; + if (property_exists($object,'attachedfiles') && is_array($object->attachedfiles) && count($object->attachedfiles)>0) { + $actioncomm->attachedfiles=$object->attachedfiles; + } if (property_exists($object,'sendtouserid') && is_array($object->sendtouserid) && count($object->sendtouserid)>0) { $actioncomm->userassigned=$object->sendtouserid; } From 488ac8c8f0b1fd5a08b6a3eea5452eb4e109095b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 3 Nov 2018 23:44:25 +0100 Subject: [PATCH 290/769] Update index.php --- htdocs/ticket/index.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/htdocs/ticket/index.php b/htdocs/ticket/index.php index 43be6bd2f57..1f01e335a7c 100644 --- a/htdocs/ticket/index.php +++ b/htdocs/ticket/index.php @@ -191,8 +191,7 @@ if ($result) { dol_print_error($db); } -$stringtoshow = ''; -$stringtoshow .= ''."\n"; // MAX_FILE_SIZE doit précéder le champ input de type file print ''; } - print ' '; + print ' '; print ''; From c4db549f94ee80b12ddc52ee10ddee18b82055b9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 6 Nov 2018 19:49:52 +0100 Subject: [PATCH 320/769] Work on emailcollector --- htdocs/admin/emailcollector_card.php | 84 +++++++++++++++++-- .../class/emailcollector.class.php | 48 ++++++----- htdocs/langs/en_US/admin.lang | 1 + 3 files changed, 104 insertions(+), 29 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index 611f7578193..d34964d9892 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -1,6 +1,5 @@ - * Copyright (C) ---Put here your own copyright and developer email--- +/* Copyright (C) 2018 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,7 +16,7 @@ */ /** - * \file htdocs/admin/emailcollectore/emailcollector_card.php + * \file htdocs/admin/emailcollector_card.php * \ingroup emailcollector * \brief Page to create/edit/view emailcollector */ @@ -27,10 +26,12 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/agenda.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/events.class.php'; -include_once DOL_DOCUMENT_ROOT . '/core/class/html.formcompany.class.php'; -include_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; -dol_include_once('/emailcollector/class/emailcollector.class.php'); -dol_include_once('/emailcollector/lib/emailcollector.lib.php'); +include_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +include_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; +include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollector.class.php'; +include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectorfilter.class.php'; +include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectoraction.lib.php'; +include_once DOL_DOCUMENT_ROOT.'/emailcollector/lib/emailcollector.lib.php'; if (!$user->admin) accessforbidden(); @@ -219,6 +220,9 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea { $res = $object->fetch_optionals(); + $object->fetchFilters(); + $object->fetchActions(); + $head = emailcollectorPrepareHead($object); dol_fiche_head($head, 'card', $langs->trans("EmailCollector"), -1, 'emailcollector'); @@ -318,6 +322,72 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; + // Filters + print ''; + print ''; + print ''; + print ''; + // Add filter + print ''; + print ''; + print ''; + print ''; + // List filters + foreach($object->filters as $rulefilter) + { + $rulefilterobj=new EmailCollectorFilter($db); + $rulefilterobj->fetch($rulefilter['id']); + + print ''; + print ''; + print ''; + print ''; + print ''; + } + + print ''; + print '
'.$langs->trans("Filters").'
'; + $arrayoftypes=array('to'=>'To', 'cc'=>'Cc', 'bcc'=>'Bcc', 'from'=>'From', 'subject'=>'Subject', 'body'=>'Body', 'seen'=>'AlreadyRead', 'unseen'=>'NotRead'); + print $form->selectarray('filtertype', $arrayoftypes, '', 1); + print ''; + print ''; + print '
'.$rulefilter['type'].''.$rulefilter['rulevalue'].''.$rulefilterobj->getLibStatut(3).'
'; + + print '

'; + + // Operations + print ''; + print ''; + print ''; + print ''; + // Add operation + print ''; + print ''; + print ''; + print ''; + // List operations + foreach($object->actions as $ruleaction) + { + $ruleactionobj=new EmailcollectorAction($db); + $ruleactionobj->fetch($ruleaction['id']); + + print ''; + print ''; + print ''; + print ''; + print ''; + } + + print ''; + print '
'.$langs->trans("EmailcollectorOperations").'
'; + $arrayoftypes=array('recordevent'=>'RecordEvent'); + if ($conf->projet->enabled) $arrayoftypes['project']='CreateLeadAndThirdParty'; + print $form->selectarray('operationtype', $arrayoftypes, '', 1); + print ''; + print ''; + print '
'.$ruleactionobj['type'].''.$ruleactionobj['actionparam'].''.$ruleactionobj->getLibStatut(3).'
'; + + print '
'; print '
'; diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index f925b271853..358b7a278e7 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -155,7 +155,7 @@ class EmailCollector extends CommonObject public $lastresult; // END MODULEBUILDER PROPERTIES - public $rules; + public $filters; public $actions; @@ -613,15 +613,15 @@ class EmailCollector extends CommonObject } /** - * Fetch rules + * Fetch filters * * @return int <0 if KO, >0 if OK */ - public function fetch_rules() + public function fetchFilters() { $this->rules = array(); - $sql='SELECT type, rulevalue FROM '.MAIN_DB_PREFIX.'emailcollector_emailcollectorfilter WHERE status = 1 AND fk_emailcollector = '.$this->id; + $sql='SELECT rowid, type, rulevalue, status FROM '.MAIN_DB_PREFIX.'emailcollector_emailcollectorfilter WHERE fk_emailcollector = '.$this->id; $resql = $this->db->query($sql); if ($resql) @@ -631,7 +631,7 @@ class EmailCollector extends CommonObject while($i < $num) { $obj=$this->db->fetch_object($resql); - $this->rules[]=array('type'=>$obj->type, 'rulevalue'=>$obj->rulevalue); + $this->filters[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'rulevalue'=>$obj->rulevalue, 'status'=>$obj->status); } $this->db->free($resql); } @@ -644,11 +644,11 @@ class EmailCollector extends CommonObject * * @return int <0 if KO, >0 if OK */ - public function fetch_actions() + public function fetchActions() { $this->actions = array(); - $sql='SELECT type, actionparam FROM '.MAIN_DB_PREFIX.'emailcollector_emailcollectoraction WHERE status = 1 AND fk_emailcollector = '.$this->id; + $sql='SELECT rowid, type, actionparam, status FROM '.MAIN_DB_PREFIX.'emailcollector_emailcollectoraction WHERE fk_emailcollector = '.$this->id; $resql = $this->db->query($sql); if ($resql) @@ -658,7 +658,7 @@ class EmailCollector extends CommonObject while($i < $num) { $obj=$this->db->fetch_object($resql); - $this->rules[]=array('type'=>$obj->type, 'actionparam'=>$obj->actionparam); + $this->rules[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'actionparam'=>$obj->actionparam, 'status'=>$obj->status); } $this->db->free($resql); } @@ -709,8 +709,8 @@ class EmailCollector extends CommonObject return -2; } - $this->fetch_rules(); - $this->fetch_actions(); + $this->fetchFilters(); + $this->fetchActions(); $sourcedir = $this->source_directory; $targetdir = ($this->target_directory ? $server.$this->target_directory : ''); // Can be '[Gmail]/Trash' or 'mytag' @@ -735,16 +735,18 @@ class EmailCollector extends CommonObject //$search='ALL'; $search='UNDELETED'; - foreach($this->rules as $key => $rulevalue) + foreach($this->filters as $rule) { - if ($key == 'to') $search=($search?' ':'').'TO "'.str_replace('"', '', $rulevalue).'"'; - if ($key == 'bcc') $search=($search?' ':'').'BCC'; - if ($key == 'cc') $search=($search?' ':'').'CC'; - if ($key == 'from') $search=($search?' ':'').'FROM "'.str_replace('"', '', $rulevalue).'"'; - if ($key == 'subject') $search=($search?' ':'').'SUBJECT "'.str_replace('"', '', $rulevalue).'"'; - if ($key == 'body') $search=($search?' ':'').'BODY "'.str_replace('"', '', $rulevalue).'"'; - if ($key == 'seen') $search=($search?' ':'').'SEEN'; - if ($key == 'unseen') $search=($search?' ':'').'UNSEEN'; + if (empty($rule['status'])) continue; + + if ($rule['key'] == 'to') $search=($search?' ':'').'TO "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['key'] == 'bcc') $search=($search?' ':'').'BCC'; + if ($rule['key'] == 'cc') $search=($search?' ':'').'CC'; + if ($rule['key'] == 'from') $search=($search?' ':'').'FROM "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['key'] == 'subject') $search=($search?' ':'').'SUBJECT "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['key'] == 'body') $search=($search?' ':'').'BODY "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['key'] == 'seen') $search=($search?' ':'').'SEEN'; + if ($rule['key'] == 'unseen') $search=($search?' ':'').'UNSEEN'; } if (empty($targetdir)) // Use last date as filter if there is no targetdir defined. @@ -783,12 +785,14 @@ class EmailCollector extends CommonObject var_dump($message); */ - // Record email - foreach($this->actions as $actionkey => $actionvalue) + // Do operationss + foreach($this->actions as $operation) { if ($errorforactions) break; + if (empty($operation['status'])) continue; + + // Make Operation - // Make action if (! $errorforactions) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 2294d540b22..d38eb1d21d9 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1819,6 +1819,7 @@ NewEmailCollector=New Email Collector EMailHost=Host of email IMAP server MailboxSourceDirectory=Mailbox source directory MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations done by collector CollectNow=Collect now DateLastResult=Date last collect LastResult=Last result From 7dd941dd51787b3e2c452ad3af70307a225a63db Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 6 Nov 2018 19:51:16 +0100 Subject: [PATCH 321/769] Fix bad fix --- htdocs/accountancy/admin/export.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/accountancy/admin/export.php b/htdocs/accountancy/admin/export.php index 23ac96ea263..03538b759e7 100644 --- a/htdocs/accountancy/admin/export.php +++ b/htdocs/accountancy/admin/export.php @@ -41,8 +41,8 @@ if (empty($user->rights->accounting->chartofaccount)) accessforbidden(); } -$action = GETPOST('action', 'alpha'); -aZ09 +$action = GETPOST('action', 'aZ09'); + // Parameters ACCOUNTING_EXPORT_* $main_option = array ( 'ACCOUNTING_EXPORT_PREFIX_SPEC', From c1cf4fbb957f690a4371b0ef1aea3b4d5211b049 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 6 Nov 2018 20:29:58 +0100 Subject: [PATCH 322/769] Fix phpcs --- htdocs/core/modules/expedition/doc/pdf_rouget.modules.php | 5 ++--- htdocs/emailcollector/class/emailcollector.class.php | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index ab523d3be52..28ec5935582 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -731,14 +731,13 @@ class pdf_rouget extends ModelePdfExpedition $pdf->MultiCell($this->posxpuht - $this->posxqtytoship, $tab2_hl, $totalToShip, 0, 'C', 1); } - if (!empty($conf->global->SHIPPING_PDF_DISPLAY_AMOUNT_HT)) { - + if (!empty($conf->global->SHIPPING_PDF_DISPLAY_AMOUNT_HT)) + { $pdf->SetXY($this->posxpuht, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($this->posxtotalht - $this->posxpuht, $tab2_hl, '', 0, 'C', 1); $pdf->SetXY($this->posxtotalht, $tab2_top + $tab2_hl * $index); $pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->posxtotalht, $tab2_hl, price($object->total_ht, 0, $outputlangs), 0, 'C', 1); - } if (empty($conf->global->SHIPPING_PDF_HIDE_WEIGHT_AND_VOLUME)) diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 358b7a278e7..cef1c27eac9 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -775,7 +775,7 @@ class EmailCollector extends CommonObject $this->db->begin(); $overview = imap_fetch_overview($connection, $imapemail, 0); - $header = imap_fetchheader($connection ,$imapemail, 0); + $header = imap_fetchheader($connection, $imapemail, 0); $message = imap_body($connection, $imapemail, 0); // imap_fetchstructure($connection, $imapemail, 0); // imap_fetchbody($connection, $imapemail, 1) may be text/plain, 2 may be text/html From 4f7be362496bcb3de295a9dcd1ae11ef1dde6446 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Wed, 7 Nov 2018 09:14:29 +0100 Subject: [PATCH 323/769] fix extrafield hidden --- htdocs/core/class/commonobject.class.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 88386521079..67e06ea59f3 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -6142,7 +6142,7 @@ abstract class CommonObject if (! is_object($form)) $form=new Form($db); $out = ''; - + if (is_array($extrafields->attributes[$this->table_element]['label']) && count($extrafields->attributes[$this->table_element]['label']) > 0) { $out .= "\n"; @@ -6152,6 +6152,10 @@ abstract class CommonObject $e = 0; foreach($extrafields->attributes[$this->table_element]['label'] as $key=>$label) { + if(empty($extrafields->attribute_list[$key]) && $mode == 'view'){ + continue; + } + $enabled = 1; if ($enabled && isset($extrafields->attributes[$this->table_element]['list'][$key])) { From c76c2e0d3ec31f2bf6e5e07c1f90bd5c3f519350 Mon Sep 17 00:00:00 2001 From: madx666 Date: Wed, 7 Nov 2018 10:08:38 +0100 Subject: [PATCH 324/769] Fix newMessagePublic for ticket module --- htdocs/ticket/class/actions_ticket.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/ticket/class/actions_ticket.class.php b/htdocs/ticket/class/actions_ticket.class.php index 7e8ae39564a..09326b23798 100644 --- a/htdocs/ticket/class/actions_ticket.class.php +++ b/htdocs/ticket/class/actions_ticket.class.php @@ -827,6 +827,7 @@ class ActionsTicket global $mysoc, $conf, $langs; + $object = new Ticket($this->db); $error = 0; $ret = $object->fetch('', '', GETPOST('track_id','alpha')); $object->socid = $object->fk_soc; From 2ff69bb3fc315c1fa5fede5bc555d2740d23f909 Mon Sep 17 00:00:00 2001 From: madx666 Date: Wed, 7 Nov 2018 10:11:28 +0100 Subject: [PATCH 325/769] Fix viewTicketMessages for ticket module --- htdocs/ticket/class/actions_ticket.class.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/htdocs/ticket/class/actions_ticket.class.php b/htdocs/ticket/class/actions_ticket.class.php index 09326b23798..fc1f1a88012 100644 --- a/htdocs/ticket/class/actions_ticket.class.php +++ b/htdocs/ticket/class/actions_ticket.class.php @@ -1204,15 +1204,14 @@ class ActionsTicket public function viewTicketMessages($show_private, $show_user = true) { global $conf, $langs, $user; - global $object; // Load logs in cache - $ret = $object->loadCacheMsgsTicket(); + $ret = $this->dao->loadCacheMsgsTicket(); $action = GETPOST('action'); $this->viewTicketOriginalMessage($user, $action); - if (is_array($object->cache_msgs_ticket) && count($object->cache_msgs_ticket) > 0) { + if (is_array($this->dao->cache_msgs_ticket) && count($this->dao->cache_msgs_ticket) > 0) { print_titre($langs->trans('TicketMailExchanges')); print ''; @@ -1229,7 +1228,7 @@ class ActionsTicket print ''; } - foreach ($object->cache_msgs_ticket as $id => $arraymsgs) { + foreach ($this->dao->cache_msgs_ticket as $id => $arraymsgs) { if (!$arraymsgs['private'] || ($arraymsgs['private'] == "1" && $show_private) ) { From 9d780a172272eb834b53c1c326595300d29327f3 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Wed, 7 Nov 2018 10:11:29 +0100 Subject: [PATCH 326/769] Fix sign --- htdocs/margin/tabs/thirdpartyMargins.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/htdocs/margin/tabs/thirdpartyMargins.php b/htdocs/margin/tabs/thirdpartyMargins.php index 5d80814099d..2f5ba9cc7b2 100644 --- a/htdocs/margin/tabs/thirdpartyMargins.php +++ b/htdocs/margin/tabs/thirdpartyMargins.php @@ -207,7 +207,10 @@ if ($socid > 0) $marginRate = ($objp->buying_price != 0)?(100 * $objp->marge / $objp->buying_price):'' ; $markRate = ($objp->selling_price != 0)?(100 * $objp->marge / $objp->selling_price):'' ; - + $sign = ''; + if($objp->type == Facture::TYPE_CREDIT_NOTE){ + $sign = '-'; + } print ''; print '"; print "\n"; print "\n"; - print "\n"; + print "\n"; if (! empty($conf->global->DISPLAY_MARGIN_RATES)) - print "\n"; + print "\n"; if (! empty($conf->global->DISPLAY_MARK_RATES)) - print "\n"; + print "\n"; print ''; print "\n"; $i++; From c5231112c55d9898c2c41b42c814b21b4beb6a42 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 12:22:12 +0100 Subject: [PATCH 327/769] Fix regression with old canvas --- htdocs/societe/card.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 5935a1d01a1..2fc046b5fb8 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -417,8 +417,8 @@ if (empty($reshook)) $object->idprof5 = trim(GETPOST('idprof5', 'alpha')); $object->idprof6 = trim(GETPOST('idprof6', 'alpha')); $object->prefix_comm = GETPOST('prefix_comm', 'alpha'); - $object->code_client = GETPOST('customer_code', 'alpha'); - $object->code_fournisseur = GETPOST('supplier_code', 'alpha'); + $object->code_client = GETPOSTISSET('customer_code')?GETPOST('customer_code', 'alpha'):GETPOST('code_client', 'alpha'); + $object->code_fournisseur = GETPOSTISSET('supplier_code')?GETPOST('supplier_code', 'alpha'):GETPOST('code_fournisseur', 'alpha'); $object->capital = GETPOST('capital', 'alpha'); $object->barcode = GETPOST('barcode', 'alpha'); From 9a0b5fb59907c0c2a33d26e37d194742702d68bb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 12:25:22 +0100 Subject: [PATCH 328/769] Fix extrafields --- htdocs/core/class/extrafields.class.php | 33 ++++++++++++------- htdocs/core/lib/functions.lib.php | 7 ++-- .../tpl/extrafields_list_search_sql.tpl.php | 15 ++++++--- .../modulebuilder/template/myobject_list.php | 4 +-- 4 files changed, 37 insertions(+), 22 deletions(-) diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php index 9ebdbd22836..5cb88c0e2ad 100644 --- a/htdocs/core/class/extrafields.class.php +++ b/htdocs/core/class/extrafields.class.php @@ -1941,24 +1941,36 @@ class ExtraFields /** * return array_options array of data of extrafields value of object sent by a search form * - * @param array $extralabels $array of extrafields (@deprecated) - * @param string $keyprefix Prefix string to add into name and id of field (can be used to avoid duplicate names) - * @param string $keysuffix Suffix string to add into name and id of field (can be used to avoid duplicate names) - * @return array|int array_options set or 0 if no value + * @param array|string $extrafieldsobjectkey array of extrafields (old usage) or value of object->table_element (new usage) + * @param string $keyprefix Prefix string to add into name and id of field (can be used to avoid duplicate names) + * @param string $keysuffix Suffix string to add into name and id of field (can be used to avoid duplicate names) + * @return array|int array_options set or 0 if no value */ - function getOptionalsFromPost($extralabels,$keyprefix='',$keysuffix='') + function getOptionalsFromPost($extrafieldsobjectkey, $keyprefix='', $keysuffix='') { global $_POST; - if (is_array($this->attributes[$object->table_element]['label'])) $extralabels=$this->attributes[$object->table_element]['label']; + if (is_string($extrafieldsobjectkey) && is_array($this->attributes[$extrafieldsobjectkey]['label'])) + { + $extralabels = $this->attributes[$extrafieldsobjectkey]['label']; + } + else + { + $extralabels = $extrafieldsobjectkey; + } - $array_options = array(); if (is_array($extralabels)) { + $array_options = array(); + // Get extra fields foreach ($extralabels as $key => $value) { - $key_type = $this->attributes[$object->table_element]['type'][$key]; + $key_type = ''; + if (is_string($extrafieldsobjectkey)) + { + $key_type = $this->attributes[$extrafieldsobjectkey]['type'][$key]; + } if (in_array($key_type,array('date','datetime'))) { @@ -1987,8 +1999,7 @@ class ExtraFields return $array_options; } - else { - return 0; - } + + return 0; } } diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 75cc6735fe4..ff5a9fa4776 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -7288,7 +7288,8 @@ function dol_getmypid() * If param $mode is 1, can contains an operator <, > or = like "<10" or ">=100.5 < 1000" * If param $mode is 2, can contains a list of int id separated by comma like "1,3,4" * If param $mode is 3, can contains a list of string separated by comma like "a,b,c" - * @param integer $mode 0=value is list of keyword strings, 1=value is a numeric test (Example ">5.5 <10"), 2=value is a list of id separated with comma (Example '1,3,4') + * @param integer $mode 0=value is list of keyword strings, 1=value is a numeric test (Example ">5.5 <10"), 2=value is a list of ID separated with comma (Example '1,3,4') + * 3=value is list of string separated with comma (Example 'text 1,text 2'), 4=value is a list of ID separated with comma (Example '1,3,4') for search into a multiselect string ('1,2') * @param integer $nofirstand 1=Do not output the first 'AND' * @return string $res The statement to append to the SQL query */ @@ -7372,11 +7373,9 @@ function natural_search($fields, $value, $mode=0, $nofirstand=0) else if ($mode == 4) { $tmparray=explode(',',trim($crit)); - if (count($tmparray)) { $listofcodes=''; - foreach($tmparray as $val) { if ($val) @@ -7385,7 +7384,7 @@ function natural_search($fields, $value, $mode=0, $nofirstand=0) $newres .= ' OR '. $field . ' = \'' . $db->escape(trim($val)) . '\''; $newres .= ' OR '. $field . ' LIKE \'%,' . $db->escape(trim($val)) . '\''; $newres .= ' OR '. $field . ' LIKE \'%,' . $db->escape(trim($val)) . ',%\''; - $newres .= ')'; + $newres .= ')'; $i2++; } } diff --git a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php index a8e43d6429f..d5b52085059 100644 --- a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php +++ b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php @@ -18,12 +18,17 @@ if (! empty($extrafieldsobjectkey)) // $extrafieldsobject is the $object->table_ $tmpkey=preg_replace('/search_options_/','',$key); $typ=$extrafields->attributes[$extrafieldsobjectkey]['type'][$tmpkey]; - $mode_search=0; - if (in_array($typ, array('int','double','real'))) $mode_search=1; // Search on a numeric - if (in_array($typ, array('sellist','link')) && $crit != '0' && $crit != '-1') $mode_search=2; // Search on a foreign key int - if (in_array($typ, array('chkbxlst','checkbox'))) $mode_search=4; // Search on a multiselect field with sql type = text - if ($crit != '' && (! in_array($typ, array('select','sellist')) || $crit != '0') && (! in_array($typ, array('link')) || $crit != '-1')) + if ($crit != '' && in_array($typ, array('date', 'datetime', 'timestamp'))) { + $sql .= " AND ef.".$tmpkey." = '".$db->idate($crit)."'"; + } + elseif ($crit != '' && (! in_array($typ, array('select','sellist')) || $crit != '0') && (! in_array($typ, array('link')) || $crit != '-1')) + { + $mode_search=0; + if (in_array($typ, array('int','double','real'))) $mode_search=1; // Search on a numeric + if (in_array($typ, array('sellist','link')) && $crit != '0' && $crit != '-1') $mode_search=2; // Search on a foreign key int + if (in_array($typ, array('chkbxlst','checkbox'))) $mode_search=4; // Search on a multiselect field with sql type = text + $sql .= natural_search('ef.'.$tmpkey, $crit, $mode_search); } } diff --git a/htdocs/modulebuilder/template/myobject_list.php b/htdocs/modulebuilder/template/myobject_list.php index beb03c183a6..8d0f89104ef 100644 --- a/htdocs/modulebuilder/template/myobject_list.php +++ b/htdocs/modulebuilder/template/myobject_list.php @@ -93,8 +93,8 @@ $extrafields = new ExtraFields($db); $diroutputmassaction=$conf->mymodule->dir_output . '/temp/massgeneration/'.$user->id; $hookmanager->initHooks(array('myobjectlist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels -$extralabels = $extrafields->fetch_name_optionals_label('myobject'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$extralabels = $extrafields->fetch_name_optionals_label('myobject'); // Load $extrafields->attributes['myobject'] +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. From 66ffcf287a9502fa8234234bc79e46cc10298d9f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 12:49:17 +0100 Subject: [PATCH 329/769] Fix filter on extrafields --- htdocs/adherents/list.php | 2 +- htdocs/adherents/subscription/list.php | 4 +++- htdocs/admin/emailcollector_card.php | 2 +- htdocs/admin/emailcollector_list.php | 2 +- htdocs/admin/mails_senderprofile_list.php | 2 +- htdocs/asset/card.php | 2 +- htdocs/asset/list.php | 2 +- htdocs/comm/action/list.php | 10 +++++----- htdocs/comm/mailing/list.php | 5 +++-- htdocs/comm/propal/list.php | 2 +- htdocs/commande/list.php | 2 +- htdocs/compta/bank/bankentries_list.php | 2 +- htdocs/compta/bank/list.php | 2 +- htdocs/compta/facture/fiche-rec.php | 2 +- htdocs/compta/facture/invoicetemplate_list.php | 2 +- htdocs/compta/facture/list.php | 2 +- htdocs/contact/list.php | 2 +- htdocs/contrat/list.php | 2 +- htdocs/contrat/services_list.php | 2 +- htdocs/core/lib/company.lib.php | 2 +- .../core/modules/stock/doc/pdf_stdmovement.modules.php | 2 +- htdocs/cron/list.php | 5 +++-- htdocs/expedition/list.php | 4 +++- htdocs/expensereport/list.php | 2 +- htdocs/fichinter/card-rec.php | 4 ++-- htdocs/fichinter/card.php | 4 ++-- htdocs/fichinter/list.php | 2 +- htdocs/fourn/commande/list.php | 2 +- htdocs/fourn/facture/list.php | 2 +- htdocs/fourn/facture/paiement.php | 10 +++++----- htdocs/holiday/list.php | 2 +- htdocs/modulebuilder/template/myobject_card.php | 2 +- htdocs/product/inventory/card.php | 2 +- htdocs/product/inventory/list.php | 2 +- htdocs/product/list.php | 2 +- htdocs/product/stock/movement_list.php | 2 +- htdocs/product/stock/productlot_list.php | 2 +- htdocs/projet/list.php | 2 +- htdocs/projet/tasks/list.php | 2 +- htdocs/public/ticket/list.php | 2 +- htdocs/resource/list.php | 2 +- htdocs/societe/list.php | 2 +- htdocs/societe/website.php | 2 +- htdocs/supplier_proposal/list.php | 2 +- htdocs/takepos/customers.php | 2 +- htdocs/ticket/card.php | 2 +- htdocs/ticket/class/actions_ticket.class.php | 2 +- htdocs/ticket/list.php | 2 +- htdocs/user/list.php | 2 +- htdocs/website/websiteaccount_card.php | 2 +- 50 files changed, 68 insertions(+), 62 deletions(-) diff --git a/htdocs/adherents/list.php b/htdocs/adherents/list.php index 51e1a8b244e..39d0069ac7c 100644 --- a/htdocs/adherents/list.php +++ b/htdocs/adherents/list.php @@ -86,7 +86,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('adherent'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/adherents/subscription/list.php b/htdocs/adherents/subscription/list.php index 474082b1cfa..4ef43e8f316 100644 --- a/htdocs/adherents/subscription/list.php +++ b/htdocs/adherents/subscription/list.php @@ -53,13 +53,15 @@ $pagenext = $page + 1; if (! $sortorder) { $sortorder="DESC"; } if (! $sortfield) { $sortfield="c.dateadh"; } +$object = new Subscription($db); + // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('subscriptionlist')); $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('subscription'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index d34964d9892..5c6aec59b32 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -55,7 +55,7 @@ $diroutputmassaction = $conf->emailcollector->dir_output . '/temp/massgeneration $hookmanager->initHooks(array('emailcollectorcard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('emailcollector'); -$search_array_options = $extrafields->getOptionalsFromPost($extralabels, '', 'search_'); +$search_array_options = $extrafields->getOptionalsFromPost($object->table_element, '', 'search_'); // Initialize array of search criterias $search_all = trim(GETPOST("search_all", 'alpha')); diff --git a/htdocs/admin/emailcollector_list.php b/htdocs/admin/emailcollector_list.php index 6de67299871..71169ddffb0 100644 --- a/htdocs/admin/emailcollector_list.php +++ b/htdocs/admin/emailcollector_list.php @@ -67,7 +67,7 @@ $diroutputmassaction = $conf->emailcollector->dir_output . '/temp/massgeneration $hookmanager->initHooks(array('emailcollectorlist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('emailcollector'); -$search_array_options = $extrafields->getOptionalsFromPost($extralabels, '', 'search_'); +$search_array_options = $extrafields->getOptionalsFromPost($object->table_element, '', 'search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. diff --git a/htdocs/admin/mails_senderprofile_list.php b/htdocs/admin/mails_senderprofile_list.php index 4914152f680..280025b3b35 100644 --- a/htdocs/admin/mails_senderprofile_list.php +++ b/htdocs/admin/mails_senderprofile_list.php @@ -61,7 +61,7 @@ $diroutputmassaction=$conf->admin->dir_output . '/temp/massgeneration/'.$user->i $hookmanager->initHooks(array('emailsenderprofilelist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('emailsenderprofile'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. diff --git a/htdocs/asset/card.php b/htdocs/asset/card.php index 4f7061aed20..40b2a9365db 100644 --- a/htdocs/asset/card.php +++ b/htdocs/asset/card.php @@ -45,7 +45,7 @@ $diroutputmassaction=$conf->asset->dir_output . '/temp/massgeneration/'.$user->i $hookmanager->initHooks(array('assetcard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('asset'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Initialize array of search criterias $search_all=trim(GETPOST("search_all",'alpha')); diff --git a/htdocs/asset/list.php b/htdocs/asset/list.php index fa965aade5b..431276b67a8 100644 --- a/htdocs/asset/list.php +++ b/htdocs/asset/list.php @@ -62,7 +62,7 @@ $diroutputmassaction=$conf->asset->dir_output . '/temp/massgeneration/'.$user->i $hookmanager->initHooks(array('assetlist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('asset'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php index 02d3a16c7f3..b34ba87d7a3 100644 --- a/htdocs/comm/action/list.php +++ b/htdocs/comm/action/list.php @@ -74,10 +74,14 @@ $filtert = GETPOST("filtert","int",3); $usergroup = GETPOST("usergroup","int",3); $showbirthday = empty($conf->use_javascript_ajax)?GETPOST("showbirthday","int"):1; +// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context +$object = new ActionComm($db); +$hookmanager->initHooks(array('agendalist')); + $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('actioncomm'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // If not choice done on calendar owner, we filter on user. if (empty($filtert) && empty($conf->global->AGENDA_ALL_CALENDARS)) { @@ -117,10 +121,6 @@ if (! $user->rights->agenda->allactions->read || $filter=='mine') // If no permi $filtert=$user->id; } -// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context -$object = new ActionComm($db); -$hookmanager->initHooks(array('agendalist')); - $arrayfields=array( 'a.id'=>array('label'=>"Ref", 'checked'=>1), 'owner'=>array('label'=>"Owner", 'checked'=>1), diff --git a/htdocs/comm/mailing/list.php b/htdocs/comm/mailing/list.php index 133a354723f..eb81649a03e 100644 --- a/htdocs/comm/mailing/list.php +++ b/htdocs/comm/mailing/list.php @@ -46,20 +46,21 @@ $search_all=trim((GETPOST('search_all', 'alphanohtml')!='')?GETPOST('search_all' $search_ref=GETPOST("search_ref", "alpha") ? GETPOST("search_ref", "alpha") : GETPOST("sref", "alpha"); $filteremail=GETPOST('filteremail','alpha'); +$object = new Mailing($db); + // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('mailinglist')); $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('mailing'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( 'm.titre'=>'Ref', ); -$object = new Mailing($db); diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index b0cc04702db..eea0acfbe6b 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -129,7 +129,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('propal'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 2a9e215faa4..c75a754d1ad 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -108,7 +108,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('commande'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/compta/bank/bankentries_list.php b/htdocs/compta/bank/bankentries_list.php index 31eaa9e8f6d..bcb7f348bdf 100644 --- a/htdocs/compta/bank/bankentries_list.php +++ b/htdocs/compta/bank/bankentries_list.php @@ -129,7 +129,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('banktransaction'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost('banktransaction','','search_'); $arrayfields=array( 'b.rowid'=>array('label'=>$langs->trans("Ref"), 'checked'=>1), diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index 79c26adfa47..3ec4d88db2f 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -74,7 +74,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('bank_account'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/compta/facture/fiche-rec.php b/htdocs/compta/facture/fiche-rec.php index d9ce0137f04..2a9028b5125 100644 --- a/htdocs/compta/facture/fiche-rec.php +++ b/htdocs/compta/facture/fiche-rec.php @@ -94,7 +94,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('facture_rec'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); $permissionnote = $user->rights->facture->creer; // Used by the include of actions_setnotes.inc.php $permissiondellink=$user->rights->facture->creer; // Used by the include of actions_dellink.inc.php diff --git a/htdocs/compta/facture/invoicetemplate_list.php b/htdocs/compta/facture/invoicetemplate_list.php index c61836e1b1b..e077abedbbc 100644 --- a/htdocs/compta/facture/invoicetemplate_list.php +++ b/htdocs/compta/facture/invoicetemplate_list.php @@ -108,7 +108,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('facture_rec'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); $permissionnote = $user->rights->facture->creer; // Used by the include of actions_setnotes.inc.php $permissiondellink=$user->rights->facture->creer; // Used by the include of actions_dellink.inc.php diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 553c6c9028a..fb6f769db94 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -134,7 +134,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('facture'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 52a2c4bbe7f..ed237c215bf 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -133,7 +133,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('contact'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/contrat/list.php b/htdocs/contrat/list.php index 96f20fdaf67..3631effa7b8 100644 --- a/htdocs/contrat/list.php +++ b/htdocs/contrat/list.php @@ -100,7 +100,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('contrat'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( 'c.ref'=>'Ref', diff --git a/htdocs/contrat/services_list.php b/htdocs/contrat/services_list.php index 72b45f49db5..da484b31747 100644 --- a/htdocs/contrat/services_list.php +++ b/htdocs/contrat/services_list.php @@ -84,7 +84,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('contratdet'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Security check $contratid = GETPOST('id','int'); diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index fe9d15c8322..bcf8bfe14a8 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -908,7 +908,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') { if (GETPOST('search_'.$key,'alpha')) $search[$key]=GETPOST('search_'.$key,'alpha'); } - $search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); + $search_array_options=$extrafields->getOptionalsFromPost($contactstatic->table_element,'','search_'); // Purge search criteria if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') ||GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers diff --git a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php index 3c0d62be848..222538a8554 100644 --- a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php @@ -247,7 +247,7 @@ class pdf_stdmovement extends ModelePDFMovement // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('movement'); - $search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); + $search_array_options=$extrafields->getOptionalsFromPost('movement','','search_'); $productlot=new ProductLot($db); $productstatic=new Product($db); diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php index 1f810132223..f594eb2b383 100644 --- a/htdocs/cron/list.php +++ b/htdocs/cron/list.php @@ -62,15 +62,16 @@ $securitykey = GETPOST('securitykey','alpha'); $diroutputmassaction=$conf->cronjob->dir_output . '/temp/massgeneration/'.$user->id; +$object = new Cronjob($db); + // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('cronjoblist')); $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('cronjob'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); -$object = new Cronjob($db); /* diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php index c3632ca57fd..1d29d4d6bff 100644 --- a/htdocs/expedition/list.php +++ b/htdocs/expedition/list.php @@ -69,13 +69,15 @@ $pagenext = $page + 1; $viewstatut=GETPOST('viewstatut'); +$object = new Expedition($db); + // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('shipmentlist')); $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('expedition'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/expensereport/list.php b/htdocs/expensereport/list.php index d328cd21de2..1fae1950f60 100644 --- a/htdocs/expensereport/list.php +++ b/htdocs/expensereport/list.php @@ -90,7 +90,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('expensereport'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php index 4b8aa9bb43d..e492ef0c794 100644 --- a/htdocs/fichinter/card-rec.php +++ b/htdocs/fichinter/card-rec.php @@ -152,7 +152,7 @@ if ($action == 'add') { } } } elseif ($action == 'createfrommodel') { - $newinter = new fichinter($db); + $newinter = new Fichinter($db); // on récupère les enregistrements $object->fetch($id); @@ -176,7 +176,7 @@ if ($action == 'add') { // on créer un nouvelle intervention $extrafields = new ExtraFields($db); $extralabels = $extrafields->fetch_name_optionals_label($newinter->table_element); - $array_options = $extrafields->getOptionalsFromPost($extralabels); + $array_options = $extrafields->getOptionalsFromPost($newinter->table_element); $newinter->array_options = $array_options; $newfichinterid = $newinter->create($user); diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 5896a5c5723..fe15141c86c 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -258,7 +258,7 @@ if (empty($reshook)) // Extrafields $extrafields = new ExtraFields($db); $extralabels = $extrafields->fetch_name_optionals_label($object->table_element); - $array_options = $extrafields->getOptionalsFromPost($extralabels); + $array_options = $extrafields->getOptionalsFromPost($object->table_element); $object->array_options = $array_options; @@ -406,7 +406,7 @@ if (empty($reshook)) { // Extrafields $extralabels = $extrafields->fetch_name_optionals_label($object->table_element); - $array_options = $extrafields->getOptionalsFromPost($extralabels); + $array_options = $extrafields->getOptionalsFromPost($object->table_element); $object->array_options = $array_options; diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php index 96a1199255c..1f3686a02ab 100644 --- a/htdocs/fichinter/list.php +++ b/htdocs/fichinter/list.php @@ -87,7 +87,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('fichinter'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index 7158d7b2c0e..401acab032b 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -113,7 +113,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('commande_fournisseur'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index e1bd120b0b4..b72d89f4b07 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -130,7 +130,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('facture_fourn'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 7946f98cb66..27dc347d9d0 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -89,7 +89,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('paymentsupplier'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost('paymentsupplier','','search_'); $arrayfields=array(); @@ -570,25 +570,25 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { print ''; } - + // Date Max Payment if ($objp->dlr > 0 ) { print ''; } else { print ''; } - + // Multicurrency if (!empty($conf->multicurrency->enabled)) { diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php index f155f513a18..aecdce1ae06 100644 --- a/htdocs/holiday/list.php +++ b/htdocs/holiday/list.php @@ -78,7 +78,7 @@ $diroutputmassaction=$conf->holiday->dir_output . '/temp/massgeneration/'.$user- $hookmanager->initHooks(array('holidaylist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('holiday'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="cp.rowid"; diff --git a/htdocs/modulebuilder/template/myobject_card.php b/htdocs/modulebuilder/template/myobject_card.php index 63d1664e1ff..f9b3db7a99e 100644 --- a/htdocs/modulebuilder/template/myobject_card.php +++ b/htdocs/modulebuilder/template/myobject_card.php @@ -81,7 +81,7 @@ $diroutputmassaction=$conf->mymodule->dir_output . '/temp/massgeneration/'.$user $hookmanager->initHooks(array('myobjectcard','globalcard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label($object->table_element); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Initialize array of search criterias $search_all=trim(GETPOST("search_all",'alpha')); diff --git a/htdocs/product/inventory/card.php b/htdocs/product/inventory/card.php index 2784e3c303b..24848ad26c5 100644 --- a/htdocs/product/inventory/card.php +++ b/htdocs/product/inventory/card.php @@ -53,7 +53,7 @@ $diroutputmassaction=$conf->stock->dir_output . '/temp/massgeneration/'.$user->i $hookmanager->initHooks(array('inventorycard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('inventory'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost('inventory','','search_'); // Initialize array of search criterias $search_all=trim(GETPOST("search_all",'alpha')); diff --git a/htdocs/product/inventory/list.php b/htdocs/product/inventory/list.php index a5592c87f5d..95bb82aea50 100644 --- a/htdocs/product/inventory/list.php +++ b/htdocs/product/inventory/list.php @@ -59,7 +59,7 @@ $diroutputmassaction=$conf->inventory->dir_output . '/temp/massgeneration/'.$use $hookmanager->initHooks(array('inventorylist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('inventory'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 562d09056c7..d05b01d6ae9 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -99,7 +99,7 @@ $form=new Form($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('product'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); if (empty($action)) $action='list'; diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index 27c50d075aa..da7a834396a 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -90,7 +90,7 @@ $formfile = new FormFile($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('movement'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); $arrayfields=array( 'm.rowid'=>array('label'=>$langs->trans("Ref"), 'checked'=>1), diff --git a/htdocs/product/stock/productlot_list.php b/htdocs/product/stock/productlot_list.php index 4d9916bfa9c..6de8be264a9 100644 --- a/htdocs/product/stock/productlot_list.php +++ b/htdocs/product/stock/productlot_list.php @@ -79,7 +79,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('product_lot'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 5a13b16560d..87d82ffe03d 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -105,7 +105,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('projet'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/projet/tasks/list.php b/htdocs/projet/tasks/list.php index 2366ccc738b..2ace542c219 100644 --- a/htdocs/projet/tasks/list.php +++ b/htdocs/projet/tasks/list.php @@ -79,7 +79,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('projet_task'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Security check $socid=0; diff --git a/htdocs/public/ticket/list.php b/htdocs/public/ticket/list.php index 0d67e983143..f11583ac64d 100644 --- a/htdocs/public/ticket/list.php +++ b/htdocs/public/ticket/list.php @@ -182,7 +182,7 @@ if ($action == "view_ticketlist") // fetch optionals attributes and labels $extrafields = new ExtraFields($db); $extralabels = $extrafields->fetch_name_optionals_label('ticket'); - $search_array_options = $extrafields->getOptionalsFromPost($extralabels, '', 'search_'); + $search_array_options = $extrafields->getOptionalsFromPost('ticket', '', 'search_'); $filter = array(); $param = ''; diff --git a/htdocs/resource/list.php b/htdocs/resource/list.php index 4492d74be65..55dddcc0a48 100644 --- a/htdocs/resource/list.php +++ b/htdocs/resource/list.php @@ -50,7 +50,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels=$extrafields->fetch_name_optionals_label($object->table_element); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); $search_ref=GETPOST("search_ref"); $search_type=GETPOST("search_type"); diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 684f6f8c471..f5513cb6aa3 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -121,7 +121,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('societe'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/societe/website.php b/htdocs/societe/website.php index 760bfef4d27..086a3db6d41 100644 --- a/htdocs/societe/website.php +++ b/htdocs/societe/website.php @@ -63,7 +63,7 @@ $diroutputmassaction=$conf->website->dir_output . '/temp/massgeneration/'.$user- $hookmanager->initHooks(array('websitethirdpartylist')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('thirdpartyaccount'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost('thirdpartyaccount','','search_'); unset($objectwebsiteaccount->fields['fk_soc']); // Remove this field, we are already on the thirdparty diff --git a/htdocs/supplier_proposal/list.php b/htdocs/supplier_proposal/list.php index 2fcb296b433..8a7266a4003 100644 --- a/htdocs/supplier_proposal/list.php +++ b/htdocs/supplier_proposal/list.php @@ -117,7 +117,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('supplier_proposal'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // List of fields to search into when doing a "search in all" diff --git a/htdocs/takepos/customers.php b/htdocs/takepos/customers.php index f5bcb8557cf..fc7fbc54d2f 100644 --- a/htdocs/takepos/customers.php +++ b/htdocs/takepos/customers.php @@ -144,7 +144,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('societe'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost('societe','','search_'); // List of fields to search into when doing a "search in all" $fieldstosearchall = array( diff --git a/htdocs/ticket/card.php b/htdocs/ticket/card.php index ef78b5eff45..ab16161e844 100644 --- a/htdocs/ticket/card.php +++ b/htdocs/ticket/card.php @@ -58,7 +58,7 @@ $object = new Ticket($db); $extrafields = new ExtraFields($db); // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label($object->table_element); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Initialize array of search criterias $search_all=trim(GETPOST("search_all",'alpha')); diff --git a/htdocs/ticket/class/actions_ticket.class.php b/htdocs/ticket/class/actions_ticket.class.php index 7e8ae39564a..6ee61de76b9 100644 --- a/htdocs/ticket/class/actions_ticket.class.php +++ b/htdocs/ticket/class/actions_ticket.class.php @@ -258,7 +258,7 @@ class ActionsTicket // Extrafields $extrafields = new ExtraFields($this->db); $extralabels = $extrafields->fetch_name_optionals_label($fichinter->table_element); - $array_options = $extrafields->getOptionalsFromPost($extralabels); + $array_options = $extrafields->getOptionalsFromPost($fichinter->table_element); $fichinter->array_options = $array_options; $id = $fichinter->create($user); diff --git a/htdocs/ticket/list.php b/htdocs/ticket/list.php index 1b43d0054b7..545a5fcf1ed 100644 --- a/htdocs/ticket/list.php +++ b/htdocs/ticket/list.php @@ -77,7 +77,7 @@ else $hookmanager->initHooks(array('ticketlist')); // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('ticket'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Default sort order (if not yet defined by previous GETPOST) if (! $sortfield) $sortfield="t.".key($object->fields); // Set here default search field. By default 1st field in definition. diff --git a/htdocs/user/list.php b/htdocs/user/list.php index 64c63c05426..7d856c52891 100644 --- a/htdocs/user/list.php +++ b/htdocs/user/list.php @@ -68,7 +68,7 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('user'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); $userstatic=new User($db); $companystatic = new Societe($db); diff --git a/htdocs/website/websiteaccount_card.php b/htdocs/website/websiteaccount_card.php index 49965b9009a..24f87678505 100644 --- a/htdocs/website/websiteaccount_card.php +++ b/htdocs/website/websiteaccount_card.php @@ -46,7 +46,7 @@ $diroutputmassaction=$conf->website->dir_output . '/temp/massgeneration/'.$user- $hookmanager->initHooks(array('websiteaccountcard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('societeaccount'); -$search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +$search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); // Initialize array of search criterias $search_all=trim(GETPOST("search_all",'alpha')); From 46db246273141cbdefc24af4e2ca5d0592579bcf Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 13:04:43 +0100 Subject: [PATCH 330/769] Look and feel v9: Autofocus on create forms --- htdocs/adherents/card.php | 2 +- htdocs/adherents/type.php | 2 +- htdocs/comm/mailing/card.php | 2 +- htdocs/loan/card.php | 2 +- htdocs/resource/card.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index fee1848b925..db6fb35206b 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -907,7 +907,7 @@ else // Login if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) { - print ''; + print ''; } // Password diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php index 7e69d4fbc98..6261a379049 100644 --- a/htdocs/adherents/type.php +++ b/htdocs/adherents/type.php @@ -317,7 +317,7 @@ if ($action == 'create') print '
'; @@ -219,11 +222,11 @@ if ($socid > 0) print dol_print_date($db->jdate($objp->datef),'day')."".price($objp->selling_price, null, null, null, null, $rounding)."".price(($objp->type == 2 ? -1 : 1) * $objp->buying_price, null, null, null, null, $rounding)."".price($objp->marge, null, null, null, null, $rounding)."".$sign.price($objp->marge, null, null, null, null, $rounding)."".(($marginRate === '')?'n/a':price($marginRate, null, null, null, null, $rounding)."%")."".(($marginRate === '')?'n/a':$sign.price($marginRate, null, null, null, null, $rounding)."%")."".(($markRate === '')?'n/a':price($markRate, null, null, null, null, $rounding)."%")."".(($markRate === '')?'n/a':price($markRate, null, null, null, null, $rounding)."%")."'.$invoicestatic->LibStatut($objp->paye,$objp->statut,5).'
!!!'; print dol_print_date($db->jdate($objp->dlr), 'day'); - + if ($invoice->hasDelay()) { print img_warning($langs->trans('Late')); } - + print '--
'.$langs->trans("Login").' / '.$langs->trans("Id").'login).'">
'.$langs->trans("Login").' / '.$langs->trans("Id").'login).'" autofocus="autofocus">
'; print ''; - print ''; + print ''; print ''; - print ''; + print ''; print ''; - print ''; + print ''; print ''; } @@ -389,7 +444,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; @@ -402,9 +457,14 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea $ruleactionobj->fetch($ruleaction['id']); print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; print ''; } diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 5131db78759..e4c0d4f588f 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -523,28 +523,28 @@ class EmailCollector extends CommonObject } elseif ($mode == 2) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 3) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 5) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 6) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } } @@ -619,7 +619,7 @@ class EmailCollector extends CommonObject */ public function fetchFilters() { - $this->rules = array(); + $this->filters = array(); $sql='SELECT rowid, type, rulevalue, status FROM '.MAIN_DB_PREFIX.'emailcollector_emailcollectorfilter WHERE fk_emailcollector = '.$this->id; @@ -636,6 +636,7 @@ class EmailCollector extends CommonObject } $this->db->free($resql); } + else dol_print_error($this->db); return 1; } @@ -659,11 +660,12 @@ class EmailCollector extends CommonObject while($i < $num) { $obj=$this->db->fetch_object($resql); - $this->rules[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'actionparam'=>$obj->actionparam, 'status'=>$obj->status); + $this->actions[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'actionparam'=>$obj->actionparam, 'status'=>$obj->status); $i++; } $this->db->free($resql); } + else dol_print_error($this->db); } diff --git a/htdocs/emailcollector/class/emailcollectoraction.class.php b/htdocs/emailcollector/class/emailcollectoraction.class.php index 5e0e85abdaf..42eecd097bd 100644 --- a/htdocs/emailcollector/class/emailcollectoraction.class.php +++ b/htdocs/emailcollector/class/emailcollectoraction.class.php @@ -50,7 +50,7 @@ class EmailCollectorAction extends CommonObject /** * @var int Does emailcollectoraction support extrafields ? 0=No, 1=Yes */ - public $isextrafieldmanaged = 1; + public $isextrafieldmanaged = 0; /** * @var string String with name of icon for emailcollectoraction. Must be the part after the 'object_' into object_emailcollectoraction.png @@ -181,6 +181,14 @@ class EmailCollectorAction extends CommonObject */ public function create(User $user, $notrigger = false) { + global $langs; + if (empty($this->type)) + { + $langs->load("errors"); + $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")); + return -1; + } + return $this->createCommon($user, $notrigger); } @@ -414,28 +422,28 @@ class EmailCollectorAction extends CommonObject } elseif ($mode == 2) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 3) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 5) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 6) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } } diff --git a/htdocs/emailcollector/class/emailcollectorfilter.class.php b/htdocs/emailcollector/class/emailcollectorfilter.class.php index deb5bb88824..23c8f7a02b2 100644 --- a/htdocs/emailcollector/class/emailcollectorfilter.class.php +++ b/htdocs/emailcollector/class/emailcollectorfilter.class.php @@ -50,7 +50,7 @@ class EmailCollectorFilter extends CommonObject /** * @var int Does emailcollectorfilter support extrafields ? 0=No, 1=Yes */ - public $isextrafieldmanaged = 1; + public $isextrafieldmanaged = 0; /** * @var string String with name of icon for emailcollectorfilter. Must be the part after the 'object_' into object_emailcollectorfilter.png @@ -152,6 +152,20 @@ class EmailCollectorFilter extends CommonObject */ public function create(User $user, $notrigger = false) { + global $langs; + if (empty($this->type)) + { + $langs->load("errors"); + $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")); + return -1; + } + if (empty($this->rulevalue)) + { + $langs->load("errors"); + $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("RuleValue")); + return -1; + } + return $this->createCommon($user, $notrigger); } @@ -385,28 +399,28 @@ class EmailCollectorFilter extends CommonObject } elseif ($mode == 2) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 3) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 5) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 6) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } } diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index d1e2d87b444..05106e475cd 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -206,6 +206,9 @@ ALTER TABLE llx_emailcollector_emailcollectoraction ADD INDEX idx_emailcollector ALTER TABLE llx_emailcollector_emailcollectoraction ADD CONSTRAINT fk_emailcollectoraction_fk_emailcollector FOREIGN KEY (fk_emailcollector) REFERENCES llx_emailcollector_emailcollector(rowid); +ALTER TABLE llx_emailcollector_emailcollectorfilter ADD UNIQUE INDEX uk_emailcollector_emailcollectorfilter (fk_emailcollector, type, rulevalue); +ALTER TABLE llx_emailcollector_emailcollectoraction ADD UNIQUE INDEX uk_emailcollector_emailcollectoraction (fk_emailcollector, type); + diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollectoraction.key.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollectoraction.key.sql index 0ef98e90b41..ef8a91b5d31 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollectoraction.key.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollectoraction.key.sql @@ -19,3 +19,4 @@ ALTER TABLE llx_emailcollector_emailcollectoraction ADD INDEX idx_emailcollector ALTER TABLE llx_emailcollector_emailcollectoraction ADD CONSTRAINT fk_emailcollectoraction_fk_emailcollector FOREIGN KEY (fk_emailcollector) REFERENCES llx_emailcollector_emailcollector(rowid); -- END MODULEBUILDER INDEXES +ALTER TABLE llx_emailcollector_emailcollectoraction ADD UNIQUE INDEX uk_emailcollector_emailcollectoraction (fk_emailcollector, type); diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollectorfilter.key.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollectorfilter.key.sql index fb65963b63a..e0eb095fad1 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollectorfilter.key.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollectorfilter.key.sql @@ -19,3 +19,5 @@ ALTER TABLE llx_emailcollector_emailcollectorfilter ADD INDEX idx_emailcollector ALTER TABLE llx_emailcollector_emailcollectorfilter ADD CONSTRAINT fk_emailcollectorfilter_fk_emailcollector FOREIGN KEY (fk_emailcollector) REFERENCES llx_emailcollector_emailcollector(rowid); -- END MODULEBUILDER INDEXES +ALTER TABLE llx_emailcollector_emailcollectorfilter ADD UNIQUE INDEX uk_emailcollector_emailcollectorfilter (fk_emailcollector, type, rulevalue); + diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index e074210bd1a..d9be14b3cb7 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1830,6 +1830,8 @@ EmailCollectorConfirmCollect=Do you want to run the collect for this collector n NoNewEmailToProcess=No new email to process NothingProcessed=Nothing done XEmailsDoneYActionsDone=%s emails analyzed, %s record/actions done by collector +RecordEvent=Record event +CreateLeadAndThirdParty=Create lead (and thirdparty if necessary) ##### Resource #### ResourceSetup=Configuration du module Resource UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index 58dfe5924cf..e318bfe3a00 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -453,28 +453,28 @@ class MyObject extends CommonObject } elseif ($mode == 2) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 3) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($this->labelstatus[$status],'statut4').' '.$this->labelstatus[$status]; - elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5').' '.$this->labelstatus[$status]; + if ($status == 1) return img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; + elseif ($status == 0) return img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelstatus[$status]; } elseif ($mode == 5) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } elseif ($mode == 6) { - if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4'); - elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5'); + if ($status == 1) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut4', '', false, 0, 0, '', 'valignmiddle'); + elseif ($status == 0) return $this->labelstatus[$status].' '.img_picto($this->labelstatus[$status],'statut5', '', false, 0, 0, '', 'valignmiddle'); } } From 9dbb222a0ae66851dd2c0213b446d86e7dce3b70 Mon Sep 17 00:00:00 2001 From: AXeL-dev Date: Wed, 7 Nov 2018 18:27:41 +0100 Subject: [PATCH 340/769] remove useless line of code --- htdocs/main.inc.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 7fbb0cbb07b..7d02b39e25a 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -1382,7 +1382,6 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0, $arrayofjs } else { - if (! preg_match('/^\//',$jsfile)) $jsfile='/'.$jsfile; // For backward compatibility print ''."\n"; } } From df224e4b54e0117b011f000b348e4b7d46b3f093 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Nov 2018 21:51:05 +0100 Subject: [PATCH 341/769] can click on image to preview in doc list --- htdocs/core/class/html.formfile.class.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 81a288e7dce..fba539ffe7e 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1219,9 +1219,13 @@ class FormFile if (! dol_is_file($file['path'].'/'.$minifile)) $minifile=getImageFileNameForSize($file['name'], '_mini', '.png'); // For backward compatibility of old thumbs that were created with filename in lower case and with .png extension //print $file['path'].'/'.$minifile.'
'; - $urlforhref=getAdvancedPreviewUrl($modulepart, $relativepath.$fileinfo['filename'].'.'.strtolower($fileinfo['extension']), 0, '&entity='.(!empty($object->entity)?$object->entity:$conf->entity)); - if (empty($urlforhref)) $urlforhref=DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.(!empty($object->entity)?$object->entity:$conf->entity).'&file='.urlencode($relativepath.$fileinfo['filename'].'.'.strtolower($fileinfo['extension'])); - print ''; + $urlforhref=getAdvancedPreviewUrl($modulepart, $relativepath.$fileinfo['filename'].'.'.strtolower($fileinfo['extension']), 1, '&entity='.(!empty($object->entity)?$object->entity:$conf->entity)); + if (empty($urlforhref)) { + $urlforhref=DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.(!empty($object->entity)?$object->entity:$conf->entity).'&file='.urlencode($relativepath.$fileinfo['filename'].'.'.strtolower($fileinfo['extension'])); + print ''; + } else { + print ''; + } print ''; print ''; } From 3ba3a47f2037b9b067bffd87fe8e78f8193d4b61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Nov 2018 22:04:55 +0100 Subject: [PATCH 342/769] close window --- htdocs/core/js/lib_head.js.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/js/lib_head.js.php b/htdocs/core/js/lib_head.js.php index 1aa9c458e39..cf8d641893a 100644 --- a/htdocs/core/js/lib_head.js.php +++ b/htdocs/core/js/lib_head.js.php @@ -918,7 +918,7 @@ function document_preview(file, type, title) { optionsbuttons = { "transnoentitiesnoconv("OriginalSize")); ?>": function() { console.log("Click on original size"); jQuery(".ui-dialog-content.ui-widget-content > object").css({ "max-height": "none" }); }, - "transnoentitiesnoconv("Close")); ?>": function() { $( this ).dialog( "close" ); } + "transnoentitiesnoconv("CloseWindow")); ?>": function() { $( this ).dialog( "close" ); } }; } From 976516a79627f6815f389e0ec2f7e52072739985 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 09:51:46 +0100 Subject: [PATCH 343/769] Fix look and feel v8 --- htdocs/compta/index.php | 2 +- htdocs/compta/sociales/card.php | 2 +- htdocs/compta/sociales/document.php | 2 +- htdocs/compta/sociales/info.php | 2 +- .../compta/sociales/{index.php => list.php} | 29 +++++++++++-------- htdocs/core/menus/init_menu_auguria.sql | 2 +- htdocs/core/menus/standard/eldy.lib.php | 4 +-- 7 files changed, 24 insertions(+), 19 deletions(-) rename htdocs/compta/sociales/{index.php => list.php} (92%) diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php index 692849d2fa6..3d6cf735999 100644 --- a/htdocs/compta/index.php +++ b/htdocs/compta/index.php @@ -636,7 +636,7 @@ if (! empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print '
'.$langs->trans("Label").'
'.$langs->trans("Label").'
'.$langs->trans("SubscriptionRequired").''; print $form->selectyesno("subscription",1,1); diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php index 28e49e9d171..e4f74f5c35f 100644 --- a/htdocs/comm/mailing/card.php +++ b/htdocs/comm/mailing/card.php @@ -747,7 +747,7 @@ if ($action == 'create') dol_fiche_head(); print ''; - print ''; + print ''; print ''; print ''; diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index e2491167ed8..3214ac5a971 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -264,7 +264,7 @@ if ($action == 'create') print '
'.$langs->trans("MailTitle").'
'.$langs->trans("MailTitle").'
'.$langs->trans("MailFrom").'
'.$langs->trans("MailErrorsTo").'
'; // Label - print ''; + print ''; // Bank account if (! empty($conf->banque->enabled)) diff --git a/htdocs/resource/card.php b/htdocs/resource/card.php index 49cad87e990..8fd7f5bcd13 100644 --- a/htdocs/resource/card.php +++ b/htdocs/resource/card.php @@ -250,7 +250,7 @@ if ($action == 'create' || $object->fetch($id) > 0) // Ref print ''; - print ''; + print ''; // Type print ''; From 671b4dc22703ab269534649546a8350d912f652f Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Wed, 7 Nov 2018 14:01:49 +0100 Subject: [PATCH 331/769] fix : missing translation --- htdocs/adherents/index.php | 6 +++--- htdocs/fichinter/card.php | 2 +- htdocs/langs/en_US/interventions.lang | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php index 931e9323904..ffe75df1c81 100644 --- a/htdocs/adherents/index.php +++ b/htdocs/adherents/index.php @@ -55,7 +55,7 @@ $AdherentsResilies=array(); $AdherentType=array(); -// Liste les adherents +// Members list $sql = "SELECT t.rowid, t.libelle as label, t.subscription,"; $sql.= " d.statut, count(d.rowid) as somme"; $sql.= " FROM ".MAIN_DB_PREFIX."adherent_type as t"; @@ -92,7 +92,7 @@ if ($result) $now=dol_now(); -// List members up to date +// Members up to date list // current rule: uptodate = the end date is in future whatever is type // old rule: uptodate = if type does not need payment, that end date is null, if type need payment that end date is in future) $sql = "SELECT count(*) as somme , d.fk_adherent_type"; @@ -140,7 +140,7 @@ if (! empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is usele foreach($listofsearchfields as $key => $value) { if ($i == 0) print ''; - print ''; + print ''; print ''; if ($i == 0) print ''; print ''; diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index fe15141c86c..23ad91d8831 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -1649,7 +1649,7 @@ else if ($id > 0 || ! empty($ref)) // create interventional model if ($object->statut == Fichinter::STATUS_DRAFT && $user->rights->ficheinter->creer && (count($object->lines) > 0)) { print ''; } diff --git a/htdocs/langs/en_US/interventions.lang b/htdocs/langs/en_US/interventions.lang index 604d51c41b9..a130367b14f 100644 --- a/htdocs/langs/en_US/interventions.lang +++ b/htdocs/langs/en_US/interventions.lang @@ -4,6 +4,7 @@ Interventions=Interventions InterventionCard=Intervention card NewIntervention=New intervention AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention ListOfInterventions=List of interventions ActionsOnFicheInter=Actions on intervention LastInterventions=Latest %s interventions From f6394e4210248cb765d80ac58bab719a3dea37b4 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Wed, 7 Nov 2018 15:07:57 +0100 Subject: [PATCH 332/769] fix : error 500 --- htdocs/fichinter/card.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 23ad91d8831..cd172888a28 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -7,6 +7,7 @@ * Copyright (C) 2014-2018 Ferran Marcet * Copyright (C) 2014-2018 Charlene Benke * Copyright (C) 2015-2016 Abbes Bahfir + * Copyright (C) 2018 Philippe Grand * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1646,10 +1647,12 @@ else if ($id > 0 || ! empty($ref)) else print ''; } - // create interventional model + // create intervention model if ($object->statut == Fichinter::STATUS_DRAFT && $user->rights->ficheinter->creer && (count($object->lines) > 0)) { print ''; } From afdefa56bdffdbacff1b5bdbc4f1cb82e91db005 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20J?= Date: Wed, 7 Nov 2018 15:34:07 +0100 Subject: [PATCH 333/769] New Search Contact by Town Adding the missing SQL condition to filter contact list by user requested town --- htdocs/contact/list.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 52a2c4bbe7f..04b12ddb4eb 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -321,6 +321,7 @@ if (strlen($search_twitter)) $sql.= natural_search('p.twitter', $search_t if (strlen($search_facebook)) $sql.= natural_search('p.facebook', $search_facebook); if (strlen($search_email)) $sql.= natural_search('p.email', $search_email); if (strlen($search_zip)) $sql.= natural_search("p.zip",$search_zip); +if (strlen($search_town)) $sql.= natural_search("p.town",$search_town); if ($search_status != '' && $search_status >= 0) $sql.= " AND p.statut = ".$db->escape($search_status); if ($search_import_key) $sql.= natural_search("p.import_key",$search_import_key); if ($type == "o") // filtre sur type From 05a679a10c3a9957ac053aabede07ffa974abc01 Mon Sep 17 00:00:00 2001 From: gauthier Date: Wed, 7 Nov 2018 16:26:25 +0100 Subject: [PATCH 334/769] FIX : OppStatusShort doesn't exists --- htdocs/projet/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 6b3613a7b0a..5f683a251a2 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -533,7 +533,7 @@ if (! empty($arrayfields['p.public']['checked'])) if (! empty($arrayfields['p.fk_opp_status']['checked'])) { print ''; } if (! empty($arrayfields['p.opp_amount']['checked'])) From 70826c31912808e6ddce76783f416b245f41c3f8 Mon Sep 17 00:00:00 2001 From: gauthier Date: Wed, 7 Nov 2018 16:32:23 +0100 Subject: [PATCH 335/769] FIX : same on lines --- htdocs/projet/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 5f683a251a2..86f1c2ffcad 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -742,7 +742,7 @@ while ($i < min($num,$limit)) if (! empty($arrayfields['p.fk_opp_status']['checked'])) { print ''; if (! $i) $totalarray['nbfield']++; } From 6ba78b2bb328627af52f7177368d23d3fb0eff59 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 16:33:06 +0100 Subject: [PATCH 336/769] Work on email collector --- htdocs/admin/emailcollector_card.php | 33 ++++++++++++++++--- .../core/modules/modEmailCollector.class.php | 4 +-- htdocs/core/modules/modGravatar.class.php | 2 ++ htdocs/core/modules/modLdap.class.php | 2 ++ htdocs/core/modules/modMailing.class.php | 7 +++- htdocs/core/modules/modMailmanSpip.class.php | 4 +++ htdocs/core/modules/modNotification.class.php | 4 +++ htdocs/core/modules/modOauth.class.php | 2 +- .../core/modules/modSocialNetworks.class.php | 2 ++ .../class/emailcollector.class.php | 2 ++ htdocs/langs/en_US/admin.lang | 2 ++ htdocs/langs/en_US/main.lang | 2 ++ 12 files changed, 58 insertions(+), 8 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index 5c6aec59b32..c6bf6290404 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -37,7 +37,7 @@ if (!$user->admin) accessforbidden(); // Load traductions files requiredby by page -$langs->loadLangs(array("admin", "other")); +$langs->loadLangs(array("admin", "mails", "other")); // Get parameters $id = GETPOST('id', 'int'); @@ -122,6 +122,23 @@ if ($action == 'confirm_collect') $action = ''; } +if (GETPOST('addfilter','alpha')) +{ + $emailcollectorfilter = new EmailCollectorFilter($db); + $emailcollectorfilter->type = GETPOST('filtertype','alpha'); + $emailcollectorfilter->rulevalue = GETPOST('rulevalue', 'alpha'); + $emailcollectorfilter->fk_emailcollector = $object->id; + $result = $emailcollectorfilter->create($user); + + if ($result > 0) + { + $object->fetchFilters(); + } + else + { + setEventMessages($emailcollectorfilter->errors, $emailcollectorfilter->error, 'errors'); + } +} @@ -322,6 +339,13 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print '
'.$langs->trans("Label").'
'.$langs->trans("Label").'
'.$langs->trans("ResourceFormLabel_ref").'
'.$langs->trans("ResourceType").'
'.$langs->trans("Search").'
:
'; - print $formproject->selectOpportunityStatus('search_opp_status', $search_opp_status, 1, 1, 1, 0, 'maxwidth100'); + print $formproject->selectOpportunityStatus('search_opp_status', $search_opp_status, 1, 0, 1, 0, 'maxwidth100'); print ''; - if ($obj->opp_status_code) print $langs->trans("OppStatusShort".$obj->opp_status_code); + if ($obj->opp_status_code) print $langs->trans("OppStatus".$obj->opp_status_code); print '
'; + + print '
'; + print ''; + print ''; + print ''; + print ''; + // Filters print ''; print ''; @@ -330,8 +354,8 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea // Add filter print ''; print ''; @@ -365,7 +389,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; @@ -387,6 +411,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; print '
'; - $arrayoftypes=array('to'=>'To', 'cc'=>'Cc', 'bcc'=>'Bcc', 'from'=>'From', 'subject'=>'Subject', 'body'=>'Body', 'seen'=>'AlreadyRead', 'unseen'=>'NotRead'); - print $form->selectarray('filtertype', $arrayoftypes, '', 1); + $arrayoftypes=array('from'=>'MailFrom', 'to'=>'MailTo', 'cc'=>'Cc', 'bcc'=>'Bcc', 'subject'=>'Subject', 'body'=>'Body', 'seen'=>'AlreadyRead', 'unseen'=>'NotRead'); + print $form->selectarray('filtertype', $arrayoftypes, '', 1, 0, 0, '', 1); print ''; print ''; print ''; $arrayoftypes=array('recordevent'=>'RecordEvent'); if ($conf->projet->enabled) $arrayoftypes['project']='CreateLeadAndThirdParty'; - print $form->selectarray('operationtype', $arrayoftypes, '', 1); + print $form->selectarray('operationtype', $arrayoftypes, '', 1, 0, 0, '', 1); print ''; print ''; print '
'; + print '
'; print ''; print ''; diff --git a/htdocs/core/modules/modEmailCollector.class.php b/htdocs/core/modules/modEmailCollector.class.php index 5bad6e3e135..ef19ff49bf9 100644 --- a/htdocs/core/modules/modEmailCollector.class.php +++ b/htdocs/core/modules/modEmailCollector.class.php @@ -52,7 +52,7 @@ class modEmailCollector extends DolibarrModules // It is used to group modules by family in module setup page $this->family = "interface"; // Module position in the family on 2 digits ('01', '10', '20', ...) - $this->module_position = '75'; + $this->module_position = '12'; // Gives the possibility to the module, to provide his own family info and position of this family (Overwrite $this->family and $this->module_position. Avoid this) //$this->familyinfo = array('myownfamily' => array('position' => '01', 'label' => $langs->trans("MyOwnFamily"))); @@ -70,7 +70,7 @@ class modEmailCollector extends DolibarrModules // Name of image file used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' - $this->picto='generic'; + $this->picto='email'; // Defined all module parts (triggers, login, substitutions, menus, css, etc...) // for default path (eg: /dav/core/xxxxx) (0=disable, 1=enable) diff --git a/htdocs/core/modules/modGravatar.class.php b/htdocs/core/modules/modGravatar.class.php index 44b4f8a6e80..de85e76e7ff 100644 --- a/htdocs/core/modules/modGravatar.class.php +++ b/htdocs/core/modules/modGravatar.class.php @@ -49,6 +49,8 @@ class modGravatar extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '75'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modLdap.class.php b/htdocs/core/modules/modLdap.class.php index 90577ae3ccf..9bce79dff1f 100644 --- a/htdocs/core/modules/modLdap.class.php +++ b/htdocs/core/modules/modLdap.class.php @@ -43,6 +43,8 @@ class modLdap extends DolibarrModules $this->numero = 200; $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '30'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Synchronisation Ldap"; diff --git a/htdocs/core/modules/modMailing.class.php b/htdocs/core/modules/modMailing.class.php index 749369ee8e9..b7d83f8b771 100644 --- a/htdocs/core/modules/modMailing.class.php +++ b/htdocs/core/modules/modMailing.class.php @@ -44,7 +44,12 @@ class modMailing extends DolibarrModules $this->db = $db; $this->numero = 22; - $this->family = "technic"; + // Family can be 'base' (core modules),'crm','financial','hr','projects','products','ecm','technic' (transverse modules),'interface' (link with external tools),'other','...' + // It is used to group modules by family in module setup page + $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '11'; + // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des EMailings"; diff --git a/htdocs/core/modules/modMailmanSpip.class.php b/htdocs/core/modules/modMailmanSpip.class.php index e1a8f7c2cd6..d82c8040c02 100644 --- a/htdocs/core/modules/modMailmanSpip.class.php +++ b/htdocs/core/modules/modMailmanSpip.class.php @@ -43,7 +43,11 @@ class modMailmanSpip extends DolibarrModules $this->db = $db; $this->numero = 105; + // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' + // It is used to group modules in module setup page $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '70'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Mailman or Spip interface for member module"; diff --git a/htdocs/core/modules/modNotification.class.php b/htdocs/core/modules/modNotification.class.php index 9dbd77fae86..21d5f81eb98 100644 --- a/htdocs/core/modules/modNotification.class.php +++ b/htdocs/core/modules/modNotification.class.php @@ -41,7 +41,11 @@ class modNotification extends DolibarrModules $this->db = $db; $this->numero = 600; + // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' + // It is used to group modules in module setup page $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '01'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "EMail notifications (push) on business Dolibarr events"; diff --git a/htdocs/core/modules/modOauth.class.php b/htdocs/core/modules/modOauth.class.php index f563baa9c92..086dac64bed 100644 --- a/htdocs/core/modules/modOauth.class.php +++ b/htdocs/core/modules/modOauth.class.php @@ -47,7 +47,7 @@ class modOauth extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "interface"; - $this->module_position = '51'; + $this->module_position = '31'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modSocialNetworks.class.php b/htdocs/core/modules/modSocialNetworks.class.php index 6aceeff6a70..137547bfb15 100644 --- a/htdocs/core/modules/modSocialNetworks.class.php +++ b/htdocs/core/modules/modSocialNetworks.class.php @@ -46,6 +46,8 @@ class modSocialNetworks extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "interface"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '20'; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Enable Social Networks fields into third parties and addresses (skype, twitter, facebook, ...)"; diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index cef1c27eac9..5131db78759 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -632,6 +632,7 @@ class EmailCollector extends CommonObject { $obj=$this->db->fetch_object($resql); $this->filters[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'rulevalue'=>$obj->rulevalue, 'status'=>$obj->status); + $i++; } $this->db->free($resql); } @@ -659,6 +660,7 @@ class EmailCollector extends CommonObject { $obj=$this->db->fetch_object($resql); $this->rules[$obj->rowid]=array('id'=>$obj->rowid, 'type'=>$obj->type, 'actionparam'=>$obj->actionparam, 'status'=>$obj->status); + $i++; } $this->db->free($resql); } diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index d38eb1d21d9..e074210bd1a 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1815,6 +1815,8 @@ EnableFeatureFor=Enable features for %s VATIsUsedIsOff=Note: The option to use sales Tax or VAT has been set to Off in the menu %s - %s, so Sale tax or Vat used will always be 0 for sales. SwapSenderAndRecipientOnPDF=Swap sender and recipient address on PDF FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some record automatically (like leads). NewEmailCollector=New Email Collector EMailHost=Host of email IMAP server MailboxSourceDirectory=Mailbox source directory diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index fa74cfa44bc..100a249f418 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -635,6 +635,8 @@ SendMail=Send email EMail=E-mail NoEMail=No email Email=Email +AlreadyRead=Alreay read +NotRead=Not read NoMobilePhone=No mobile phone Owner=Owner FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. From aea01b32081af59d827708d679cd24f65813452a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20J?= Date: Wed, 7 Nov 2018 17:04:18 +0100 Subject: [PATCH 337/769] NEW Work with new table actioncomm_resources and multiple contact affectation --- htdocs/core/lib/company.lib.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index bcf8bfe14a8..761a2d3790f 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1359,8 +1359,14 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= $sql.= " AND a.fk_element = o.rowid AND a.elementtype = 'product'"; if ($filterobj->id) $sql.= " AND a.fk_element = ".$filterobj->id; } - //TODO check how ot work with new table actioncomm_resources and multiple contact affectation - if (is_object($objcon) && $objcon->id) $sql.= " AND a.fk_contact = ".$objcon->id; + + // Work with new table actioncomm_resources and multiple contact affectation. + if (is_object($objcon) && $objcon->id) + { + $sql.= " AND r.element_type = '" . $objcon->table_element . "'" . + " AND r.fk_element = " . $objcon->id; + } + // Condition on actioncode if (! empty($actioncode)) { From 121297b5bdac288840d631e38388659e6822e800 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20J?= Date: Wed, 7 Nov 2018 17:10:51 +0100 Subject: [PATCH 338/769] SQL Join actioncomm_resources --- htdocs/core/lib/company.lib.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 761a2d3790f..42b9f9a3f58 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1330,6 +1330,7 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= $sql.= " FROM ".MAIN_DB_PREFIX."actioncomm as a"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as u on u.rowid = a.fk_user_action"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_actioncomm as c ON a.fk_action = c.id"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."actioncomm_resources as r ON a.id = r.fk_actioncomm"; if (is_object($filterobj) && get_class($filterobj) == 'Societe') $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."socpeople as sp ON a.fk_contact = sp.rowid"; elseif (is_object($filterobj) && get_class($filterobj) == 'Dolresource') { $sql.= " INNER JOIN ".MAIN_DB_PREFIX."element_resources as er"; From 193b153fbf0a36dcf4345585e2aa6ccfbffff352 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 7 Nov 2018 18:02:08 +0100 Subject: [PATCH 339/769] Work on email collector --- htdocs/admin/emailcollector_card.php | 76 +++++++++++++++++-- .../class/emailcollector.class.php | 26 ++++--- .../class/emailcollectoraction.class.php | 30 +++++--- .../class/emailcollectorfilter.class.php | 36 ++++++--- .../install/mysql/migration/8.0.0-9.0.0.sql | 3 + ...mailcollector_emailcollectoraction.key.sql | 1 + ...mailcollector_emailcollectorfilter.key.sql | 2 + htdocs/langs/en_US/admin.lang | 2 + .../template/class/myobject.class.php | 20 ++--- 9 files changed, 144 insertions(+), 52 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index c6bf6290404..3280492701e 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -30,7 +30,7 @@ include_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; include_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollector.class.php'; include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectorfilter.class.php'; -include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectoraction.lib.php'; +include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectoraction.class.php'; include_once DOL_DOCUMENT_ROOT.'/emailcollector/lib/emailcollector.lib.php'; if (!$user->admin) @@ -125,9 +125,10 @@ if ($action == 'confirm_collect') if (GETPOST('addfilter','alpha')) { $emailcollectorfilter = new EmailCollectorFilter($db); - $emailcollectorfilter->type = GETPOST('filtertype','alpha'); + $emailcollectorfilter->type = GETPOST('filtertype','az09'); $emailcollectorfilter->rulevalue = GETPOST('rulevalue', 'alpha'); $emailcollectorfilter->fk_emailcollector = $object->id; + $emailcollectorfilter->status = 1; $result = $emailcollectorfilter->create($user); if ($result > 0) @@ -140,6 +141,55 @@ if (GETPOST('addfilter','alpha')) } } +if ($action == 'deletefilter') +{ + $emailcollectorfilter = new EmailCollectorFilter($db); + $emailcollectorfilter->fetch(GETPOST('filterid','int')); + $result = $emailcollectorfilter->delete($user); + if ($result > 0) + { + $object->fetchFilters(); + } + else + { + setEventMessages($emailcollectorfilter->errors, $emailcollectorfilter->error, 'errors'); + } +} + +if (GETPOST('addoperation','alpha')) +{ + $emailcollectoroperation = new EmailCollectorAction($db); + $emailcollectoroperation->type = GETPOST('operationtype','az09'); + $emailcollectoroperation->actionparam = GETPOST('actionparam', 'alpha'); + $emailcollectoroperation->fk_emailcollector = $object->id; + $emailcollectoroperation->status = 1; + $result = $emailcollectoroperation->create($user); + + if ($result > 0) + { + $object->fetchActions(); + } + else + { + setEventMessages($emailcollectoroperation->errors, $emailcollectoroperation->error, 'errors'); + } +} + +if ($action == 'deleteoperation') +{ + $emailcollectoroperation = new EmailCollectorAction($db); + $emailcollectoroperation->fetch(GETPOST('operationid','int')); + $result = $emailcollectoroperation->delete($user); + if ($result > 0) + { + $object->fetchActions(); + } + else + { + setEventMessages($emailcollectoroperation->errors, $emailcollectoroperation->error, 'errors'); + } +} + /* @@ -368,9 +418,14 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea $rulefilterobj->fetch($rulefilter['id']); print '
'.$rulefilter['type'].''; + print $langs->trans($arrayoftypes[$rulefilter['type']]); + print ''.$rulefilter['rulevalue'].''.$rulefilterobj->getLibStatut(3).''; + //print $rulefilterobj->getLibStatut(3); + print ' '.img_delete().''; + print '
'; $arrayoftypes=array('recordevent'=>'RecordEvent'); if ($conf->projet->enabled) $arrayoftypes['project']='CreateLeadAndThirdParty'; - print $form->selectarray('operationtype', $arrayoftypes, '', 1, 0, 0, '', 1); + print $form->selectarray('operationtype', $arrayoftypes, '', 0, 0, 0, '', 1); print ''; print ''; print '
'.$ruleactionobj['type'].''.$ruleactionobj['actionparam'].''.$ruleactionobj->getLibStatut(3).''; + print $langs->trans($arrayoftypes[$ruleaction['type']]); + print ''.$ruleaction['actionparam'].''; + //print $ruleactionobj->getLibStatut(3); + print ' '.img_delete().''; + print '
'; print ''; - print ''; + print ''; print ''; print ''; print ''; diff --git a/htdocs/compta/sociales/card.php b/htdocs/compta/sociales/card.php index 4ffa1a2829f..d7d762464ee 100644 --- a/htdocs/compta/sociales/card.php +++ b/htdocs/compta/sociales/card.php @@ -481,7 +481,7 @@ if ($id > 0) } $morehtmlref.=''; - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaye = $totalpaye; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/compta/sociales/document.php b/htdocs/compta/sociales/document.php index b2f73768e96..6e033bccc80 100644 --- a/htdocs/compta/sociales/document.php +++ b/htdocs/compta/sociales/document.php @@ -127,7 +127,7 @@ if ($object->id) } $morehtmlref.=''; - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaye = $totalpaye; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/compta/sociales/info.php b/htdocs/compta/sociales/info.php index bd21db108c1..35c00766252 100644 --- a/htdocs/compta/sociales/info.php +++ b/htdocs/compta/sociales/info.php @@ -98,7 +98,7 @@ if (! empty($conf->projet->enabled)) } $morehtmlref.=''; -$linkback = '' . $langs->trans("BackToList") . ''; +$linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaye = $totalpaye; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/compta/sociales/index.php b/htdocs/compta/sociales/list.php similarity index 92% rename from htdocs/compta/sociales/index.php rename to htdocs/compta/sociales/list.php index 6a0250804f1..b25ab142058 100644 --- a/htdocs/compta/sociales/index.php +++ b/htdocs/compta/sociales/list.php @@ -19,7 +19,7 @@ */ /** - * \file htdocs/compta/sociales/index.php + * \file htdocs/compta/list/index.php * \ingroup tax * \brief Page to list all social contributions */ @@ -55,19 +55,19 @@ if (! $sortorder) $sortorder="DESC"; $year=GETPOST("year",'int'); $filtre=GETPOST("filtre",'int'); -if (empty($_REQUEST['typeid'])) +if (! GETPOSTISSET('search_typeid')) { $newfiltre=str_replace('filtre=','',$filtre); $filterarray=explode('-',$newfiltre); foreach($filterarray as $val) { $part=explode(':',$val); - if ($part[0] == 'cs.fk_type') $typeid=$part[1]; + if ($part[0] == 'cs.fk_type') $search_typeid=$part[1]; } } else { - $typeid=$_REQUEST['typeid']; + $search_typeid=GETPOST('search_typeid','int'); } if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All test are required to be compatible with all browsers @@ -76,11 +76,12 @@ if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x', $search_label=""; $search_amount=""; $search_status=''; - $typeid=""; + $search_typeid=""; $year=""; $month=""; } + /* * View */ @@ -118,8 +119,8 @@ if ($filtre) { $filtre=str_replace(":","=",$filtre); $sql .= " AND ".$filtre; } -if ($typeid) { - $sql .= " AND cs.fk_type=".$db->escape($typeid); +if ($search_typeid) { + $sql .= " AND cs.fk_type=".$db->escape($search_typeid); } $sql.= " GROUP BY cs.rowid, cs.fk_type, cs.amount, cs.date_ech, cs.libelle, cs.paye, cs.periode, c.libelle"; $sql.= $db->order($sortfield,$sortorder); @@ -139,10 +140,14 @@ if ($resql) $i = 0; $param=''; - if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; - if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; - if ($year) $param.='&year='.$year; - if ($typeid) $param.='&typeid='.$typeid; + if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage); + if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.urlencode($limit); + if ($search_ref) $param.='&search_ref='.urlencode($search_ref); + if ($search_label) $param.='&search_label='.urlencode($search_label); + if ($search_amount) $param.='&search_amount='.urlencode($search_amount); + if ($search_typeid) $param.='&search_typeid='.urlencode($search_typeid); + if ($search_status != '' && $search_status != '-1') $param.='&search_status='.urlencode($search_status); + if ($year) $param.='&year='.urlencode($year); $newcardbutton=''; if($user->rights->tax->charges->creer) @@ -193,7 +198,7 @@ if ($resql) print ''; // Type print ''; // Period end date print ''; diff --git a/htdocs/core/menus/init_menu_auguria.sql b/htdocs/core/menus/init_menu_auguria.sql index 682746b3412..3a90fd407af 100644 --- a/htdocs/core/menus/init_menu_auguria.sql +++ b/htdocs/core/menus/init_menu_auguria.sql @@ -213,7 +213,7 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan"', __HANDLER__, 'left', 2221__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/card.php?leftmenu=tax_loan&action=create', 'NewLoan', 2, 'loan', '$user->rights->loan->write', '', 0, 2, __ENTITY__); --insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan"', __HANDLER__, 'left', 2222__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/payment/list.php?leftmenu=tax_loan', 'Payments', 2, 'companies', '$user->rights->loan->read', '', 0, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan" && ! empty($conf->global->LOAN_SHOW_CALCULATOR)', __HANDLER__, 'left', 2223__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/calc.php?leftmenu=tax_loan', 'Calculator', 2, 'companies', '$user->rights->loan->calc', '', 0, 4, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled', __HANDLER__, 'left', 2250__+MAX_llx_menu__, 'billing', 'tax_social', 2200__+MAX_llx_menu__, '/compta/sociales/index.php?leftmenu=tax_social', 'SocialContributions', 1, '', '$user->rights->tax->charges->lire', '', 0, 1, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled', __HANDLER__, 'left', 2250__+MAX_llx_menu__, 'billing', 'tax_social', 2200__+MAX_llx_menu__, '/compta/sociales/list.php?leftmenu=tax_social', 'SocialContributions', 1, '', '$user->rights->tax->charges->lire', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && $leftmenu=="tax_social"', __HANDLER__, 'left', 2251__+MAX_llx_menu__, 'billing', '', 2250__+MAX_llx_menu__, '/compta/sociales/card.php?leftmenu=tax_social&action=create', 'MenuNewSocialContribution', 2, '', '$user->rights->tax->charges->creer', '', 0, 2, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && $leftmenu=="tax_social"', __HANDLER__, 'left', 2252__+MAX_llx_menu__, 'billing', '', 2250__+MAX_llx_menu__, '/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=billing&mode=sconly', 'Payments', 2, '', '$user->rights->tax->charges->lire', '', 0, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS)', __HANDLER__, 'left', 2300__+MAX_llx_menu__, 'billing', 'tax_vat', 2200__+MAX_llx_menu__, '/compta/tva/list.php?leftmenu=tax_vat&mainmenu=billing', 'VAT', 1, 'companies', '$user->rights->tax->charges->lire', '', 0, 7, __ENTITY__); diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index bb13a0c2265..0829cc48a00 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -906,9 +906,9 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu // Social contributions if (! empty($conf->tax->enabled)) { - $newmenu->add("/compta/sociales/index.php?leftmenu=tax_social",$langs->trans("MenuSocialContributions"),1,$user->rights->tax->charges->lire); + $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social",$langs->trans("MenuSocialContributions"),1,$user->rights->tax->charges->lire); if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_social/i',$leftmenu)) $newmenu->add("/compta/sociales/card.php?leftmenu=tax_social&action=create",$langs->trans("MenuNewSocialContribution"), 2, $user->rights->tax->charges->creer); - if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_social/i',$leftmenu)) $newmenu->add("/compta/sociales/index.php?leftmenu=tax_social",$langs->trans("List"),2,$user->rights->tax->charges->lire); + if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_social/i',$leftmenu)) $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social",$langs->trans("List"),2,$user->rights->tax->charges->lire); if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_social/i',$leftmenu)) $newmenu->add("/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=billing&mode=sconly",$langs->trans("Payments"), 2, $user->rights->tax->charges->lire); // VAT if (empty($conf->global->TAX_DISABLE_VAT_MENUS)) From c74ad613658e20e4bbdf39984c594bb0a8a9b03a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 10:04:25 +0100 Subject: [PATCH 344/769] Fix look and feel v8 --- htdocs/compta/resultat/clientfourn.php | 2 +- htdocs/compta/salaries/card.php | 4 +- .../salaries/class/paymentsalary.class.php | 65 ++++++++++++++++--- htdocs/compta/salaries/document.php | 2 +- htdocs/compta/salaries/info.php | 2 +- .../compta/salaries/{index.php => list.php} | 3 +- htdocs/core/menus/init_menu_auguria.sql | 6 +- htdocs/core/menus/standard/eldy.lib.php | 6 +- htdocs/loan/card.php | 2 +- htdocs/loan/document.php | 2 +- htdocs/loan/info.php | 2 +- htdocs/loan/{index.php => list.php} | 2 +- htdocs/loan/note.php | 2 +- htdocs/loan/payment/card.php | 2 +- .../template/class/myobject.class.php | 1 - htdocs/user/bank.php | 2 +- 16 files changed, 77 insertions(+), 28 deletions(-) rename htdocs/compta/salaries/{index.php => list.php} (99%) rename htdocs/loan/{index.php => list.php} (99%) diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php index 4d643536388..94426ed54eb 100644 --- a/htdocs/compta/resultat/clientfourn.php +++ b/htdocs/compta/resultat/clientfourn.php @@ -773,7 +773,7 @@ else print ''; - print "\n"; + print "\n"; if ($modecompta == 'CREANCES-DETTES') print ''; print ''; diff --git a/htdocs/compta/salaries/card.php b/htdocs/compta/salaries/card.php index f50d940a51a..76ab712bffd 100644 --- a/htdocs/compta/salaries/card.php +++ b/htdocs/compta/salaries/card.php @@ -174,7 +174,7 @@ if ($action == 'delete') if ($result >= 0) { $db->commit(); - header("Location: ".DOL_URL_ROOT.'/compta/salaries/index.php'); + header("Location: ".DOL_URL_ROOT.'/compta/salaries/list.php'); exit; } else @@ -365,7 +365,7 @@ if ($id) dol_fiche_head($head, 'card', $langs->trans("SalaryPayment"), -1, 'payment'); - $linkback = ''.$langs->trans("BackToList").''; + $linkback = ''.$langs->trans("BackToList").''; $morehtmlref='
'; diff --git a/htdocs/compta/salaries/class/paymentsalary.class.php b/htdocs/compta/salaries/class/paymentsalary.class.php index 0be0f4f3694..76a8284daff 100644 --- a/htdocs/compta/salaries/class/paymentsalary.class.php +++ b/htdocs/compta/salaries/class/paymentsalary.class.php @@ -537,24 +537,73 @@ class PaymentSalary extends CommonObject /** * Send name clicable (with possibly the picto) * - * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto - * @param string $option link option - * @return string Chaine with URL + * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto + * @param string $option link option + * @param int $notooltip 1=Disable tooltip + * @param string $morecss Add more css on link + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @return string Chaine with URL */ - function getNomUrl($withpicto=0,$option='') + function getNomUrl($withpicto=0, $option='', $notooltip=0, $morecss='', $save_lastsearch_value=-1) { - global $langs; + global $db, $conf, $langs, $hookmanager; + global $dolibarr_main_authentication, $dolibarr_main_demo; + global $menumanager; - $result=''; - $label=$langs->trans("ShowSalaryPayment").': '.$this->ref; + if (! empty($conf->dol_no_mouse_hover)) $notooltip=1; // Force disable tooltips - $linkstart = ''; + $result = ''; + + $label = '' . $langs->trans("ShowSalaryPayment") . ''; + $label.= '
'; + $label.= '' . $langs->trans('Ref') . ': ' . $this->ref; + + $url = DOL_URL_ROOT.'/compta/salaries/card.php?id='.$this->id; + + if ($option != 'nolink') + { + // Add param to save lastsearch_values or not + $add_save_lastsearch_values=($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/',$_SERVER["PHP_SELF"])) $add_save_lastsearch_values=1; + if ($add_save_lastsearch_values) $url.='&save_lastsearch_values=1'; + } + + $linkclose=''; + if (empty($notooltip)) + { + if (! empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) + { + $label=$langs->trans("ShowMyObject"); + $linkclose.=' alt="'.dol_escape_htmltag($label, 1).'"'; + } + $linkclose.=' title="'.dol_escape_htmltag($label, 1).'"'; + $linkclose.=' class="classfortooltip'.($morecss?' '.$morecss:'').'"'; + + /* + $hookmanager->initHooks(array('myobjectdao')); + $parameters=array('id'=>$this->id); + $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) $linkclose = $hookmanager->resPrint; + */ + } + else $linkclose = ($morecss?' class="'.$morecss.'"':''); + + $linkstart = '
'; $linkend=''; $result .= $linkstart; if ($withpicto) $result.=img_object(($notooltip?'':$label), ($this->picto?$this->picto:'generic'), ($notooltip?(($withpicto != 2) ? 'class="paddingright"' : ''):'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip?0:1); if ($withpicto != 2) $result.= $this->ref; $result .= $linkend; + //if ($withpicto != 2) $result.=(($addlabel && $this->label) ? $sep . dol_trunc($this->label, ($addlabel > 1 ? $addlabel : 0)) : ''); + + global $action,$hookmanager; + $hookmanager->initHooks(array('salarypayment')); + $parameters=array('id'=>$this->id, 'getnomurl'=>$result); + $reshook=$hookmanager->executeHooks('getNomUrl',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) $result = $hookmanager->resPrint; + else $result .= $hookmanager->resPrint; return $result; } diff --git a/htdocs/compta/salaries/document.php b/htdocs/compta/salaries/document.php index 1059c765df3..493e0a3c5ee 100644 --- a/htdocs/compta/salaries/document.php +++ b/htdocs/compta/salaries/document.php @@ -99,7 +99,7 @@ if ($object->id) $totalsize+=$file['size']; } - $linkback = ''.$langs->trans("BackToList").''; + $linkback = ''.$langs->trans("BackToList").''; $morehtmlref='
'; diff --git a/htdocs/compta/salaries/info.php b/htdocs/compta/salaries/info.php index d2f02f3dc8f..87d24ceb406 100644 --- a/htdocs/compta/salaries/info.php +++ b/htdocs/compta/salaries/info.php @@ -54,7 +54,7 @@ $head = salaries_prepare_head($object); dol_fiche_head($head, 'info', $langs->trans("SalaryPayment"), -1, 'payment'); -$linkback = ''.$langs->trans("BackToList").''; +$linkback = ''.$langs->trans("BackToList").''; $morehtmlref='
'; diff --git a/htdocs/compta/salaries/index.php b/htdocs/compta/salaries/list.php similarity index 99% rename from htdocs/compta/salaries/index.php rename to htdocs/compta/salaries/list.php index a8a0b82e7d9..c7f5970723e 100644 --- a/htdocs/compta/salaries/index.php +++ b/htdocs/compta/salaries/list.php @@ -18,7 +18,7 @@ */ /** - * \file htdocs/compta/salaries/index.php + * \file htdocs/compta/salaries/list.php * \ingroup salaries * \brief List of salaries payments */ @@ -231,6 +231,7 @@ if ($result) $salstatic->id=$obj->rowid; $salstatic->ref=$obj->rowid; + // Ref print "
\n"; // Employee diff --git a/htdocs/core/menus/init_menu_auguria.sql b/htdocs/core/menus/init_menu_auguria.sql index 3a90fd407af..8792d8b762a 100644 --- a/htdocs/core/menus/init_menu_auguria.sql +++ b/htdocs/core/menus/init_menu_auguria.sql @@ -205,11 +205,11 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left -- insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->don->enabled && $leftmenu=="donations"', __HANDLER__, 'left', 2003__+MAX_llx_menu__, 'billing', '', 2000__+MAX_llx_menu__, '/don/stats/index.php?leftmenu=donations&mainmenu=billing', 'Statistics', 1, 'donations', '$user->rights->don->lire', '', 2, 2, __ENTITY__); -- Special expenses insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled || $conf->salaries->enabled || $conf->loan->enabled || $conf->banque->enabled', __HANDLER__, 'left', 2200__+MAX_llx_menu__, 'billing', 'tax', 6__+MAX_llx_menu__, '/compta/charges/index.php?leftmenu=tax&mainmenu=billing', 'MenuSpecialExpenses', 0, 'compta', '(! empty($conf->tax->enabled) && $user->rights->tax->charges->lire) || (! empty($conf->salaries->enabled) && ! empty($user->rights->salaries->read)) || (! empty($conf->loan->enabled) && $user->rights->loan->read) || (! empty($conf->banque->enabled) && $user->rights->banque->lire)', '', 0, 6, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled', __HANDLER__, 'left', 2210__+MAX_llx_menu__, 'billing', 'tax_sal', 2200__+MAX_llx_menu__, '/compta/salaries/index.php?leftmenu=tax_salary&mainmenu=billing', 'Salaries', 1, 'salaries', '$user->rights->salaries->read', '', 0, 1, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled', __HANDLER__, 'left', 2210__+MAX_llx_menu__, 'billing', 'tax_sal', 2200__+MAX_llx_menu__, '/compta/salaries/list.php?leftmenu=tax_salary&mainmenu=billing', 'Salaries', 1, 'salaries', '$user->rights->salaries->read', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled && $leftmenu=="tax_salary"', __HANDLER__, 'left', 2211__+MAX_llx_menu__, 'billing', '', 2210__+MAX_llx_menu__, '/compta/salaries/card.php?leftmenu=tax_salary&action=create', 'NewPayment', 2, 'companies', '$user->rights->salaries->write', '', 0, 2, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled && $leftmenu=="tax_salary"', __HANDLER__, 'left', 2212__+MAX_llx_menu__, 'billing', '', 2210__+MAX_llx_menu__, '/compta/salaries/index.php?leftmenu=tax_salary', 'Payments', 2, 'companies', '$user->rights->salaries->read', '', 0, 3, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled && $leftmenu=="tax_salary"', __HANDLER__, 'left', 2212__+MAX_llx_menu__, 'billing', '', 2210__+MAX_llx_menu__, '/compta/salaries/list.php?leftmenu=tax_salary', 'Payments', 2, 'companies', '$user->rights->salaries->read', '', 0, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->salaries->enabled && $leftmenu=="tax_salary"', __HANDLER__, 'left', 2213__+MAX_llx_menu__, 'billing', '', 2210__+MAX_llx_menu__, '/compta/salaries/stats/index.php?leftmenu=tax_salary', 'Statistics', 2, 'companies', '$user->rights->salaries->read', '', 0, 4, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled', __HANDLER__, 'left', 2220__+MAX_llx_menu__, 'billing', 'tax_loan', 2200__+MAX_llx_menu__, '/loan/index.php?leftmenu=tax_loan&mainmenu=billing', 'Loans', 1, 'loan', '$user->rights->loan->read', '', 0, 1, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled', __HANDLER__, 'left', 2220__+MAX_llx_menu__, 'billing', 'tax_loan', 2200__+MAX_llx_menu__, '/loan/list.php?leftmenu=tax_loan&mainmenu=billing', 'Loans', 1, 'loan', '$user->rights->loan->read', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan"', __HANDLER__, 'left', 2221__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/card.php?leftmenu=tax_loan&action=create', 'NewLoan', 2, 'loan', '$user->rights->loan->write', '', 0, 2, __ENTITY__); --insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan"', __HANDLER__, 'left', 2222__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/payment/list.php?leftmenu=tax_loan', 'Payments', 2, 'companies', '$user->rights->loan->read', '', 0, 3, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->loan->enabled && $leftmenu=="tax_loan" && ! empty($conf->global->LOAN_SHOW_CALCULATOR)', __HANDLER__, 'left', 2223__+MAX_llx_menu__, 'billing', '', 2220__+MAX_llx_menu__, '/loan/calc.php?leftmenu=tax_loan', 'Calculator', 2, 'companies', '$user->rights->loan->calc', '', 0, 4, __ENTITY__); diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 0829cc48a00..2c2c2d999f7 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -948,9 +948,9 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->salaries->enabled)) { $langs->load("salaries"); - $newmenu->add("/compta/salaries/index.php?leftmenu=tax_salary&mainmenu=billing",$langs->trans("Salaries"),1,$user->rights->salaries->read, '', $mainmenu, 'tax_salary'); + $newmenu->add("/compta/salaries/list.php?leftmenu=tax_salary&mainmenu=billing",$langs->trans("Salaries"),1,$user->rights->salaries->read, '', $mainmenu, 'tax_salary'); if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_salary/i',$leftmenu)) $newmenu->add("/compta/salaries/card.php?leftmenu=tax_salary&action=create",$langs->trans("NewPayment"),2,$user->rights->salaries->write); - if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_salary/i',$leftmenu)) $newmenu->add("/compta/salaries/index.php?leftmenu=tax_salary",$langs->trans("Payments"),2,$user->rights->salaries->read); + if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_salary/i',$leftmenu)) $newmenu->add("/compta/salaries/list.php?leftmenu=tax_salary",$langs->trans("Payments"),2,$user->rights->salaries->read); if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_salary/i',$leftmenu)) $newmenu->add("/compta/salaries/stats/index.php?leftmenu=tax_salary", $langs->trans("Statistics"),2,$user->rights->salaries->read); } @@ -958,7 +958,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->loan->enabled)) { $langs->load("loan"); - $newmenu->add("/loan/index.php?leftmenu=tax_loan&mainmenu=billing",$langs->trans("Loans"),1,$user->rights->loan->read, '', $mainmenu, 'tax_loan'); + $newmenu->add("/loan/list.php?leftmenu=tax_loan&mainmenu=billing",$langs->trans("Loans"),1,$user->rights->loan->read, '', $mainmenu, 'tax_loan'); if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_loan/i',$leftmenu)) $newmenu->add("/loan/card.php?leftmenu=tax_loan&action=create",$langs->trans("NewLoan"),2,$user->rights->loan->write); //if (empty($leftmenu) || preg_match('/^tax_loan/i',$leftmenu)) $newmenu->add("/loan/payment/list.php?leftmenu=tax_loan",$langs->trans("Payments"),2,$user->rights->loan->read); } diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 3214ac5a971..242472aff0a 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -434,7 +434,7 @@ if ($id > 0) // Loan card - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $morehtmlref='
'; // Ref loan diff --git a/htdocs/loan/document.php b/htdocs/loan/document.php index 2c762b624d2..553bbc258e8 100644 --- a/htdocs/loan/document.php +++ b/htdocs/loan/document.php @@ -124,7 +124,7 @@ if ($object->id) } $morehtmlref.='
'; - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaid = $totalpaid; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/loan/info.php b/htdocs/loan/info.php index 3a092e4cb84..cc923b17fea 100644 --- a/htdocs/loan/info.php +++ b/htdocs/loan/info.php @@ -96,7 +96,7 @@ if (! empty($conf->projet->enabled)) { } $morehtmlref.=''; -$linkback = '' . $langs->trans("BackToList") . ''; +$linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaid = $totalpaid; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/loan/index.php b/htdocs/loan/list.php similarity index 99% rename from htdocs/loan/index.php rename to htdocs/loan/list.php index 5b81ebbb023..780d28df081 100644 --- a/htdocs/loan/index.php +++ b/htdocs/loan/list.php @@ -19,7 +19,7 @@ */ /** - * \file htdocs/loan/index.php + * \file htdocs/loan/list.php * \ingroup loan * \brief Page to list all loans */ diff --git a/htdocs/loan/note.php b/htdocs/loan/note.php index 2ed8e82f20b..187dbbbd1f9 100644 --- a/htdocs/loan/note.php +++ b/htdocs/loan/note.php @@ -113,7 +113,7 @@ if ($id > 0) } $morehtmlref.=''; - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $object->totalpaid = $totalpaid; // To give a chance to dol_banner_tab to use already paid amount to show correct status diff --git a/htdocs/loan/payment/card.php b/htdocs/loan/payment/card.php index 919139bd6e3..77d47e66b40 100644 --- a/htdocs/loan/payment/card.php +++ b/htdocs/loan/payment/card.php @@ -58,7 +58,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->loan->del if ($result > 0) { $db->commit(); - header("Location: ".DOL_URL_ROOT."/loan/index.php"); + header("Location: ".DOL_URL_ROOT."/loan/list.php"); exit; } else diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index e318bfe3a00..6e3fc1bd63f 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -357,7 +357,6 @@ class MyObject extends CommonObject if (! empty($conf->dol_no_mouse_hover)) $notooltip=1; // Force disable tooltips $result = ''; - $companylink = ''; $label = '' . $langs->trans("MyObject") . ''; $label.= '
'; diff --git a/htdocs/user/bank.php b/htdocs/user/bank.php index 13b555b6d5c..1cfb8fbb5d5 100644 --- a/htdocs/user/bank.php +++ b/htdocs/user/bank.php @@ -311,7 +311,7 @@ if ($action != 'edit' && $action != 'create') // If not bank account yet, $acco print '
'.$langs->trans("ContributionsToPay").($num?' '.$num.'':'').''.$langs->trans("ContributionsToPay").($num?' '.$num.'':'').''.$langs->trans("DateDue").''.$langs->trans("AmountTTC").''.$langs->trans("Paid").''; - $formsocialcontrib->select_type_socialcontrib($typeid,'typeid',1,0,0,'maxwidth100onsmartphone'); + $formsocialcontrib->select_type_socialcontrib($search_typeid,'search_typeid',1,0,0,'maxwidth100onsmartphone'); print ' 
 ".$langs->trans("Salary")." fk_user."\">".$obj->firstname." ".$obj->lastname."".$langs->trans("Salary")." fk_user."\">".$obj->firstname." ".$obj->lastname."'.price(-$obj->amount).''.price(-$obj->amount).'".$salstatic->getNomUrl(1)."
'; print ''; - print ''; +print_liste_field_titre("",$_SERVER["PHP_SELF"],'','',$param,'',$sortfield,$sortorder); print "\n"; diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index 9d3bc24bd76..c67539a8b7c 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -724,15 +724,18 @@ function defaultvalues_prepare_head() $head[$h][2] = 'sortorder'; $h++; - $head[$h][0] = DOL_URL_ROOT."/admin/defaultvalues.php?mode=focus"; - $head[$h][1] = $langs->trans("DefaultFocus"); - $head[$h][2] = 'focus'; - $h++; + if (! empty($conf->use_javascript_ajax)) + { + $head[$h][0] = DOL_URL_ROOT."/admin/defaultvalues.php?mode=focus"; + $head[$h][1] = $langs->trans("DefaultFocus"); + $head[$h][2] = 'focus'; + $h++; - $head[$h][0] = DOL_URL_ROOT."/admin/defaultvalues.php?mode=mandatory"; - $head[$h][1] = $langs->trans("DefaultMandatory"); - $head[$h][2] = 'mandatory'; - $h++; + $head[$h][0] = DOL_URL_ROOT."/admin/defaultvalues.php?mode=mandatory"; + $head[$h][1] = $langs->trans("DefaultMandatory"); + $head[$h][2] = 'mandatory'; + $h++; + } /*$head[$h][0] = DOL_URL_ROOT."/admin/translation.php?mode=searchkey"; $head[$h][1] = $langs->trans("TranslationKeySearch"); From 6514b5138284b5d543654b74c2e5c3c3163a06a6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 20 Nov 2018 21:59:05 +0100 Subject: [PATCH 505/769] Better help --- htdocs/langs/en_US/admin.lang | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index a760a77ede8..f528c23818b 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -463,9 +463,9 @@ ClickToShowDescription=Click to show description DependsOn=This module needs the module(s) RequiredBy=This module is required by module(s) TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. -PageUrlForDefaultValues=You must enter the relative url of the page. If you include parameters in URL, the default values will be effective if all parameters are set to same value. Examples: -PageUrlForDefaultValuesCreate=
For form to create a new thirdparty, it is %s,
If you want default value only if url has some parameter, you can use %s -PageUrlForDefaultValuesList=
For page that list third-parties, it is %s,
If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValues=You must enter the relative path of the page in URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
Example:
For the form to create a new thirdparty, it is %s.
For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
Example:
For the page that list third-parties, it is %s.
For URL of external modules installed into custom directory, do not include the "custom/" so use path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
If you want default value only if url has some parameter, you can use %s EnableDefaultValues=Enable usage of personalized default values EnableOverwriteTranslation=Enable usage of overwritten translation GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. From 0ea6f2778bb6d355a2de4f91de2224ebd0a5c86c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 20 Nov 2018 22:01:38 +0100 Subject: [PATCH 506/769] Fix examples --- htdocs/admin/defaultvalues.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/defaultvalues.php b/htdocs/admin/defaultvalues.php index afec612bf61..b30cb01bd67 100644 --- a/htdocs/admin/defaultvalues.php +++ b/htdocs/admin/defaultvalues.php @@ -250,7 +250,7 @@ print '
'; // Page $texthelp=$langs->trans("PageUrlForDefaultValues"); if ($mode == 'createform') $texthelp.=$langs->trans("PageUrlForDefaultValuesCreate", 'societe/card.php', 'societe/card.php?abc=val1&def=val2'); -else $texthelp.=$langs->trans("PageUrlForDefaultValuesList", 'societe/list.php', 'societe/card.php?abc=val1&def=val2'); +else $texthelp.=$langs->trans("PageUrlForDefaultValuesList", 'societe/list.php', 'societe/list.php?abc=val1&def=val2'); $texturl=$form->textwithpicto($langs->trans("Url"), $texthelp); print_liste_field_titre($texturl,$_SERVER["PHP_SELF"],'page,param','',$param,'',$sortfield,$sortorder); // Field From e8cac0df3579ee30e895c420f48ee6159f33867f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 21 Nov 2018 14:06:06 +0100 Subject: [PATCH 507/769] correct link and avoid warning in resource list --- htdocs/resource/list.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/resource/list.php b/htdocs/resource/list.php index 85be267613d..68f91327f6d 100644 --- a/htdocs/resource/list.php +++ b/htdocs/resource/list.php @@ -1,6 +1,7 @@ * Copyright (C) 2018 Nicolas ZABOURI + * Copyright (C) 2018 Frédéric France * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -51,6 +52,9 @@ $extrafields = new ExtraFields($db); // fetch optionals attributes and labels $extralabels=$extrafields->fetch_name_optionals_label($object->table_element); $search_array_options=$extrafields->getOptionalsFromPost($extralabels,'','search_'); +if (! is_array($search_array_options)) { + $search_array_options = array(); +} $search_ref=GETPOST("search_ref"); $search_type=GETPOST("search_type"); @@ -196,7 +200,7 @@ if($ret == -1) { $newcardbutton=''; if ($user->rights->resource->write) { - $newcardbutton=''.$langs->trans('MenuResourceAdd').''; + $newcardbutton=''.$langs->trans('MenuResourceAdd').''; $newcardbutton.= ''; $newcardbutton.= ''; } From 084516b885d9066517e0bc56b6f7aaf722ca9ede Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 21 Nov 2018 15:11:57 +0100 Subject: [PATCH 508/769] Fix ip detection of geoip --- htdocs/admin/geoipmaxmind.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/htdocs/admin/geoipmaxmind.php b/htdocs/admin/geoipmaxmind.php index 9c944324527..29819cd4034 100644 --- a/htdocs/admin/geoipmaxmind.php +++ b/htdocs/admin/geoipmaxmind.php @@ -24,6 +24,7 @@ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/dolgeoip.class.php'; // Security check @@ -150,6 +151,25 @@ if ($geoip) if ($result) print $result; else print $langs->trans("Error"); */ + //var_dump($_SERVER); + $ip = $_SERVER['REMOTE_ADDR']?$_SERVER['REMOTE_ADDR']:(($_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:$_SERVER['HTTP_CLIENT_IP'])); + //$ip='91.161.249.43'; + $isip=is_ip($ip); + if ($isip == 1) + { + print '
'.$ip.' -> '; + $result=dol_print_ip($ip,1); + if ($result) print $result; + else print $langs->trans("Error"); + } + elseif ($isip == 2) + { + print '
'.$ip.' -> '; + $result=dol_print_ip($ip,1); + if ($result) print $result; + else print $langs->trans("NotAPublicIp"); + } + $geoip->close(); } From b6dac7da20d6394a25f44c16666fa8aefe67b0a9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 21 Nov 2018 15:40:15 +0100 Subject: [PATCH 509/769] FIX Remote ip detection was wrong with proxy (example: cloudflare) --- htdocs/admin/geoipmaxmind.php | 4 +- htdocs/core/class/events.class.php | 5 +- htdocs/core/lib/functions.lib.php | 264 ++++++++++++++++++++++++++++- 3 files changed, 267 insertions(+), 6 deletions(-) diff --git a/htdocs/admin/geoipmaxmind.php b/htdocs/admin/geoipmaxmind.php index 9b755d9bf57..47c51069299 100644 --- a/htdocs/admin/geoipmaxmind.php +++ b/htdocs/admin/geoipmaxmind.php @@ -152,7 +152,7 @@ if ($geoip) else print $langs->trans("Error"); */ //var_dump($_SERVER); - $ip = $_SERVER['REMOTE_ADDR']?$_SERVER['REMOTE_ADDR']:(($_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:$_SERVER['HTTP_CLIENT_IP'])); + $ip = getUserRemoteIP(); //$ip='91.161.249.43'; $isip=is_ip($ip); if ($isip == 1) @@ -162,7 +162,7 @@ if ($geoip) if ($result) print $result; else print $langs->trans("Error"); } - elseif ($isip == 2) + else { print '
'.$ip.' -> '; $result=dol_print_ip($ip,1); diff --git a/htdocs/core/class/events.class.php b/htdocs/core/class/events.class.php index c4b726b19d1..78439af1134 100644 --- a/htdocs/core/class/events.class.php +++ b/htdocs/core/class/events.class.php @@ -137,6 +137,7 @@ class Events // extends CommonObject // Clean parameters $this->description=trim($this->description); + if (empty($this->user_agent) && !empty($_SERVER['HTTP_USER_AGENT'])) $this->user_agent=$_SERVER['HTTP_USER_AGENT']; // Check parameters if (empty($this->description)) { $this->error='ErrorBadValueForParameterCreateEventDesc'; return -1; } @@ -153,8 +154,8 @@ class Events // extends CommonObject $sql.= ") VALUES ("; $sql.= " '".$this->db->escape($this->type)."',"; $sql.= " ".$conf->entity.","; - $sql.= " '".$this->db->escape($_SERVER['REMOTE_ADDR'])."',"; - $sql.= " ".($_SERVER['HTTP_USER_AGENT']?"'".$this->db->escape(dol_trunc($_SERVER['HTTP_USER_AGENT'],250))."'":'NULL').","; + $sql.= " '".$this->db->escape(getUserRemoteIP())."',"; + $sql.= " ".($this->user_agent ? "'".$this->db->escape(dol_trunc($this->user_agent,250))."'" : 'NULL').","; $sql.= " '".$this->db->idate($this->dateevent)."',"; $sql.= " ".($user->id?"'".$this->db->escape($user->id)."'":'NULL').","; $sql.= " '".$this->db->escape(dol_trunc($this->description,250))."'"; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 947b3800d60..48f6242bf66 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -2665,6 +2665,20 @@ function dol_print_ip($ip,$mode=0) return $ret; } +/** + * Return the IP of remote user. + * Take HTTP_X_FORWARDED_FOR (defined when using proxy) + * Then HTTP_CLIENT_IP if defined (rare) + * Then REMOTE_ADDR (not way to be modified by user but may be wrong if using proxy) + * + * @return string Ip of remote user. + */ +function getUserRemoteIP() +{ + $ip = $_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:(($_SERVER['HTTP_CLIENT_IP']?$_SERVER['HTTP_CLIENT_IP']:$_SERVER['REMOTE_ADDR'])); + return $ip; +} + /** * Return a country code from IP. Empty string if not found. * @@ -2708,7 +2722,7 @@ function dol_user_country() $ret=''; if (! empty($conf->geoipmaxmind->enabled)) { - $ip=$_SERVER["REMOTE_ADDR"]; + $ip=getUserRemoteIP(); $datafile=$conf->global->GEOIPMAXMIND_COUNTRY_DATAFILE; //$ip='24.24.24.24'; //$datafile='E:\Mes Sites\Web\Admin1\awstats\maxmind\GeoIP.dat'; @@ -5783,7 +5797,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey=0, $exclude=null, $ob '__USER_FIRSTNAME__' => (string) $user->firstname, '__USER_FULLNAME__' => (string) $user->getFullName($outputlangs), '__USER_SUPERVISOR_ID__' => (string) ($user->fk_user ? $user->fk_user : '0'), - '__USER_REMOTE_IP__' => (string) $_SERVER['REMOTE_ADDR'] + '__USER_REMOTE_IP__' => (string) getUserRemoteIP() ) ); } @@ -6770,6 +6784,252 @@ function picto_from_langcode($codelang, $moreatt = '') return img_picto_common($codelang, 'flags/'.strtolower($flagImage).'.png', $moreatt); } +/** + * Return default language from country code + * + * @param string $countrycode Country code like 'US', 'FR', 'CA', ... + * @return string Value of locale like 'en_US', 'fr_FR', ... + */ +function getLanguageCodeFromCountryCode($countrycode) +{ + $countrycodetolanguage = array( + 'SA' => 'ar_AR', + 'DK' => 'da_DA', + 'CA' => 'en_CA', + 'SE' => 'sv_SV' + ); + if (! empty($countrycodetolanguage[$countrycode])) return $countrycodetolanguage[$countrycode]; + + // Locale list taken from: + // http://stackoverflow.com/questions/3191664/ + // list-of-all-locales-and-their-short-codes + $locales = array( + 'af-ZA', + 'am-ET', + 'ar-AE', + 'ar-BH', + 'ar-DZ', + 'ar-EG', + 'ar-IQ', + 'ar-JO', + 'ar-KW', + 'ar-LB', + 'ar-LY', + 'ar-MA', + 'arn-CL', + 'ar-OM', + 'ar-QA', + 'ar-SA', + 'ar-SY', + 'ar-TN', + 'ar-YE', + 'as-IN', + 'az-Cyrl-AZ', + 'az-Latn-AZ', + 'ba-RU', + 'be-BY', + 'bg-BG', + 'bn-BD', + 'bn-IN', + 'bo-CN', + 'br-FR', + 'bs-Cyrl-BA', + 'bs-Latn-BA', + 'ca-ES', + 'co-FR', + 'cs-CZ', + 'cy-GB', + 'da-DK', + 'de-AT', + 'de-CH', + 'de-DE', + 'de-LI', + 'de-LU', + 'dsb-DE', + 'dv-MV', + 'el-GR', + 'en-029', + 'en-AU', + 'en-BZ', + 'en-CA', + 'en-GB', + 'en-IE', + 'en-IN', + 'en-JM', + 'en-MY', + 'en-NZ', + 'en-PH', + 'en-SG', + 'en-TT', + 'en-US', + 'en-ZA', + 'en-ZW', + 'es-AR', + 'es-BO', + 'es-CL', + 'es-CO', + 'es-CR', + 'es-DO', + 'es-EC', + 'es-ES', + 'es-GT', + 'es-HN', + 'es-MX', + 'es-NI', + 'es-PA', + 'es-PE', + 'es-PR', + 'es-PY', + 'es-SV', + 'es-US', + 'es-UY', + 'es-VE', + 'et-EE', + 'eu-ES', + 'fa-IR', + 'fi-FI', + 'fil-PH', + 'fo-FO', + 'fr-BE', + 'fr-CA', + 'fr-CH', + 'fr-FR', + 'fr-LU', + 'fr-MC', + 'fy-NL', + 'ga-IE', + 'gd-GB', + 'gl-ES', + 'gsw-FR', + 'gu-IN', + 'ha-Latn-NG', + 'he-IL', + 'hi-IN', + 'hr-BA', + 'hr-HR', + 'hsb-DE', + 'hu-HU', + 'hy-AM', + 'id-ID', + 'ig-NG', + 'ii-CN', + 'is-IS', + 'it-CH', + 'it-IT', + 'iu-Cans-CA', + 'iu-Latn-CA', + 'ja-JP', + 'ka-GE', + 'kk-KZ', + 'kl-GL', + 'km-KH', + 'kn-IN', + 'kok-IN', + 'ko-KR', + 'ky-KG', + 'lb-LU', + 'lo-LA', + 'lt-LT', + 'lv-LV', + 'mi-NZ', + 'mk-MK', + 'ml-IN', + 'mn-MN', + 'mn-Mong-CN', + 'moh-CA', + 'mr-IN', + 'ms-BN', + 'ms-MY', + 'mt-MT', + 'nb-NO', + 'ne-NP', + 'nl-BE', + 'nl-NL', + 'nn-NO', + 'nso-ZA', + 'oc-FR', + 'or-IN', + 'pa-IN', + 'pl-PL', + 'prs-AF', + 'ps-AF', + 'pt-BR', + 'pt-PT', + 'qut-GT', + 'quz-BO', + 'quz-EC', + 'quz-PE', + 'rm-CH', + 'ro-RO', + 'ru-RU', + 'rw-RW', + 'sah-RU', + 'sa-IN', + 'se-FI', + 'se-NO', + 'se-SE', + 'si-LK', + 'sk-SK', + 'sl-SI', + 'sma-NO', + 'sma-SE', + 'smj-NO', + 'smj-SE', + 'smn-FI', + 'sms-FI', + 'sq-AL', + 'sr-Cyrl-BA', + 'sr-Cyrl-CS', + 'sr-Cyrl-ME', + 'sr-Cyrl-RS', + 'sr-Latn-BA', + 'sr-Latn-CS', + 'sr-Latn-ME', + 'sr-Latn-RS', + 'sv-FI', + 'sv-SE', + 'sw-KE', + 'syr-SY', + 'ta-IN', + 'te-IN', + 'tg-Cyrl-TJ', + 'th-TH', + 'tk-TM', + 'tn-ZA', + 'tr-TR', + 'tt-RU', + 'tzm-Latn-DZ', + 'ug-CN', + 'uk-UA', + 'ur-PK', + 'uz-Cyrl-UZ', + 'uz-Latn-UZ', + 'vi-VN', + 'wo-SN', + 'xh-ZA', + 'yo-NG', + 'zh-CN', + 'zh-HK', + 'zh-MO', + 'zh-SG', + 'zh-TW', + 'zu-ZA', + ); + + foreach ($locales as $locale) + { + $locale_region = locale_get_region($locale); + $locale_language = locale_get_primary_language($locale); + $locale_array = array('language' => $locale_language, 'region' => $locale_region); + if (strtoupper($countrycode) == $locale_region) + { + return locale_compose($locale_array); + } + } + + return null; +} + /** * Complete or removed entries into a head array (used to build tabs). * For example, with value added by external modules. Such values are declared into $conf->modules_parts['tab']. From 5e9abe6aad89aa23c18e2399b36663007683678b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 21 Nov 2018 16:28:36 +0100 Subject: [PATCH 510/769] Fix getLanguageCodeFromCountryCode --- htdocs/core/lib/functions.lib.php | 66 +++++++------------------------ test/phpunit/FunctionsLibTest.php | 53 ++++++++++++++++++++++++- 2 files changed, 67 insertions(+), 52 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 48f6242bf66..d9d79994b65 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -6792,13 +6792,15 @@ function picto_from_langcode($codelang, $moreatt = '') */ function getLanguageCodeFromCountryCode($countrycode) { - $countrycodetolanguage = array( - 'SA' => 'ar_AR', - 'DK' => 'da_DA', - 'CA' => 'en_CA', - 'SE' => 'sv_SV' - ); - if (! empty($countrycodetolanguage[$countrycode])) return $countrycodetolanguage[$countrycode]; + global $mysoc; + + if (strtoupper($countrycode) == 'MQ') return 'fr_CA'; + if (strtoupper($countrycode) == 'SE') return 'sv_SE'; // se_SE is Sami/Sweden, and we want in priority sv_SE for SE country + if (strtoupper($countrycode) == 'CH') + { + if ($mysoc->country_code == 'FR') return 'fr_CH'; + if ($mysoc->country_code == 'DE') return 'de_CH'; + } // Locale list taken from: // http://stackoverflow.com/questions/3191664/ @@ -6816,7 +6818,6 @@ function getLanguageCodeFromCountryCode($countrycode) 'ar-LB', 'ar-LY', 'ar-MA', - 'arn-CL', 'ar-OM', 'ar-QA', 'ar-SA', @@ -6824,8 +6825,6 @@ function getLanguageCodeFromCountryCode($countrycode) 'ar-TN', 'ar-YE', 'as-IN', - 'az-Cyrl-AZ', - 'az-Latn-AZ', 'ba-RU', 'be-BY', 'bg-BG', @@ -6833,8 +6832,6 @@ function getLanguageCodeFromCountryCode($countrycode) 'bn-IN', 'bo-CN', 'br-FR', - 'bs-Cyrl-BA', - 'bs-Latn-BA', 'ca-ES', 'co-FR', 'cs-CZ', @@ -6845,10 +6842,8 @@ function getLanguageCodeFromCountryCode($countrycode) 'de-DE', 'de-LI', 'de-LU', - 'dsb-DE', 'dv-MV', 'el-GR', - 'en-029', 'en-AU', 'en-BZ', 'en-CA', @@ -6888,7 +6883,6 @@ function getLanguageCodeFromCountryCode($countrycode) 'eu-ES', 'fa-IR', 'fi-FI', - 'fil-PH', 'fo-FO', 'fr-BE', 'fr-CA', @@ -6900,14 +6894,11 @@ function getLanguageCodeFromCountryCode($countrycode) 'ga-IE', 'gd-GB', 'gl-ES', - 'gsw-FR', 'gu-IN', - 'ha-Latn-NG', 'he-IL', 'hi-IN', 'hr-BA', 'hr-HR', - 'hsb-DE', 'hu-HU', 'hy-AM', 'id-ID', @@ -6916,15 +6907,12 @@ function getLanguageCodeFromCountryCode($countrycode) 'is-IS', 'it-CH', 'it-IT', - 'iu-Cans-CA', - 'iu-Latn-CA', 'ja-JP', 'ka-GE', 'kk-KZ', 'kl-GL', 'km-KH', 'kn-IN', - 'kok-IN', 'ko-KR', 'ky-KG', 'lb-LU', @@ -6935,8 +6923,6 @@ function getLanguageCodeFromCountryCode($countrycode) 'mk-MK', 'ml-IN', 'mn-MN', - 'mn-Mong-CN', - 'moh-CA', 'mr-IN', 'ms-BN', 'ms-MY', @@ -6946,24 +6932,17 @@ function getLanguageCodeFromCountryCode($countrycode) 'nl-BE', 'nl-NL', 'nn-NO', - 'nso-ZA', 'oc-FR', 'or-IN', 'pa-IN', 'pl-PL', - 'prs-AF', 'ps-AF', 'pt-BR', 'pt-PT', - 'qut-GT', - 'quz-BO', - 'quz-EC', - 'quz-PE', 'rm-CH', 'ro-RO', 'ru-RU', 'rw-RW', - 'sah-RU', 'sa-IN', 'se-FI', 'se-NO', @@ -6971,39 +6950,21 @@ function getLanguageCodeFromCountryCode($countrycode) 'si-LK', 'sk-SK', 'sl-SI', - 'sma-NO', - 'sma-SE', - 'smj-NO', - 'smj-SE', - 'smn-FI', - 'sms-FI', 'sq-AL', - 'sr-Cyrl-BA', - 'sr-Cyrl-CS', - 'sr-Cyrl-ME', - 'sr-Cyrl-RS', - 'sr-Latn-BA', - 'sr-Latn-CS', - 'sr-Latn-ME', - 'sr-Latn-RS', 'sv-FI', 'sv-SE', 'sw-KE', 'syr-SY', 'ta-IN', 'te-IN', - 'tg-Cyrl-TJ', 'th-TH', 'tk-TM', 'tn-ZA', 'tr-TR', 'tt-RU', - 'tzm-Latn-DZ', 'ug-CN', 'uk-UA', 'ur-PK', - 'uz-Cyrl-UZ', - 'uz-Latn-UZ', 'vi-VN', 'wo-SN', 'xh-ZA', @@ -7016,14 +6977,17 @@ function getLanguageCodeFromCountryCode($countrycode) 'zu-ZA', ); + $buildprimarykeytotest = strtolower($countrycode).'-'.strtoupper($countrycode); + if (in_array($buildprimarykeytotest, $locales)) return strtolower($countrycode).'_'.strtoupper($countrycode); + foreach ($locales as $locale) { - $locale_region = locale_get_region($locale); $locale_language = locale_get_primary_language($locale); - $locale_array = array('language' => $locale_language, 'region' => $locale_region); + $locale_region = locale_get_region($locale); if (strtoupper($countrycode) == $locale_region) { - return locale_compose($locale_array); + //var_dump($locale.'-'.$locale_language.'-'.$locale_region); + return strtolower($locale_language).'_'.strtoupper($locale_region); } } diff --git a/test/phpunit/FunctionsLibTest.php b/test/phpunit/FunctionsLibTest.php index daaa0dda2f5..b693290b9c4 100644 --- a/test/phpunit/FunctionsLibTest.php +++ b/test/phpunit/FunctionsLibTest.php @@ -48,7 +48,7 @@ if (! defined("NOLOGIN")) define("NOLOGIN",'1'); // If this page is * @backupStaticAttributes enabled * @remarks backupGlobals must be disabled to have db,conf,user and lang not erased. */ -class FunctionsLibTest extends PHPUnit_Framework_TestCase +class FunctionsLibTest extends PHPUnit\Framework\TestCase { protected $savconf; protected $savuser; @@ -325,6 +325,57 @@ class FunctionsLibTest extends PHPUnit_Framework_TestCase } + /** + * testGetLanguageCodeFromCountryCode + * + * @return void + */ + public function testGetLanguageCodeFromCountryCode() + { + global $mysoc; + + $language = getLanguageCodeFromCountryCode('US'); + $this->assertEquals('en_US', $language, 'US'); + + $language = getLanguageCodeFromCountryCode('ES'); + $this->assertEquals('es_ES', $language, 'ES'); + + $language = getLanguageCodeFromCountryCode('CL'); + $this->assertEquals('es_CL', $language, 'CL'); + + $language = getLanguageCodeFromCountryCode('CA'); + $this->assertEquals('en_CA', $language, 'CA'); + + $language = getLanguageCodeFromCountryCode('MQ'); + $this->assertEquals('fr_CA', $language); + + $language = getLanguageCodeFromCountryCode('FR'); + $this->assertEquals('fr_FR', $language); + + $language = getLanguageCodeFromCountryCode('BE'); + $this->assertEquals('fr_BE', $language); + + $mysoc->country_code = 'FR'; + $language = getLanguageCodeFromCountryCode('CH'); + $this->assertEquals('fr_CH', $language); + + $mysoc->country_code = 'DE'; + $language = getLanguageCodeFromCountryCode('CH'); + $this->assertEquals('de_CH', $language); + + $language = getLanguageCodeFromCountryCode('DE'); + $this->assertEquals('de_DE', $language); + + $language = getLanguageCodeFromCountryCode('SA'); + $this->assertEquals('ar_SA', $language); + + $language = getLanguageCodeFromCountryCode('SE'); + $this->assertEquals('sv_SE', $language); + + $language = getLanguageCodeFromCountryCode('DK'); + $this->assertEquals('da_DK', $language); + } + /** * testDolTextIsHtml * From 463aff45407bf6905352709249fc6087b1a87513 Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Wed, 21 Nov 2018 16:54:40 +0100 Subject: [PATCH 511/769] Cash drawer button --- htdocs/takepos/takepos.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/htdocs/takepos/takepos.php b/htdocs/takepos/takepos.php index 8dec143bffe..c84f283d9f2 100644 --- a/htdocs/takepos/takepos.php +++ b/htdocs/takepos/takepos.php @@ -36,7 +36,7 @@ $place = GETPOST('place','int'); if ($place=="") $place="0"; $action = GETPOST('action','alpha'); -$langs->loadLangs(array("bills","orders","commercial","cashdesk")); +$langs->loadLangs(array("bills","orders","commercial","cashdesk","receiptprinter")); /* @@ -292,6 +292,14 @@ function TakeposPrintingOrder(){ }); } +function OpenDrawer(){ + $.ajax({ + type: "POST", + url: 'http://global->TAKEPOS_PRINT_SERVER;?>:8111/print', + data: "opendrawer" + }); +} + $( document ).ready(function() { PrintCategories(0); LoadProducts(0); @@ -347,6 +355,10 @@ if($conf->global->TAKEPOS_BAR_RESTAURANT){ 'action'=>'TakeposPrintingOrder();'); } } +if ($conf->global->TAKEBOX){ + $menus[$r++]=array('title'=>$langs->trans("DOL_OPEN_DRAWER"), + 'action'=>'OpenDrawer();'); +} ?>
Date: Wed, 21 Nov 2018 19:50:55 +0100 Subject: [PATCH 512/769] Fix sql don.class.php --- htdocs/don/class/don.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/don/class/don.class.php b/htdocs/don/class/don.class.php index 5e035febd14..b6604133c31 100644 --- a/htdocs/don/class/don.class.php +++ b/htdocs/don/class/don.class.php @@ -653,7 +653,7 @@ class Don extends CommonObject } else if (! empty($ref)) { - $sql.= " AND ref='".$this->db->escape($ref)."'"; + $sql.= " AND d.ref='".$this->db->escape($ref)."'"; } dol_syslog(get_class($this)."::fetch", LOG_DEBUG); From 491270b27f9c128f699f7865ef8bc82fa1afb7eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 21 Nov 2018 23:06:52 +0100 Subject: [PATCH 513/769] try to fix the expensereport pdf --- .../doc/pdf_standard.modules.php | 385 ++++++++++-------- 1 file changed, 204 insertions(+), 181 deletions(-) diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index ec03a2cef8e..7e7d58047b9 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -1,7 +1,8 @@ - * Copyright (C) 2015 Alexandre Spangaro - * Copyright (C) 2016-2018 Philippe Grand +/* Copyright (C) 2015 Laurent Destailleur + * Copyright (C) 2015 Alexandre Spangaro + * Copyright (C) 2016-2018 Philippe Grand + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -150,7 +151,7 @@ class pdf_standard extends ModeleExpenseReport $this->option_freetext = 1; // Support add of a personalised text $this->option_draft_watermark = 1; // Support add of a watermark on drafts - $this->franchise=!$mysoc->tva_assuj; + $this->franchise = !$mysoc->tva_assuj; // Get source company $this->emetteur=$mysoc; @@ -159,19 +160,19 @@ class pdf_standard extends ModeleExpenseReport // Define position of columns $this->posxpiece=$this->marge_gauche+1; $this->posxcomment=$this->marge_gauche+10; - $this->posxdate=88; - $this->posxtype=107; - $this->posxprojet=120; - $this->posxtva=138; - $this->posxup=154; + //$this->posxdate=88; + //$this->posxtype=107; + //$this->posxprojet=120; + $this->posxtva=130; + $this->posxup=145; $this->posxqty=168; $this->postotalttc=178; - if (empty($conf->projet->enabled)) { - $this->posxtva-=20; - $this->posxup-=20; - $this->posxqty-=20; - $this->postotalttc-=20; - } + // if (empty($conf->projet->enabled)) { + // $this->posxtva-=20; + // $this->posxup-=20; + // $this->posxqty-=20; + // $this->postotalttc-=20; + // } if ($this->page_largeur < 210) // To work with US executive format { $this->posxdate-=20; @@ -202,10 +203,10 @@ class pdf_standard extends ModeleExpenseReport * @param int $hideref Do not show ref * @return int 1=OK, 0=KO */ - function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0) + function write_file($object, $outputlangs, $srctemplatepath = '', $hidedetails = 0, $hidedesc = 0, $hideref = 0) { // phpcs:enable - global $user,$langs,$conf,$mysoc,$db,$hookmanager; + global $user, $langs, $conf, $mysoc, $db, $hookmanager; if (! is_object($outputlangs)) $outputlangs=$langs; // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO @@ -216,11 +217,9 @@ class pdf_standard extends ModeleExpenseReport $nblignes = count($object->lines); - if ($conf->expensereport->dir_output) - { + if ($conf->expensereport->dir_output) { // Definition of $dir and $file - if ($object->specimen) - { + if ($object->specimen) { $dir = $conf->expensereport->dir_output; $file = $dir . "/SPECIMEN.pdf"; } @@ -258,7 +257,7 @@ class pdf_standard extends ModeleExpenseReport $default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance $heightforinfotot = 40; // Height reserved to output the info and total part $heightforfreetext= (isset($conf->global->MAIN_PDF_FREETEXT_HEIGHT)?$conf->global->MAIN_PDF_FREETEXT_HEIGHT:5); // Height reserved to output the free text on last page - $heightforfooter = $this->marge_basse + 8; // Height reserved to output the footer (value include bottom margin) + $heightforfooter = $this->marge_basse + 12; // Height reserved to output the footer (value include bottom margin) $pdf->SetAutoPageBreak(1,0); if (class_exists('TCPDF')) @@ -344,82 +343,47 @@ class pdf_standard extends ModeleExpenseReport $nexY = $tab_top + 7; // Loop on each lines - for ($i = 0 ; $i < $nblignes ; $i++) - { - $piece_comptable = $i +1; - + for ($i = 0 ; $i < $nblignes ; $i++) { $pdf->SetFont('','', $default_font_size - 2); // Into loop to work with multipage $pdf->SetTextColor(0,0,0); $pdf->setTopMargin($tab_top_newpage); $pdf->setPageOrientation('', 1, $heightforfooter+$heightforfreetext+$heightforinfotot); // The only function to edit the bottom margin of current page to set it. - $pageposbefore=$pdf->getPage(); + $pageposbefore = $pdf->getPage(); $curY = $nexY; - - $pdf->SetFont('','', $default_font_size - 1); - - // Accountancy piece - $pdf->SetXY($this->posxpiece, $curY); - $pdf->writeHTMLCell($this->posxcomment-$this->posxpiece-0.8, 4, $this->posxpiece-1, $curY, $piece_comptable, 0, 1); - $curY = ($pdf->PageNo() > $pageposbefore) ? $pdf->GetY()-4 : $curY; - - // Comments - $pdf->SetXY($this->posxcomment, $curY ); - $pdf->writeHTMLCell($this->posxdate-$this->posxcomment-0.8, 4, $this->posxcomment-1, $curY, $object->lines[$i]->comments, 0, 1); - $curY = ($pdf->PageNo() > $pageposbefore) ? $pdf->GetY()-4 : $curY; - - // Date - $pdf->SetXY($this->posxdate -1, $curY); - $pdf->MultiCell($this->posxtype-$this->posxdate-0.8, 4, dol_print_date($object->lines[$i]->date,"day",false,$outputlangs), 0, 'C'); - - // Type - $pdf->SetXY($this->posxtype -1, $curY); - $nextColumnPosX = $this->posxup; - if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { - $nextColumnPosX = $this->posxtva; - } - if (!empty($conf->projet->enabled)) { - $nextColumnPosX = $this->posxprojet; - } - - $expensereporttypecode = $object->lines[$i]->type_fees_code; - $expensereporttypecodetoshow = $outputlangs->transnoentities($expensereporttypecode); - if ($expensereporttypecodetoshow == $expensereporttypecode) - { - $expensereporttypecodetoshow = preg_replace('/^(EX_|TF_)/', '', $expensereporttypecodetoshow); - } - $expensereporttypecodetoshow = dol_trunc($expensereporttypecodetoshow, 9); // 10 is too much - - $pdf->MultiCell($nextColumnPosX-$this->posxtype-0.8, 4, $expensereporttypecodetoshow, 0, 'C'); - - // Project - if (! empty($conf->projet->enabled)) + $pdf->startTransaction(); + $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs); + $pageposafter=$pdf->getPage(); + if ($pageposafter > $pageposbefore) { + // There is a pagebreak + $pdf->rollbackTransaction(true); + $pageposafter = $pageposbefore; + //print $pageposafter.'-'.$pageposbefore;exit; + $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. + $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs); + $pageposafter = $pdf->getPage(); + $posyafter = $pdf->GetY(); + //var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit; + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))) { + // There is no space left for total+free text + if ($i == ($nblignes-1)) { + // No more lines, and no space left to show total, so we create a new page + $pdf->AddPage('', '', true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $pdf->setPage($pageposafter+1); + } + } + else + { + // We found a page break + $showpricebeforepagebreak=0; + } + } + else // No pagebreak { - $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($this->posxprojet, $curY); - $pdf->MultiCell($this->posxtva-$this->posxprojet-0.8, 4, $object->lines[$i]->projet_ref, 0, 'C'); - } - - // VAT Rate - if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) - { - $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); - $pdf->SetXY($this->posxtva, $curY); - $pdf->MultiCell($this->posxup-$this->posxtva-0.8, 4,$vat_rate, 0, 'C'); - } - - // Unit price - $pdf->SetXY($this->posxup, $curY); - $pdf->MultiCell($this->posxqty-$this->posxup-0.8, 4,price($object->lines[$i]->value_unit), 0, 'R'); - - // Quantity - $pdf->SetXY($this->posxqty, $curY); - $pdf->MultiCell($this->postotalttc-$this->posxqty-0.8, 4,$object->lines[$i]->qty, 0, 'R'); - - // Total with all taxes - $pdf->SetXY($this->postotalttc-1, $curY); - $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalttc, 4, price($object->lines[$i]->total_ttc), 0, 'R'); - + $pdf->commitTransaction(); + } //nexY $nexY = $pdf->GetY(); $pageposafter=$pdf->getPage(); @@ -427,22 +391,23 @@ class pdf_standard extends ModeleExpenseReport $pdf->setTopMargin($this->marge_haute); $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. - $nblineFollowComment = 1; + //$nblineFollowComment = 1; // Cherche nombre de lignes a venir pour savoir si place suffisante - if ($i < ($nblignes - 1)) // If it's not last line - { - //Fetch current description to know on which line the next one should be placed - $follow_comment = $object->lines[$i]->comments; - $follow_type = $object->lines[$i]->type_fees_code; + // if ($i < ($nblignes - 1)) // If it's not last line + // { + // //Fetch current description to know on which line the next one should be placed + // $follow_comment = $object->lines[$i]->comments; + // $follow_type = $object->lines[$i]->type_fees_code; - //on compte le nombre de ligne afin de verifier la place disponible (largeur de ligne 52 caracteres) - $nbLineCommentNeed = dol_nboflines_bis($follow_comment,52,$outputlangs->charset_output); - $nbLineTypeNeed = dol_nboflines_bis($follow_type,4,$outputlangs->charset_output); + // //on compte le nombre de ligne afin de verifier la place disponible (largeur de ligne 52 caracteres) + // $nbLineCommentNeed = dol_nboflines_bis($follow_comment,52,$outputlangs->charset_output); + // $nbLineTypeNeed = dol_nboflines_bis($follow_type,4,$outputlangs->charset_output); - $nblineFollowComment = max($nbLineCommentNeed, $nbLineTypeNeed); - } + // $nblineFollowComment = max($nbLineCommentNeed, $nbLineTypeNeed); + // } - $nexY+=$nblineFollowComment*($pdf->getFontSize()*1.3); // Passe espace entre les lignes + //$nexY+=$nblineFollowComment*($pdf->getFontSize()*1.3); // Passe espace entre les lignes + $nexY += ($pdf->getFontSize()*1.3); // Passe espace entre les lignes // Detect if some page were added automatically and output _tableau for past pages while ($pagenb < $pageposafter) @@ -524,7 +489,7 @@ class pdf_standard extends ModeleExpenseReport // Pied de page $this->_pagefoot($pdf,$object,$outputlangs); - if (method_exists($pdf,'AliasNbPages')) $pdf->AliasNbPages(); + if (method_exists($pdf,'AliasNbPages')) $pdf->AliasNbPage(); $pdf->Close(); @@ -556,7 +521,86 @@ class pdf_standard extends ModeleExpenseReport } } - /** + /** + * @param PDF $pdf Object PDF + * @param Object $object Object to show + * @param int $linenumber line number + * @param int $curY current y position + * @param int $default_font_size default siez of font + * @param Translate $outputlangs Object lang for output + * @return void + */ + private function printLine(&$pdf, $object, $linenumber, $curY, $default_font_size, $outputlangs) + { + global $conf; + $pdf->SetFont('','', $default_font_size - 1); + + // Accountancy piece + $pdf->SetXY($this->posxpiece, $curY); + $pdf->writeHTMLCell($this->posxcomment-$this->posxpiece-0.8, 4, $this->posxpiece-1, $curY, $linenumber + 1, 0, 1); + + // Date + //$pdf->SetXY($this->posxdate -1, $curY); + //$pdf->MultiCell($this->posxtype-$this->posxdate-0.8, 4, dol_print_date($object->lines[$linenumber]->date,"day",false,$outputlangs), 0, 'C'); + + // Type + $pdf->SetXY($this->posxtype -1, $curY); + $nextColumnPosX = $this->posxup; + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { + $nextColumnPosX = $this->posxtva; + } + if (!empty($conf->projet->enabled)) { + $nextColumnPosX = $this->posxprojet; + } + + $expensereporttypecode = $object->lines[$linenumber]->type_fees_code; + $expensereporttypecodetoshow = $outputlangs->trans($expensereporttypecode); + if ($expensereporttypecodetoshow == $expensereporttypecode) { + $expensereporttypecodetoshow = preg_replace('/^(EX_|TF_)/', '', $expensereporttypecodetoshow); + } + //$expensereporttypecodetoshow = dol_trunc($expensereporttypecodetoshow, 9); + + //$pdf->MultiCell($nextColumnPosX-$this->posxtype-0.8, 4, $expensereporttypecodetoshow, 0, 'C'); + + // Project + //if (! empty($conf->projet->enabled)) + //{ + // $pdf->SetFont('','', $default_font_size - 1); + // $pdf->SetXY($this->posxprojet, $curY); + // $pdf->MultiCell($this->posxtva-$this->posxprojet-0.8, 4, $object->lines[$linenumber]->projet_ref, 0, 'C'); + //} + + // VAT Rate + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { + $vat_rate = pdf_getlinevatrate($object, $linenumber, $outputlangs, $hidedetails); + $pdf->SetXY($this->posxtva, $curY); + $pdf->MultiCell($this->posxup-$this->posxtva-0.8, 4,$vat_rate, 0, 'R'); + } + + // Unit price + $pdf->SetXY($this->posxup, $curY); + $pdf->MultiCell($this->posxqty-$this->posxup-0.8, 4,price($object->lines[$linenumber]->value_unit), 0, 'R'); + + // Quantity + $pdf->SetXY($this->posxqty, $curY); + $pdf->MultiCell($this->postotalttc-$this->posxqty-0.8, 4,$object->lines[$linenumber]->qty, 0, 'R'); + + // Total with all taxes + $pdf->SetXY($this->postotalttc-1, $curY); + $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalttc, 4, price($object->lines[$linenumber]->total_ttc), 0, 'R'); + + // Comments + $pdf->SetXY($this->posxcomment, $curY ); + $comment = $outputlangs->trans("Date").':'. dol_print_date($object->lines[$linenumber]->date,"day",false,$outputlangs).' '; + $comment .= $outputlangs->trans("Type").':'. $expensereporttypecodetoshow.'
'; + if (! empty($object->lines[$linenumber]->projet_ref)) { + $comment .= $outputlangs->trans("Project").':'. $object->lines[$linenumber]->projet_ref.'
'; + } + $comment .= $object->lines[$linenumber]->comments; + $pdf->writeHTMLCell($this->posxtva-$this->posxcomment-0.8, 4, $this->posxcomment-1, $curY, $comment, 0, 1); + } + + /** * Show top header of page. * * @param PDF $pdf Object PDF @@ -583,13 +627,12 @@ class pdf_standard extends ModeleExpenseReport */ // Draft watermark - if ($object->fk_statut == 0 && ! empty($conf->global->EXPENSEREPORT_DRAFT_WATERMARK)) - { + if ($object->fk_statut == 0 && ! empty($conf->global->EXPENSEREPORT_DRAFT_WATERMARK)) { pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->EXPENSEREPORT_DRAFT_WATERMARK); } - $pdf->SetTextColor(0,0,60); - $pdf->SetFont('','B', $default_font_size + 3); + $pdf->SetTextColor(0, 0, 60); + $pdf->SetFont('', 'B', $default_font_size + 3); $posy=$this->marge_haute; $posx=$this->page_largeur-$this->marge_droite-100; @@ -597,16 +640,12 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetXY($this->marge_gauche,$posy); // Logo - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; - if ($this->emetteur->logo) - { - if (is_readable($logo)) - { + $logo = $conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + if ($this->emetteur->logo) { + if (is_readable($logo)) { $height=pdf_getHeightForLogo($logo); $pdf->Image($logo, $this->marge_gauche, $posy, 0, $height); // width=0 (auto) - } - else - { + } else { $pdf->SetTextColor(200,0,0); $pdf->SetFont('','B', $default_font_size -2); $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L'); @@ -651,8 +690,7 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetTextColor(111,81,124); $pdf->MultiCell($this->page_largeur-$this->marge_droite-$posx, 3, $object->getLibStatut(0), '', 'R'); - if ($showaddress) - { + if ($showaddress) { // Sender properties $carac_emetteur = ''; $carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$outputlangs->convToOutputCharset($this->emetteur->address); @@ -674,14 +712,14 @@ class pdf_standard extends ModeleExpenseReport if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=118; // Show sender frame - $pdf->SetTextColor(0,0,0); + $pdf->SetTextColor(0, 0, 0); $pdf->SetFont('','B', $default_font_size - 2); $pdf->SetXY($posx,$posy-5); $pdf->MultiCell(66,5, $outputlangs->transnoentities("TripSociete")." :",'','L'); $pdf->SetXY($posx,$posy); $pdf->SetFillColor(224,224,224); $pdf->MultiCell(82, $hautcadre, "", 0, 'R', 1); - $pdf->SetTextColor(0,0,60); + $pdf->SetTextColor(0, 0, 60); // Show sender name $pdf->SetXY($posx+2,$posy+3); @@ -690,7 +728,7 @@ class pdf_standard extends ModeleExpenseReport // Show sender information $pdf->SetXY($posx+2,$posy+8); - $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetFont('', '', $default_font_size - 1); $pdf->MultiCell(80, 4, $carac_emetteur, 0, 'L'); // Show recipient @@ -698,15 +736,14 @@ class pdf_standard extends ModeleExpenseReport $posx=100; // Show recipient frame - $pdf->SetTextColor(0,0,0); - $pdf->SetFont('','B',8); + $pdf->SetTextColor(0, 0, 0); + $pdf->SetFont('', 'B', 8); $pdf->SetXY($posx,$posy-5); - $pdf->MultiCell(80,5, $outputlangs->transnoentities("TripNDF")." :", 0, 'L'); + $pdf->MultiCell(80, 5, $outputlangs->transnoentities("TripNDF")." :", 0, 'L'); $pdf->rect($posx, $posy, $this->page_largeur - $this->marge_gauche - $posx, $hautcadre); // Informations for trip (dates and users workflow) - if ($object->fk_user_author > 0) - { + if ($object->fk_user_author > 0) { $userfee=new User($this->db); $userfee->fetch($object->fk_user_author); $posy+=3; $pdf->SetXY($posx+2,$posy); @@ -719,8 +756,7 @@ class pdf_standard extends ModeleExpenseReport if ($object->fk_statut==99) { - if ($object->fk_user_refuse > 0) - { + if ($object->fk_user_refuse > 0) { $userfee=new User($this->db); $userfee->fetch($object->fk_user_refuse); $posy+=6; $pdf->SetXY($posx+2,$posy); @@ -735,8 +771,7 @@ class pdf_standard extends ModeleExpenseReport } else if($object->fk_statut==4) { - if ($object->fk_user_cancel > 0) - { + if ($object->fk_user_cancel > 0) { $userfee=new User($this->db); $userfee->fetch($object->fk_user_cancel); $posy+=6; $pdf->SetXY($posx+2,$posy); @@ -751,8 +786,7 @@ class pdf_standard extends ModeleExpenseReport } else { - if ($object->fk_user_approve > 0) - { + if ($object->fk_user_approve > 0) { $userfee=new User($this->db); $userfee->fetch($object->fk_user_approve); $posy+=6; $pdf->SetXY($posx+2,$posy); @@ -763,10 +797,8 @@ class pdf_standard extends ModeleExpenseReport } } - if($object->fk_statut==6) - { - if ($object->fk_user_paid > 0) - { + if($object->fk_statut==6) { + if ($object->fk_user_paid > 0) { $userfee=new User($this->db); $userfee->fetch($object->fk_user_paid); $posy+=6; $pdf->SetXY($posx+2,$posy); @@ -805,8 +837,8 @@ class pdf_standard extends ModeleExpenseReport // Amount in (at tab_top - 1) $pdf->SetTextColor(0,0,0); - $pdf->SetFont('','', $default_font_size - 2); - $titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$currency)); + $pdf->SetFont('', '', $default_font_size - 2); + $titre = $outputlangs->transnoentities("AmountInCurrency", $outputlangs->transnoentitiesnoconv("Currency".$currency)); $pdf->SetXY($this->page_largeur - $this->marge_droite - ($pdf->GetStringWidth($titre) + 4), $tab_top -4); $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); @@ -815,61 +847,55 @@ class pdf_standard extends ModeleExpenseReport // Rect prend une longueur en 3eme param $pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height); // line prend une position y en 3eme param - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->line($this->marge_gauche, $tab_top+5, $this->page_largeur-$this->marge_droite, $tab_top+5); } $pdf->SetFont('','',8); // Accountancy piece - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->posxpiece-1, $tab_top+1); - $pdf->MultiCell($this->posxcomment-$this->posxpiece-1,1,'','','R'); + $pdf->MultiCell($this->posxcomment-$this->posxpiece-1, 1, '', '', 'R'); } // Comments $pdf->line($this->posxcomment-1, $tab_top, $this->posxcomment-1, $tab_top + $tab_height); - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->posxcomment-1, $tab_top+1); - $pdf->MultiCell($this->posxdate-$this->posxcomment-1,1,$outputlangs->transnoentities("Description"),'','L'); + $pdf->MultiCell($this->posxdate-$this->posxcomment-1, 1, $outputlangs->transnoentities("Description"),'','L'); } // Date - $pdf->line($this->posxdate-1, $tab_top, $this->posxdate-1, $tab_top + $tab_height); - if (empty($hidetop)) - { - $pdf->SetXY($this->posxdate-1, $tab_top+1); - $pdf->MultiCell($this->posxtype-$this->posxdate-1,2, $outputlangs->transnoentities("Date"),'','C'); - } + //$pdf->line($this->posxdate-1, $tab_top, $this->posxdate-1, $tab_top + $tab_height); + //if (empty($hidetop)) + //{ + // $pdf->SetXY($this->posxdate-1, $tab_top+1); + // $pdf->MultiCell($this->posxtype-$this->posxdate-1,2, $outputlangs->transnoentities("Date"),'','C'); + //} // Type - $pdf->line($this->posxtype-1, $tab_top, $this->posxtype-1, $tab_top + $tab_height); - if (empty($hidetop)) - { - $pdf->SetXY($this->posxtype-1, $tab_top+1); - $pdf->MultiCell($this->posxprojet-$this->posxtype - 1, 2, $outputlangs->transnoentities("Type"), '', 'C'); - } + //$pdf->line($this->posxtype-1, $tab_top, $this->posxtype-1, $tab_top + $tab_height); + //if (empty($hidetop)) + //{ + // $pdf->SetXY($this->posxtype-1, $tab_top+1); + // $pdf->MultiCell($this->posxprojet-$this->posxtype - 1, 2, $outputlangs->transnoentities("Type"), '', 'C'); + //} - if (!empty($conf->projet->enabled)) - { - // Project - $pdf->line($this->posxprojet - 1, $tab_top, $this->posxprojet - 1, $tab_top + $tab_height); - if (empty($hidetop)) - { - $pdf->SetXY($this->posxprojet - 1, $tab_top + 1); - $pdf->MultiCell($this->posxtva - $this->posxprojet - 1, 2, $outputlangs->transnoentities("Project"), '', 'C'); - } - } + //if (!empty($conf->projet->enabled)) + //{ + // // Project + // $pdf->line($this->posxprojet - 1, $tab_top, $this->posxprojet - 1, $tab_top + $tab_height); + // if (empty($hidetop)) { + // $pdf->SetXY($this->posxprojet - 1, $tab_top + 1); + // $pdf->MultiCell($this->posxtva - $this->posxprojet - 1, 2, $outputlangs->transnoentities("Project"), '', 'C'); + // } + //} // VAT - if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) - { + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { $pdf->line($this->posxtva-1, $tab_top, $this->posxtva-1, $tab_top + $tab_height); - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->posxtva-1, $tab_top+1); $pdf->MultiCell($this->posxup-$this->posxtva - 1, 2, $outputlangs->transnoentities("VAT"), '', 'C'); } @@ -877,24 +903,21 @@ class pdf_standard extends ModeleExpenseReport // Unit price $pdf->line($this->posxup-1, $tab_top, $this->posxup-1, $tab_top + $tab_height); - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->posxup-1, $tab_top+1); $pdf->MultiCell($this->posxqty-$this->posxup-1,2, $outputlangs->transnoentities("PriceU"),'','C'); } // Quantity $pdf->line($this->posxqty-1, $tab_top, $this->posxqty-1, $tab_top + $tab_height); - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->posxqty-1, $tab_top+1); $pdf->MultiCell($this->postotalttc-$this->posxqty - 1,2, $outputlangs->transnoentities("Qty"),'','R'); } // Total with all taxes $pdf->line($this->postotalttc, $tab_top, $this->postotalttc, $tab_top + $tab_height); - if (empty($hidetop)) - { + if (empty($hidetop)) { $pdf->SetXY($this->postotalttc-1, $tab_top+1); $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalttc, 2, $outputlangs->transnoentities("TotalTTC"),'','R'); } @@ -914,7 +937,7 @@ class pdf_standard extends ModeleExpenseReport function _pagefoot(&$pdf,$object,$outputlangs,$hidefreetext=0) { global $conf; - $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; - return pdf_pagefoot($pdf,$outputlangs,'EXPENSEREPORT_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + $showdetails = $conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; + return pdf_pagefoot($pdf, $outputlangs, 'EXPENSEREPORT_FREE_TEXT', $this->emetteur, $this->marge_basse, $this->marge_gauche, $this->page_hauteur, $object, $showdetails, $hidefreetext); } } From 21e9c02b11909a5c8db7ccaa09c4d88accc2fa16 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 10:40:15 +0100 Subject: [PATCH 514/769] Performance enhancement in Accounting Personalized report --- .../class/accountancycategory.class.php | 18 +++++++--- htdocs/compta/resultat/clientfourn.php | 2 +- htdocs/compta/resultat/result.php | 33 ++++++++++++------- 3 files changed, 35 insertions(+), 18 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index e2a7b14033c..6c389f20239 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -713,27 +713,36 @@ class AccountancyCategory // extends CommonObject * Function to show result of an accounting account from the ledger with a direction and a period * * @param int $cpt Id accounting account - * @param string $month Specifig month - Can be empty * @param string $date_start Date start * @param string $date_end Date end * @param int $sens Sens of the account: 0: credit - debit, 1: debit - credit * @param string $thirdparty_code Thirdparty code + * @param string $month Specifig month - Can be empty + * @param string $year Specifig year - Can be empty * @return integer Result in table */ - public function getResult($cpt, $month, $date_start, $date_end, $sens, $thirdparty_code='nofilter') + public function getSumDebitCredit($cpt, $date_start, $date_end, $sens, $thirdparty_code='nofilter', $month=0, $year=0) { $sql = "SELECT SUM(t.debit) as debit, SUM(t.credit) as credit"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as t"; - $sql .= " WHERE t.numero_compte = '" . $cpt."'"; + $sql .= " WHERE t.numero_compte = '" . $this->db->escape($cpt) . "'"; + /* if (! empty($date_start) && ! empty($date_end)) $sql.= " AND t.doc_date >= '".$this->db->idate($date_start)."' AND t.doc_date <= '".$this->db->idate($date_end)."'"; if (! empty($month)) { $sql .= " AND MONTH(t.doc_date) = " . $month; } + */ + if (! empty($date_start) && ! empty($date_end)) + $sql .= " AND t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."'"; + if (! empty($month) && ! empty($year)) { + $sql .= " AND t.doc_date BETWEEN '".$this->db->idate(dol_get_first_day($year, $month))."' AND '".$this->db->idate(dol_get_last_day($year, $month))."'"; + } if ($thirdparty_code != 'nofilter') { $sql .= " AND thirdparty_code = '".$this->db->escape($thirdparty_code)."'"; } + //print $sql; dol_syslog(__METHOD__ . " sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); @@ -856,13 +865,12 @@ class AccountancyCategory // extends CommonObject if ($num) { while ($obj = $this->db->fetch_object($resql)) { - $name_cat = $obj->name_cat; $data[] = array ( 'id' => $obj->rowid, 'account_number' => $obj->account_number, 'account_label' => $obj->account_label, ); - $i ++; + $i++; } } return $data; diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php index e08ebb17ed1..ee94b4ab5fc 100644 --- a/htdocs/compta/resultat/clientfourn.php +++ b/htdocs/compta/resultat/clientfourn.php @@ -303,7 +303,7 @@ if ($modecompta == 'BOOKKEEPING') foreach($cpts as $i => $cpt) { - $return = $AccCat->getResult($cpt['account_number'], 0, $date_start, $date_end, $cpt['dc']); + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultN=0; diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index c4a6e2ec755..3f53cfdc27c 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -78,7 +78,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end { // We define date_start and date_end $year_end=$year_start + ($nbofyear - 1); - $month_start=GETPOST("month")?GETPOST("month"):($conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START):1); + $month_start=GETPOST("month",'int')?GETPOST("month",'int'):($conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START):1); $date_startmonth = $month_start; if (! GETPOST('month')) { @@ -108,8 +108,10 @@ if (($date_start < dol_time_plus_duree($date_end, -1, 'y')) || ($date_start > $d // $date_start and $date_end are defined. We force $start_year and $nbofyear $tmps=dol_getdate($date_start); $start_year = $tmps['year']; +$start_month = $tmps['mon']; $tmpe=dol_getdate($date_end); $year_end = $tmpe['year']; +$month_end = $tmpe['mon']; $nbofyear = ($year_end - $start_year) + 1; $date_start_previous = dol_time_plus_duree($date_start, -1, 'y'); @@ -374,7 +376,6 @@ elseif ($modecompta=="BOOKKEEPING") } } - print "
\n"; //var_dump($sommes); @@ -390,7 +391,7 @@ elseif ($modecompta=="BOOKKEEPING") $totCat['M'][$k] = 0; } - // Set $cpts of with array of accounts in the category/group + // Set $cpts with array of accounts in the category/group $cpts = $AccCat->getCptsCat($cat['rowid']); print ""; @@ -428,13 +429,15 @@ elseif ($modecompta=="BOOKKEEPING") $code = $cat['code']; - // Set value into column NPrevious, N and each month M ($totCat) - // This make 14 calls for each detail of account (NP, N and month m) - foreach($cpts as $i => $cpt) + // Set value into column N-1, N and each month M ($totCat) + // This make 14 calls for each detail of account (N-1, N and 12 monthes m) + foreach($cpts as $i => $cpt) // Loop on each account. { - // N-1 - $return = $AccCat->getResult($cpt['account_number'], 0, $date_start_previous, $date_end_previous, $cpt['dc']); + // We make 1 loop for each account because we may want detail. + // @TODO Optimize mode when $showaccountdetail == 'no' + // N-1 + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start_previous, $date_end_previous, $cpt['dc']); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultNP=0; @@ -442,8 +445,8 @@ elseif ($modecompta=="BOOKKEEPING") $resultNP=$AccCat->sdc; } - //N - $return = $AccCat->getResult($cpt['account_number'], 0, $date_start, $date_end, $cpt['dc']); + // N + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultN=0; @@ -458,9 +461,15 @@ elseif ($modecompta=="BOOKKEEPING") $totPerAccount[$cpt['account_number']]['NP'] = $resultNP; $totPerAccount[$cpt['account_number']]['N'] = $resultN; + // Each month foreach($months as $k => $v) { - $return = $AccCat->getResult($cpt['account_number'], $k+1, $date_start, $date_end, $cpt['dc']); + $monthtoprocess = $k+1; // ($k+1) is month 1, 2, ..., 12 + $yeartoprocess = $start_year; + if (($k+1) < $start_month) $yeartoprocess++; + + //var_dump($monthtoprocess.'_'.$yeartoprocess); + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc'], 'nofilter', $monthtoprocess, $yeartoprocess); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultM=0; @@ -488,7 +497,7 @@ elseif ($modecompta=="BOOKKEEPING") print "\n"; // Loop on detail of all accounts - // This make 14 calls for each detail of account (NP, N and month m) + // This make 14 calls for each detail of account (N-1, N and 12 monthes m) if ($showaccountdetail != 'no') { foreach($cpts as $i => $cpt) From 89138bc349a2f3fe89132fb14fd21012fb43f306 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 10:59:39 +0100 Subject: [PATCH 515/769] FIX Accounting personalized report when using multicompany --- .../class/accountancycategory.class.php | 57 ++++++++++--------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 6c389f20239..b70341e21f7 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -163,16 +163,17 @@ class AccountancyCategory // extends CommonObject // Insert request $sql = "INSERT INTO ".MAIN_DB_PREFIX."c_accounting_category("; - if ($this->rowid > 0) $sql.= "rowid,"; - $sql.= "code,"; - $sql.= "label,"; - $sql.= "range_account,"; - $sql.= "sens,"; - $sql.= "category_type,"; - $sql.= "formula,"; - $sql.= "position,"; - $sql.= "fk_country,"; - $sql.= "active"; + if ($this->rowid > 0) $sql.= "rowid, "; + $sql.= "code, "; + $sql.= "label, "; + $sql.= "range_account, "; + $sql.= "sens, "; + $sql.= "category_type, "; + $sql.= "formula, "; + $sql.= "position, "; + $sql.= "fk_country, "; + $sql.= "active, "; + $sql.= "entity"; $sql.= ") VALUES ("; if ($this->rowid > 0) $sql.= " ".$this->rowid.","; $sql.= " ".(! isset($this->code)?'NULL':"'".$this->db->escape($this->code)."'").","; @@ -184,6 +185,7 @@ class AccountancyCategory // extends CommonObject $sql.= " ".(! isset($this->position)?'NULL':$this->db->escape($this->position)).","; $sql.= " ".(! isset($this->fk_country)?'NULL':$this->db->escape($this->fk_country)).","; $sql.= " ".(! isset($this->active)?'NULL':$this->db->escape($this->active)); + $sql.= ", ".$conf->entity; $sql.= ")"; $this->db->begin(); @@ -237,9 +239,8 @@ class AccountancyCategory // extends CommonObject * @param string $label Label * @return int <0 if KO, >0 if OK */ - function fetch($id,$code='',$label='') + function fetch($id, $code='', $label='') { - global $langs; $sql = "SELECT"; $sql.= " t.rowid,"; $sql.= " t.code,"; @@ -253,8 +254,12 @@ class AccountancyCategory // extends CommonObject $sql.= " t.active"; $sql.= " FROM ".MAIN_DB_PREFIX."c_accounting_category as t"; if ($id) $sql.= " WHERE t.rowid = ".$id; - elseif ($code) $sql.= " WHERE t.code = '".$this->db->escape($code)."'"; - elseif ($label) $sql.= " WHERE t.label = '".$this->db->escape($label)."'"; + else + { + $sql.= " WHERE t.entity IN (".getEntity('c_accounting_category').")"; // Dont't use entity if you use rowid + if ($code) $sql.= " AND t.code = '".$this->db->escape($code)."'"; + elseif ($label) $sql.= " AND t.label = '".$this->db->escape($label)."'"; + } dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $resql=$this->db->query($sql); @@ -480,7 +485,7 @@ class AccountancyCategory // extends CommonObject $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "accounting_system as asy ON aa.fk_pcg_version = asy.pcg_version"; $sql .= " AND asy.rowid = " . $conf->global->CHARTOFACCOUNTS; $sql .= " AND aa.active = 1"; - $sql .= " AND aa.entity = = " . $conf->entity . ")"; + $sql .= " AND aa.entity = " . $conf->entity . ")"; $sql .= " GROUP BY t.numero_compte, t.label_operation, t.doc_ref"; $sql .= " ORDER BY t.numero_compte"; @@ -723,25 +728,21 @@ class AccountancyCategory // extends CommonObject */ public function getSumDebitCredit($cpt, $date_start, $date_end, $sens, $thirdparty_code='nofilter', $month=0, $year=0) { + global $conf; + $sql = "SELECT SUM(t.debit) as debit, SUM(t.credit) as credit"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as t"; $sql .= " WHERE t.numero_compte = '" . $this->db->escape($cpt) . "'"; - /* - if (! empty($date_start) && ! empty($date_end)) - $sql.= " AND t.doc_date >= '".$this->db->idate($date_start)."' AND t.doc_date <= '".$this->db->idate($date_end)."'"; - if (! empty($month)) { - $sql .= " AND MONTH(t.doc_date) = " . $month; - } - */ - if (! empty($date_start) && ! empty($date_end)) + if (! empty($date_start) && ! empty($date_end) && (empty($month) || empty($year))) // If month/year provided, it is stronger than filter date_start/date_end $sql .= " AND t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."'"; if (! empty($month) && ! empty($year)) { $sql .= " AND t.doc_date BETWEEN '".$this->db->idate(dol_get_first_day($year, $month))."' AND '".$this->db->idate(dol_get_last_day($year, $month))."'"; } if ($thirdparty_code != 'nofilter') { - $sql .= " AND thirdparty_code = '".$this->db->escape($thirdparty_code)."'"; + $sql .= " AND t.thirdparty_code = '".$this->db->escape($thirdparty_code)."'"; } + $sql .= " AND t.entity = ".$conf->entity; //print $sql; dol_syslog(__METHOD__ . " sql=" . $sql, LOG_DEBUG); @@ -775,7 +776,7 @@ class AccountancyCategory // extends CommonObject */ public function getCats($categorytype=-1) { - global $db, $langs, $user, $mysoc, $conf; + global $conf, $mysoc; if (empty($mysoc->country_id)) { dol_print_error('', 'Call to select_accounting_account with mysoc country not yet defined'); @@ -784,7 +785,7 @@ class AccountancyCategory // extends CommonObject $sql = "SELECT c.rowid, c.code, c.label, c.formula, c.position, c.category_type"; $sql .= " FROM " . MAIN_DB_PREFIX . "c_accounting_category as c"; - $sql .= " WHERE c.active = 1 "; + $sql .= " WHERE c.active = 1"; $sql .= " AND c.entity = " . $conf->entity; if ($categorytype >= 0) $sql.=" AND c.category_type = 1"; $sql .= " AND (c.fk_country = ".$mysoc->country_id." OR c.fk_country = 0)"; @@ -832,7 +833,7 @@ class AccountancyCategory // extends CommonObject */ public function getCptsCat($cat_id, $predefinedgroupwhere='') { - global $mysoc; + global $conf, $mysoc; $sql = ''; if (empty($mysoc->country_id) && empty($mysoc->country_code)) { @@ -845,6 +846,7 @@ class AccountancyCategory // extends CommonObject $sql = "SELECT t.rowid, t.account_number, t.label as account_label"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as t"; $sql .= " WHERE t.fk_accounting_category = ".$cat_id; + $sql .= " AND t.entity = " . $conf->entity; $sql .= " ORDER BY t.account_number"; } else @@ -852,6 +854,7 @@ class AccountancyCategory // extends CommonObject $sql = "SELECT t.rowid, t.account_number, t.label as account_label"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as t"; $sql .= " WHERE ".$predefinedgroupwhere; + $sql .= " AND t.entity = " . $conf->entity; $sql .= " ORDER BY t.account_number"; } //echo $sql; From 784c13d9d062c5743e824c6a2475b35b5b6e48c4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 11:14:05 +0100 Subject: [PATCH 516/769] Fix label of month --- htdocs/compta/resultat/result.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index 3f53cfdc27c..9e3c28f529d 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -233,13 +233,13 @@ print ''; + print ''; } } foreach($months as $k => $v){ if (($k+1) < $date_startmonth) { - print ''; + print ''; } } print ''; From c2e5a292466a2f01ce94351475ca6fa7cab106dd Mon Sep 17 00:00:00 2001 From: Thibault Descamps Date: Thu, 22 Nov 2018 11:36:30 +0100 Subject: [PATCH 517/769] NEW redirect if only one result on global search on card --- htdocs/comm/propal/list.php | 15 ++++++++++++++- htdocs/commande/list.php | 12 +++++++++++- htdocs/compta/facture/list.php | 15 +++++++++++++-- htdocs/fourn/commande/list.php | 17 ++++++++++++++--- htdocs/fourn/facture/list.php | 13 ++++++++++++- htdocs/product/list.php | 1 + htdocs/projet/list.php | 3 +-- htdocs/projet/tasks/list.php | 5 ++--- htdocs/supplier_proposal/list.php | 21 ++++++++++++++++++--- 9 files changed, 86 insertions(+), 16 deletions(-) diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 89b6211d644..61ad93660b6 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -258,7 +258,7 @@ $projectstatic=new Project($db); $formcompany=new FormCompany($db); $help_url='EN:Commercial_Proposals|FR:Proposition_commerciale|ES:Presupuestos'; -llxHeader('',$langs->trans('Proposal'),$help_url); +//llxHeader('',$langs->trans('Proposal'),$help_url); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -404,6 +404,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) $sql.= $db->plimit($limit+1, $offset); $resql=$db->query($sql); + if ($resql) { $objectstatic=new Propal($db); @@ -424,6 +425,18 @@ if ($resql) $num = $db->num_rows($resql); $arrayofselected=is_array($toselect)?$toselect:array(); + + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + + $id = $obj->rowid; + + header("Location: ".DOL_URL_ROOT.'/comm/propal/card.php?id='.$id); + exit; + } + + llxHeader('',$langs->trans('Proposal'),$help_url); $param='&viewstatut='.urlencode($viewstatut); if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage); diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index dbe2b29e63a..55e6e2f8ff5 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -233,7 +233,7 @@ $projectstatic=new Project($db); $title=$langs->trans("Orders"); $help_url="EN:Module_Customers_Orders|FR:Module_Commandes_Clients|ES:Módulo_Pedidos_de_clientes"; -llxHeader('',$title,$help_url); +// llxHeader('',$title,$help_url); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -401,6 +401,16 @@ if ($resql) $arrayofselected=is_array($toselect)?$toselect:array(); + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + $id = $obj->rowid; + header("Location: ".DOL_URL_ROOT.'/commande/card.php?id='.$id); + exit; + } + + llxHeader('',$title,$help_url); + $param=''; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage); diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 83925a38b08..eb7408cabf6 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -354,7 +354,7 @@ $facturestatic=new Facture($db); $formcompany=new FormCompany($db); $thirdpartystatic=new Societe($db); -llxHeader('',$langs->trans('CustomersInvoices'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); +// llxHeader('',$langs->trans('CustomersInvoices'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -532,15 +532,26 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) } $sql.= $db->plimit($limit+1,$offset); -//print $sql; $resql = $db->query($sql); + if ($resql) { $num = $db->num_rows($resql); $arrayofselected=is_array($toselect)?$toselect:array(); + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + $id = $obj->id; + + header("Location: ".DOL_URL_ROOT.'/compta/facture/card.php?facid='.$id); + exit; + } + + llxHeader('',$langs->trans('CustomersInvoices'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); + if ($socid) { $soc = new Societe($db); diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index a08e39e157c..3208dc36f75 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -56,7 +56,8 @@ $search_deliveryyear=GETPOST("search_deliveryyear","int"); $search_deliverymonth=GETPOST("search_deliverymonth","int"); $search_deliveryday=GETPOST("search_deliveryday","int"); -$sall=GETPOST('search_all', 'alphanohtml'); +$sall=trim((GETPOST('search_all', 'alphanohtml')!='')?GETPOST('search_all', 'alphanohtml'):GETPOST('sall', 'alphanohtml')); + $search_product_category=GETPOST('search_product_category','int'); $search_ref=GETPOST('search_ref'); $search_refsupp=GETPOST('search_refsupp'); @@ -473,7 +474,7 @@ if ($search_billed > 0) $title.=' - '.$langs->trans("Billed"); //$help_url="EN:Module_Customers_Orders|FR:Module_Commandes_Clients|ES:Módulo_Pedidos_de_clientes"; $help_url=''; -llxHeader('',$title,$help_url); +// llxHeader('',$title,$help_url); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -604,9 +605,19 @@ if ($resql) } $num = $db->num_rows($resql); - + $arrayofselected=is_array($toselect)?$toselect:array(); + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + $id = $obj->rowid; + header("Location: ".DOL_URL_ROOT.'/fourn/commande/card.php?id='.$id); + exit; + } + + llxHeader('',$title,$help_url); + $param=''; if ($socid > 0) $param.='&socid='.$socid; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index 07b53981faf..38c3ef10a2e 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -256,7 +256,7 @@ $facturestatic=new FactureFournisseur($db); $formcompany=new FormCompany($db); $thirdparty=new Societe($db); -llxHeader('',$langs->trans("SuppliersInvoices"),'EN:Suppliers_Invoices|FR:FactureFournisseur|ES:Facturas_de_proveedores'); +// llxHeader('',$langs->trans("SuppliersInvoices"),'EN:Suppliers_Invoices|FR:FactureFournisseur|ES:Facturas_de_proveedores'); $sql = "SELECT"; if ($search_all || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -427,6 +427,17 @@ if ($resql) $arrayofselected=is_array($toselect)?$toselect:array(); + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + $id = $obj->facid; + + header("Location: ".DOL_URL_ROOT.'/fourn/facture/card.php?facid='.$id); + exit; + } + + llxHeader('',$langs->trans("SuppliersInvoices"),'EN:Suppliers_Invoices|FR:FactureFournisseur|ES:Facturas_de_proveedores'); + if ($socid) { $soc = new Societe($db); diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 03d69a7a243..8c3196e1ec6 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -357,6 +357,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) $sql.= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); + if ($resql) { $num = $db->num_rows($resql); diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 6f3ca7215a7..dac11d34519 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -386,9 +386,8 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) $sql.= $db->plimit($limit + 1,$offset); -//print $sql; dol_syslog("list allowed project", LOG_DEBUG); -//print $sql; + $resql = $db->query($sql); if (! $resql) { diff --git a/htdocs/projet/tasks/list.php b/htdocs/projet/tasks/list.php index 93ff5fab7a8..e1a77f0b824 100644 --- a/htdocs/projet/tasks/list.php +++ b/htdocs/projet/tasks/list.php @@ -42,7 +42,7 @@ $toselect = GETPOST('toselect', 'array'); $id=GETPOST('id','int'); -$search_all=GETPOST('search_all', 'alphanohtml'); +$search_all=trim((GETPOST('search_all', 'alphanohtml')!='')?GETPOST('search_all', 'alphanohtml'):GETPOST('sall', 'alphanohtml')); $search_categ=GETPOST("search_categ",'alpha'); $search_project=GETPOST('search_project'); if (! isset($_GET['search_projectstatus']) && ! isset($_POST['search_projectstatus'])) @@ -336,10 +336,9 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) } $sql.= $db->plimit($limit + 1,$offset); -//print $sql; dol_syslog("list allowed project", LOG_DEBUG); -//print $sql; + $resql = $db->query($sql); if (! $resql) { diff --git a/htdocs/supplier_proposal/list.php b/htdocs/supplier_proposal/list.php index 642d4610a10..8915532ff22 100644 --- a/htdocs/supplier_proposal/list.php +++ b/htdocs/supplier_proposal/list.php @@ -73,6 +73,7 @@ $search_btn=GETPOST('button_search','alpha'); $search_remove_btn=GETPOST('button_removefilter','alpha'); $sall=trim((GETPOST('search_all', 'alphanohtml')!='')?GETPOST('search_all', 'alphanohtml'):GETPOST('sall', 'alphanohtml')); + $mesg=(GETPOST("msg") ? GETPOST("msg") : GETPOST("mesg")); $year=GETPOST("year"); $month=GETPOST("month"); @@ -122,10 +123,10 @@ $search_array_options=$extrafields->getOptionalsFromPost($object->table_element, // List of fields to search into when doing a "search in all" $fieldstosearchall = array( - 'p.ref'=>'Ref', + 'sp.ref'=>'Ref', 's.nom'=>'Supplier', 'pd.description'=>'Description', - 'p.note_public'=>'NotePublic', + 'sp.note_public'=>'NotePublic', ); if (empty($user->socid)) $fieldstosearchall["p.note_private"]="NotePrivate"; @@ -217,6 +218,7 @@ if (empty($reshook)) * View */ + $now=dol_now(); $form = new Form($db); @@ -227,7 +229,7 @@ $companystatic=new Societe($db); $formcompany=new FormCompany($db); $help_url='EN:Ask_Price_Supplier|FR:Demande_de_prix_fournisseur'; -llxHeader('',$langs->trans('CommRequest'),$help_url); +//llxHeader('',$langs->trans('CommRequest'),$help_url); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; @@ -358,7 +360,20 @@ if ($resql) $num = $db->num_rows($resql); $arrayofselected=is_array($toselect)?$toselect:array(); + + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + { + $obj = $db->fetch_object($resql); + + $id = $obj->rowid; + + header("Location: ".DOL_URL_ROOT.'/supplier_proposal/card.php?id='.$id); + exit; + } + + llxHeader('',$langs->trans('CommRequest'),$help_url); + $param=''; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; From 1d4c756783c8c44f0d9302ba192915b41c61c662 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 21 Nov 2018 15:40:15 +0100 Subject: [PATCH 518/769] FIX Remote ip detection was wrong with proxy (example: cloudflare) --- htdocs/admin/geoipmaxmind.php | 4 +- htdocs/core/class/events.class.php | 5 +- htdocs/core/lib/functions.lib.php | 264 ++++++++++++++++++++++++++++- 3 files changed, 267 insertions(+), 6 deletions(-) diff --git a/htdocs/admin/geoipmaxmind.php b/htdocs/admin/geoipmaxmind.php index 29819cd4034..fd1358b69cb 100644 --- a/htdocs/admin/geoipmaxmind.php +++ b/htdocs/admin/geoipmaxmind.php @@ -152,7 +152,7 @@ if ($geoip) else print $langs->trans("Error"); */ //var_dump($_SERVER); - $ip = $_SERVER['REMOTE_ADDR']?$_SERVER['REMOTE_ADDR']:(($_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:$_SERVER['HTTP_CLIENT_IP'])); + $ip = getUserRemoteIP(); //$ip='91.161.249.43'; $isip=is_ip($ip); if ($isip == 1) @@ -162,7 +162,7 @@ if ($geoip) if ($result) print $result; else print $langs->trans("Error"); } - elseif ($isip == 2) + else { print '
'.$ip.' -> '; $result=dol_print_ip($ip,1); diff --git a/htdocs/core/class/events.class.php b/htdocs/core/class/events.class.php index abdbb1689f8..bb63e5b199f 100644 --- a/htdocs/core/class/events.class.php +++ b/htdocs/core/class/events.class.php @@ -112,6 +112,7 @@ class Events // extends CommonObject // Clean parameters $this->description=trim($this->description); + if (empty($this->user_agent) && !empty($_SERVER['HTTP_USER_AGENT'])) $this->user_agent=$_SERVER['HTTP_USER_AGENT']; // Check parameters if (empty($this->description)) { $this->error='ErrorBadValueForParameterCreateEventDesc'; return -1; } @@ -128,8 +129,8 @@ class Events // extends CommonObject $sql.= ") VALUES ("; $sql.= " '".$this->db->escape($this->type)."',"; $sql.= " ".$conf->entity.","; - $sql.= " '".$this->db->escape($_SERVER['REMOTE_ADDR'])."',"; - $sql.= " ".($_SERVER['HTTP_USER_AGENT']?"'".$this->db->escape(dol_trunc($_SERVER['HTTP_USER_AGENT'],250))."'":'NULL').","; + $sql.= " '".$this->db->escape(getUserRemoteIP())."',"; + $sql.= " ".($this->user_agent ? "'".$this->db->escape(dol_trunc($this->user_agent,250))."'" : 'NULL').","; $sql.= " '".$this->db->idate($this->dateevent)."',"; $sql.= " ".($user->id?"'".$this->db->escape($user->id)."'":'NULL').","; $sql.= " '".$this->db->escape(dol_trunc($this->description,250))."'"; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 87e63517ac2..d5046a42b0d 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -2656,6 +2656,20 @@ function dol_print_ip($ip,$mode=0) return $ret; } +/** + * Return the IP of remote user. + * Take HTTP_X_FORWARDED_FOR (defined when using proxy) + * Then HTTP_CLIENT_IP if defined (rare) + * Then REMOTE_ADDR (not way to be modified by user but may be wrong if using proxy) + * + * @return string Ip of remote user. + */ +function getUserRemoteIP() +{ + $ip = $_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:(($_SERVER['HTTP_CLIENT_IP']?$_SERVER['HTTP_CLIENT_IP']:$_SERVER['REMOTE_ADDR'])); + return $ip; +} + /** * Return a country code from IP. Empty string if not found. * @@ -2699,7 +2713,7 @@ function dol_user_country() $ret=''; if (! empty($conf->geoipmaxmind->enabled)) { - $ip=$_SERVER["REMOTE_ADDR"]; + $ip=getUserRemoteIP(); $datafile=$conf->global->GEOIPMAXMIND_COUNTRY_DATAFILE; //$ip='24.24.24.24'; //$datafile='E:\Mes Sites\Web\Admin1\awstats\maxmind\GeoIP.dat'; @@ -5902,7 +5916,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey=0, $exclude=null, $ob '__USER_FIRSTNAME__' => (string) $user->firstname, '__USER_FULLNAME__' => (string) $user->getFullName($outputlangs), '__USER_SUPERVISOR_ID__' => (string) ($user->fk_user ? $user->fk_user : '0'), - '__USER_REMOTE_IP__' => (string) $_SERVER['REMOTE_ADDR'] + '__USER_REMOTE_IP__' => (string) getUserRemoteIP() ) ); } @@ -6869,6 +6883,252 @@ function picto_from_langcode($codelang, $moreatt = '') return img_picto_common($codelang, 'flags/'.strtolower($flagImage).'.png', $moreatt); } +/** + * Return default language from country code + * + * @param string $countrycode Country code like 'US', 'FR', 'CA', ... + * @return string Value of locale like 'en_US', 'fr_FR', ... + */ +function getLanguageCodeFromCountryCode($countrycode) +{ + $countrycodetolanguage = array( + 'SA' => 'ar_AR', + 'DK' => 'da_DA', + 'CA' => 'en_CA', + 'SE' => 'sv_SV' + ); + if (! empty($countrycodetolanguage[$countrycode])) return $countrycodetolanguage[$countrycode]; + + // Locale list taken from: + // http://stackoverflow.com/questions/3191664/ + // list-of-all-locales-and-their-short-codes + $locales = array( + 'af-ZA', + 'am-ET', + 'ar-AE', + 'ar-BH', + 'ar-DZ', + 'ar-EG', + 'ar-IQ', + 'ar-JO', + 'ar-KW', + 'ar-LB', + 'ar-LY', + 'ar-MA', + 'arn-CL', + 'ar-OM', + 'ar-QA', + 'ar-SA', + 'ar-SY', + 'ar-TN', + 'ar-YE', + 'as-IN', + 'az-Cyrl-AZ', + 'az-Latn-AZ', + 'ba-RU', + 'be-BY', + 'bg-BG', + 'bn-BD', + 'bn-IN', + 'bo-CN', + 'br-FR', + 'bs-Cyrl-BA', + 'bs-Latn-BA', + 'ca-ES', + 'co-FR', + 'cs-CZ', + 'cy-GB', + 'da-DK', + 'de-AT', + 'de-CH', + 'de-DE', + 'de-LI', + 'de-LU', + 'dsb-DE', + 'dv-MV', + 'el-GR', + 'en-029', + 'en-AU', + 'en-BZ', + 'en-CA', + 'en-GB', + 'en-IE', + 'en-IN', + 'en-JM', + 'en-MY', + 'en-NZ', + 'en-PH', + 'en-SG', + 'en-TT', + 'en-US', + 'en-ZA', + 'en-ZW', + 'es-AR', + 'es-BO', + 'es-CL', + 'es-CO', + 'es-CR', + 'es-DO', + 'es-EC', + 'es-ES', + 'es-GT', + 'es-HN', + 'es-MX', + 'es-NI', + 'es-PA', + 'es-PE', + 'es-PR', + 'es-PY', + 'es-SV', + 'es-US', + 'es-UY', + 'es-VE', + 'et-EE', + 'eu-ES', + 'fa-IR', + 'fi-FI', + 'fil-PH', + 'fo-FO', + 'fr-BE', + 'fr-CA', + 'fr-CH', + 'fr-FR', + 'fr-LU', + 'fr-MC', + 'fy-NL', + 'ga-IE', + 'gd-GB', + 'gl-ES', + 'gsw-FR', + 'gu-IN', + 'ha-Latn-NG', + 'he-IL', + 'hi-IN', + 'hr-BA', + 'hr-HR', + 'hsb-DE', + 'hu-HU', + 'hy-AM', + 'id-ID', + 'ig-NG', + 'ii-CN', + 'is-IS', + 'it-CH', + 'it-IT', + 'iu-Cans-CA', + 'iu-Latn-CA', + 'ja-JP', + 'ka-GE', + 'kk-KZ', + 'kl-GL', + 'km-KH', + 'kn-IN', + 'kok-IN', + 'ko-KR', + 'ky-KG', + 'lb-LU', + 'lo-LA', + 'lt-LT', + 'lv-LV', + 'mi-NZ', + 'mk-MK', + 'ml-IN', + 'mn-MN', + 'mn-Mong-CN', + 'moh-CA', + 'mr-IN', + 'ms-BN', + 'ms-MY', + 'mt-MT', + 'nb-NO', + 'ne-NP', + 'nl-BE', + 'nl-NL', + 'nn-NO', + 'nso-ZA', + 'oc-FR', + 'or-IN', + 'pa-IN', + 'pl-PL', + 'prs-AF', + 'ps-AF', + 'pt-BR', + 'pt-PT', + 'qut-GT', + 'quz-BO', + 'quz-EC', + 'quz-PE', + 'rm-CH', + 'ro-RO', + 'ru-RU', + 'rw-RW', + 'sah-RU', + 'sa-IN', + 'se-FI', + 'se-NO', + 'se-SE', + 'si-LK', + 'sk-SK', + 'sl-SI', + 'sma-NO', + 'sma-SE', + 'smj-NO', + 'smj-SE', + 'smn-FI', + 'sms-FI', + 'sq-AL', + 'sr-Cyrl-BA', + 'sr-Cyrl-CS', + 'sr-Cyrl-ME', + 'sr-Cyrl-RS', + 'sr-Latn-BA', + 'sr-Latn-CS', + 'sr-Latn-ME', + 'sr-Latn-RS', + 'sv-FI', + 'sv-SE', + 'sw-KE', + 'syr-SY', + 'ta-IN', + 'te-IN', + 'tg-Cyrl-TJ', + 'th-TH', + 'tk-TM', + 'tn-ZA', + 'tr-TR', + 'tt-RU', + 'tzm-Latn-DZ', + 'ug-CN', + 'uk-UA', + 'ur-PK', + 'uz-Cyrl-UZ', + 'uz-Latn-UZ', + 'vi-VN', + 'wo-SN', + 'xh-ZA', + 'yo-NG', + 'zh-CN', + 'zh-HK', + 'zh-MO', + 'zh-SG', + 'zh-TW', + 'zu-ZA', + ); + + foreach ($locales as $locale) + { + $locale_region = locale_get_region($locale); + $locale_language = locale_get_primary_language($locale); + $locale_array = array('language' => $locale_language, 'region' => $locale_region); + if (strtoupper($countrycode) == $locale_region) + { + return locale_compose($locale_array); + } + } + + return null; +} + /** * Complete or removed entries into a head array (used to build tabs). * For example, with value added by external modules. Such values are declared into $conf->modules_parts['tab']. From 0fbf213739dbe53ab6444b58967d322ef6d1989b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 13:08:18 +0100 Subject: [PATCH 519/769] Fix length of field --- htdocs/core/lib/pdf.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index a9e8807c66a..a6899697860 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -757,7 +757,7 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default $content = $account->number; } elseif ($val == 'BankAccountNumberKey') { // Key - $tmplength = 13; + $tmplength = 15; $content = $account->cle_rib; }elseif ($val == 'IBAN' || $val == 'BIC') { // Key From 8de30c12d8d0fa248b73f10789de831a20d3479d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 13:19:25 +0100 Subject: [PATCH 520/769] Fix translation --- htdocs/langs/en_US/boxes.lang | 4 ++-- htdocs/langs/en_US/companies.lang | 16 ++++++++-------- htdocs/langs/en_US/mails.lang | 4 ++-- htdocs/langs/en_US/main.lang | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/htdocs/langs/en_US/boxes.lang b/htdocs/langs/en_US/boxes.lang index 8a519879ac3..ded846feb7d 100644 --- a/htdocs/langs/en_US/boxes.lang +++ b/htdocs/langs/en_US/boxes.lang @@ -15,7 +15,7 @@ BoxLastSuppliers=Latest modified suppliers BoxLastCustomerOrders=Latest customer orders BoxLastActions=Latest actions BoxLastContracts=Latest contracts -BoxLastContacts=Latest contacts/addresses +BoxLastContacts=Latest contact addresses BoxLastMembers=Latest members BoxFicheInter=Latest interventions BoxCurrentAccounts=Open accounts balance @@ -34,7 +34,7 @@ BoxTitleLastFicheInter=Latest %s modified interventions BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid BoxTitleOldestUnpaidSupplierBills=Supplier Invoices: oldest %s unpaid BoxTitleCurrentAccounts=Open Accounts: balances -BoxTitleLastModifiedContacts=Contacts/Addresses: latest %s modified +BoxTitleLastModifiedContacts=Latest %s modified contact addresses BoxMyLastBookmarks=Bookmarks: latest %s modified BoxOldestExpiredServices=Oldest active expired services BoxLastExpiredServices=Latest %s oldest contacts with active expired services diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index e5de5614886..a528d232c47 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -19,9 +19,9 @@ ProspectionArea=Prospection area IdThirdParty=Id third party IdCompany=Company Id IdContact=Contact Id -Contacts=Contacts/Addresses +Contacts=Contact addresses ThirdPartyContacts=Third party contacts -ThirdPartyContact=Third party contact/address +ThirdPartyContact=Third party contact address Company=Company CompanyName=Company name AliasNames=Alias name (commercial, trademark, ...) @@ -289,12 +289,12 @@ SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) DiscountNone=None Supplier=Vendor AddContact=Create contact -AddContactAddress=Create contact/address +AddContactAddress=Create contact address EditContact=Edit contact -EditContactAddress=Edit contact/address +EditContactAddress=Edit contact address Contact=Contact ContactId=Contact id -ContactsAddresses=Contacts/Addresses +ContactsAddresses=Contact addresses FromContactName=Name: NoContactDefinedForThirdParty=No contact defined for this third party NoContactDefined=No contact defined @@ -315,8 +315,8 @@ ValidityControledByModule=Validity controlled by module ThisIsModuleRules=Rules for this module ProspectToContact=Prospect to contact CompanyDeleted=Company "%s" deleted from database. -ListOfContacts=List of contacts/addresses -ListOfContactsAddresses=List of contacts/addresses +ListOfContacts=List of contact addresses +ListOfContactsAddresses=List of contact addresses ListOfThirdParties=List of Third Parties ShowCompany=Show Third Party ShowContact=Show contact @@ -390,7 +390,7 @@ NoDolibarrAccess=No Dolibarr access ExportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties ExportDataset_company_2=Contacts and their properties ImportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties -ImportDataset_company_2=Contacts/Addresses and attributes +ImportDataset_company_2=Contact addresses and attributes ImportDataset_company_3=Bank accounts of Third Parties ImportDataset_company_4=Third Parties - sales representatives (assign sales representatives/users to companies) PriceLevel=Price level diff --git a/htdocs/langs/en_US/mails.lang b/htdocs/langs/en_US/mails.lang index d4f835874e7..279a2f3118b 100644 --- a/htdocs/langs/en_US/mails.lang +++ b/htdocs/langs/en_US/mails.lang @@ -99,7 +99,7 @@ MailSelectedRecipients=Selected recipients MailingArea=EMailings area LastMailings=Latest %s emailings TargetsStatistics=Targets statistics -NbOfCompaniesContacts=Unique contacts/addresses +NbOfCompaniesContacts=Unique contact addresses MailNoChangePossible=Recipients for validated emailing can't be changed SearchAMailing=Search mailing SendMailing=Send emailing @@ -138,7 +138,7 @@ NbOfTargetedContacts=Current number of targeted contact emails UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other MailAdvTargetRecipients=Recipients (advanced selection) -AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtTitle=Fill input fields to preselect the third parties or contact addresses to target AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima AdvTgtSearchIntHelp=Use interval to select int or float value AdvTgtMinVal=Minimum value diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 233b9bba076..c51f8a3683b 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -434,7 +434,7 @@ LatestLinkedEvents=Latest %s linked events CompanyFoundation=Company/Organization Accountant=Accountant ContactsForCompany=Contacts for this third party -ContactsAddressesForCompany=Contacts/addresses for this third party +ContactsAddressesForCompany=Contact addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events about this third party ActionsOnMember=Events about this member From 3bb7726101234b1bb9390dd5358ec9e7b64a5a5b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 13:22:05 +0100 Subject: [PATCH 521/769] Revert "Fix translation" This reverts commit 8de30c12d8d0fa248b73f10789de831a20d3479d. --- htdocs/langs/en_US/boxes.lang | 4 ++-- htdocs/langs/en_US/companies.lang | 16 ++++++++-------- htdocs/langs/en_US/mails.lang | 4 ++-- htdocs/langs/en_US/main.lang | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/htdocs/langs/en_US/boxes.lang b/htdocs/langs/en_US/boxes.lang index ded846feb7d..8a519879ac3 100644 --- a/htdocs/langs/en_US/boxes.lang +++ b/htdocs/langs/en_US/boxes.lang @@ -15,7 +15,7 @@ BoxLastSuppliers=Latest modified suppliers BoxLastCustomerOrders=Latest customer orders BoxLastActions=Latest actions BoxLastContracts=Latest contracts -BoxLastContacts=Latest contact addresses +BoxLastContacts=Latest contacts/addresses BoxLastMembers=Latest members BoxFicheInter=Latest interventions BoxCurrentAccounts=Open accounts balance @@ -34,7 +34,7 @@ BoxTitleLastFicheInter=Latest %s modified interventions BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid BoxTitleOldestUnpaidSupplierBills=Supplier Invoices: oldest %s unpaid BoxTitleCurrentAccounts=Open Accounts: balances -BoxTitleLastModifiedContacts=Latest %s modified contact addresses +BoxTitleLastModifiedContacts=Contacts/Addresses: latest %s modified BoxMyLastBookmarks=Bookmarks: latest %s modified BoxOldestExpiredServices=Oldest active expired services BoxLastExpiredServices=Latest %s oldest contacts with active expired services diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index a528d232c47..e5de5614886 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -19,9 +19,9 @@ ProspectionArea=Prospection area IdThirdParty=Id third party IdCompany=Company Id IdContact=Contact Id -Contacts=Contact addresses +Contacts=Contacts/Addresses ThirdPartyContacts=Third party contacts -ThirdPartyContact=Third party contact address +ThirdPartyContact=Third party contact/address Company=Company CompanyName=Company name AliasNames=Alias name (commercial, trademark, ...) @@ -289,12 +289,12 @@ SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) DiscountNone=None Supplier=Vendor AddContact=Create contact -AddContactAddress=Create contact address +AddContactAddress=Create contact/address EditContact=Edit contact -EditContactAddress=Edit contact address +EditContactAddress=Edit contact/address Contact=Contact ContactId=Contact id -ContactsAddresses=Contact addresses +ContactsAddresses=Contacts/Addresses FromContactName=Name: NoContactDefinedForThirdParty=No contact defined for this third party NoContactDefined=No contact defined @@ -315,8 +315,8 @@ ValidityControledByModule=Validity controlled by module ThisIsModuleRules=Rules for this module ProspectToContact=Prospect to contact CompanyDeleted=Company "%s" deleted from database. -ListOfContacts=List of contact addresses -ListOfContactsAddresses=List of contact addresses +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties ShowCompany=Show Third Party ShowContact=Show contact @@ -390,7 +390,7 @@ NoDolibarrAccess=No Dolibarr access ExportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties ExportDataset_company_2=Contacts and their properties ImportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties -ImportDataset_company_2=Contact addresses and attributes +ImportDataset_company_2=Contacts/Addresses and attributes ImportDataset_company_3=Bank accounts of Third Parties ImportDataset_company_4=Third Parties - sales representatives (assign sales representatives/users to companies) PriceLevel=Price level diff --git a/htdocs/langs/en_US/mails.lang b/htdocs/langs/en_US/mails.lang index 279a2f3118b..d4f835874e7 100644 --- a/htdocs/langs/en_US/mails.lang +++ b/htdocs/langs/en_US/mails.lang @@ -99,7 +99,7 @@ MailSelectedRecipients=Selected recipients MailingArea=EMailings area LastMailings=Latest %s emailings TargetsStatistics=Targets statistics -NbOfCompaniesContacts=Unique contact addresses +NbOfCompaniesContacts=Unique contacts/addresses MailNoChangePossible=Recipients for validated emailing can't be changed SearchAMailing=Search mailing SendMailing=Send emailing @@ -138,7 +138,7 @@ NbOfTargetedContacts=Current number of targeted contact emails UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other MailAdvTargetRecipients=Recipients (advanced selection) -AdvTgtTitle=Fill input fields to preselect the third parties or contact addresses to target +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima AdvTgtSearchIntHelp=Use interval to select int or float value AdvTgtMinVal=Minimum value diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index c51f8a3683b..233b9bba076 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -434,7 +434,7 @@ LatestLinkedEvents=Latest %s linked events CompanyFoundation=Company/Organization Accountant=Accountant ContactsForCompany=Contacts for this third party -ContactsAddressesForCompany=Contact addresses for this third party +ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events about this third party ActionsOnMember=Events about this member From 97af22369db1c1ca3db4f3b7cdc9955a88a4e1d6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 13:47:55 +0100 Subject: [PATCH 522/769] Trans --- htdocs/langs/en_US/admin.lang | 6 +++--- htdocs/langs/en_US/bills.lang | 2 +- htdocs/langs/en_US/propal.lang | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index f528c23818b..a5f81fb11a5 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -902,7 +902,7 @@ DictionaryVAT=VAT Rates or Sales Tax Rates DictionaryRevenueStamp=Amount of tax stamps DictionaryPaymentConditions=Payment terms DictionaryPaymentModes=Payment modes -DictionaryTypeContact=Contact address types +DictionaryTypeContact=Contacts/addresses types DictionaryTypeOfContainer=Type of website pages/containers DictionaryEcotaxe=Ecotax (WEEE) DictionaryPaperFormat=Paper formats @@ -1142,7 +1142,7 @@ ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) ExtraFieldsThirdParties=Complementary attributes (thirdparty) -ExtraFieldsContacts=Complementary attributes (contact address) +ExtraFieldsContacts=Complementary attributes (contacts/address) ExtraFieldsMember=Complementary attributes (member) ExtraFieldsMemberType=Complementary attributes (member type) ExtraFieldsCustomerInvoices=Complementary attributes (invoices) @@ -1702,7 +1702,7 @@ ListOfNotificationsPerUser=List of notifications per user* ListOfNotificationsPerUserOrContact=List of notifications per user* or per contact** ListOfFixedNotifications=List of fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users -GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contact addresses +GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold BackupDumpWizard=Wizard to build database backup dump file SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index 9e3d2a4af98..ed988d580e2 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -465,7 +465,7 @@ Cheques=Checks DepositId=Id deposit NbCheque=Number of checks CreditNoteConvertedIntoDiscount=This %s has been converted into %s -UsBillingContactAsIncoiveRecipientIfExist=Use customer billing contact address instead of third party address as recipient for invoices +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third party address as recipient for invoices ShowUnpaidAll=Show all unpaid invoices ShowUnpaidLateOnly=Show late unpaid invoices only PaymentInvoiceRef=Payment invoice %s diff --git a/htdocs/langs/en_US/propal.lang b/htdocs/langs/en_US/propal.lang index fd1240e3ea6..c258381ea85 100644 --- a/htdocs/langs/en_US/propal.lang +++ b/htdocs/langs/en_US/propal.lang @@ -55,7 +55,7 @@ NoDraftProposals=No draft proposals CopyPropalFrom=Create commercial proposal by copying existing proposal CreateEmptyPropal=Create empty commercial proposal or from list of products/services DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) -UseCustomerContactAsPropalRecipientIfExist=Use customer contact address if defined instead of third party address as proposal recipient address +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address ClonePropal=Clone commercial proposal ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? From 72fc0226e327604a6169816e6d8cd91e7746b1ef Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 19:45:35 +0100 Subject: [PATCH 523/769] Optimize performance: Remove call for year N, can be done with total of each month --- .../class/accountancycategory.class.php | 1 + htdocs/compta/resultat/result.php | 29 ++++++++++--------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index b70341e21f7..6bb7be94f81 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -732,6 +732,7 @@ class AccountancyCategory // extends CommonObject $sql = "SELECT SUM(t.debit) as debit, SUM(t.credit) as credit"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as t"; + //if (in_array($this->db->type, array('mysql', 'mysqli'))) $sql.=' USE INDEX idx_accounting_bookkeeping_doc_date'; $sql .= " WHERE t.numero_compte = '" . $this->db->escape($cpt) . "'"; if (! empty($date_start) && ! empty($date_end) && (empty($month) || empty($year))) // If month/year provided, it is stronger than filter date_start/date_end $sql .= " AND t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."'"; diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index 9e3c28f529d..39b6a8dc79a 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -445,23 +445,12 @@ elseif ($modecompta=="BOOKKEEPING") $resultNP=$AccCat->sdc; } - // N - $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']); - if ($return < 0) { - setEventMessages(null, $AccCat->errors, 'errors'); - $resultN=0; - } else { - $resultN=$AccCat->sdc; - } - $totCat['NP'] += $resultNP; - $totCat['N'] += $resultN; $sommes[$code]['NP'] += $resultNP; - $sommes[$code]['N'] += $resultN; $totPerAccount[$cpt['account_number']]['NP'] = $resultNP; - $totPerAccount[$cpt['account_number']]['N'] = $resultN; // Each month + $resultN = 0; foreach($months as $k => $v) { $monthtoprocess = $k+1; // ($k+1) is month 1, 2, ..., 12 @@ -479,7 +468,22 @@ elseif ($modecompta=="BOOKKEEPING") $totCat['M'][$k] += $resultM; $sommes[$code]['M'][$k] += $resultM; $totPerAccount[$cpt['account_number']]['M'][$k] = $resultM; + + $resultN += $resultM; } + + // N + /*$return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']); + if ($return < 0) { + setEventMessages(null, $AccCat->errors, 'errors'); + $resultN=0; + } else { + $resultN=$AccCat->sdc; + }*/ + + $totCat['N'] += $resultN; + $sommes[$code]['N'] += $resultN; + $totPerAccount[$cpt['account_number']]['N'] = $resultN; } // Now output columns for row $code ('VTE', 'MAR', ...) @@ -497,7 +501,6 @@ elseif ($modecompta=="BOOKKEEPING") print "\n"; // Loop on detail of all accounts - // This make 14 calls for each detail of account (N-1, N and 12 monthes m) if ($showaccountdetail != 'no') { foreach($cpts as $i => $cpt) From 5727cf2910744e4aabb5ad233efb4e01284ee078 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 20:09:27 +0100 Subject: [PATCH 524/769] Prepare code for performance enhancement --- .../class/accountancycategory.class.php | 26 ++++++++++--------- htdocs/compta/resultat/result.php | 4 +-- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 6bb7be94f81..14c4bce3126 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -724,48 +724,50 @@ class AccountancyCategory // extends CommonObject * @param string $thirdparty_code Thirdparty code * @param string $month Specifig month - Can be empty * @param string $year Specifig year - Can be empty - * @return integer Result in table + * @return integer <0 if KO, >= 0 if OK */ public function getSumDebitCredit($cpt, $date_start, $date_end, $sens, $thirdparty_code='nofilter', $month=0, $year=0) { global $conf; + $this->sdc = 0; + $this->sdcpermonth = array(); + $sql = "SELECT SUM(t.debit) as debit, SUM(t.credit) as credit"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as t"; //if (in_array($this->db->type, array('mysql', 'mysqli'))) $sql.=' USE INDEX idx_accounting_bookkeeping_doc_date'; - $sql .= " WHERE t.numero_compte = '" . $this->db->escape($cpt) . "'"; + $sql .= " WHERE t.entity = ".$conf->entity; + $sql .= " AND t.numero_compte = '" . $this->db->escape($cpt) . "'"; if (! empty($date_start) && ! empty($date_end) && (empty($month) || empty($year))) // If month/year provided, it is stronger than filter date_start/date_end - $sql .= " AND t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."'"; + $sql .= " AND (t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."')"; if (! empty($month) && ! empty($year)) { - $sql .= " AND t.doc_date BETWEEN '".$this->db->idate(dol_get_first_day($year, $month))."' AND '".$this->db->idate(dol_get_last_day($year, $month))."'"; + $sql .= " AND (t.doc_date BETWEEN '".$this->db->idate(dol_get_first_day($year, $month))."' AND '".$this->db->idate(dol_get_last_day($year, $month))."')"; } if ($thirdparty_code != 'nofilter') { $sql .= " AND t.thirdparty_code = '".$this->db->escape($thirdparty_code)."'"; } - $sql .= " AND t.entity = ".$conf->entity; //print $sql; - dol_syslog(__METHOD__ . " sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); - - if ($resql) { + if ($resql) + { $num = $this->db->num_rows($resql); - $this->sdc = 0; - if ($num) { + if ($num) + { $obj = $this->db->fetch_object($resql); if ($sens == 1) { $this->sdc = $obj->debit - $obj->credit; } else { $this->sdc = $obj->credit - $obj->debit; } + $this->sdcpermonth[$year.'_'.$month.'_'.$sens] = $this->sdc; } return $num; } else { $this->error = "Error " . $this->db->lasterror(); dol_syslog(__METHOD__ . " " . $this->error, LOG_ERR); - - return - 1; + return -1; } } diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index 39b6a8dc79a..d5d0bffc2e3 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -437,7 +437,7 @@ elseif ($modecompta=="BOOKKEEPING") // @TODO Optimize mode when $showaccountdetail == 'no' // N-1 - $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start_previous, $date_end_previous, $cpt['dc']); + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start_previous, $date_end_previous, $cpt['dc']?$cpt['dc']:0); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultNP=0; @@ -458,7 +458,7 @@ elseif ($modecompta=="BOOKKEEPING") if (($k+1) < $start_month) $yeartoprocess++; //var_dump($monthtoprocess.'_'.$yeartoprocess); - $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc'], 'nofilter', $monthtoprocess, $yeartoprocess); + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']?$cpt['dc']:0, 'nofilter', $monthtoprocess, $yeartoprocess); if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultM=0; From fe35e72e835f60bacf03c77be4e01b40070aa226 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 20:45:50 +0100 Subject: [PATCH 525/769] Fix perf. Make only one request per group for year N-1. --- .../class/accountancycategory.class.php | 25 +++- htdocs/compta/resultat/result.php | 129 +++++++++--------- 2 files changed, 89 insertions(+), 65 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 14c4bce3126..043021df367 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -717,7 +717,7 @@ class AccountancyCategory // extends CommonObject /** * Function to show result of an accounting account from the ledger with a direction and a period * - * @param int $cpt Id accounting account + * @param int[array $cpt Accounting account or array of accounting account * @param string $date_start Date start * @param string $date_end Date end * @param int $sens Sens of the account: 0: credit - debit, 1: debit - credit @@ -734,10 +734,24 @@ class AccountancyCategory // extends CommonObject $this->sdcpermonth = array(); $sql = "SELECT SUM(t.debit) as debit, SUM(t.credit) as credit"; + if (is_array($cpt)) $sql.=", t.numero_compte as accountancy_account"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as t"; //if (in_array($this->db->type, array('mysql', 'mysqli'))) $sql.=' USE INDEX idx_accounting_bookkeeping_doc_date'; $sql .= " WHERE t.entity = ".$conf->entity; - $sql .= " AND t.numero_compte = '" . $this->db->escape($cpt) . "'"; + if (is_array($cpt)) + { + $listofaccount=''; + foreach($cpt as $cptcursor) + { + if ($listofaccount) $listofaccount.=","; + $listofaccount.="'".$cptcursor."'"; + } + $sql .= " AND t.numero_compte IN (" .$listofaccount. ")"; + } + else + { + $sql .= " AND t.numero_compte = '" . $this->db->escape($cpt) . "'"; + } if (! empty($date_start) && ! empty($date_end) && (empty($month) || empty($year))) // If month/year provided, it is stronger than filter date_start/date_end $sql .= " AND (t.doc_date BETWEEN '".$this->db->idate($date_start)."' AND '".$this->db->idate($date_end)."')"; if (! empty($month) && ! empty($year)) { @@ -747,6 +761,7 @@ class AccountancyCategory // extends CommonObject { $sql .= " AND t.thirdparty_code = '".$this->db->escape($thirdparty_code)."'"; } + if (is_array($cpt)) $sql.=" GROUP BY t.numero_compte"; //print $sql; $resql = $this->db->query($sql); @@ -761,11 +776,15 @@ class AccountancyCategory // extends CommonObject } else { $this->sdc = $obj->credit - $obj->debit; } - $this->sdcpermonth[$year.'_'.$month.'_'.$sens] = $this->sdc; + if (is_array($cpt)) + { + $this->sdcperaccount[$obj->accountancy_account] = $this->sdc; + } } return $num; } else { $this->error = "Error " . $this->db->lasterror(); + $this->errors[] = $this->error; dol_syslog(__METHOD__ . " " . $this->error, LOG_ERR); return -1; } diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index d5d0bffc2e3..fcb329dd730 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -382,6 +382,8 @@ elseif ($modecompta=="BOOKKEEPING") } else // normal category { + $code = $cat['code']; // Category code we process + $totCat = array(); $totCat['NP'] = 0; $totCat['N'] = 0; @@ -394,6 +396,70 @@ elseif ($modecompta=="BOOKKEEPING") // Set $cpts with array of accounts in the category/group $cpts = $AccCat->getCptsCat($cat['rowid']); + $arrayofaccountforfilter=array(); + foreach($cpts as $i => $cpt) // Loop on each account. + { + $arrayofaccountforfilter[]=$cpt['account_number']; + } + + // N-1 + if (! empty($arrayofaccountforfilter)) + { + $return = $AccCat->getSumDebitCredit($arrayofaccountforfilter, $date_start_previous, $date_end_previous, $cpt['dc']?$cpt['dc']:0); + var_dump($AccCat->sdcperaccount); + if ($return < 0) { + setEventMessages(null, $AccCat->errors, 'errors'); + $resultNP=0; + } else { + foreach($cpts as $i => $cpt) // Loop on each account. + { + $resultNP = empty($AccCat->sdcperaccount[$cpt['account_number']])?0:$AccCat->sdcperaccount[$cpt['account_number']]; + + $totCat['NP'] += $resultNP; + $sommes[$code]['NP'] += $resultNP; + $totPerAccount[$cpt['account_number']]['NP'] = $resultNP; + } + } + } + + // Set value into column N-1, N and each month M ($totCat) + // This make 14 calls for each detail of account (N-1, N and 12 monthes m) + foreach($cpts as $i => $cpt) // Loop on each account. + { + // We make 1 loop for each account because we may want detail per account. + // @TODO Optimize to ask a 'group by' account and a filter with account in (..., ...) in request + + // Each month + $resultN = 0; + foreach($months as $k => $v) + { + $monthtoprocess = $k+1; // ($k+1) is month 1, 2, ..., 12 + $yeartoprocess = $start_year; + if (($k+1) < $start_month) $yeartoprocess++; + + //var_dump($monthtoprocess.'_'.$yeartoprocess); + $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']?$cpt['dc']:0, 'nofilter', $monthtoprocess, $yeartoprocess); + if ($return < 0) { + setEventMessages(null, $AccCat->errors, 'errors'); + $resultM=0; + } else { + $resultM=$AccCat->sdc; + } + $totCat['M'][$k] += $resultM; + $sommes[$code]['M'][$k] += $resultM; + $totPerAccount[$cpt['account_number']]['M'][$k] = $resultM; + + $resultN += $resultM; + } + + $totCat['N'] += $resultN; + $sommes[$code]['N'] += $resultN; + $totPerAccount[$cpt['account_number']]['N'] = $resultN; + } + + + // Now output columns for row $code ('VTE', 'MAR', ...) + print "
"; // Column group @@ -427,66 +493,6 @@ elseif ($modecompta=="BOOKKEEPING") } print ''; - $code = $cat['code']; - - // Set value into column N-1, N and each month M ($totCat) - // This make 14 calls for each detail of account (N-1, N and 12 monthes m) - foreach($cpts as $i => $cpt) // Loop on each account. - { - // We make 1 loop for each account because we may want detail. - // @TODO Optimize mode when $showaccountdetail == 'no' - - // N-1 - $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start_previous, $date_end_previous, $cpt['dc']?$cpt['dc']:0); - if ($return < 0) { - setEventMessages(null, $AccCat->errors, 'errors'); - $resultNP=0; - } else { - $resultNP=$AccCat->sdc; - } - - $totCat['NP'] += $resultNP; - $sommes[$code]['NP'] += $resultNP; - $totPerAccount[$cpt['account_number']]['NP'] = $resultNP; - - // Each month - $resultN = 0; - foreach($months as $k => $v) - { - $monthtoprocess = $k+1; // ($k+1) is month 1, 2, ..., 12 - $yeartoprocess = $start_year; - if (($k+1) < $start_month) $yeartoprocess++; - - //var_dump($monthtoprocess.'_'.$yeartoprocess); - $return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']?$cpt['dc']:0, 'nofilter', $monthtoprocess, $yeartoprocess); - if ($return < 0) { - setEventMessages(null, $AccCat->errors, 'errors'); - $resultM=0; - } else { - $resultM=$AccCat->sdc; - } - $totCat['M'][$k] += $resultM; - $sommes[$code]['M'][$k] += $resultM; - $totPerAccount[$cpt['account_number']]['M'][$k] = $resultM; - - $resultN += $resultM; - } - - // N - /*$return = $AccCat->getSumDebitCredit($cpt['account_number'], $date_start, $date_end, $cpt['dc']); - if ($return < 0) { - setEventMessages(null, $AccCat->errors, 'errors'); - $resultN=0; - } else { - $resultN=$AccCat->sdc; - }*/ - - $totCat['N'] += $resultN; - $sommes[$code]['N'] += $resultN; - $totPerAccount[$cpt['account_number']]['N'] = $resultN; - } - - // Now output columns for row $code ('VTE', 'MAR', ...) print ''; print ''; @@ -500,7 +506,7 @@ elseif ($modecompta=="BOOKKEEPING") print "\n"; - // Loop on detail of all accounts + // Loop on detail of all accounts to output the detail if ($showaccountdetail != 'no') { foreach($cpts as $i => $cpt) @@ -537,7 +543,6 @@ elseif ($modecompta=="BOOKKEEPING") print ''; } } - print "\n"; } } From 0a057c8277b26e2429b51f9f2c54e81a0445fd6c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 22 Nov 2018 20:47:53 +0100 Subject: [PATCH 526/769] Clean var_dump --- htdocs/compta/resultat/result.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index fcb329dd730..16d2631686c 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -406,7 +406,7 @@ elseif ($modecompta=="BOOKKEEPING") if (! empty($arrayofaccountforfilter)) { $return = $AccCat->getSumDebitCredit($arrayofaccountforfilter, $date_start_previous, $date_end_previous, $cpt['dc']?$cpt['dc']:0); - var_dump($AccCat->sdcperaccount); + if ($return < 0) { setEventMessages(null, $AccCat->errors, 'errors'); $resultNP=0; @@ -422,8 +422,8 @@ elseif ($modecompta=="BOOKKEEPING") } } - // Set value into column N-1, N and each month M ($totCat) - // This make 14 calls for each detail of account (N-1, N and 12 monthes m) + // Set value into column N and month M ($totCat) + // This make 12 calls for each accountancy account (12 monthes M) foreach($cpts as $i => $cpt) // Loop on each account. { // We make 1 loop for each account because we may want detail per account. From 21b429836a24d60fafa91cde226818c82c72ee1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 22 Nov 2018 21:08:03 +0100 Subject: [PATCH 527/769] doc comment accountancycategory class --- htdocs/accountancy/class/accountancycategory.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 043021df367..99b922419c9 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -78,7 +78,7 @@ class AccountancyCategory // extends CommonObject public $range_account; /** - * @var mixed Sample property 1 + * @var int $sens Sens of the account: 0: credit - debit, 1: debit - credit */ public $sens; @@ -722,8 +722,8 @@ class AccountancyCategory // extends CommonObject * @param string $date_end Date end * @param int $sens Sens of the account: 0: credit - debit, 1: debit - credit * @param string $thirdparty_code Thirdparty code - * @param string $month Specifig month - Can be empty - * @param string $year Specifig year - Can be empty + * @param int $month Specifig month - Can be empty + * @param int $year Specifig year - Can be empty * @return integer <0 if KO, >= 0 if OK */ public function getSumDebitCredit($cpt, $date_start, $date_end, $sens, $thirdparty_code='nofilter', $month=0, $year=0) From 295d082da12b67701df29da43a6010aa6964b680 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 22 Nov 2018 22:56:38 +0100 Subject: [PATCH 528/769] Update accountancycategory.class.php --- htdocs/accountancy/class/accountancycategory.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 99b922419c9..9250d2190a9 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -717,7 +717,7 @@ class AccountancyCategory // extends CommonObject /** * Function to show result of an accounting account from the ledger with a direction and a period * - * @param int[array $cpt Accounting account or array of accounting account + * @param int|array $cpt Accounting account or array of accounting account * @param string $date_start Date start * @param string $date_end Date end * @param int $sens Sens of the account: 0: credit - debit, 1: debit - credit From d21abc2dc36783a6a2856453e4dc8dd3a25d3353 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 22 Nov 2018 23:26:04 +0100 Subject: [PATCH 529/769] Update accountancycategory.class.php --- htdocs/accountancy/class/accountancycategory.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index 9250d2190a9..5b3282a3b29 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -78,7 +78,7 @@ class AccountancyCategory // extends CommonObject public $range_account; /** - * @var int $sens Sens of the account: 0: credit - debit, 1: debit - credit + * @var int Sens of the account: 0: credit - debit, 1: debit - credit */ public $sens; From 322ce410d782a7b280810ab2a32990c5999035e6 Mon Sep 17 00:00:00 2001 From: fappels Date: Fri, 23 Nov 2018 09:42:43 +0100 Subject: [PATCH 530/769] Add missing paid field in fetch sql --- htdocs/expensereport/class/expensereport.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index c6debbe60ff..6feb2225cca 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -456,7 +456,7 @@ class ExpenseReport extends CommonObject $sql.= " d.date_debut, d.date_fin, d.date_create, d.tms as date_modif, d.date_valid, d.date_approve,"; // DATES (datetime) $sql.= " d.fk_user_author, d.fk_user_modif, d.fk_user_validator,"; $sql.= " d.fk_user_valid, d.fk_user_approve,"; - $sql.= " d.fk_statut as status, d.fk_c_paiement,"; + $sql.= " d.fk_statut as status, d.fk_c_paiement, d.paid,"; $sql.= " dp.libelle as libelle_paiement, dp.code as code_paiement"; // INNER JOIN paiement $sql.= " FROM ".MAIN_DB_PREFIX.$this->table_element." as d"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as dp ON d.fk_c_paiement = dp.id AND dp.entity IN (".getEntity('c_paiement').")"; From a06b032c23590c190860d2e87795fa62943d8375 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 23 Nov 2018 10:53:04 +0100 Subject: [PATCH 531/769] fix trans --- htdocs/langs/en_US/website.lang | 2 +- htdocs/website/index.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index bee23264d7a..55ca8ceaf3d 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -89,7 +89,7 @@ CorporateHomePage=Corporate Home page EmptyPage=Empty page ExternalURLMustStartWithHttp=External URL must start with http:// or https:// ZipOfWebsitePackageToImport=Zip file of website package -ShowSubcontainers=Show included containers +ShowSubcontainers=Include dynamic content InternalURLOfPage=Internal URL of page ThisPageIsTranslationOf=This page/container is translation of ThisPageHasTranslationPages=This page/container has translation \ No newline at end of file diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 2082b9b70b6..82d30484a54 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -216,7 +216,7 @@ if ($action == 'seteditinline') { dolibarr_set_const($db, 'WEBSITE_EDITINLINE', 1); setEventMessages($langs->trans("FeatureNotYetAvailable"), null, 'warnings'); - dolibarr_set_const($db, 'WEBSITE_SUBCONTAINERSINLINE', 0); // Force disable of show included containers + dolibarr_set_const($db, 'WEBSITE_SUBCONTAINERSINLINE', 0); // Force disable of 'Include dynamic content' header("Location: ".$_SERVER["PHP_SELF"].'?website='.GETPOST('website','alphanohtml').'&pageid='.GETPOST('pageid','int')); exit; } From ea7c77d788ed34de6935c592a4ce76daa1c52eb4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 23 Nov 2018 11:09:27 +0100 Subject: [PATCH 532/769] Trans --- htdocs/langs/en_US/admin.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index a5f81fb11a5..53e5ab333a4 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -501,7 +501,7 @@ Module23Desc=Monitoring the consumption of energies Module25Name=Customer Orders Module25Desc=Customer order management Module30Name=Invoices -Module30Desc=Invoice and credit note management for customers. Invoice management for suppliers +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers Module40Name=Suppliers Module40Desc=Suppliers and purchase management (purchase orders and billing) Module42Name=Debug Logs From 1cc6763950f748167e803ee4b5bd00e6101f6ac6 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 23 Nov 2018 11:40:38 +0100 Subject: [PATCH 533/769] Fix order billed online payment --- htdocs/public/payment/newpayment.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 836540e6a58..1da245bf933 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1437,7 +1437,11 @@ if ($action != 'dopayment') { if ($found && ! $error) // We are in a management option and no error { - if ($source == 'invoice' && $object->paye) + if ($source == 'order' && $object->billed) + { + print '

'.$langs->trans("OrderBilled").''; + } + elseif ($source == 'invoice' && $object->paye) { print '

'.$langs->trans("InvoicePaid").''; } From 6a232a8754c11c6c276644a16684447d0813fc13 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 23 Nov 2018 12:27:24 +0100 Subject: [PATCH 534/769] Update newpayment.php --- htdocs/public/payment/newpayment.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 1da245bf933..6931b3b77f6 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1445,6 +1445,10 @@ if ($action != 'dopayment') { print '

'.$langs->trans("InvoicePaid").''; } + elseif ($source == 'donation' && $object->paid) + { + print '

'.$langs->trans("DonationPaid").''; + } else { // Buttons for all payments registration methods From e8ba8814cdee6447097375fc55a1816db1fa6b21 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 23 Nov 2018 12:45:37 +0100 Subject: [PATCH 535/769] Update newpayment.php --- htdocs/public/payment/newpayment.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 6931b3b77f6..435655eec3a 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1445,6 +1445,10 @@ if ($action != 'dopayment') { print '

'.$langs->trans("InvoicePaid").''; } + elseif ($source == 'membersubscription' && $object->datefin>dol_now()) + { + print '

'.$langs->trans("MembershipPaid").''; + } elseif ($source == 'donation' && $object->paid) { print '

'.$langs->trans("DonationPaid").''; From 9f610c2279070bc6e44fffd98a4408b8defaf62e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 23 Nov 2018 12:46:32 +0100 Subject: [PATCH 536/769] Add website template --- .../websites/website_template-corporate.zip | Bin 2292383 -> 3837617 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/htdocs/install/doctemplates/websites/website_template-corporate.zip b/htdocs/install/doctemplates/websites/website_template-corporate.zip index 0c45f47e84ff1179a50844cd263604c8a9aa56eb..e3bc4063fcbabc126a7a30ff077773dc110b27b8 100644 GIT binary patch delta 1673814 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%0D@+yx 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

DfbV)-jkCc=Eq<;y=Qg10w$Y#HxPFrVl@CnQ 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

'; + print ''; print ''; From 5bbf7e8f1d0d0620ef7617b4f1922609d9adeed1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 10:21:43 +0100 Subject: [PATCH 345/769] Fix look and feel v8 --- htdocs/core/modules/modPaypal.class.php | 28 ++++++++++---------- htdocs/core/modules/modStripe.class.php | 4 +-- htdocs/product/stock/productlot_card.php | 5 ++-- htdocs/product/stock/productlot_document.php | 2 +- htdocs/theme/eldy/style.css.php | 2 +- 5 files changed, 20 insertions(+), 21 deletions(-) diff --git a/htdocs/core/modules/modPaypal.class.php b/htdocs/core/modules/modPaypal.class.php index a11fa41b7a6..106ea412150 100644 --- a/htdocs/core/modules/modPaypal.class.php +++ b/htdocs/core/modules/modPaypal.class.php @@ -107,21 +107,21 @@ class modPaypal extends DolibarrModules // Main menu entries $this->menus = array(); // List of menus to add $r=0; - $this->menu[$r]=array( - 'fk_menu'=>'fk_mainmenu=billing,fk_leftmenu=customers_bills_payment', // Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode - 'mainmenu'=>'billing', - 'leftmenu'=>'customers_bills_payment_paypal', - 'type'=>'left', // This is a Left menu entry - 'titre'=>'PaypalImportPayment', - 'url'=>'/paypal/importpayments.php', - 'langs'=>'paypal', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'position'=>501, - 'enabled'=>'$conf->paypal->enabled && $conf->banque->enabled && $conf->global->MAIN_FEATURES_LEVEL >= 2', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. - 'perms'=>'$user->rights->banque->consolidate', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules - 'target'=>'', - 'user'=>2 + /*$this->menu[$r]=array( + 'fk_menu'=>'fk_mainmenu=billing,fk_leftmenu=customers_bills_payment', // Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'mainmenu'=>'billing', + 'leftmenu'=>'customers_bills_payment_paypal', + 'type'=>'left', // This is a Left menu entry + 'titre'=>'PaypalImportPayment', + 'url'=>'/paypal/importpayments.php', + 'langs'=>'paypal', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>501, + 'enabled'=>'$conf->paypal->enabled && $conf->banque->enabled && $conf->global->MAIN_FEATURES_LEVEL >= 2', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + 'perms'=>'$user->rights->banque->consolidate', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2 ); // 0=Menu for internal users, 1=external users, 2=both - $r++; + $r++;*/ // Add here entries to declare new menus // Example to declare the Top Menu entry: diff --git a/htdocs/core/modules/modStripe.class.php b/htdocs/core/modules/modStripe.class.php index 348b44aaa1d..9a1584da477 100644 --- a/htdocs/core/modules/modStripe.class.php +++ b/htdocs/core/modules/modStripe.class.php @@ -92,7 +92,7 @@ class modStripe extends DolibarrModules // Main menu entries $r=0; - $this->menu[$r]=array( + /* $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=billing,fk_leftmenu=customers_bills_payment', // Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode 'mainmenu'=>'billing', 'leftmenu'=>'customers_bills_payment_stripe', @@ -106,7 +106,7 @@ class modStripe extends DolibarrModules 'target'=>'', 'user'=>2 ); // 0=Menu for internal users, 1=external users, 2=both - $r++; + $r++;*/ $this->menu[$r] = array( 'fk_menu'=>'fk_mainmenu=bank', diff --git a/htdocs/product/stock/productlot_card.php b/htdocs/product/stock/productlot_card.php index f72a28dbc90..dff2aa8e0e0 100644 --- a/htdocs/product/stock/productlot_card.php +++ b/htdocs/product/stock/productlot_card.php @@ -1,7 +1,6 @@ +/* Copyright (C) 2007-2018 Laurent Destailleur * Copyright (C) 2018 All-3kcis - * Copyright (C) ---Put here your own copyright and developer email--- * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -317,7 +316,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea } - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $shownav = 1; if ($user->societe_id && ! in_array('batch', explode(',',$conf->global->MAIN_MODULES_FOR_EXTERNAL))) $shownav=0; diff --git a/htdocs/product/stock/productlot_document.php b/htdocs/product/stock/productlot_document.php index 1ce4f9ba224..b9235b72133 100644 --- a/htdocs/product/stock/productlot_document.php +++ b/htdocs/product/stock/productlot_document.php @@ -131,7 +131,7 @@ if ($object->id) } - $linkback = '' . $langs->trans("BackToList") . ''; + $linkback = '' . $langs->trans("BackToList") . ''; $shownav = 1; if ($user->societe_id && ! in_array('batch', explode(',',$conf->global->MAIN_MODULES_FOR_EXTERNAL))) $shownav=0; diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 6022c13a895..f9f64483e42 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -331,7 +331,7 @@ input, select { } /* Focus definitions must be after standard definition */ -textarea:focus, button:focus { +textarea:focus { /* v6 box-shadow: 0 0 4px #8091BF; */ border: 1px solid #aaa !important; } From 22170ac1c1f7c99d5eda928a510a588f9b31cbf8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 10:45:39 +0100 Subject: [PATCH 346/769] FIX Crop of large files was selecting wrong image area. --- htdocs/core/class/html.formfile.class.php | 2 +- htdocs/core/photos_resize.php | 29 +++++++++++++++++++---- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 81a288e7dce..41b74079948 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1018,7 +1018,7 @@ class FormFile global $form; $disablecrop=1; - if (in_array($modulepart, array('societe','product','produit','service','expensereport','holiday','member','project','ticket','user'))) $disablecrop=0; + if (in_array($modulepart, array('expensereport','holiday','member','project','product','produit','service','societe','tax','ticket','user'))) $disablecrop=0; // Define relative path used to store the file if (empty($relativepath)) diff --git a/htdocs/core/photos_resize.php b/htdocs/core/photos_resize.php index f4f178031de..b7e774bcd4d 100644 --- a/htdocs/core/photos_resize.php +++ b/htdocs/core/photos_resize.php @@ -83,6 +83,12 @@ elseif ($modulepart == 'societe') if (! $user->rights->societe->lire) accessforbidden(); $accessallowed=1; } +elseif ($modulepart == 'tax') +{ + $result=restrictedArea($user, 'tax', $id, 'chargesociales','charges'); + if (! $user->rights->tax->charges->lire) accessforbidden(); + $accessallowed=1; +} elseif ($modulepart == 'ticket') { $result=restrictedArea($user,'ticket',$id,'ticket'); @@ -177,6 +183,17 @@ elseif ($modulepart == 'expensereport') $dir=$conf->expensereport->dir_output; // By default } } +elseif ($modulepart == 'tax') +{ + require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php'; + $object = new ChargeSociales($db); + if ($id > 0) + { + $result = $object->fetch($id); + if ($result <= 0) dol_print_error($db,'Failed to load object'); + $dir=$conf->tax->dir_output; // By default + } +} elseif ($modulepart == 'ticket') { require_once DOL_DOCUMENT_ROOT.'/ticket/class/ticket.class.php'; @@ -200,7 +217,8 @@ if (empty($backtourl)) else if (in_array($modulepart, array('member'))) $backtourl=DOL_URL_ROOT."/adherents/document.php?id=".$id.'&file='.urldecode($_POST["file"]); else if (in_array($modulepart, array('project'))) $backtourl=DOL_URL_ROOT."/projet/document.php?id=".$id.'&file='.urldecode($_POST["file"]); else if (in_array($modulepart, array('societe'))) $backtourl=DOL_URL_ROOT."/societe/document.php?id=".$id.'&file='.urldecode($_POST["file"]); - else if (in_array($modulepart, array('ticket'))) $backtourl=DOL_URL_ROOT."/ticket/document.php?id=".$id.'&file='.urldecode($_POST["file"]); + else if (in_array($modulepart, array('tax'))) $backtourl=DOL_URL_ROOT."/compta/sociales/document.php?id=".$id.'&file='.urldecode($_POST["file"]); + else if (in_array($modulepart, array('ticket'))) $backtourl=DOL_URL_ROOT."/ticket/document.php?id=".$id.'&file='.urldecode($_POST["file"]); else if (in_array($modulepart, array('user'))) $backtourl=DOL_URL_ROOT."/user/document.php?id=".$id.'&file='.urldecode($_POST["file"]); } @@ -226,6 +244,7 @@ if ($cancel) if ($action == 'confirm_resize' && (isset($_POST["file"]) != "") && (isset($_POST["sizex"]) != "") && (isset($_POST["sizey"]) != "")) { $fullpath=$dir."/".$original_file; + $result=dol_imageResizeOrCrop($fullpath,0,$_POST['sizex'],$_POST['sizey']); if ($result == $fullpath) @@ -294,6 +313,8 @@ if ($action == 'confirm_resize' && (isset($_POST["file"]) != "") && (isset($_POS if ($action == 'confirm_crop') { $fullpath=$dir."/".$original_file; + + //var_dump($_POST['w'].'x'.$_POST['h'].'-'.$_POST['x'].'x'.$_POST['y']);exit; $result=dol_imageResizeOrCrop($fullpath,1,$_POST['w'],$_POST['h'],$_POST['x'],$_POST['y']); if ($result == $fullpath) @@ -419,9 +440,9 @@ if (! empty($conf->use_javascript_ajax)) // If image is too large, we use another scale. if (! empty($_SESSION['dol_screenwidth']) && ($widthforcrop > round($_SESSION['dol_screenwidth']/2))) { - $widthforcrop=round($_SESSION['dol_screenwidth']/2); + $ratioforcrop=2; + $widthforcrop=round($_SESSION['dol_screenwidth'] / $ratioforcrop); $refsizeforcrop='screenwidth'; - $ratioforcrop=1; } print ''."\n"; @@ -448,7 +469,7 @@ if (! empty($conf->use_javascript_ajax)) - +
From c55f83b0b7ee4661d24fb401c4bd68564f60180a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 11:25:29 +0100 Subject: [PATCH 347/769] Fix multicompany filter missing --- htdocs/core/lib/company.lib.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 758c0803a10..3bc519e028a 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -740,11 +740,12 @@ function show_projects($conf, $langs, $db, $object, $backtopage='', $nocreatelin print '
'; print "\n".'
'.$langs->trans("LastSalaries",($num<=$MAXLIST?"":$MAXLIST)).''.$langs->trans("AllSalaries").' '.$num.''; print '
'.$langs->trans("LastSalaries",($num<=$MAXLIST?"":$MAXLIST)).''.$langs->trans("AllSalaries").' '.$num.'
'; - $sql = "SELECT p.rowid as id, p.title, p.ref, p.public, p.dateo as do, p.datee as de, p.fk_statut as status, p.fk_opp_status, p.opp_amount, p.opp_percent, p.tms as date_update, p.budget_amount"; + $sql = "SELECT p.rowid as id, p.entity, p.title, p.ref, p.public, p.dateo as do, p.datee as de, p.fk_statut as status, p.fk_opp_status, p.opp_amount, p.opp_percent, p.tms as date_update, p.budget_amount"; $sql .= ", cls.code as opp_status_code"; $sql .= " FROM ".MAIN_DB_PREFIX."projet as p"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_lead_status as cls on p.fk_opp_status = cls.rowid"; $sql .= " WHERE p.fk_soc = ".$object->id; + $sql .= " AND p.entity IN (".getEntity('project').")"; $sql .= " ORDER BY p.dateo DESC"; $result=$db->query($sql); From 224d37cfebe3ae1041ffb6656c2c35f6e62b2208 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 12:12:08 +0100 Subject: [PATCH 348/769] Add bootstrap-iso class --- htdocs/website/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 4f969851ad4..71b71e241a1 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -2735,7 +2735,7 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa $out.="\n"; - $out.='
'."\n"; + $out.='
'."\n"; // REPLACEMENT OF LINKS When page called by website editor From 7c4dad27280fa0d07914c1a76a18ac58a818ccfe Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Thu, 8 Nov 2018 12:12:45 +0100 Subject: [PATCH 349/769] FIX Warning: count() --- htdocs/projet/tasks.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index 94a51ef3d01..09e067a57fe 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -468,7 +468,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third print '
'; From 8bb1545ed012e38c3f7a2c664c2a2d8f05651fc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 8 Nov 2018 12:16:05 +0100 Subject: [PATCH 351/769] Update index.php --- htdocs/fichinter/stats/index.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index 9bbbea09141..3551d8baab3 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -233,8 +233,8 @@ print '
'; print '
'; // Company print ''; // User print ''; // Opp status print ''; // Opp percent print ''; if (! $i) $totalarray['nbfield']++; } From 0d6709c9f723c6df0631d83eb851c01cd8a88828 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 01:20:57 +0100 Subject: [PATCH 362/769] Update phpcs config --- dev/setup/codesniffer/ruleset.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index 32a938662e6..8332338353d 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -25,19 +25,19 @@ - + 0 - + 0 - + 0 - + 0 - + 0 From aad0b700d44a4a498520edfd3a720c3e322a661c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 01:22:56 +0100 Subject: [PATCH 363/769] Fix travis --- dev/setup/codesniffer/ruleset.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index 8332338353d..7e010eae927 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -28,7 +28,7 @@ 0 - + 0 @@ -37,7 +37,7 @@ 0 - + 0 From f1193ad3ddcaae17cef4730e2592b87327356b40 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 10:29:22 +0100 Subject: [PATCH 364/769] FIX: Missing date creation and modification of supplier price --- htdocs/fourn/class/fournisseur.product.class.php | 9 +++++---- htdocs/product/fournisseurs.php | 12 ++++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.product.class.php b/htdocs/fourn/class/fournisseur.product.class.php index a86e728e028..c9d269dcbe3 100644 --- a/htdocs/fourn/class/fournisseur.product.class.php +++ b/htdocs/fourn/class/fournisseur.product.class.php @@ -560,10 +560,9 @@ class ProductFournisseur extends Product $sql = "SELECT s.nom as supplier_name, s.rowid as fourn_id,"; $sql.= " pfp.rowid as product_fourn_pri_id, pfp.ref_fourn, pfp.desc_fourn, pfp.fk_product as product_fourn_id, pfp.fk_supplier_price_expression,"; - $sql.= " pfp.price, pfp.quantity, pfp.unitprice, pfp.remise_percent, pfp.remise, pfp.tva_tx, pfp.fk_availability, pfp.charges, pfp.info_bits, pfp.delivery_time_days, pfp.supplier_reputation"; - $sql.= " ,pfp.multicurrency_price, pfp.multicurrency_unitprice, pfp.multicurrency_tx, pfp.fk_multicurrency, pfp.multicurrency_code"; - $sql.= " FROM ".MAIN_DB_PREFIX."product_fournisseur_price as pfp"; - $sql.= ", ".MAIN_DB_PREFIX."societe as s"; + $sql.= " pfp.price, pfp.quantity, pfp.unitprice, pfp.remise_percent, pfp.remise, pfp.tva_tx, pfp.fk_availability, pfp.charges, pfp.info_bits, pfp.delivery_time_days, pfp.supplier_reputation,"; + $sql.= " pfp.multicurrency_price, pfp.multicurrency_unitprice, pfp.multicurrency_tx, pfp.fk_multicurrency, pfp.multicurrency_code, pfp.datec, pfp.tms"; + $sql.= " FROM ".MAIN_DB_PREFIX."product_fournisseur_price as pfp, ".MAIN_DB_PREFIX."societe as s"; $sql.= " WHERE pfp.entity IN (".getEntity('productsupplierprice').")"; $sql.= " AND pfp.fk_soc = s.rowid"; $sql.= " AND s.status=1"; // only enabled company selected @@ -603,6 +602,8 @@ class ProductFournisseur extends Product $prodfourn->fourn_tva_npr = $record["info_bits"]; $prodfourn->fk_supplier_price_expression = $record["fk_supplier_price_expression"]; $prodfourn->supplier_reputation = $record["supplier_reputation"]; + $prodfourn->date_creation = $this->db->jdate($record['datec']); + $prodfourn->date_modification = $this->db->jdate($record['tms']); $prodfourn->fourn_multicurrency_price = $record["multicurrency_price"]; $prodfourn->fourn_multicurrency_unitprice = $record["multicurrency_unitprice"]; diff --git a/htdocs/product/fournisseurs.php b/htdocs/product/fournisseurs.php index 7ad740eab0a..df40f000c19 100644 --- a/htdocs/product/fournisseurs.php +++ b/htdocs/product/fournisseurs.php @@ -751,16 +751,17 @@ SCRIPT; $num = count($product_fourn_list); if (($num + ($offset * $limit)) < $nbtotalofrecords) $num++; - print_barre_liste($langs->trans('SupplierPrices'), $page, $_SERVEUR ['PHP_SELF'], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_accountancy.png', 0, '', '', $limit, 1); + print_barre_liste($langs->trans('SupplierPrices'), $page, $_SERVEUR ['PHP_SELF'], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_accountancy.png', 0, '', '', $limit, 1); // Suppliers list title - print '
'; - print '
'.$langs->trans("AffectedTo").''; $contactsofproject=(! empty($object->id)?$object->getListContactId('internal'):''); - if (count($contactsofproject)) + if (is_array($contactsofproject) && count($contactsofproject)) { print $form->select_dolusers($user->id, 'userid', 0, '', 0, '', $contactsofproject, 0, 0, 0, '', 0, '', 'maxwidth300'); } From 670eed1e688dce5464d43bd031137a525fc1a399 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Thu, 8 Nov 2018 12:13:07 +0100 Subject: [PATCH 350/769] Update index.php --- htdocs/fichinter/stats/index.php | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index 39cad7ca4f1..9bbbea09141 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -49,10 +49,7 @@ $endyear=$year; $object_status=GETPOST('object_status'); -$langs->load('interventions'); -$langs->load('companies'); -$langs->load('other'); -$langs->load('suppliers'); +$langs->loadLangs(array('interventions', 'companies', 'other', 'suppliers')); /* @@ -62,11 +59,8 @@ $langs->load('suppliers'); $form=new Form($db); $objectstatic=new FichInter($db); -if ($mode == 'customer') -{ - $title=$langs->trans("InterventionStatistics"); - $dir=$conf->ficheinter->dir_temp; -} +$title=$langs->trans("InterventionStatistics"); +$dir=$conf->ficheinter->dir_temp; llxHeader('', $title); @@ -79,19 +73,18 @@ if ($object_status != '' && $object_status > -1) $stats->where .= ' AND c.fk_sta // Build graphic number of object $data = $stats->getNbByMonthWithPrevYear($endyear,$startyear); -//var_dump($data); // $data = array(array('Lib',val1,val2,val3),...) if (!$user->rights->societe->client->voir || $user->societe_id) { $filenamenb = $dir.'/interventionsnbinyear-'.$user->id.'-'.$year.'.png'; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$user->id.'-'.$year.'.png'; + $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$user->id.'-'.$year.'.png'; } else { $filenamenb = $dir.'/interventionsnbinyear-'.$year.'.png'; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$year.'.png'; + $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$year.'.png'; } $px1 = new DolGraph(); @@ -123,7 +116,6 @@ if (! $mesg) // Build graphic amount of object $data = $stats->getAmountByMonthWithPrevYear($endyear,$startyear); -//var_dump($data); // $data = array(array('Lib',val1,val2,val3),...) if (!$user->rights->societe->client->voir || $user->societe_id) @@ -283,7 +275,8 @@ foreach ($data as $val) { $year = $val['year']; while (! empty($year) && $oldyear > $year+1) - { // If we have empty year + { + // If we have empty year $oldyear--; print '
'.$langs->trans("Filter").'
'.$langs->trans("ThirdParty").''; - if ($mode == 'customer') $filter='s.client in (1,2,3)'; - print $form->select_company($socid,'socid',$filter,1,0,0,array(),0,'','style="width: 95%"'); + $filter = 's.client in (1,2,3)'; + print $form->select_company($socid, 'socid', $filter, 1, 0, 0, array(), 0, '', 'style="width: 95%"'); print '
'.$langs->trans("CreatedBy").''; From 87274352165bc2a9beaba3617c18ae8e0417c1cc Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 8 Nov 2018 13:58:37 +0100 Subject: [PATCH 352/769] Update API for download more infos for easiest & better use of the generated file by API --- htdocs/api/class/api_documents.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php index 66c293f2cb0..23ed35428d3 100644 --- a/htdocs/api/class/api_documents.class.php +++ b/htdocs/api/class/api_documents.class.php @@ -103,7 +103,7 @@ class Documents extends DolibarrApi } $file_content=file_get_contents($original_file_osencoded); - return array('filename'=>$filename, 'content'=>base64_encode($file_content), 'encoding'=>'MIME base64 (base64_encode php function, http://php.net/manual/en/function.base64-encode.php)' ); + return array('filename'=>$filename, 'content-type' => mime_content_type($original_file),'content'=>base64_encode($file_content), 'encoding'=>'base64' ); } From 98548337ae465849d316a01e20594586d0d882a0 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Thu, 8 Nov 2018 15:38:25 +0100 Subject: [PATCH 353/769] FIX supplier order list keep socid --- htdocs/commande/list.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index a9da48fd626..4841e9be410 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -467,7 +467,9 @@ if ($resql) print ''; print ''; print ''; - + print ''; + + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'title_commercial.png', 0, $newcardbutton, '', $limit); $topicmail="SendOrderRef"; From 6401a7ab06e2b1ebc6cdc99a7d657f37a3b00961 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 16:03:10 +0100 Subject: [PATCH 354/769] Fix css --- htdocs/theme/eldy/style.css.php | 1 + htdocs/theme/md/style.css.php | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index f9f64483e42..ce2d5c28555 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -3316,6 +3316,7 @@ ul.noborder li:nth-child(even):not(.liste_titre) { .thumbstat150 { flex: 1 1 110px; margin-bottom: 8px; + width: 160px; } .dashboardlineindicator { float: left; diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index a246786a53a..9d5a518c4bf 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -3249,7 +3249,7 @@ div .tdtop { margin: 3px; border: 1px solid #ddd; box-shadow: none; - background: #ddd; + background: #eee; } .thumbstat { flex: 1 1 110px; From 360eb6eed68499c5cdd15ed1900cc18747ef47db Mon Sep 17 00:00:00 2001 From: Laurent BOUQUET Date: Thu, 8 Nov 2018 16:24:31 +0100 Subject: [PATCH 355/769] Fix syntax error in 'htdocs\accountancy\admin\export.php' : Delete 'aZ09' text in line 45 --- htdocs/accountancy/admin/export.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/accountancy/admin/export.php b/htdocs/accountancy/admin/export.php index eccb9b0c06f..03538b759e7 100644 --- a/htdocs/accountancy/admin/export.php +++ b/htdocs/accountancy/admin/export.php @@ -41,7 +41,7 @@ if (empty($user->rights->accounting->chartofaccount)) accessforbidden(); } -$action = GETPOST('action', 'alpha'); +$action = GETPOST('action', 'aZ09'); // Parameters ACCOUNTING_EXPORT_* $main_option = array ( From 320e7adef7fdebcc86783dc28b7e9fac0a9d5013 Mon Sep 17 00:00:00 2001 From: Laurent BOUQUET Date: Thu, 8 Nov 2018 17:09:54 +0100 Subject: [PATCH 356/769] Fix blank lines and whitespace at end of lines --- htdocs/core/modules/DolibarrModules.class.php | 20 +++++++++---------- htdocs/product/class/product.class.php | 8 ++++---- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index d52adb6522d..8a7895a2c68 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -377,7 +377,7 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it * @param string $options String with options when disabling module: * - 'noboxes' = Do not insert boxes - * 'newboxdefonly' = For boxes, insert def of - * boxes only and not boxes activation + * boxes only and not boxes activation * * @return int 1 if OK, 0 if KO */ @@ -470,7 +470,7 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it * Disable function. Deletes the module constants and boxes from the database. * * @param string[] $array_sql SQL requests to be executed when module is disabled - * @param string $options Options when disabling module: + * @param string $options Options when disabling module: * * @return int 1 if OK, 0 if KO */ @@ -1352,13 +1352,13 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it if (! $err) { $sql = "INSERT INTO ".MAIN_DB_PREFIX."cronjob (module_name, datec, datestart, dateend, label, jobtype, classesname, objectname, methodename, command, params, note,"; - if(is_int($frequency)) { $sql.= ' frequency,'; + if(is_int($frequency)) { $sql.= ' frequency,'; } - if(is_int($unitfrequency)) { $sql.= ' unitfrequency,'; + if(is_int($unitfrequency)) { $sql.= ' unitfrequency,'; } - if(is_int($priority)) { $sql.= ' priority,'; + if(is_int($priority)) { $sql.= ' priority,'; } - if(is_int($status)) { $sql.= ' status,'; + if(is_int($status)) { $sql.= ' status,'; } $sql.= " entity, test)"; $sql.= " VALUES ("; @@ -1374,13 +1374,13 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it $sql.= ($command?"'".$this->db->escape($command)."'":"null").","; $sql.= ($parameters?"'".$this->db->escape($parameters)."'":"null").","; $sql.= ($comment?"'".$this->db->escape($comment)."'":"null").","; - if(is_int($frequency)) { $sql.= "'".$this->db->escape($frequency)."', "; + if(is_int($frequency)) { $sql.= "'".$this->db->escape($frequency)."', "; } - if(is_int($unitfrequency)) { $sql.= "'".$this->db->escape($unitfrequency)."', "; + if(is_int($unitfrequency)) { $sql.= "'".$this->db->escape($unitfrequency)."', "; } if(is_int($priority)) {$sql.= "'".$this->db->escape($priority)."', "; } - if(is_int($status)) { $sql.= "'".$this->db->escape($status)."', "; + if(is_int($status)) { $sql.= "'".$this->db->escape($status)."', "; } $sql.= $entity.","; $sql.= "'".$this->db->escape($test)."'"; @@ -2201,7 +2201,7 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it * * @param string $options Options when enabling module ('', 'newboxdefonly', 'noboxes') * 'noboxes' = Do not insert boxes 'newboxdefonly' = For boxes, - * insert def of boxes only and not boxes activation + * insert def of boxes only and not boxes activation * @return int 1 if OK, 0 if KO */ public function init($options = '') diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 7594b9cc204..5ee8b3a9948 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -654,7 +654,7 @@ class Product extends CommonObject if (! $error && ! $notrigger) { // Call trigger $result=$this->call_trigger('PRODUCT_CREATE', $user); - if ($result < 0) { $error++; + if ($result < 0) { $error++; } // End call triggers } @@ -975,7 +975,7 @@ class Product extends CommonObject if (! $error && ! $notrigger) { // Call trigger $result=$this->call_trigger('PRODUCT_MODIFY', $user); - if ($result < 0) { $error++; + if ($result < 0) { $error++; } // End call triggers } @@ -1089,7 +1089,7 @@ class Product extends CommonObject if (! $error && empty($notrigger)) { // Call trigger $result=$this->call_trigger('PRODUCT_DELETE', $user); - if ($result < 0) { $error++; + if ($result < 0) { $error++; } // End call triggers } @@ -4085,7 +4085,7 @@ class Product extends CommonObject * This function need a lot of load. If you use it on list, use a cache to execute it once for each product id. * If ENTREPOT_EXTRA_STATUS set, filtering on warehouse status possible. * - * @param string $option '' = Load all stock info, also from closed and internal warehouses, + * @param string $option '' = Load all stock info, also from closed and internal warehouses, * @return int < 0 if KO, > 0 if OK * @see load_virtual_stock(), loadBatchInfo() */ From e92a63ba734d8debd0bb797c88d88b7d217357c2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 17:15:35 +0100 Subject: [PATCH 357/769] FIX If we change customer/supplier rule we can't edit old thirdparty. --- htdocs/societe/class/societe.class.php | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 0a49bb80f1b..eaf62bc89ca 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -872,6 +872,24 @@ class Societe extends CommonObject // We don't check when update called during a create because verify was already done. // For a merge, we suppose source data is clean and a customer code of a deleted thirdparty must be accepted into a target thirdparty with empty code without duplicate error $result = $this->verify(); + + // If there is only one error and error is ErrorBadCustomerCodeSyntax and we don't change customer code, we allow the update + // So we can update record that were using and old numbering rule. + if (is_array($this->errors)) + { + if (in_array('ErrorBadCustomerCodeSyntax', $this->errors) && is_object($this->oldcopy) && $this->oldcopy->code_client == $this->code_client) + { + if (($key = array_search('ErrorBadCustomerCodeSyntax', $this->errors)) !== false) unset($this->errors[$key]); // Remove error message + } + if (in_array('ErrorBadSupplierCodeSyntax', $this->errors) && is_object($this->oldcopy) && $this->oldcopy->code_fournisseur == $this->code_fournisseur) + { + if (($key = array_search('ErrorBadSupplierCodeSyntax', $this->errors)) !== false) unset($this->errors[$key]); // Remove error message + } + if (empty($this->errors)) // If there is no more error, we can make like if there is no error at all + { + $result = 0; + } + } } if ($result >= 0) @@ -1518,7 +1536,7 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::delete error -3 ".$this->error, LOG_ERR); } } - + // Remove links to subsidiaries companies if (! $error) { From cf688a894b5579bcde526252fa160f5b7fe6eb42 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Thu, 8 Nov 2018 17:20:12 +0100 Subject: [PATCH 358/769] Update api_documents.class.php --- htdocs/api/class/api_documents.class.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php index 23ed35428d3..8db471855d6 100644 --- a/htdocs/api/class/api_documents.class.php +++ b/htdocs/api/class/api_documents.class.php @@ -103,7 +103,7 @@ class Documents extends DolibarrApi } $file_content=file_get_contents($original_file_osencoded); - return array('filename'=>$filename, 'content-type' => mime_content_type($original_file),'content'=>base64_encode($file_content), 'encoding'=>'base64' ); + return array('filename'=>$filename, 'content-type' => dol_mimetype($filename), 'filesize'=>filesize($original_file), 'content'=>base64_encode($file_content), 'encoding'=>'base64' ); } @@ -224,10 +224,9 @@ class Documents extends DolibarrApi } $file_content=file_get_contents($original_file_osencoded); - return array('filename'=>$filename, 'content'=>base64_encode($file_content), 'langcode'=>$outputlangs->defaultlang, 'template'=>$templateused, 'encoding'=>'MIME base64 (base64_encode php function, http://php.net/manual/en/function.base64-encode.php)' ); + return array('filename'=>$filename, 'content-type' => dol_mimetype($filename), 'filesize'=>filesize($original_file), 'content'=>base64_encode($file_content), 'langcode'=>$outputlangs->defaultlang, 'template'=>$templateused, 'encoding'=>'base64' ); } - /** * Return the list of documents of a dedicated element (from its ID or Ref) * From 588de2cc860e6e587a8315a9689650d651e127a6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 18:45:02 +0100 Subject: [PATCH 359/769] Fix filter on entity on project --- htdocs/core/lib/company.lib.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 3bc519e028a..c504a01c63d 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -120,6 +120,7 @@ function societe_prepare_head(Societe $object) $sql = "SELECT COUNT(n.rowid) as nb"; $sql.= " FROM ".MAIN_DB_PREFIX."projet as n"; $sql.= " WHERE fk_soc = ".$object->id; + $sql.= " AND entity IN (".getEntity('project').")"; $resql=$db->query($sql); if ($resql) { From be788e6167bfc9862c3b521c557974c335217354 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 19:57:31 +0100 Subject: [PATCH 360/769] FIX responsive --- htdocs/comm/remx.php | 80 ++++++++++++++++++++++++-------------------- 1 file changed, 44 insertions(+), 36 deletions(-) diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php index 3eec109e6b3..a66e8e66500 100644 --- a/htdocs/comm/remx.php +++ b/htdocs/comm/remx.php @@ -254,7 +254,7 @@ if ($socid > 0) print '
'; print '
'; - + if(! $isCustomer && ! $isSupplier) { print '

'.$langs->trans('ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts').'

'; @@ -266,8 +266,8 @@ if ($socid > 0) $db->close(); exit; } - - + + print ''; if($isCustomer) { // Calcul avoirs client en cours @@ -293,7 +293,7 @@ if ($socid > 0) print ''; print ''; - + if (! empty($user->fk_soc)) // No need to show this for external users { print ''; @@ -322,10 +322,10 @@ if ($socid > 0) { dol_print_error($db); } - + print ''; print ''; - + if (! empty($user->fk_soc)) // No need to show this for external users { print ''; @@ -344,11 +344,11 @@ if ($socid > 0) print load_fiche_titre($langs->trans("NewGlobalDiscount"),'',''); print '
'; - + if($isCustomer && ! $isSupplier) { print ''; } - + if(! $isCustomer && $isSupplier) { print ''; } @@ -356,8 +356,8 @@ if ($socid > 0) print '
'.$langs->trans("CustomerAbsoluteDiscountAllUsers").''.$remise_all.' '.$langs->trans("Currency".$conf->currency).' '.$langs->trans("HT").'
'.$langs->trans("CustomerAbsoluteDiscountMy").'
'.$langs->trans("SupplierAbsoluteDiscountAllUsers").''.$remise_all.' '.$langs->trans("Currency".$conf->currency).' '.$langs->trans("HT").'
'.$langs->trans("SupplierAbsoluteDiscountMy").'
'; if($isCustomer && $isSupplier) { print ''; - print ''; } print ''; @@ -401,7 +401,7 @@ if ($socid > 0) /* * Liste remises fixes client restant en cours (= liees a aucune facture ni ligne de facture) */ - + print load_fiche_titre($langs->trans("DiscountStillRemaining")); if($isCustomer) { @@ -424,10 +424,11 @@ if ($socid > 0) $sql.= " AND rc.discount_type = 0"; // Eliminate supplier discounts $sql.= " AND (rc.fk_facture_line IS NULL AND rc.fk_facture IS NULL)"; $sql.= " ORDER BY rc.datec DESC"; - + $resql=$db->query($sql); if ($resql) { + print '
'; print '
'.$langs->trans('DiscountType').' '; - print ' '; + print ' '; + print '   '; print '
'.$langs->trans("AmountHT").'
'; print ''; print ''; // Need 120+ for format with AM/PM @@ -439,9 +440,9 @@ if ($socid > 0) print ''; print ''; print ''; - + $showconfirminfo=array(); - + $i = 0; $num = $db->num_rows($resql); if ($num > 0) @@ -449,7 +450,7 @@ if ($socid > 0) while ($i < $num) { $obj = $db->fetch_object($resql); - + print ''; print ''; if (preg_match('/\(CREDIT_NOTE\)/',$obj->description)) @@ -502,7 +503,7 @@ if ($socid > 0) } else print ''; print ''; - + if ($_GET["action"]=='split' && GETPOST('remid') == $obj->rowid) { $showconfirminfo['rowid']=$obj->rowid; @@ -517,7 +518,8 @@ if ($socid > 0) } $db->free($resql); print "
'.$langs->trans("Date").''.$langs->trans("DiscountOfferedBy").' 
'.dol_print_date($db->jdate($obj->dc),'dayhour').' 
"; - + print '
'; + if (count($showconfirminfo)) { $amount1=price2num($showconfirminfo['amount_ttc']/2,'MT'); @@ -561,10 +563,11 @@ if ($socid > 0) $sql.= " AND rc.discount_type = 1"; // Eliminate customer discounts $sql.= " AND (rc.fk_invoice_supplier IS NULL AND rc.fk_invoice_supplier_line IS NULL)"; $sql.= " ORDER BY rc.datec DESC"; - + $resql=$db->query($sql); if ($resql) { + print '
'; print ''; print ''; print ''; // Need 120+ for format with AM/PM @@ -576,9 +579,9 @@ if ($socid > 0) print ''; print ''; print ''; - + $showconfirminfo=array(); - + $i = 0; $num = $db->num_rows($resql); if ($num > 0) @@ -586,7 +589,7 @@ if ($socid > 0) while ($i < $num) { $obj = $db->fetch_object($resql); - + print ''; print ''; if (preg_match('/\(CREDIT_NOTE\)/',$obj->description)) @@ -639,7 +642,7 @@ if ($socid > 0) } else print ''; print ''; - + if ($_GET["action"]=='split' && GETPOST('remid') == $obj->rowid) { $showconfirminfo['rowid']=$obj->rowid; @@ -654,7 +657,8 @@ if ($socid > 0) } $db->free($resql); print "
'.$langs->trans("Date").''.$langs->trans("DiscountOfferedBy").' 
'.dol_print_date($db->jdate($obj->dc),'dayhour').' 
"; - + print '
'; + if (count($showconfirminfo)) { $amount1=price2num($showconfirminfo['amount_ttc']/2,'MT'); @@ -673,19 +677,19 @@ if ($socid > 0) dol_print_error($db); } - if($isCustomer) { + if ($isCustomer) { print ''; // class="ficheaddleft" print ''; // class="fichehalfright" print ''; // class="fichecenter" } } - print '
'; + print '

'; /* * List discount consumed (=liees a une ligne de facture ou facture) */ - + print load_fiche_titre($langs->trans("DiscountAlreadyCounted")); if($isCustomer) { @@ -730,12 +734,13 @@ if ($socid > 0) $sql2.= " AND rc.fk_user = u.rowid"; $sql2.= " AND rc.discount_type = 0"; // Eliminate supplier discounts $sql2.= " ORDER BY dc DESC"; - + $resql=$db->query($sql); $resql2=null; if ($resql) $resql2=$db->query($sql2); if ($resql2) { + print '
'; print ''; print ''; print ''; // Need 120+ for format with AM/PM @@ -747,7 +752,7 @@ if ($socid > 0) print ''; print ''; print ''; - + $tab_sqlobj=array(); $tab_sqlobjOrder=array(); $num = $db->num_rows($resql); @@ -761,7 +766,7 @@ if ($socid > 0) } } $db->free($resql); - + $num = $db->num_rows($resql2); for ($i = 0;$i < $num;$i++) { @@ -771,7 +776,7 @@ if ($socid > 0) } $db->free($resql2); array_multisort($tab_sqlobjOrder,SORT_DESC,$tab_sqlobj); - + $num = count($tab_sqlobj); if ($num > 0) { @@ -830,8 +835,9 @@ if ($socid > 0) { print ''; } - + print "
'.$langs->trans("Date").''.$langs->trans("Author").' 
'.$langs->trans("None").'
"; + print '
'; } else { @@ -882,12 +888,13 @@ if ($socid > 0) $sql2.= " AND rc.fk_user = u.rowid"; $sql2.= " AND rc.discount_type = 1"; // Eliminate customer discounts $sql2.= " ORDER BY dc DESC"; - + $resql=$db->query($sql); $resql2=null; if ($resql) $resql2=$db->query($sql2); if ($resql2) { + print '
'; print ''; print ''; print ''; // Need 120+ for format with AM/PM @@ -899,7 +906,7 @@ if ($socid > 0) print ''; print ''; print ''; - + $tab_sqlobj=array(); $tab_sqlobjOrder=array(); $num = $db->num_rows($resql); @@ -913,7 +920,7 @@ if ($socid > 0) } } $db->free($resql); - + $num = $db->num_rows($resql2); for ($i = 0;$i < $num;$i++) { @@ -923,7 +930,7 @@ if ($socid > 0) } $db->free($resql2); array_multisort($tab_sqlobjOrder,SORT_DESC,$tab_sqlobj); - + $num = count($tab_sqlobj); if ($num > 0) { @@ -982,8 +989,9 @@ if ($socid > 0) { print ''; } - + print "
'.$langs->trans("Date").''.$langs->trans("Author").' 
'.$langs->trans("None").'
"; + print '
'; } else { From 9a31a61c9d22f61fce1f3fafcf444e1e2d8c8883 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Nov 2018 20:05:01 +0100 Subject: [PATCH 361/769] FIX #9971 --- htdocs/core/class/html.formprojet.class.php | 2 +- htdocs/core/class/translate.class.php | 4 ---- htdocs/core/lib/company.lib.php | 2 +- htdocs/projet/list.php | 2 +- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index 7d74ac308b9..42ea2d216aa 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -631,7 +631,7 @@ class FormProjets $sellist .= '>'; if ($useshortlabel) { - $finallabel = ($langs->transnoentitiesnoconv("OppStatusShort".$obj->code) != "OppStatusShort".$obj->code ? $langs->transnoentitiesnoconv("OppStatusShort".$obj->code) : $obj->label); + $finallabel = ($langs->transnoentitiesnoconv("OppStatus".$obj->code) != "OppStatus".$obj->code ? $langs->transnoentitiesnoconv("OppStatus".$obj->code) : $obj->label); } else { diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index bdcae2e33ea..04867db0e7a 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -562,10 +562,6 @@ class Translate elseif (preg_match('/^PaymentTypeShort([0-9A-Z]+)$/i',$key,$reg)) { $newstr=$this->getLabelFromKey($db,$reg[1],'c_paiement','code','libelle','',1); - } - elseif (preg_match('/^OppStatusShort([0-9A-Z]+)$/i',$key,$reg)) - { - $newstr=$this->getLabelFromKey($db,$reg[1],'c_lead_status','code','label'); } elseif (preg_match('/^OppStatus([0-9A-Z]+)$/i',$key,$reg)) { diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index c504a01c63d..c00d4469b05 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -802,7 +802,7 @@ function show_projects($conf, $langs, $db, $object, $backtopage='', $nocreatelin print '
'; - if ($obj->opp_status_code) print $langs->trans("OppStatusShort".$obj->opp_status_code); + if ($obj->opp_status_code) print $langs->trans("OppStatus".$obj->opp_status_code); print ''; diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index aa0c4b0d8fe..bc29cd26f45 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -804,7 +804,7 @@ while ($i < min($num,$limit)) if (! empty($arrayfields['p.fk_opp_status']['checked'])) { print ''; - if ($obj->opp_status_code) print $langs->trans("OppStatusShort".$obj->opp_status_code); + if ($obj->opp_status_code) print $langs->trans("OppStatus".$obj->opp_status_code); print '
'; + print '
'; + print '
'; if ($object->isProduct()) $nblignefour=4; else $nblignefour=4; $param="&id=".$object->id; print ''; + print_liste_field_titre("AppliedPricesFrom",$_SERVER["PHP_SELF"],"pfp.datec","",$param,"",$sortfield,$sortorder); print_liste_field_titre("Suppliers",$_SERVER["PHP_SELF"],"s.nom","",$param,"",$sortfield,$sortorder); print_liste_field_titre("SupplierRef",$_SERVER["PHP_SELF"],"","",$param,"",$sortfield,$sortorder); if (!empty($conf->global->FOURN_PRODUCT_AVAILABILITY)) print_liste_field_titre("Availability",$_SERVER["PHP_SELF"],"pfp.fk_availability","",$param,"",$sortfield,$sortorder); @@ -788,10 +789,13 @@ SCRIPT; { print ''; + // Date from + print ''; + // Supplier print ''; - // Supplier + // Supplier ref print ''; // Availability From 5d1d77a966dc26032d172450d772f8311a1bf70a Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 9 Nov 2018 10:25:00 +0100 Subject: [PATCH 365/769] FIX missing action "edit" for the hook --- htdocs/categories/edit.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/categories/edit.php b/htdocs/categories/edit.php index b420847f6fd..1cde5e62adc 100644 --- a/htdocs/categories/edit.php +++ b/htdocs/categories/edit.php @@ -35,7 +35,7 @@ $langs->load("categories"); $id=GETPOST('id','int'); $ref=GETPOST('ref'); $type=GETPOST('type'); -$action=GETPOST('action','aZ09'); +$action=(GETPOST('action','aZ09')?GETPOST('action','aZ09'):'edit'); $confirm=GETPOST('confirm'); $cancel=GETPOST('cancel','alpha'); From ee06f36f4c82f8b51624ceed78ef79a20dd7f61b Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 9 Nov 2018 11:36:20 +0100 Subject: [PATCH 366/769] FIX missing field "visible" --- htdocs/categories/class/categorie.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index 70b2108dd4c..3de9bdfab0a 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -1043,7 +1043,7 @@ class Categorie extends CommonObject $current_lang = $langs->getDefaultLang(); // Init $this->cats array - $sql = "SELECT DISTINCT c.rowid, c.label, c.description, c.color, c.fk_parent"; // Distinct reduce pb with old tables with duplicates + $sql = "SELECT DISTINCT c.rowid, c.label, c.description, c.color, c.fk_parent, c.visible"; // Distinct reduce pb with old tables with duplicates if (! empty($conf->global->MAIN_MULTILANGS)) $sql.= ", t.label as label_trans, t.description as description_trans"; $sql.= " FROM ".MAIN_DB_PREFIX."categorie as c"; if (! empty($conf->global->MAIN_MULTILANGS)) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_lang as t ON t.fk_category=c.rowid AND t.lang='".$current_lang."'"; @@ -1063,6 +1063,7 @@ class Categorie extends CommonObject $this->cats[$obj->rowid]['label'] = ! empty($obj->label_trans) ? $obj->label_trans : $obj->label; $this->cats[$obj->rowid]['description'] = ! empty($obj->description_trans) ? $obj->description_trans : $obj->description; $this->cats[$obj->rowid]['color'] = $obj->color; + $this->cats[$obj->rowid]['visible'] = $obj->visible; $i++; } } From 773e2da4ccef4d45982c305fde9602c029ccadf1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 11:41:27 +0100 Subject: [PATCH 367/769] Fix example of number for holiday --- htdocs/admin/holiday.php | 8 ++++---- htdocs/holiday/class/holiday.class.php | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/htdocs/admin/holiday.php b/htdocs/admin/holiday.php index c1c5fe58b45..82037fa85d1 100644 --- a/htdocs/admin/holiday.php +++ b/htdocs/admin/holiday.php @@ -75,8 +75,8 @@ else if ($action == 'specimen') // For contract { $modele= GETPOST('module','alpha'); - $contract = new Contrat($db); - $contract->initAsSpecimen(); + $holiday = new Holiday($db); + $holiday->initAsSpecimen(); // Search template files $file=''; $classname=''; $filefound=0; @@ -98,7 +98,7 @@ else if ($action == 'specimen') // For contract $module = new $classname($db); - if ($module->write_file($contract,$langs) > 0) + if ($module->write_file($holiday,$langs) > 0) { header("Location: ".DOL_URL_ROOT."/document.php?modulepart=holiday&file=SPECIMEN.pdf"); return; @@ -271,7 +271,7 @@ foreach ($dirmodels as $reldir) // Info $htmltooltip=''; $htmltooltip.=''.$langs->trans("Version").': '.$module->getVersion().'
'; - $nextval=$module->getNextValue($mysoc,$contract); + $nextval=$module->getNextValue($mysoc,$holiday); if ("$nextval" != $langs->trans("NotAvailable")) { // Keep " on nextval $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index 6dd49b52a93..9c87f7d32fd 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -2171,8 +2171,10 @@ class Holiday extends CommonObject $this->description='SPECIMEN description'; $this->date_debut=dol_now(); $this->date_fin=dol_now()+(24*3600); + $this->date_valid=dol_now(); $this->fk_validator=1; $this->halfday=0; $this->fk_type=1; + $this->statut=Holiday::STATUS_VALIDATED; } } From 1fd398234fc0e7d08e0bed0068c9b9adde8adf05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 9 Nov 2018 15:29:49 +0100 Subject: [PATCH 368/769] remove warning --- htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php index 85592006a14..0f0e3c91a11 100644 --- a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php +++ b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php @@ -1,5 +1,6 @@ +/* Copyright (C) 2004-2017 Laurent Destailleur + * Copyright (C) 2018 Frédéric France * Copyright (C) ---Put here your own copyright and developer email--- * * This program is free software: you can redistribute it and/or modify @@ -200,7 +201,7 @@ class mymodulewidget1 extends ModeleBoxes * @param array $contents Array with properties of box lines * @return void */ - public function showBox($head = null, $contents = null) + public function showBox($head = null, $contents = null, $nooutput = 0) { // You may make your own code here… // … or use the parent's class function using the provided head and contents templates From 6cd27d8c8076610a2db4593cce775a0169e0b256 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 9 Nov 2018 18:08:06 +0100 Subject: [PATCH 369/769] add admin dkim translation --- htdocs/langs/en_US/admin.lang | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index d9be14b3cb7..4ccfb04983f 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -277,8 +277,12 @@ MAIN_MAIL_ENABLED_USER_DEST_SELECT=Add employee users with email into allowed re MAIN_MAIL_SENDMODE=Email sending method MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) -MAIN_MAIL_EMAIL_TLS= Use TLS (SSL) encryption -MAIN_MAIL_EMAIL_STARTTLS= Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) MAIN_SMS_SENDMODE=Method to use to send SMS MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending @@ -1816,7 +1820,7 @@ VATIsUsedIsOff=Note: The option to use sales Tax or VAT has been set to SwapSenderAndRecipientOnPDF=Swap sender and recipient address on PDF FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only EmailCollector=Email collector -EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some record automatically (like leads). +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some record automatically (like leads). NewEmailCollector=New Email Collector EMailHost=Host of email IMAP server MailboxSourceDirectory=Mailbox source directory From 172468587d386f76d46c2194ee33df231d8fc26a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 9 Nov 2018 18:13:13 +0100 Subject: [PATCH 370/769] Update mymodulewidget1.php --- htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php index 0f0e3c91a11..edd2f627bb5 100644 --- a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php +++ b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php @@ -197,8 +197,9 @@ class mymodulewidget1 extends ModeleBoxes /** * Method to show box. Called by Dolibarr eatch time it wants to display the box. * - * @param array $head Array with properties of box title - * @param array $contents Array with properties of box lines + * @param array $head Array with properties of box title + * @param array $contents Array with properties of box lines + * @param int $nooutput No print, only return string * @return void */ public function showBox($head = null, $contents = null, $nooutput = 0) From f1287578f3eb79c46c2aef8b55cc2b85c7115d72 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 18:18:17 +0100 Subject: [PATCH 371/769] Work on emailcollector --- htdocs/admin/emailcollector_card.php | 64 +++++++++++++------ .../class/emailcollector.class.php | 58 ++++++++++------- .../install/mysql/migration/8.0.0-9.0.0.sql | 1 + .../llx_emailcollector_emailcollector.sql | 1 + htdocs/langs/en_US/admin.lang | 4 +- 5 files changed, 84 insertions(+), 44 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index 3280492701e..f9ba71cc858 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -103,25 +103,6 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; } - -if ($action == 'confirm_collect') -{ - dol_include_once('/emailcollector/class/emailcollector.class.php'); - - $res = $object->doCollect(); - - if ($res == 0) - { - setEventMessages($object->output, null, 'mesgs'); - } - else - { - setEventMessages($object->error, null, 'errors'); - } - - $action = ''; -} - if (GETPOST('addfilter','alpha')) { $emailcollectorfilter = new EmailCollectorFilter($db); @@ -190,6 +171,25 @@ if ($action == 'deleteoperation') } } +if ($action == 'confirm_collect') +{ + dol_include_once('/emailcollector/class/emailcollector.class.php'); + + $res = $object->doCollect(); + + if ($res == 0) + { + setEventMessages($object->output, null, 'mesgs'); + } + else + { + setEventMessages($object->error, null, 'errors'); + } + + $action = ''; +} + + /* @@ -373,7 +373,29 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea */ $morehtmlref .= ''; - dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref); + $morehtml = $langs->trans("NbOfEmailsInInbox").' : '; + + $sourcedir = $object->source_directory; + $targetdir = ($object->target_directory ? $object->target_directory : ''); // Can be '[Gmail]/Trash' or 'mytag' + + $connectstringserver = $object->getConnectStringIMAP(); + $connectstringsource = $connectstringserver.imap_utf7_encode($sourcedir); + $connectstringtarget = $connectstringserver.imap_utf7_encode($targetdir); + + $connection = imap_open($connectstringsource, $object->user, $object->password); + if (! $connection) + { + $morehtml .= 'Failed to open IMAP connection '.$connectstringsource; + } + else + { + //$morehtmlstatus .= imap_num_msg($connection).'
'; + $morehtml .= imap_num_msg($connection); + } + + imap_close($connection); + + dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref.'
'.$morehtml.'
', '', 0, '', '', 0, ''); print '
'; print '
'; @@ -474,7 +496,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; print '
'; - print '
'; + print '
'; // End
print '

'; diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index e4c0d4f588f..b68639ebf5e 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -90,7 +90,8 @@ class EmailCollector extends CommonObject //'actiontodo' => array('type'=>'varchar(255)', 'label'=>'ActionToDo', 'visible'=>1, 'enabled'=>1, 'position'=>106), 'target_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxTargetDirectory', 'visible'=>1, 'enabled'=>1, 'position'=>110, 'notnull'=>0, 'comment'=>"Where to store messages once processed"), 'datelastresult' => array('type'=>'datetime', 'label'=>'DateLastResult', 'visible'=>1, 'enabled'=>'$action != "create" && $action != "edit"', 'position'=>121, 'notnull'=>-1,), - 'lastresult' => array('type'=>'varchar(255)', 'label'=>'LastResult', 'visible'=>1, 'enabled'=>'$action != "create" && $action != "edit"', 'position'=>122, 'notnull'=>-1,), + 'codelastresult' => array('type'=>'varchar(16)', 'label'=>'CodeLastResult', 'visible'=>1, 'enabled'=>'$action != "create" && $action != "edit"', 'position'=>122, 'notnull'=>-1,), + 'lastresult' => array('type'=>'varchar(255)', 'label'=>'LastResult', 'visible'=>1, 'enabled'=>'$action != "create" && $action != "edit"', 'position'=>123, 'notnull'=>-1,), 'note_public' => array('type'=>'html', 'label'=>'NotePublic', 'visible'=>0, 'enabled'=>1, 'position'=>61, 'notnull'=>-1,), 'note_private' => array('type'=>'html', 'label'=>'NotePrivate', 'visible'=>0, 'enabled'=>1, 'position'=>62, 'notnull'=>-1,), 'date_creation' => array('type'=>'datetime', 'label'=>'DateCreation', 'visible'=>-2, 'enabled'=>1, 'position'=>500, 'notnull'=>1,), @@ -717,23 +718,16 @@ class EmailCollector extends CommonObject $this->fetchActions(); $sourcedir = $this->source_directory; - $targetdir = ($this->target_directory ? $server.$this->target_directory : ''); // Can be '[Gmail]/Trash' or 'mytag' + $targetdir = ($this->target_directory ? $this->target_directory : ''); // Can be '[Gmail]/Trash' or 'mytag' - // Connect to IMAP - $flags ='/service=imap'; // IMAP - $flags.='/ssl'; // '/tls' - $flags.='/novalidate-cert'; - //$flags.='/readonly'; - //$flags.='/debug'; - - $connectstringserver = '{'.$this->host.':993'.$flags.'}'; - $connectstring = $connectstringserver.imap_utf7_encode($sourcedir); + $connectstringserver = $this->getConnectStringIMAP(); + $connectstringsource = $connectstringserver.imap_utf7_encode($sourcedir); $connectstringtarget = $connectstringserver.imap_utf7_encode($targetdir); - $connection = imap_open($connectstring, $this->user, $this->password); + $connection = imap_open($connectstringsource, $this->user, $this->password); if (! $connection) { - $this->error = 'Failed to open IMAP connection '.$connectstring; + $this->error = 'Failed to open IMAP connection '.$connectstringsource; return -3; } @@ -743,23 +737,24 @@ class EmailCollector extends CommonObject { if (empty($rule['status'])) continue; - if ($rule['key'] == 'to') $search=($search?' ':'').'TO "'.str_replace('"', '', $rule['rulevalue']).'"'; - if ($rule['key'] == 'bcc') $search=($search?' ':'').'BCC'; - if ($rule['key'] == 'cc') $search=($search?' ':'').'CC'; - if ($rule['key'] == 'from') $search=($search?' ':'').'FROM "'.str_replace('"', '', $rule['rulevalue']).'"'; - if ($rule['key'] == 'subject') $search=($search?' ':'').'SUBJECT "'.str_replace('"', '', $rule['rulevalue']).'"'; - if ($rule['key'] == 'body') $search=($search?' ':'').'BODY "'.str_replace('"', '', $rule['rulevalue']).'"'; - if ($rule['key'] == 'seen') $search=($search?' ':'').'SEEN'; - if ($rule['key'] == 'unseen') $search=($search?' ':'').'UNSEEN'; + if ($rule['type'] == 'to') $search.=($search?' ':'').'TO "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['type'] == 'bcc') $search.=($search?' ':'').'BCC'; + if ($rule['type'] == 'cc') $search.=($search?' ':'').'CC'; + if ($rule['type'] == 'from') $search.=($search?' ':'').'FROM "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['type'] == 'subject') $search.=($search?' ':'').'SUBJECT "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['type'] == 'body') $search.=($search?' ':'').'BODY "'.str_replace('"', '', $rule['rulevalue']).'"'; + if ($rule['type'] == 'seen') $search.=($search?' ':'').'SEEN'; + if ($rule['type'] == 'unseen') $search.=($search?' ':'').'UNSEEN'; } if (empty($targetdir)) // Use last date as filter if there is no targetdir defined. { $fromdate=0; - if ($this->datelastresult) $fromdate = $this->datelastresult; + if ($this->datelastresult && $this->codelastresult == 'OK') $fromdate = $this->datelastresult; if ($fromdate > 0) $search.=($search?' ':'').'SINCE '.dol_print_date($fromdate - 1,'dayhourrfc'); } dol_syslog("search string = ".$search); + //var_dump($search);exit; $nbemailprocessed=0; $nbactiondone=0; @@ -841,4 +836,23 @@ class EmailCollector extends CommonObject return $error; } + + /** + * Return the connectstring to use with IMAP connection function + * + * @return string + */ + function getConnectStringIMAP() + { + // Connect to IMAP + $flags ='/service=imap'; // IMAP + $flags.='/ssl'; // '/tls' + $flags.='/novalidate-cert'; + //$flags.='/readonly'; + //$flags.='/debug'; + + $connectstringserver = '{'.$this->host.':993'.$flags.'}'; + + return $connectstringserver; + } } diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 05106e475cd..8f51d9f00c4 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -153,6 +153,7 @@ CREATE TABLE llx_emailcollector_emailcollector( source_directory varchar(255) NOT NULL, target_directory varchar(255), datelastresult datetime, + codelastresult varchar(16), lastresult varchar(255), note_public text, note_private text, diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql index 2db5e693427..750c2b24e84 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql @@ -27,6 +27,7 @@ CREATE TABLE llx_emailcollector_emailcollector( source_directory varchar(255) NOT NULL, target_directory varchar(255), datelastresult datetime, + codelastresult varchar(16), lastresult varchar(255), note_public text, note_private text, diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index d9be14b3cb7..259d8920744 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1827,11 +1827,13 @@ DateLastResult=Date last collect LastResult=Last result EmailCollectorConfirmCollectTitle=Email collect confirmation EmailCollectorConfirmCollect=Do you want to run the collect for this collector now ? -NoNewEmailToProcess=No new email to process +NoNewEmailToProcess=No new email (matching filters) to process NothingProcessed=Nothing done XEmailsDoneYActionsDone=%s emails analyzed, %s record/actions done by collector RecordEvent=Record event CreateLeadAndThirdParty=Create lead (and thirdparty if necessary) +CodeLastResult=Result code of last collect +NbOfEmailsInInbox=Number of email in source directory ##### Resource #### ResourceSetup=Configuration du module Resource UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). From e86e3ec7ace65c9b10b81b67854987ede7d590aa Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Nov 2018 19:30:44 +0100 Subject: [PATCH 372/769] Work on email collector --- htdocs/admin/emailcollector_card.php | 4 +- .../core/modules/modEmailCollector.class.php | 5 +- htdocs/cron/list.php | 2 +- .../class/emailcollector.class.php | 76 ++++++++++--------- .../class/emailcollectorfilter.class.php | 4 +- htdocs/langs/en_US/admin.lang | 2 +- .../core/modules/modMyModule.class.php | 6 +- 7 files changed, 50 insertions(+), 49 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index f9ba71cc858..08656a9ee27 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -175,9 +175,9 @@ if ($action == 'confirm_collect') { dol_include_once('/emailcollector/class/emailcollector.class.php'); - $res = $object->doCollect(); + $res = $object->doCollectOneCollector(); - if ($res == 0) + if ($res > 0) { setEventMessages($object->output, null, 'mesgs'); } diff --git a/htdocs/core/modules/modEmailCollector.class.php b/htdocs/core/modules/modEmailCollector.class.php index ef19ff49bf9..042dc0c82f2 100644 --- a/htdocs/core/modules/modEmailCollector.class.php +++ b/htdocs/core/modules/modEmailCollector.class.php @@ -174,11 +174,8 @@ class modEmailCollector extends DolibarrModules // Cronjobs (List of cron jobs entries to add when module is enabled) // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week $this->cronjobs = array( - 0=>array('label'=>'Email collector', 'jobtype'=>'method', 'class'=>'/emailcollector/class/emailcollector.class.php', 'objectname'=>'EmailCollector', 'method'=>'doCollect', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>5, 'unitfrequency'=>60, 'status'=>1, 'test'=>'$conf->emailcollector->enabled') + 0=>array('label'=>'Email collector', 'priority'=>50, 'jobtype'=>'method', 'class'=>'/emailcollector/class/emailcollector.class.php', 'objectname'=>'EmailCollector', 'method'=>'doCollect', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>5, 'unitfrequency'=>60, 'status'=>1, 'test'=>'$conf->emailcollector->enabled') ); - // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>true), - // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>true) - // ); // Permissions diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php index f594eb2b383..2ddfbee5e8c 100644 --- a/htdocs/cron/list.php +++ b/htdocs/cron/list.php @@ -192,7 +192,7 @@ if (empty($reshook)) $result = 0; if ($massaction == 'disable') $result = $tmpcron->setStatut(Cronjob::STATUS_DISABLED); elseif ($massaction == 'enable') $result = $tmpcron->setStatut(Cronjob::STATUS_ENABLED); - else dol_print_error($db, 'Bad value for massaction'); + //else dol_print_error($db, 'Bad value for massaction'); if ($result < 0) setEventMessages($tmpcron->error, $tmpcron->errors, 'errors'); } else diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index b68639ebf5e..8769e0a70c9 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -85,7 +85,7 @@ class EmailCollector extends CommonObject 'host' => array('type'=>'varchar(255)', 'label'=>'EMailHost', 'visible'=>1, 'enabled'=>1, 'position'=>100, 'notnull'=>1, 'searchall'=>1, 'comment'=>"IMAP server", 'help'=>'Example: imap.gmail.com'), 'user' => array('type'=>'varchar(128)', 'label'=>'Login', 'visible'=>1, 'enabled'=>1, 'position'=>101, 'notnull'=>1, 'index'=>1, 'comment'=>"IMAP login", 'help'=>'Example: myacount@gmail.com'), 'password' => array('type'=>'password', 'label'=>'Password', 'visible'=>-1, 'enabled'=>1, 'position'=>102, 'notnull'=>1, 'comment'=>"IMAP password"), - 'source_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxSourceDirectory', 'visible'=>-1, 'enabled'=>1, 'position'=>103, 'notnull'=>1, 'default' => 'Inbox'), + 'source_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxSourceDirectory', 'visible'=>-1, 'enabled'=>1, 'position'=>103, 'notnull'=>1, 'default' => 'Inbox', 'help'=>'Example: INBOX'), //'filter' => array('type'=>'text', 'label'=>'Filter', 'visible'=>1, 'enabled'=>1, 'position'=>105), //'actiontodo' => array('type'=>'varchar(255)', 'label'=>'ActionToDo', 'visible'=>1, 'enabled'=>1, 'position'=>106), 'target_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxTargetDirectory', 'visible'=>1, 'enabled'=>1, 'position'=>110, 'notnull'=>0, 'comment'=>"Where to store messages once processed"), @@ -318,33 +318,9 @@ class EmailCollector extends CommonObject $socid = $user->societe_id ? $user->societe_id : ''; - // If the internal user must only see his customers, force searching by him - if (! $user->rights->societe->client->voir && !$socid) { - $search_sale = $user->id; - } $sql = "SELECT s.rowid"; - //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { - // $sql .= ", sc.fk_soc, sc.fk_user"; // We need these fields in order to filter by sale (including the case where the user can only see his prospects) - //} - $sql.= " FROM ".MAIN_DB_PREFIX."emailcollector as s"; - - //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { - // $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; // We need this table joined to the select in order to filter by sale - //} - //$sql.= ", ".MAIN_DB_PREFIX."c_stcomm as st"; - //$sql.= " WHERE s.fk_stcomm = st.id"; - - // Example of use $mode - //if ($mode == 1) $sql.= " AND s.client IN (1, 3)"; - //if ($mode == 2) $sql.= " AND s.client IN (2, 3)"; - + $sql.= " FROM ".MAIN_DB_PREFIX."emailcollector_emailcollector as s"; $sql.= ' WHERE s.entity IN ('.getEntity('emailcollector').')'; - //if ((!$user->rights->societe->client->voir && !$socid) || $search_sale > 0) { - // $sql.= " AND s.fk_soc = sc.fk_soc"; - //} - //if ($socid) { - // $sql.= " AND s.fk_soc = ".$socid; - //} if ($activeOnly) { $sql.= " AND s.status = 1"; } @@ -359,10 +335,10 @@ class EmailCollector extends CommonObject } $result = $this->db->query($sql); - if ($result) { $num = $this->db->num_rows($result); - while ($i < $num) { + while ($i < $num) + { $obj = $this->db->fetch_object($result); $emailcollector_static = new EmailCollector($this->db); if ($emailcollector_static->fetch($obj->rowid)) { @@ -371,11 +347,12 @@ class EmailCollector extends CommonObject $i++; } } else { - dol_syslog(__METHOD__.':: Error when retrieve emailcollector list', LOG_ERR); + $this->errors[] = 'EmailCollector::fetchAll Error when retrieve emailcollector list'; + dol_syslog('EmailCollector::fetchAll Error when retrieve emailcollector list', LOG_ERR); $ret = -1; } if (! count($obj_ret)) { - dol_syslog(__METHOD__.':: No emailcollector found', LOG_DEBUG); + dol_syslog('EmailCollector::fetchAll No emailcollector found', LOG_DEBUG); } return $obj_ret; @@ -676,14 +653,40 @@ class EmailCollector extends CommonObject * * @return int 0 if OK, <>0 if KO (this function is used also by cron so only 0 is OK) */ - //public function doScheduledJob($param1, $param2, ...) public function doCollect() + { + global $user; + + $nberror = 0; + + $arrayofcollectors = $this->fetchAll($user, 1); + + // Loop on each collector + foreach($arrayofcollectors as $emailcollector) + { + $result = $emailcollector->doCollectOneCollector(); + dol_syslog("doCollect result = ".$result." for emailcollector->id = ".$emailcollector->id); + + $this->error.='EmailCollector ID '.$emailcollector->id.':'.$emailcollector->error.'
'; + if (! empty($emailcollector->errors)) $this->error.=join('
', $emailcollector->errors); + $this->output.='EmailCollector ID '.$emailcollector->id.': '.$emailcollector->output.'
'; + } + + return $nberror; + } + + /** + * Execute collect for current collector loaded previously with fetch. + * + * @return int <0 if KO, >0 if OK + */ + public function doCollectOneCollector() { global $conf, $langs, $user; //$conf->global->SYSLOG_FILE = 'DOL_DATA_ROOT/dolibarr_mydedicatedlofile.log'; - dol_syslog("EmailCollector::doCollect start", LOG_DEBUG); + dol_syslog("EmailCollector::doCollectOneCollector start", LOG_DEBUG); $error = 0; $this->output = ''; @@ -803,11 +806,11 @@ class EmailCollector extends CommonObject // Move email if (! $errorforactions && $targetdir) { - dol_syslog("EmailCollector::doCollect move message ".$imapemail." to ".$connectstringtarget, LOG_DEBUG); + dol_syslog("EmailCollector::doCollectOneCollector move message ".$imapemail." to ".$connectstringtarget, LOG_DEBUG); $res = imap_mail_move($connection, $imapemail, $targetdir, 0); if ($res == false) { $error++; - $this->errors = imap_last_error(); + $this->error = imap_last_error(); dol_syslog(imap_last_error()); } } @@ -830,11 +833,12 @@ class EmailCollector extends CommonObject $this->datelastresult = $now; $this->lastresult = $this->output; + $this->codelastresult = ($error ? 'KO' : 'OK'); $this->update($user); - dol_syslog("EmailCollector::doCollect end", LOG_DEBUG); + dol_syslog("EmailCollector::doCollectOneCollector end", LOG_DEBUG); - return $error; + return $error?-1:1; } /** diff --git a/htdocs/emailcollector/class/emailcollectorfilter.class.php b/htdocs/emailcollector/class/emailcollectorfilter.class.php index 23c8f7a02b2..c4e94b5e4bb 100644 --- a/htdocs/emailcollector/class/emailcollectorfilter.class.php +++ b/htdocs/emailcollector/class/emailcollectorfilter.class.php @@ -159,10 +159,10 @@ class EmailCollectorFilter extends CommonObject $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")); return -1; } - if (empty($this->rulevalue)) + if (! in_array($this->type, array('seen','unseen')) && empty($this->rulevalue)) { $langs->load("errors"); - $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("RuleValue")); + $this->errors[]=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("StringToFilter")); return -1; } diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 259d8920744..86815ca70c2 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1821,7 +1821,7 @@ NewEmailCollector=New Email Collector EMailHost=Host of email IMAP server MailboxSourceDirectory=Mailbox source directory MailboxTargetDirectory=Mailbox target directory -EmailcollectorOperations=Operations done by collector +EmailcollectorOperations=Operations to do by collector CollectNow=Collect now DateLastResult=Date last collect LastResult=Last result diff --git a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php index 8d34b0e63a3..8c4f933b31f 100644 --- a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php +++ b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php @@ -197,10 +197,10 @@ class modMyModule extends DolibarrModules // Cronjobs (List of cron jobs entries to add when module is enabled) // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week $this->cronjobs = array( - 0=>array('label'=>'MyJob label', 'jobtype'=>'method', 'class'=>'/mymodule/class/myobject.class.php', 'objectname'=>'MyObject', 'method'=>'doScheduledJob', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled') + 0=>array('label'=>'MyJob label', 'jobtype'=>'method', 'class'=>'/mymodule/class/myobject.class.php', 'objectname'=>'MyObject', 'method'=>'doScheduledJob', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50) ); - // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled'), - // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>'$conf->mymodule->enabled') + // Example: $this->cronjobs=array(0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50), + // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50) // ); From b271e1a3b0517a2441f8371524c64f744f3b72bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 10 Nov 2018 07:27:20 +0100 Subject: [PATCH 373/769] The variable $i seems to be never defined. --- htdocs/product/class/api_products.class.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/htdocs/product/class/api_products.class.php b/htdocs/product/class/api_products.class.php index 30940c95509..6d84a6d1352 100644 --- a/htdocs/product/class/api_products.class.php +++ b/htdocs/product/class/api_products.class.php @@ -110,7 +110,7 @@ class Products extends DolibarrApi * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.tobuy:=:0) and (t.tosell:=:1)" * @return array Array of product objects */ - function index($sortfield = "t.ref", $sortorder = 'ASC', $limit = 100, $page = 0, $mode=0, $category=0, $sqlfilters = '') + function index($sortfield = "t.ref", $sortorder = 'ASC', $limit = 100, $page = 0, $mode = 0, $category = 0, $sqlfilters = '') { global $db, $conf; @@ -129,11 +129,12 @@ class Products extends DolibarrApi $sql.= " AND c.fk_categorie = ".$db->escape($category); $sql.= " AND c.fk_product = t.rowid "; } - // Show products - if ($mode == 1) { $sql.= " AND t.fk_product_type = 0"; - } - // Show services - if ($mode == 2) { $sql.= " AND t.fk_product_type = 1"; + if ($mode == 1) { + // Show only products + $sql.= " AND t.fk_product_type = 0"; + } elseif ($mode == 2) { + // Show only services + $sql.= " AND t.fk_product_type = 1"; } // Add sql filters if ($sqlfilters) { @@ -158,6 +159,7 @@ class Products extends DolibarrApi if ($result) { $num = $db->num_rows($result); $min = min($num, ($limit <= 0 ? $num : $limit)); + $i = 0; while ($i < $min) { $obj = $db->fetch_object($result); From 2514cf4a9629b7203ec33393e34cceb6aab10e64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 10 Nov 2018 07:32:22 +0100 Subject: [PATCH 374/769] Update actions_ticket.class.php --- htdocs/ticket/class/actions_ticket.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/ticket/class/actions_ticket.class.php b/htdocs/ticket/class/actions_ticket.class.php index bf1e73404f1..c53496b674c 100644 --- a/htdocs/ticket/class/actions_ticket.class.php +++ b/htdocs/ticket/class/actions_ticket.class.php @@ -849,7 +849,7 @@ class ActionsTicket $id = $object->createTicketMessage($user); if ($id <= 0) { $error++; - $this->errors = $object->error; + $this->error = $object->error; $this->errors = $object->errors; $action = 'add_message'; } From c2ee9ba9dba0974f9e276b659b1a9bed98b83e88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 10 Nov 2018 07:38:55 +0100 Subject: [PATCH 375/769] Update actions_ticket.class.php --- htdocs/ticket/class/actions_ticket.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/ticket/class/actions_ticket.class.php b/htdocs/ticket/class/actions_ticket.class.php index c53496b674c..8f3c6985ac3 100644 --- a/htdocs/ticket/class/actions_ticket.class.php +++ b/htdocs/ticket/class/actions_ticket.class.php @@ -845,7 +845,7 @@ class ActionsTicket } if (!$error) { - $object->message = GETPOST("message"); + $object->message = (string) GETPOST("message"); $id = $object->createTicketMessage($user); if ($id <= 0) { $error++; From 20acf440a3cfcb84c72412359547f3054fbd02e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 10 Nov 2018 07:55:01 +0100 Subject: [PATCH 376/769] Update api_products.class.php --- htdocs/product/class/api_products.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/api_products.class.php b/htdocs/product/class/api_products.class.php index 6d84a6d1352..afacbb158b5 100644 --- a/htdocs/product/class/api_products.class.php +++ b/htdocs/product/class/api_products.class.php @@ -132,7 +132,7 @@ class Products extends DolibarrApi if ($mode == 1) { // Show only products $sql.= " AND t.fk_product_type = 0"; - } elseif ($mode == 2) { + } elseif ($mode == 2) { // Show only services $sql.= " AND t.fk_product_type = 1"; } From 20a3dd86cdd1477f65fffe6de702ac4d2df80e85 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Nov 2018 11:07:01 +0100 Subject: [PATCH 377/769] 2018-11-08 no change for dolibarr but better for integration and development --- htdocs/stripe/config.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/stripe/config.php b/htdocs/stripe/config.php index b348b9752c3..cea97efe0a3 100644 --- a/htdocs/stripe/config.php +++ b/htdocs/stripe/config.php @@ -55,4 +55,4 @@ else \Stripe\Stripe::setApiKey($stripearrayofkeys['secret_key']); \Stripe\Stripe::setAppInfo("Dolibarr Stripe", DOL_VERSION, "https://www.dolibarr.org"); // add dolibarr version -\Stripe\Stripe::setApiVersion("2018-10-31"); // force version API +\Stripe\Stripe::setApiVersion("2018-11-08"); // force version API From 8893d8d59fcf08637e9465d5f3b0a4c3a0c6590d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Nov 2018 11:56:23 +0100 Subject: [PATCH 378/769] Fix compatiblity with new version of PHP --- htdocs/exports/class/export.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/exports/class/export.class.php b/htdocs/exports/class/export.class.php index 7ab55fd4e53..8e3e3b04767 100644 --- a/htdocs/exports/class/export.class.php +++ b/htdocs/exports/class/export.class.php @@ -131,11 +131,11 @@ class Export //print_r("$perm[0]-$perm[1]-$perm[2]
"); if (! empty($perm[2])) { - $bool=$user->rights->$perm[0]->$perm[1]->$perm[2]; + $bool=$user->rights->{$perm[0]}->{$perm[1]}->{$perm[2]}; } else { - $bool=$user->rights->$perm[0]->$perm[1]; + $bool=$user->rights->{$perm[0]}->{$perm[1]}; } if ($perm[0]=='user' && $user->admin) $bool=true; if (! $bool) break; From ed3a333436f6293c0298c540bee1df727c63d74c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Nov 2018 13:11:18 +0100 Subject: [PATCH 379/769] Fix phpcs --- htdocs/accountancy/admin/export.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/accountancy/admin/export.php b/htdocs/accountancy/admin/export.php index 03538b759e7..6ef4bdda90b 100644 --- a/htdocs/accountancy/admin/export.php +++ b/htdocs/accountancy/admin/export.php @@ -44,7 +44,7 @@ if (empty($user->rights->accounting->chartofaccount)) $action = GETPOST('action', 'aZ09'); // Parameters ACCOUNTING_EXPORT_* -$main_option = array ( +$main_option = array( 'ACCOUNTING_EXPORT_PREFIX_SPEC', ); From 52f35d8038fcb4afc2333ca1c4af8cb78e3d85f0 Mon Sep 17 00:00:00 2001 From: delcroix Patrick Date: Sat, 10 Nov 2018 14:59:46 +0100 Subject: [PATCH 380/769] to support proposal_supplier insert proposal_supplier has 17 char when the elementtype column can take only 16 char --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 8f51d9f00c4..db0716851b8 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -55,7 +55,7 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN desc_fourn text after ref_f ALTER TABLE llx_user ADD COLUMN dateemploymentend date after dateemployment; ALTER TABLE llx_stock_mouvement ADD COLUMN fk_project integer; - +Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(18) ALTER TABLE llx_c_field_list ADD COLUMN visible tinyint DEFAULT 1 NOT NULL AFTER search; From 5c96689c874e11c30ee5554396083c017d8743c6 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Nov 2018 15:02:50 +0100 Subject: [PATCH 381/769] Fix Invalid argument supplied for foreach() --- htdocs/core/tpl/extrafields_list_search_sql.tpl.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php index d5b52085059..b0c97265682 100644 --- a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php +++ b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php @@ -10,7 +10,7 @@ if (empty($conf) || ! is_object($conf)) if (empty($extrafieldsobjectkey) && is_object($object)) $extrafieldsobjectkey=$object->table_element; // Loop to complete the sql search criterias from extrafields -if (! empty($extrafieldsobjectkey)) // $extrafieldsobject is the $object->table_element like 'societe', 'socpeople', ... +if (! empty($extrafieldsobjectkey) && ! empty($search_array_options)) // $extrafieldsobject is the $object->table_element like 'societe', 'socpeople', ... { foreach ($search_array_options as $key => $val) { @@ -32,4 +32,4 @@ if (! empty($extrafieldsobjectkey)) // $extrafieldsobject is the $object->table_ $sql .= natural_search('ef.'.$tmpkey, $crit, $mode_search); } } -} \ No newline at end of file +} From 80782a366e728ab76c568b0a3df47547c3b682a8 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Nov 2018 15:04:38 +0100 Subject: [PATCH 382/769] Fix Invalid argument supplied for foreach() --- htdocs/core/tpl/extrafields_list_search_param.tpl.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/core/tpl/extrafields_list_search_param.tpl.php b/htdocs/core/tpl/extrafields_list_search_param.tpl.php index 6cda8721dcd..dfc9e59d0f8 100644 --- a/htdocs/core/tpl/extrafields_list_search_param.tpl.php +++ b/htdocs/core/tpl/extrafields_list_search_param.tpl.php @@ -8,9 +8,12 @@ if (empty($conf) || ! is_object($conf)) } // Loop to complete $param for extrafields +if (! empty($search_array_options)) // $extrafieldsobject is the $object->table_element like 'societe', 'socpeople', ... +{ foreach ($search_array_options as $key => $val) { $crit=$val; $tmpkey=preg_replace('/search_options_/','',$key); if ($val != '') $param.='&search_options_'.$tmpkey.'='.urlencode($val); -} \ No newline at end of file +} +} From de259e9db6b14a407c9cfa382e9b772e78f9dc36 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 11 Nov 2018 14:36:35 +0100 Subject: [PATCH 383/769] Code comment --- htdocs/admin/system/dolibarr.php | 3 +++ htdocs/comm/action/card.php | 34 ++++++++++++++++---------------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/htdocs/admin/system/dolibarr.php b/htdocs/admin/system/dolibarr.php index 99a07c17248..b56f1fc307a 100644 --- a/htdocs/admin/system/dolibarr.php +++ b/htdocs/admin/system/dolibarr.php @@ -142,6 +142,9 @@ print '
'."\n"; print '\n"; print ''."\n"; diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php index 4e8b87eb591..773ef31dff0 100644 --- a/htdocs/comm/action/card.php +++ b/htdocs/comm/action/card.php @@ -252,19 +252,19 @@ if ($action == 'add') } } $object->fk_project = isset($_POST["projectid"])?$_POST["projectid"]:0; - + $taskid = GETPOST('taskid','int'); if(!empty($taskid)){ - + $taskProject = new Task($db); if($taskProject->fetch($taskid)>0){ $object->fk_project = $taskProject->fk_project; } - + $object->fk_element = $taskid; $object->elementtype = 'task'; } - + $object->datep = $datep; $object->datef = $datef; $object->percentage = $percentage; @@ -888,17 +888,17 @@ if ($action == 'create') { // Projet associe $langs->load("projects"); - + $projectid = GETPOST('projectid', 'int'); print ''; - + print ''; print ''; - + if ($object->elementtype == 'task' && ! empty($conf->projet->enabled)) { print ''; } else @@ -1343,7 +1343,7 @@ if ($id > 0) print ''; print ''; } - + print ''; } From 0b57faa7b41814f4a6713e85e7a43f7ab42f3a6b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 11 Nov 2018 14:42:11 +0100 Subject: [PATCH 384/769] Fix help --- htdocs/admin/system/dolibarr.php | 2 +- htdocs/langs/en_US/admin.lang | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/system/dolibarr.php b/htdocs/admin/system/dolibarr.php index b56f1fc307a..133eab3e74c 100644 --- a/htdocs/admin/system/dolibarr.php +++ b/htdocs/admin/system/dolibarr.php @@ -140,7 +140,7 @@ print ''."\n"; print ''."\n"; print ''."\n"; -print '
'.dol_print_date($productfourn->date_creation, 'dayhour').''.$productfourn->getSocNomUrl(1,'supplier').''.$productfourn->fourn_ref.'
'.$langs->trans("SessionName").''.$langs->trans("SessionId").''.session_id().'
'.$langs->trans("CurrentSessionTimeOut").''.ini_get('session.gc_maxlifetime').' '.$langs->trans("seconds"); print ''; +print ''."\n"; +print ''."\n"; +print ''."\n"; print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor"))); print "
'.$langs->trans("CurrentTheme").''.$conf->theme.'
'.$langs->trans("Project").''; $numproject=$formproject->select_projects((! empty($societe->id)?$societe->id:-1), $projectid, 'projectid', 0, 0, 1, 1); - + print '   '.$langs->trans("AddProject").''; $urloption='?action=create'; $url = dol_buildpath('comm/action/card.php',2).$urloption; - + // update task list print "\n".''."\n"; - + print '
'.$langs->trans("Task").''; - + $projectsListId=false; if(!empty($projectid)){ $projectsListId=$projectid; } $tid=GETPOST("projecttaskid")?GETPOST("projecttaskid"):''; @@ -1230,7 +1230,7 @@ if ($id > 0) $listofuserid=json_decode($_SESSION['assignedtouser'], true); } } - $listofcontactid=$object->socpeopleassigned; // Contact assigned (not used yet) + $listofcontactid=$object->socpeopleassigned; // Contact assigned $listofotherid=$object->otherassigned; // Other undefined email (not used yet) print '
'.$langs->trans("ActionAssignedTo").''; @@ -1309,14 +1309,14 @@ if ($id > 0) include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; print '
'.$langs->trans("LinkedObject").''; - + $urloption='?action=create'; // we use create not edit for more flexibility $url = DOL_URL_ROOT.'/comm/action/card.php'.$urloption; - + // update task list print "\n".''."\n"; - + $formproject->selectTasks((! empty($societe->id)?$societe->id:-1), $object->fk_element, 'fk_element', 24, 0, 0, 1, 0, 0, 'maxwidth500',$object->fk_project); print ''; - + print '
'.$langs->trans("Session") print '
'.$langs->trans("SessionSavePath").''.session_save_path().'
'.$langs->trans("SessionName").''.session_name().'
'.$langs->trans("SessionId").''.session_id().'
'.$langs->trans("CurrentSessionTimeOut").''.ini_get('session.gc_maxlifetime').' '.$langs->trans("seconds"); +print '
'.$langs->trans("CurrentSessionTimeOut").' (session.gc_maxlifetime)'.ini_get('session.gc_maxlifetime').' '.$langs->trans("seconds"); print ''; print ''."\n"; print ''."\n"; diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index df20e274451..2741b48ac83 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1076,7 +1076,7 @@ DisplayDesc=You can choose each parameter related to the Dolibarr look and feel AvailableModules=Available app/modules ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). SessionTimeOut=Time out for session -SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions.
Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by the default session.gc_maxlifetime, no matter what the value entered here is. +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. TriggersAvailable=Available triggers TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. From 35419fa2067506890835d6c5900970e2fe32b5f3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 11 Nov 2018 15:06:08 +0100 Subject: [PATCH 385/769] Dolibarize code --- .../modulebuilder/template/myobject_list.php | 41 +++++++------- htdocs/ticket/class/ticket.class.php | 4 +- htdocs/ticket/list.php | 54 ++++++++++--------- 3 files changed, 54 insertions(+), 45 deletions(-) diff --git a/htdocs/modulebuilder/template/myobject_list.php b/htdocs/modulebuilder/template/myobject_list.php index 8d0f89104ef..4150ca75ca7 100644 --- a/htdocs/modulebuilder/template/myobject_list.php +++ b/htdocs/modulebuilder/template/myobject_list.php @@ -147,8 +147,6 @@ $arrayfields = dol_sort_array($arrayfields, 'position'); /* * Actions - * - * Put here all code to do according to value of "$action" parameter */ if (GETPOST('cancel','alpha')) { $action='list'; $massaction=''; } @@ -192,8 +190,6 @@ if (empty($reshook)) /* * View - * - * Put here all code to render page */ $form=new Form($db); @@ -402,11 +398,11 @@ print ''; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; - if (! empty($arrayfields['t.'.$key]['checked'])) print ''; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) print ''; } // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_input.tpl.php'; @@ -428,11 +424,14 @@ print ''."\n"; print ''; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; - if (! empty($arrayfields['t.'.$key]['checked'])) print getTitleFieldOfList($arrayfields['t.'.$key]['label'], 0, $_SERVER['PHP_SELF'], 't.'.$key, '', $param, ($align?'class="'.$align.'"':''), $sortfield, $sortorder, $align.' ')."\n"; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) + { + print getTitleFieldOfList($arrayfields['t.'.$key]['label'], 0, $_SERVER['PHP_SELF'], 't.'.$key, '', $param, ($cssforfield?'class="'.$cssforfield.'"':''), $sortfield, $sortorder, ($cssforfield?$cssforfield.' ':''))."\n"; + } } // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_title.tpl.php'; @@ -475,14 +474,18 @@ while ($i < min($num, $limit)) print ''; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; if (! empty($arrayfields['t.'.$key]['checked'])) { print ''; print $object->showOutputField($val, $key, $obj->$key, ''); print ''; diff --git a/htdocs/ticket/class/ticket.class.php b/htdocs/ticket/class/ticket.class.php index 03aec1eb818..2ac28f6b81b 100644 --- a/htdocs/ticket/class/ticket.class.php +++ b/htdocs/ticket/class/ticket.class.php @@ -180,9 +180,9 @@ class Ticket extends CommonObject public $fields=array( 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'position'=>1, 'visible'=>-2, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>"Id"), 'entity' => array('type'=>'integer', 'label'=>'Entity', 'visible'=>0, 'enabled'=>1, 'position'=>5, 'notnull'=>1, 'index'=>1), - 'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'visible'=>1, 'enabled'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of object", 'css'=>'aaa'), + 'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'visible'=>1, 'enabled'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of object", 'css'=>''), 'track_id' => array('type'=>'varchar(255)', 'label'=>'TrackID', 'visible'=>0, 'enabled'=>1, 'position'=>11, 'notnull'=>-1, 'searchall'=>1, 'help'=>"Help text"), - 'fk_user_create' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Author', 'visible'=>1, 'enabled'=>1, 'position'=>15, 'notnull'=>1), + 'fk_user_create' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Author', 'visible'=>1, 'enabled'=>1, 'position'=>15, 'notnull'=>1, 'css'=>'nowraponall'), 'origin_email' => array('type'=>'mail', 'label'=>'OriginEmail', 'visible'=>1, 'enabled'=>1, 'position'=>16, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of object"), 'subject' => array('type'=>'varchar(255)', 'label'=>'Subject', 'visible'=>1, 'enabled'=>1, 'position'=>18, 'notnull'=>-1, 'searchall'=>1, 'help'=>""), 'type_code' => array('type'=>'varchar(32)', 'label'=>'Type', 'visible'=>1, 'enabled'=>1, 'position'=>20, 'notnull'=>-1, 'searchall'=>1, 'help'=>"", 'css'=>'maxwidth100'), diff --git a/htdocs/ticket/list.php b/htdocs/ticket/list.php index 545a5fcf1ed..4fa2698fad2 100644 --- a/htdocs/ticket/list.php +++ b/htdocs/ticket/list.php @@ -38,7 +38,7 @@ $langs->loadLangs(array("ticket","companies","other","projects")); // Get parameters -$action = GETPOST('action','alpha')?GETPOST('action','alpha'):'view'; // The action 'add', 'create', 'edit', 'update', 'view', ... +$action = GETPOST('action','aZ09')?GETPOST('action','aZ09'):'view'; // The action 'add', 'create', 'edit', 'update', 'view', ... $massaction = GETPOST('massaction','alpha'); // The bulk action (combo box choice into lists) $show_files = GETPOST('show_files','int'); // Show files area generated by bulk actions ? $confirm = GETPOST('confirm','alpha'); // Result of a confirmation @@ -62,7 +62,7 @@ $limit = GETPOST('limit','int')?GETPOST('limit','int'):$conf->liste_limit; $sortfield = GETPOST('sortfield','alpha'); $sortorder = GETPOST('sortorder','alpha'); $page = GETPOST('page','int'); -if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 +if (empty($page) || $page == -1 || GETPOST('button_search','alpha') || GETPOST('button_removefilter','alpha') || (empty($toselect) && $massaction === '0')) { $page = 0; } // If $page is not defined, or '' or -1 or if we click on clear filters or if we select empty mass action $offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -74,7 +74,6 @@ $diroutputmassaction=$conf->ticket->dir_output . '/temp/massgeneration/'.$user-> if ($socid > 0) $hookmanager->initHooks(array('thirdpartyticket')); elseif ($project > 0) $hookmanager->initHooks(array('projectticket')); else $hookmanager->initHooks(array('ticketlist')); - // Fetch optionals attributes and labels $extralabels = $extrafields->fetch_name_optionals_label('ticket'); $search_array_options=$extrafields->getOptionalsFromPost($object->table_element,'','search_'); @@ -186,7 +185,7 @@ $user_assign = new User($db); $user_create = new User($db); $socstatic = new Societe($db); -$help_url = 'FR:DocumentationModuleTicket'; +$help_url = ''; $title = $langs->trans('TicketList'); llxHeader('', $title, $help_url); @@ -435,7 +434,7 @@ $arrayofmassactions = array( //'builddoc'=>$langs->trans("PDFMerge"), ); if ($user->rights->ticket->delete) $arrayofmassactions['predelete']=$langs->trans("Delete"); -if (in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array(); +if (GETPOST('nomassaction','int') || in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array(); $massactionbutton=$form->selectMassAction('', $arrayofmassactions); print '
'; @@ -518,30 +517,30 @@ print '
'; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; if (! empty($arrayfields['t.'.$key]['checked'])) { if ($key == 'type_code') { - print ''; } elseif ($key == 'category_code') { - print ''; } elseif ($key == 'severity_code') { - print ''; } elseif ($key == 'fk_statut') { - print ''; } else { - print ''; + print ''; } } } @@ -565,11 +564,14 @@ print ''."\n"; print ''; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; - if (! empty($arrayfields['t.'.$key]['checked'])) print getTitleFieldOfList($arrayfields['t.'.$key]['label'], 0, $_SERVER['PHP_SELF'], 't.'.$key, '', $param, ($align?'class="'.$align.'"':''), $sortfield, $sortorder, $align.' ')."\n"; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; + if (! empty($arrayfields['t.'.$key]['checked'])) + { + print getTitleFieldOfList($arrayfields['t.'.$key]['label'], 0, $_SERVER['PHP_SELF'], 't.'.$key, '', $param, ($cssforfield?'class="'.$cssforfield.'"':''), $sortfield, $sortorder, ($cssforfield?$cssforfield.' ':''))."\n"; + } } // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_title.tpl.php'; @@ -612,14 +614,18 @@ while ($i < min($num, $limit)) print ''; foreach($object->fields as $key => $val) { - $align=''; - if (in_array($val['type'], array('date','datetime','timestamp'))) $align.=($align?' ':'').'center'; - if (in_array($val['type'], array('timestamp'))) $align.=($align?' ':'').'nowrap'; - if ($key == 'status') $align.=($align?' ':'').'center'; + $cssforfield=''; + if (in_array($val['type'], array('date','datetime','timestamp'))) $cssforfield.=($cssforfield?' ':'').'center'; + if (in_array($val['type'], array('timestamp'))) $cssforfield.=($cssforfield?' ':'').'nowrap'; + if ($key == 'status') $cssforfield.=($cssforfield?' ':'').'center'; if (! empty($arrayfields['t.'.$key]['checked'])) { print ''; print $object->showOutputField($val, $key, $obj->$key, ''); print ''; From 2985d9cfbf9ffdcf468ff059e2629235847a8e71 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 11 Nov 2018 17:27:16 +0100 Subject: [PATCH 386/769] Update 8.0.0-9.0.0.sql --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index db0716851b8..996fdb79b17 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -55,7 +55,7 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN desc_fourn text after ref_f ALTER TABLE llx_user ADD COLUMN dateemploymentend date after dateemployment; ALTER TABLE llx_stock_mouvement ADD COLUMN fk_project integer; -Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(18) +Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(32) ALTER TABLE llx_c_field_list ADD COLUMN visible tinyint DEFAULT 1 NOT NULL AFTER search; From f022be3a4796dad0fb1f19f72a7004490c90b971 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 11 Nov 2018 17:28:17 +0100 Subject: [PATCH 387/769] FIX #9992 --- htdocs/install/mysql/tables/llx_c_action_trigger.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/tables/llx_c_action_trigger.sql b/htdocs/install/mysql/tables/llx_c_action_trigger.sql index 4f7dbccc786..164e1b1eeee 100644 --- a/htdocs/install/mysql/tables/llx_c_action_trigger.sql +++ b/htdocs/install/mysql/tables/llx_c_action_trigger.sql @@ -22,7 +22,7 @@ create table llx_c_action_trigger ( rowid integer AUTO_INCREMENT PRIMARY KEY, - elementtype varchar(24) NOT NULL, + elementtype varchar(32) NOT NULL, code varchar(32) NOT NULL, label varchar(128) NOT NULL, description varchar(255), From 71b42338d12f2e8836096f287bed4182af0b20d9 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 12 Nov 2018 11:24:07 +0100 Subject: [PATCH 388/769] Fix SQL migration --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 996fdb79b17..865f2b5988c 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -55,7 +55,7 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN desc_fourn text after ref_f ALTER TABLE llx_user ADD COLUMN dateemploymentend date after dateemployment; ALTER TABLE llx_stock_mouvement ADD COLUMN fk_project integer; -Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(32) +Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(32); ALTER TABLE llx_c_field_list ADD COLUMN visible tinyint DEFAULT 1 NOT NULL AFTER search; From 5eb897e049748930273ab2e32c8f38d9d706ef69 Mon Sep 17 00:00:00 2001 From: tarrsalah Date: Mon, 12 Nov 2018 12:11:40 +0100 Subject: [PATCH 389/769] FIX sql query performance on list_qualified_avoir_supplier_invoices. --- htdocs/fourn/class/fournisseur.facture.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index bbf5694fc2c..2d241ad6dcb 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -1809,10 +1809,10 @@ class FactureFournisseur extends CommonInvoice $sql = "SELECT f.rowid as rowid, f.ref, f.fk_statut, f.type, f.paye, pf.fk_paiementfourn"; $sql.= " FROM ".MAIN_DB_PREFIX."facture_fourn as f"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."paiementfourn_facturefourn as pf ON f.rowid = pf.fk_facturefourn"; - $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."facture_fourn as ff ON (f.rowid = ff.fk_facture_source AND ff.type=".self::TYPE_REPLACEMENT.")"; $sql.= " WHERE f.entity = ".$conf->entity; $sql.= " AND f.fk_statut in (".self::STATUS_VALIDATED.",".self::STATUS_CLOSED.")"; - $sql.= " AND ff.type IS NULL"; // Renvoi vrai si pas facture de remplacement + $sql.= " AND NOT EXISTS (SELECT rowid from ".MAIN_DB_PREFIX."facture_fourn as ff WHERE f.rowid = ff.fk_facture_source"; + $sql.= " AND ff.type=".self::TYPE_REPLACEMENT.")"; $sql.= " AND f.type != ".self::TYPE_CREDIT_NOTE; // Type non 2 si facture non avoir if ($socid > 0) $sql.=" AND f.fk_soc = ".$socid; $sql.= " ORDER BY f.ref"; From 9a6a3d8df4fc2a8bc76bc69910d6357163281ea2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20J?= Date: Mon, 12 Nov 2018 12:20:07 +0100 Subject: [PATCH 390/769] Join llx_actioncomm_resources only if we have a contact object. --- htdocs/core/lib/company.lib.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 42b9f9a3f58..fc34c287a34 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1330,8 +1330,12 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= $sql.= " FROM ".MAIN_DB_PREFIX."actioncomm as a"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as u on u.rowid = a.fk_user_action"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_actioncomm as c ON a.fk_action = c.id"; - $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."actioncomm_resources as r ON a.id = r.fk_actioncomm"; - if (is_object($filterobj) && get_class($filterobj) == 'Societe') $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."socpeople as sp ON a.fk_contact = sp.rowid"; + + if (is_object($objcon) && $objcon->id) { + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."actioncomm_resources as r ON a.id = r.fk_actioncomm"; + } + + if (is_object($filterobj) && get_class($filterobj) == 'Societe') $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."socpeople as sp ON a.fk_contact = sp.rowid"; elseif (is_object($filterobj) && get_class($filterobj) == 'Dolresource') { $sql.= " INNER JOIN ".MAIN_DB_PREFIX."element_resources as er"; $sql.= " ON er.resource_type = 'dolresource'"; From 10dd5652ee56a291bdd653357b0ff786460a32b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20J?= Date: Mon, 12 Nov 2018 12:34:25 +0100 Subject: [PATCH 391/769] Add SELECT DISTINCT to show_actions_done() SQL request --- htdocs/core/lib/company.lib.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index fc34c287a34..0893c0ef0d9 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1315,7 +1315,8 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= if (! empty($conf->agenda->enabled)) { // Recherche histo sur actioncomm - $sql = "SELECT a.id, a.label,"; + // @since PR #9972, add DISTINCT. + $sql = "SELECT DISTINCT a.id, a.label,"; $sql.= " a.datep as dp,"; $sql.= " a.datep2 as dp2,"; $sql.= " a.note, a.percent,"; From 5a7cb95b7213704d3e8f282d02a16b5316f206cb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Nov 2018 14:49:08 +0100 Subject: [PATCH 392/769] FIX filter on entity must be done as soon as we don't search on rowid. --- htdocs/contact/class/contact.class.php | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index b5e8cd33517..0e9921e8700 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -682,12 +682,13 @@ class Contact extends CommonObject /** * Load object contact * - * @param int $id id du contact - * @param User $user Utilisateur (abonnes aux alertes) qui veut les alertes de ce contact - * @param string $ref_ext External reference, not given by Dolibarr - * @return int -1 if KO, 0 if OK but not found, 1 if OK + * @param int $id id du contact + * @param User $user Utilisateur (abonnes aux alertes) qui veut les alertes de ce contact + * @param string $ref_ext External reference, not given by Dolibarr + * @param string $email Email + * @return int -1 if KO, 0 if OK but not found, 1 if OK */ - function fetch($id, $user=0, $ref_ext='') + function fetch($id, $user=0, $ref_ext='', $email='') { global $langs; @@ -721,9 +722,15 @@ class Contact extends CommonObject $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON c.rowid = u.fk_socpeople"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON c.fk_soc = s.rowid"; if ($id) $sql.= " WHERE c.rowid = ". $id; - elseif ($ref_ext) { + else + { $sql .= " WHERE c.entity IN (".getEntity($this->element).")"; - $sql .= " AND c.ref_ext = '".$this->db->escape($ref_ext)."'"; + if ($ref_ext) { + $sql .= " AND c.ref_ext = '".$this->db->escape($ref_ext)."'"; + } + if ($email) { + $sql .= " AND c.email = '".$this->db->escape($email)."'"; + } } $resql=$this->db->query($sql); From 01e7b5747d3ece7bb4623c8889ffa98ebb39bc7c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Nov 2018 15:27:59 +0100 Subject: [PATCH 393/769] FIX user param is null not 0 when not defined FIX properties email_xx were not set --- htdocs/admin/emailcollector_card.php | 2 +- htdocs/contact/class/contact.class.php | 8 +- htdocs/core/actions_sendmails.inc.php | 14 +- .../class/emailcollector.class.php | 234 +++++++++++++++--- 4 files changed, 218 insertions(+), 40 deletions(-) diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php index 08656a9ee27..3cc79623342 100644 --- a/htdocs/admin/emailcollector_card.php +++ b/htdocs/admin/emailcollector_card.php @@ -466,7 +466,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea print ''; diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 0e9921e8700..3d247bfd5ca 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -87,17 +87,17 @@ class Contact extends CommonObject /** * @deprecated - * @see state_id + * @see $state_id */ public $fk_departement; /** * @deprecated - * @see state_code + * @see $state_code */ public $departement_code; /** * @deprecated - * @see state + * @see $state */ public $departement; public $state_id; // Id of department @@ -688,7 +688,7 @@ class Contact extends CommonObject * @param string $email Email * @return int -1 if KO, 0 if OK but not found, 1 if OK */ - function fetch($id, $user=0, $ref_ext='', $email='') + function fetch($id, $user=null, $ref_ext='', $email='') { global $langs; diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index 61c4b636758..9ffaceadb26 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -427,8 +427,9 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO $object->socid = $sendtosocid; // To link to a company $object->sendtoid = $sendtoid; // To link to contact addresses. This is an array. $object->actiontypecode = $actiontypecode; // Type of event ('AC_OTH', 'AC_OTH_AUTO', 'AC_XXX'...) - $object->actionmsg = $actionmsg; // Long text - $object->actionmsg2 = $actionmsg2; // Short text + $object->actionmsg = $actionmsg; // Long text (@TODO Replace this with $message, we already have details of email in dedicated properties) + $object->actionmsg2 = $actionmsg2; // Short text ($langs->transnoentities('MailSentBy')...); + $object->trackid = $trackid; $object->fk_element = $object->id; $object->elementtype = $object->element; @@ -439,9 +440,14 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO $object->sendtouserid = $sendtouserid; } - // TODO Set object->email_xxx properties + $object->email_msgid = $mailfile->msgid; // @TODO Set msgid into $mailfile after sending + $object->email_from = $from; + $object->email_subject = $subject; + $object->email_to = $sendto; + $object->email_tocc = $sendtocc; + $object->email_tobcc = $sendtobcc; + $object->email_subject = $subject; $object->email_msgid = $mailfile->msgid; - //... // Call of triggers if (! empty($trigger_name)) diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 8769e0a70c9..ccf303949ec 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -23,8 +23,11 @@ // Put here all includes required by your class file require_once DOL_DOCUMENT_ROOT . '/core/class/commonobject.class.php'; -//require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; -//require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT . '/contact/class/contact.class.php'; +require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; +require_once DOL_DOCUMENT_ROOT . '/projet/class/project.class.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; + /** * Class for EmailCollector @@ -647,6 +650,25 @@ class EmailCollector extends CommonObject } + /** + * Return the connectstring to use with IMAP connection function + * + * @return string + */ + function getConnectStringIMAP() + { + // Connect to IMAP + $flags ='/service=imap'; // IMAP + $flags.='/ssl'; // '/tls' + $flags.='/novalidate-cert'; + //$flags.='/readonly'; + //$flags.='/debug'; + + $connectstringserver = '{'.$this->host.':993'.$flags.'}'; + + return $connectstringserver; + } + /** * Action executed by scheduler * CAN BE A CRON TASK. In such a case, paramerts come from the schedule job setup field 'Parameters' @@ -757,13 +779,16 @@ class EmailCollector extends CommonObject if ($fromdate > 0) $search.=($search?' ':'').'SINCE '.dol_print_date($fromdate - 1,'dayhourrfc'); } dol_syslog("search string = ".$search); - //var_dump($search);exit; + //var_dump($search); $nbemailprocessed=0; $nbactiondone=0; + $projectstatic=new Project($this->db); + $thirdpartystatic=new Societe($this->db); + $contactstatic=new Contact($this->db); // Scan IMAP inbox $arrayofemail= imap_search($connection, $search); - //var_dump($arrayofemail); + //var_dump($arrayofemail);exit; // Loop on each email found if (! empty($arrayofemail) && count($arrayofemail) > 0) @@ -778,14 +803,126 @@ class EmailCollector extends CommonObject $overview = imap_fetch_overview($connection, $imapemail, 0); $header = imap_fetchheader($connection, $imapemail, 0); - $message = imap_body($connection, $imapemail, 0); - // imap_fetchstructure($connection, $imapemail, 0); - // imap_fetchbody($connection, $imapemail, 1) may be text/plain, 2 may be text/html + //$message = imap_body($connection, $imapemail, 0); + $structure = imap_fetchstructure($connection, $imapemail, 0); + $partplain = $parthtml = -1; + // Loop to get part html and plain + foreach($structure->parts as $key => $part) + { + if ($part->subtype == 'HTML') $parthtml=$key; + if ($part->subtype == 'PLAIN') $partplain=$key; + } - /*var_dump($overview); - var_dump($header); - var_dump($message); - */ + $matches=array(); + preg_match_all('/([^: ]+): (.+?(?:\r\n\s(?:.+?))*)\r\n/m', $header, $matches); + $headers = array_combine($matches[1], $matches[2]); + //var_dump($headers); + + $messagetext = imap_fetchbody($connection, $imapemail, ($parthtml >= 0 ? $parthtml : ($partplain >= 0 ? $partplain : 0))); + + //var_dump($overview); + //var_dump($header); + //var_dump($message); + //var_dump($messagetext); + $fromstring=$overview[0]->from; + $sender=$overview[0]->sender; + $to=$overview[0]->to; + $sendtocc=$overview[0]->cc; + $sendtobcc=$overview[0]->bcc; + $date=$overview[0]->udate; + $msgid=$overview[0]->message_id; + $subject=$overview[0]->subject; + + $reg=array(); + if (preg_match('/^(.*)<(.*)>$/', $fromstring, $reg)) + { + $from=$reg[1]; + $fromtext=$reg[0]; + } + else + { + $from = $fromstring; + $fromtext=''; + } + $fk_element_id = 0; $fk_element_type = ''; + $contactid = 0; $thirdpartyid = 0; $projectid = 0; + + // Analyze TrackId + $reg=array(); + if (! empty($headers['X-Dolibarr-TrackId']) && preg_match('/:\s*([a-z]+)([0-9]+)$/', $headers['X-Dolibarr-TrackId'], $reg)) + { + $objectid = 0; + $objectemail = null; + if ($reg[0] == 'inv') + { + $objectid = $reg[1]; + $objectemail = new Facture($this->db); + } + if ($reg[0] == 'proj') + { + $objectid = $reg[1]; + $objectemail = new Project($this->db); + } + if ($reg[0] == 'con') + { + $objectid = $reg[1]; + $objectemail = new Contact($this->db); + } + if ($reg[0] == 'thi') + { + $objectid = $reg[1]; + $objectemail = new Societe($this->db); + } + if ($reg[0] == 'use') + { + $objectid = $reg[1]; + $objectemail = new User($this->db); + } + + $result = $objectemail->fetch($objectid); + if ($result > 0) + { + $fk_element_id = $objectemail->id; + $fk_element_type = $objectemail->element; + // Fix fk_element_type + if ($fk_element_type == 'facture') $fk_element_type = 'invoice'; + + $thirdpartyid = $objectemail->fk_soc; + $projectid = isset($objectemail->fk_project)?$objectemail->fk_project:$objectemail->fk_projet; + } + } + + // Project + $projectstatic->id=0; + if ($projectid > 0) + { + $result = $projectstatic->fetch($projectid); + if ($result <= 0) $projectstatic->id = 0; + } + // Contact + $contactstatic->id=0; + if ($contactid > 0) + { + $result = $contactstatic->fetch($contactid); + if ($result <= 0) $contactstatic->id = 0; + } + else // Try to find contact using email + { + $contactstatic->fetch(0, null, '', $from); + } + // Thirdparty + $thirdpartystatic->id=0; + if ($thirdpartyid > 0) + { + $result = $thirdpartystatic->fetch($thirdpartyid); + if ($result <= 0) $thirdpartystatic->id = 0; + } + else // Try to find thirdparty using email + { + $thirdpartystatic->fetch(0, '', '', '', '', '', '', '', '', '', $from); + } + + require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; // Do operationss foreach($this->actions as $operation) @@ -793,8 +930,60 @@ class EmailCollector extends CommonObject if ($errorforactions) break; if (empty($operation['status'])) continue; - // Make Operation + // Make Operation + if ($operation['type'] == 'recordevent') + { + $actioncode = 'EMAIL_IN'; + var_dump($structure); + // Insert record of emails sent + $actioncomm = new ActionComm($this->db); + + $actioncomm->type_code = 'AC_OTH_AUTO'; // Type of event ('AC_OTH', 'AC_OTH_AUTO', 'AC_XXX'...) + $actioncomm->code = 'AC_'.$actioncode; + $actioncomm->label = $subject; + $actioncomm->note = $messagetext; + $actioncomm->fk_project = 0; + $actioncomm->datep = $date; + $actioncomm->datef = $date; + $actioncomm->percentage = -1; // Not applicable + $actioncomm->socid = $thirdpartystatic->id; + $actioncomm->contactid = $contactstatic->id; + $actioncomm->authorid = $user->id; // User saving action + $actioncomm->userownerid = $user->id; // Owner of action + // Fields when action is en email (content should be added into note) + $actioncomm->email_msgid = $msgid; + $actioncomm->email_from = $fromstring; + $actioncomm->email_sender= $sender; + $actioncomm->email_to = $to; + $actioncomm->email_tocc = $sendtocc; + $actioncomm->email_tobcc = $sendtobcc; + $actioncomm->email_subject = $subject; + $actioncomm->errors_to = ''; + + $object->email_msgid = $mailfile->msgid; // @TODO Set msgid into $mailfile after sending to have it defined here + $object->email_from = $from; + $object->email_subject = $subject; + $object->email_to = $to; + $object->email_tocc = $sendtocc; + $object->email_tobcc = $sendtobcc; + $object->email_subject = $subject; + + + $actioncomm->fk_element = $fk_element_id; + $actioncomm->elementtype = $fk_element_type; + + //$actioncomm->extraparams = $extraparams; + + $result = $actioncomm->create($user); + if ($result <= 0) + { + $errorforactions++; + $this->errors = $actioncomm->errors; + } + + } + var_dump($actioncomm);exit; if (! $errorforactions) @@ -817,6 +1006,8 @@ class EmailCollector extends CommonObject $nbemailprocessed++; + unset($objectemail); + $this->db->commit(); } @@ -840,23 +1031,4 @@ class EmailCollector extends CommonObject return $error?-1:1; } - - /** - * Return the connectstring to use with IMAP connection function - * - * @return string - */ - function getConnectStringIMAP() - { - // Connect to IMAP - $flags ='/service=imap'; // IMAP - $flags.='/ssl'; // '/tls' - $flags.='/novalidate-cert'; - //$flags.='/readonly'; - //$flags.='/debug'; - - $connectstringserver = '{'.$this->host.':993'.$flags.'}'; - - return $connectstringserver; - } } From 66ea8bbe87ebe6763b7a660cfdcda8ef1dd22eea Mon Sep 17 00:00:00 2001 From: gauthier Date: Mon, 12 Nov 2018 15:58:41 +0100 Subject: [PATCH 394/769] FIX : fourn payment modes musn't be available on customer docs --- htdocs/comm/propal/card.php | 2 +- htdocs/commande/card.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index c9f534820fb..49d54dd63f8 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -2045,7 +2045,7 @@ if ($action == 'create') print '
'; + print ''; $formTicket->selectTypesTickets(dol_escape_htmltag($search[$key]), 'search_'.$key.'', '', 0, 1, 1, 0, ($val['css']?$val['css']:'maxwidth200')); print ''; + print ''; $formTicket->selectCategoriesTickets(dol_escape_htmltag($search[$key]), 'search_'.$key.'', '', 0, 1, 1, 0, ($val['css']?$val['css']:'maxwidth200')); print ''; + print ''; $formTicket->selectSeveritiesTickets(dol_escape_htmltag($search[$key]), 'search_'.$key.'', '', 0, 1, 1, 0, ($val['css']?$val['css']:'maxwidth200')); print ''; + print ''; $object->printSelectStatus(dol_escape_htmltag($search[$key])); print '
'; $arrayoftypes=array('recordevent'=>'RecordEvent'); if ($conf->projet->enabled) $arrayoftypes['project']='CreateLeadAndThirdParty'; - print $form->selectarray('operationtype', $arrayoftypes, '', 0, 0, 0, '', 1); + print $form->selectarray('operationtype', $arrayoftypes, '', 1, 0, 0, '', 1); print ''; print ''; print '
'; print '
'; if ($action == 'editmode') { - $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'mode_reglement_id'); + $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'mode_reglement_id', 'CRDT'); } else { $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'none'); } diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 27fc1821a03..da7855b961b 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -2196,7 +2196,7 @@ if ($action == 'create' && $user->rights->commande->creer) print '
'; print '
'; if ($action == 'editmode') { - $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'mode_reglement_id'); + $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'mode_reglement_id', 'CRDT'); } else { $form->form_modes_reglement($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->mode_reglement_id, 'none'); } From f404cae54609388431cb3925927b9756df2c604f Mon Sep 17 00:00:00 2001 From: gauthier Date: Mon, 12 Nov 2018 16:04:42 +0100 Subject: [PATCH 395/769] FIX : Same on customer card --- htdocs/comm/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php index 2495d512c55..99fdc6dde76 100644 --- a/htdocs/comm/card.php +++ b/htdocs/comm/card.php @@ -326,7 +326,7 @@ if ($id > 0) print ''; if ($action == 'editmode') { - $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id,$object->mode_reglement_id,'mode_reglement_id'); + $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id,$object->mode_reglement_id,'mode_reglement_id', 'CRDT'); } else { From ceae6ac376d3c2b8157af5bf3e04c88b52b44d38 Mon Sep 17 00:00:00 2001 From: Tobias Elbert Date: Mon, 12 Nov 2018 16:21:20 +0100 Subject: [PATCH 396/769] fixed sql query error --- ...p conf.php.example index.html from societe | 285 ++++++++++++++++++ htdocs/projet/class/projectstats.class.php | 4 +- 2 files changed, 287 insertions(+), 2 deletions(-) create mode 100644 htdocs/conf/elect conf.php conf.php.example index.html from societe diff --git a/htdocs/conf/elect conf.php conf.php.example index.html from societe b/htdocs/conf/elect conf.php conf.php.example index.html from societe new file mode 100644 index 00000000000..490058ac324 --- /dev/null +++ b/htdocs/conf/elect conf.php conf.php.example index.html from societe @@ -0,0 +1,285 @@ + List of relations + Schema | Name | Type | Owner +--------+-----------------------------------------+-------+-------------- + public | llx_accounting_account | table | dolibarr_dev + public | llx_accounting_bookkeeping | table | dolibarr_dev + public | llx_accounting_bookkeeping_tmp | table | dolibarr_dev + public | llx_accounting_fiscalyear | table | dolibarr_dev + public | llx_accounting_journal | table | dolibarr_dev + public | llx_accounting_system | table | dolibarr_dev + public | llx_actioncomm | table | dolibarr_dev + public | llx_actioncomm_extrafields | table | dolibarr_dev + public | llx_actioncomm_reminder | table | dolibarr_dev + public | llx_actioncomm_resources | table | dolibarr_dev + public | llx_adherent | table | dolibarr_dev + public | llx_adherent_extrafields | table | dolibarr_dev + public | llx_adherent_type | table | dolibarr_dev + public | llx_adherent_type_extrafields | table | dolibarr_dev + public | llx_advtargetemailing | table | dolibarr_dev + public | llx_asset | table | dolibarr_dev + public | llx_asset_extrafields | table | dolibarr_dev + public | llx_asset_type | table | dolibarr_dev + public | llx_asset_type_extrafields | table | dolibarr_dev + public | llx_bank | table | dolibarr_dev + public | llx_bank_account | table | dolibarr_dev + public | llx_bank_account_extrafields | table | dolibarr_dev + public | llx_bank_categ | table | dolibarr_dev + public | llx_bank_class | table | dolibarr_dev + public | llx_bank_url | table | dolibarr_dev + public | llx_blockedlog | table | dolibarr_dev + public | llx_blockedlog_authority | table | dolibarr_dev + public | llx_bookmark | table | dolibarr_dev + public | llx_bordereau_cheque | table | dolibarr_dev + public | llx_boxes | table | dolibarr_dev + public | llx_boxes_def | table | dolibarr_dev + public | llx_budget | table | dolibarr_dev + public | llx_budget_lines | table | dolibarr_dev + public | llx_c_accounting_category | table | dolibarr_dev + public | llx_c_action_trigger | table | dolibarr_dev + public | llx_c_actioncomm | table | dolibarr_dev + public | llx_c_availability | table | dolibarr_dev + public | llx_c_barcode_type | table | dolibarr_dev + public | llx_c_chargesociales | table | dolibarr_dev + public | llx_c_civility | table | dolibarr_dev + public | llx_c_country | table | dolibarr_dev + public | llx_c_currencies | table | dolibarr_dev + public | llx_c_departements | table | dolibarr_dev + public | llx_c_ecotaxe | table | dolibarr_dev + public | llx_c_effectif | table | dolibarr_dev + public | llx_c_email_senderprofile | table | dolibarr_dev + public | llx_c_email_templates | table | dolibarr_dev + public | llx_c_exp_tax_cat | table | dolibarr_dev + public | llx_c_exp_tax_range | table | dolibarr_dev + public | llx_c_field_list | table | dolibarr_dev + public | llx_c_format_cards | table | dolibarr_dev + public | llx_c_forme_juridique | table | dolibarr_dev + public | llx_c_holiday_types | table | dolibarr_dev + public | llx_c_hrm_department | table | dolibarr_dev + public | llx_c_hrm_function | table | dolibarr_dev + public | llx_c_incoterms | table | dolibarr_dev + public | llx_c_input_method | table | dolibarr_dev + public | llx_c_input_reason | table | dolibarr_dev + public | llx_c_lead_status | table | dolibarr_dev + public | llx_c_paiement | table | dolibarr_dev + public | llx_c_paiement_temp | table | dolibarr_dev + public | llx_c_paper_format | table | dolibarr_dev + public | llx_c_payment_term | table | dolibarr_dev + public | llx_c_price_expression | table | dolibarr_dev + public | llx_c_price_global_variable | table | dolibarr_dev + public | llx_c_price_global_variable_updater | table | dolibarr_dev + public | llx_c_propalst | table | dolibarr_dev + public | llx_c_prospectlevel | table | dolibarr_dev + public | llx_c_regions | table | dolibarr_dev + public | llx_c_revenuestamp | table | dolibarr_dev + public | llx_c_shipment_mode | table | dolibarr_dev + public | llx_c_stcomm | table | dolibarr_dev + public | llx_c_ticket_category | table | dolibarr_dev + public | llx_c_ticket_severity | table | dolibarr_dev + public | llx_c_ticket_type | table | dolibarr_dev + public | llx_c_tva | table | dolibarr_dev + public | llx_c_type_contact | table | dolibarr_dev + public | llx_c_type_container | table | dolibarr_dev + public | llx_c_type_fees | table | dolibarr_dev + public | llx_c_type_resource | table | dolibarr_dev + public | llx_c_typent | table | dolibarr_dev + public | llx_c_units | table | dolibarr_dev + public | llx_c_ziptown | table | dolibarr_dev + public | llx_categorie | table | dolibarr_dev + public | llx_categorie_account | table | dolibarr_dev + public | llx_categorie_contact | table | dolibarr_dev + public | llx_categorie_fournisseur | table | dolibarr_dev + public | llx_categorie_lang | table | dolibarr_dev + public | llx_categorie_member | table | dolibarr_dev + public | llx_categorie_product | table | dolibarr_dev + public | llx_categorie_project | table | dolibarr_dev + public | llx_categorie_societe | table | dolibarr_dev + public | llx_categorie_user | table | dolibarr_dev + public | llx_categories_extrafields | table | dolibarr_dev + public | llx_chargesociales | table | dolibarr_dev + public | llx_commande | table | dolibarr_dev + public | llx_commande_extrafields | table | dolibarr_dev + public | llx_commande_fournisseur | table | dolibarr_dev + public | llx_commande_fournisseur_dispatch | table | dolibarr_dev + public | llx_commande_fournisseur_extrafields | table | dolibarr_dev + public | llx_commande_fournisseur_log | table | dolibarr_dev + public | llx_commande_fournisseurdet | table | dolibarr_dev + public | llx_commande_fournisseurdet_extrafields | table | dolibarr_dev + public | llx_commandedet | table | dolibarr_dev + public | llx_commandedet_extrafields | table | dolibarr_dev + public | llx_comment | table | dolibarr_dev + public | llx_const | table | dolibarr_dev + public | llx_contrat | table | dolibarr_dev + public | llx_contrat_extrafields | table | dolibarr_dev + public | llx_contratdet | table | dolibarr_dev + public | llx_contratdet_extrafields | table | dolibarr_dev + public | llx_contratdet_log | table | dolibarr_dev + public | llx_cronjob | table | dolibarr_dev + public | llx_default_values | table | dolibarr_dev + public | llx_deplacement | table | dolibarr_dev + public | llx_document_model | table | dolibarr_dev + public | llx_don | table | dolibarr_dev + public | llx_don_extrafields | table | dolibarr_dev + public | llx_ecm_directories | table | dolibarr_dev + public | llx_ecm_files | table | dolibarr_dev + public | llx_element_contact | table | dolibarr_dev + public | llx_element_element | table | dolibarr_dev + public | llx_element_lock | table | dolibarr_dev + public | llx_element_resources | table | dolibarr_dev + public | llx_element_tag | table | dolibarr_dev + public | llx_entrepot | table | dolibarr_dev + public | llx_establishment | table | dolibarr_dev + public | llx_event_element | table | dolibarr_dev + public | llx_events | table | dolibarr_dev + public | llx_expedition | table | dolibarr_dev + public | llx_expedition_extrafields | table | dolibarr_dev + public | llx_expeditiondet | table | dolibarr_dev + public | llx_expeditiondet_batch | table | dolibarr_dev + public | llx_expeditiondet_extrafields | table | dolibarr_dev + public | llx_expensereport | table | dolibarr_dev + public | llx_expensereport_det | table | dolibarr_dev + public | llx_expensereport_extrafields | table | dolibarr_dev + public | llx_expensereport_ik | table | dolibarr_dev + public | llx_expensereport_rules | table | dolibarr_dev + public | llx_export_compta | table | dolibarr_dev + public | llx_export_model | table | dolibarr_dev + public | llx_extrafields | table | dolibarr_dev + public | llx_facture | table | dolibarr_dev + public | llx_facture_extrafields | table | dolibarr_dev + public | llx_facture_fourn | table | dolibarr_dev + public | llx_facture_fourn_det | table | dolibarr_dev + public | llx_facture_fourn_det_extrafields | table | dolibarr_dev + public | llx_facture_fourn_extrafields | table | dolibarr_dev + public | llx_facture_rec | table | dolibarr_dev + public | llx_facture_rec_extrafields | table | dolibarr_dev + public | llx_facturedet | table | dolibarr_dev + public | llx_facturedet_extrafields | table | dolibarr_dev + public | llx_facturedet_rec | table | dolibarr_dev + public | llx_fichinter | table | dolibarr_dev + public | llx_fichinter_extrafields | table | dolibarr_dev + public | llx_fichinterdet | table | dolibarr_dev + public | llx_fichinterdet_extrafields | table | dolibarr_dev + public | llx_holiday | table | dolibarr_dev + public | llx_holiday_config | table | dolibarr_dev + public | llx_holiday_logs | table | dolibarr_dev + public | llx_holiday_users | table | dolibarr_dev + public | llx_import_model | table | dolibarr_dev + public | llx_inventory | table | dolibarr_dev + public | llx_inventorydet | table | dolibarr_dev + public | llx_links | table | dolibarr_dev + public | llx_livraison | table | dolibarr_dev + public | llx_livraison_extrafields | table | dolibarr_dev + public | llx_livraisondet | table | dolibarr_dev + public | llx_livraisondet_extrafields | table | dolibarr_dev + public | llx_loan | table | dolibarr_dev + public | llx_loan_schedule | table | dolibarr_dev + public | llx_localtax | table | dolibarr_dev + public | llx_mailing | table | dolibarr_dev + public | llx_mailing_cibles | table | dolibarr_dev + public | llx_menu | table | dolibarr_dev + public | llx_multicurrency | table | dolibarr_dev + public | llx_multicurrency_rate | table | dolibarr_dev + public | llx_notify | table | dolibarr_dev + public | llx_notify_def | table | dolibarr_dev + public | llx_notify_def_object | table | dolibarr_dev + public | llx_oauth_state | table | dolibarr_dev + public | llx_oauth_token | table | dolibarr_dev + public | llx_onlinesignature | table | dolibarr_dev + public | llx_opensurvey_comments | table | dolibarr_dev + public | llx_opensurvey_formquestions | table | dolibarr_dev + public | llx_opensurvey_sondage | table | dolibarr_dev + public | llx_opensurvey_user_formanswers | table | dolibarr_dev + public | llx_opensurvey_user_studs | table | dolibarr_dev + public | llx_overwrite_trans | table | dolibarr_dev + public | llx_paiement | table | dolibarr_dev + public | llx_paiement_facture | table | dolibarr_dev + public | llx_paiementcharge | table | dolibarr_dev + public | llx_paiementfourn | table | dolibarr_dev + public | llx_paiementfourn_facturefourn | table | dolibarr_dev + public | llx_payment_donation | table | dolibarr_dev + public | llx_payment_expensereport | table | dolibarr_dev + public | llx_payment_loan | table | dolibarr_dev + public | llx_payment_salary | table | dolibarr_dev + public | llx_payment_various | table | dolibarr_dev + public | llx_prelevement_bons | table | dolibarr_dev + public | llx_prelevement_facture | table | dolibarr_dev + public | llx_prelevement_facture_demande | table | dolibarr_dev + public | llx_prelevement_lignes | table | dolibarr_dev + public | llx_prelevement_rejet | table | dolibarr_dev + public | llx_printing | table | dolibarr_dev + public | llx_product | table | dolibarr_dev + public | llx_product_association | table | dolibarr_dev + public | llx_product_attribute | table | dolibarr_dev + public | llx_product_attribute_combination | table | dolibarr_dev + public | llx_product_attribute_combination2val | table | dolibarr_dev + public | llx_product_attribute_value | table | dolibarr_dev + public | llx_product_batch | table | dolibarr_dev + public | llx_product_customer_price | table | dolibarr_dev + public | llx_product_customer_price_log | table | dolibarr_dev + public | llx_product_extrafields | table | dolibarr_dev + public | llx_product_fournisseur_price | table | dolibarr_dev + public | llx_product_fournisseur_price_log | table | dolibarr_dev + public | llx_product_lang | table | dolibarr_dev + public | llx_product_lot | table | dolibarr_dev + public | llx_product_lot_extrafields | table | dolibarr_dev + public | llx_product_price | table | dolibarr_dev + public | llx_product_price_by_qty | table | dolibarr_dev + public | llx_product_pricerules | table | dolibarr_dev + public | llx_product_stock | table | dolibarr_dev + public | llx_product_warehouse_properties | table | dolibarr_dev + public | llx_projet | table | dolibarr_dev + public | llx_projet_extrafields | table | dolibarr_dev + public | llx_projet_task | table | dolibarr_dev + public | llx_projet_task_extrafields | table | dolibarr_dev + public | llx_projet_task_time | table | dolibarr_dev + public | llx_propal | table | dolibarr_dev + public | llx_propal_extrafields | table | dolibarr_dev + public | llx_propal_merge_pdf_product | table | dolibarr_dev + public | llx_propaldet | table | dolibarr_dev + public | llx_propaldet_extrafields | table | dolibarr_dev + public | llx_resource | table | dolibarr_dev + public | llx_resource_extrafields | table | dolibarr_dev + public | llx_rights_def | table | dolibarr_dev + public | llx_societe | table | dolibarr_dev + public | llx_societe_account | table | dolibarr_dev + public | llx_societe_address | table | dolibarr_dev + public | llx_societe_commerciaux | table | dolibarr_dev + public | llx_societe_extrafields | table | dolibarr_dev + public | llx_societe_log | table | dolibarr_dev + public | llx_societe_prices | table | dolibarr_dev + public | llx_societe_remise | table | dolibarr_dev + public | llx_societe_remise_except | table | dolibarr_dev + public | llx_societe_remise_supplier | table | dolibarr_dev + public | llx_societe_rib | table | dolibarr_dev + public | llx_socpeople | table | dolibarr_dev + public | llx_socpeople_extrafields | table | dolibarr_dev + public | llx_stock_lotserial | table | dolibarr_dev + public | llx_stock_mouvement | table | dolibarr_dev + public | llx_subscription | table | dolibarr_dev + public | llx_supplier_proposal | table | dolibarr_dev + public | llx_supplier_proposal_extrafields | table | dolibarr_dev + public | llx_supplier_proposaldet | table | dolibarr_dev + public | llx_supplier_proposaldet_extrafields | table | dolibarr_dev + public | llx_ticket | table | dolibarr_dev + public | llx_ticket_extrafields | table | dolibarr_dev + public | llx_ticket_logs | table | dolibarr_dev + public | llx_ticket_msg | table | dolibarr_dev + public | llx_tva | table | dolibarr_dev + public | llx_user | table | dolibarr_dev + public | llx_user_alert | table | dolibarr_dev + public | llx_user_clicktodial | table | dolibarr_dev + public | llx_user_employment | table | dolibarr_dev + public | llx_user_extrafields | table | dolibarr_dev + public | llx_user_param | table | dolibarr_dev + public | llx_user_rib | table | dolibarr_dev + public | llx_user_rights | table | dolibarr_dev + public | llx_usergroup | table | dolibarr_dev + public | llx_usergroup_extrafields | table | dolibarr_dev + public | llx_usergroup_rights | table | dolibarr_dev + public | llx_usergroup_user | table | dolibarr_dev + public | llx_website | table | dolibarr_dev + public | llx_website_extrafields | table | dolibarr_dev + public | llx_website_page | table | dolibarr_dev + public | llx_wsactivateproducts | table | dolibarr_dev + public | llx_wsactivateserials | table | dolibarr_dev +(280 rows) + diff --git a/htdocs/projet/class/projectstats.class.php b/htdocs/projet/class/projectstats.class.php index 22793fd844e..cf586f8c96c 100644 --- a/htdocs/projet/class/projectstats.class.php +++ b/htdocs/projet/class/projectstats.class.php @@ -171,8 +171,8 @@ class ProjectStats extends Stats if (! empty($this->status)) $sqlwhere[] = " t.fk_opp_status IN (" . $this->status . ")"; - - if (! $user->rights->projet->all->lire) $sqlwhere[] = " AND p.rowid IN (".$projectsListId.")"; // public and assigned to, or restricted to company for external users + // TE: changed table alias "p" to "t" + if (! $user->rights->projet->all->lire) $sqlwhere[] = " t.rowid IN (".$projectsListId.")"; // public and assigned to, or restricted to company for external users if (count($sqlwhere) > 0) { $sqlwhere_str = ' WHERE ' . implode(' AND ', $sqlwhere); From fceaae7a8d2fa8ef20e22157702530af6c031d61 Mon Sep 17 00:00:00 2001 From: Tobias Elbert Date: Mon, 12 Nov 2018 16:22:42 +0100 Subject: [PATCH 397/769] fixed sql query error --- ...p conf.php.example index.html from societe | 285 ------------------ 1 file changed, 285 deletions(-) delete mode 100644 htdocs/conf/elect conf.php conf.php.example index.html from societe diff --git a/htdocs/conf/elect conf.php conf.php.example index.html from societe b/htdocs/conf/elect conf.php conf.php.example index.html from societe deleted file mode 100644 index 490058ac324..00000000000 --- a/htdocs/conf/elect conf.php conf.php.example index.html from societe +++ /dev/null @@ -1,285 +0,0 @@ - List of relations - Schema | Name | Type | Owner ---------+-----------------------------------------+-------+-------------- - public | llx_accounting_account | table | dolibarr_dev - public | llx_accounting_bookkeeping | table | dolibarr_dev - public | llx_accounting_bookkeeping_tmp | table | dolibarr_dev - public | llx_accounting_fiscalyear | table | dolibarr_dev - public | llx_accounting_journal | table | dolibarr_dev - public | llx_accounting_system | table | dolibarr_dev - public | llx_actioncomm | table | dolibarr_dev - public | llx_actioncomm_extrafields | table | dolibarr_dev - public | llx_actioncomm_reminder | table | dolibarr_dev - public | llx_actioncomm_resources | table | dolibarr_dev - public | llx_adherent | table | dolibarr_dev - public | llx_adherent_extrafields | table | dolibarr_dev - public | llx_adherent_type | table | dolibarr_dev - public | llx_adherent_type_extrafields | table | dolibarr_dev - public | llx_advtargetemailing | table | dolibarr_dev - public | llx_asset | table | dolibarr_dev - public | llx_asset_extrafields | table | dolibarr_dev - public | llx_asset_type | table | dolibarr_dev - public | llx_asset_type_extrafields | table | dolibarr_dev - public | llx_bank | table | dolibarr_dev - public | llx_bank_account | table | dolibarr_dev - public | llx_bank_account_extrafields | table | dolibarr_dev - public | llx_bank_categ | table | dolibarr_dev - public | llx_bank_class | table | dolibarr_dev - public | llx_bank_url | table | dolibarr_dev - public | llx_blockedlog | table | dolibarr_dev - public | llx_blockedlog_authority | table | dolibarr_dev - public | llx_bookmark | table | dolibarr_dev - public | llx_bordereau_cheque | table | dolibarr_dev - public | llx_boxes | table | dolibarr_dev - public | llx_boxes_def | table | dolibarr_dev - public | llx_budget | table | dolibarr_dev - public | llx_budget_lines | table | dolibarr_dev - public | llx_c_accounting_category | table | dolibarr_dev - public | llx_c_action_trigger | table | dolibarr_dev - public | llx_c_actioncomm | table | dolibarr_dev - public | llx_c_availability | table | dolibarr_dev - public | llx_c_barcode_type | table | dolibarr_dev - public | llx_c_chargesociales | table | dolibarr_dev - public | llx_c_civility | table | dolibarr_dev - public | llx_c_country | table | dolibarr_dev - public | llx_c_currencies | table | dolibarr_dev - public | llx_c_departements | table | dolibarr_dev - public | llx_c_ecotaxe | table | dolibarr_dev - public | llx_c_effectif | table | dolibarr_dev - public | llx_c_email_senderprofile | table | dolibarr_dev - public | llx_c_email_templates | table | dolibarr_dev - public | llx_c_exp_tax_cat | table | dolibarr_dev - public | llx_c_exp_tax_range | table | dolibarr_dev - public | llx_c_field_list | table | dolibarr_dev - public | llx_c_format_cards | table | dolibarr_dev - public | llx_c_forme_juridique | table | dolibarr_dev - public | llx_c_holiday_types | table | dolibarr_dev - public | llx_c_hrm_department | table | dolibarr_dev - public | llx_c_hrm_function | table | dolibarr_dev - public | llx_c_incoterms | table | dolibarr_dev - public | llx_c_input_method | table | dolibarr_dev - public | llx_c_input_reason | table | dolibarr_dev - public | llx_c_lead_status | table | dolibarr_dev - public | llx_c_paiement | table | dolibarr_dev - public | llx_c_paiement_temp | table | dolibarr_dev - public | llx_c_paper_format | table | dolibarr_dev - public | llx_c_payment_term | table | dolibarr_dev - public | llx_c_price_expression | table | dolibarr_dev - public | llx_c_price_global_variable | table | dolibarr_dev - public | llx_c_price_global_variable_updater | table | dolibarr_dev - public | llx_c_propalst | table | dolibarr_dev - public | llx_c_prospectlevel | table | dolibarr_dev - public | llx_c_regions | table | dolibarr_dev - public | llx_c_revenuestamp | table | dolibarr_dev - public | llx_c_shipment_mode | table | dolibarr_dev - public | llx_c_stcomm | table | dolibarr_dev - public | llx_c_ticket_category | table | dolibarr_dev - public | llx_c_ticket_severity | table | dolibarr_dev - public | llx_c_ticket_type | table | dolibarr_dev - public | llx_c_tva | table | dolibarr_dev - public | llx_c_type_contact | table | dolibarr_dev - public | llx_c_type_container | table | dolibarr_dev - public | llx_c_type_fees | table | dolibarr_dev - public | llx_c_type_resource | table | dolibarr_dev - public | llx_c_typent | table | dolibarr_dev - public | llx_c_units | table | dolibarr_dev - public | llx_c_ziptown | table | dolibarr_dev - public | llx_categorie | table | dolibarr_dev - public | llx_categorie_account | table | dolibarr_dev - public | llx_categorie_contact | table | dolibarr_dev - public | llx_categorie_fournisseur | table | dolibarr_dev - public | llx_categorie_lang | table | dolibarr_dev - public | llx_categorie_member | table | dolibarr_dev - public | llx_categorie_product | table | dolibarr_dev - public | llx_categorie_project | table | dolibarr_dev - public | llx_categorie_societe | table | dolibarr_dev - public | llx_categorie_user | table | dolibarr_dev - public | llx_categories_extrafields | table | dolibarr_dev - public | llx_chargesociales | table | dolibarr_dev - public | llx_commande | table | dolibarr_dev - public | llx_commande_extrafields | table | dolibarr_dev - public | llx_commande_fournisseur | table | dolibarr_dev - public | llx_commande_fournisseur_dispatch | table | dolibarr_dev - public | llx_commande_fournisseur_extrafields | table | dolibarr_dev - public | llx_commande_fournisseur_log | table | dolibarr_dev - public | llx_commande_fournisseurdet | table | dolibarr_dev - public | llx_commande_fournisseurdet_extrafields | table | dolibarr_dev - public | llx_commandedet | table | dolibarr_dev - public | llx_commandedet_extrafields | table | dolibarr_dev - public | llx_comment | table | dolibarr_dev - public | llx_const | table | dolibarr_dev - public | llx_contrat | table | dolibarr_dev - public | llx_contrat_extrafields | table | dolibarr_dev - public | llx_contratdet | table | dolibarr_dev - public | llx_contratdet_extrafields | table | dolibarr_dev - public | llx_contratdet_log | table | dolibarr_dev - public | llx_cronjob | table | dolibarr_dev - public | llx_default_values | table | dolibarr_dev - public | llx_deplacement | table | dolibarr_dev - public | llx_document_model | table | dolibarr_dev - public | llx_don | table | dolibarr_dev - public | llx_don_extrafields | table | dolibarr_dev - public | llx_ecm_directories | table | dolibarr_dev - public | llx_ecm_files | table | dolibarr_dev - public | llx_element_contact | table | dolibarr_dev - public | llx_element_element | table | dolibarr_dev - public | llx_element_lock | table | dolibarr_dev - public | llx_element_resources | table | dolibarr_dev - public | llx_element_tag | table | dolibarr_dev - public | llx_entrepot | table | dolibarr_dev - public | llx_establishment | table | dolibarr_dev - public | llx_event_element | table | dolibarr_dev - public | llx_events | table | dolibarr_dev - public | llx_expedition | table | dolibarr_dev - public | llx_expedition_extrafields | table | dolibarr_dev - public | llx_expeditiondet | table | dolibarr_dev - public | llx_expeditiondet_batch | table | dolibarr_dev - public | llx_expeditiondet_extrafields | table | dolibarr_dev - public | llx_expensereport | table | dolibarr_dev - public | llx_expensereport_det | table | dolibarr_dev - public | llx_expensereport_extrafields | table | dolibarr_dev - public | llx_expensereport_ik | table | dolibarr_dev - public | llx_expensereport_rules | table | dolibarr_dev - public | llx_export_compta | table | dolibarr_dev - public | llx_export_model | table | dolibarr_dev - public | llx_extrafields | table | dolibarr_dev - public | llx_facture | table | dolibarr_dev - public | llx_facture_extrafields | table | dolibarr_dev - public | llx_facture_fourn | table | dolibarr_dev - public | llx_facture_fourn_det | table | dolibarr_dev - public | llx_facture_fourn_det_extrafields | table | dolibarr_dev - public | llx_facture_fourn_extrafields | table | dolibarr_dev - public | llx_facture_rec | table | dolibarr_dev - public | llx_facture_rec_extrafields | table | dolibarr_dev - public | llx_facturedet | table | dolibarr_dev - public | llx_facturedet_extrafields | table | dolibarr_dev - public | llx_facturedet_rec | table | dolibarr_dev - public | llx_fichinter | table | dolibarr_dev - public | llx_fichinter_extrafields | table | dolibarr_dev - public | llx_fichinterdet | table | dolibarr_dev - public | llx_fichinterdet_extrafields | table | dolibarr_dev - public | llx_holiday | table | dolibarr_dev - public | llx_holiday_config | table | dolibarr_dev - public | llx_holiday_logs | table | dolibarr_dev - public | llx_holiday_users | table | dolibarr_dev - public | llx_import_model | table | dolibarr_dev - public | llx_inventory | table | dolibarr_dev - public | llx_inventorydet | table | dolibarr_dev - public | llx_links | table | dolibarr_dev - public | llx_livraison | table | dolibarr_dev - public | llx_livraison_extrafields | table | dolibarr_dev - public | llx_livraisondet | table | dolibarr_dev - public | llx_livraisondet_extrafields | table | dolibarr_dev - public | llx_loan | table | dolibarr_dev - public | llx_loan_schedule | table | dolibarr_dev - public | llx_localtax | table | dolibarr_dev - public | llx_mailing | table | dolibarr_dev - public | llx_mailing_cibles | table | dolibarr_dev - public | llx_menu | table | dolibarr_dev - public | llx_multicurrency | table | dolibarr_dev - public | llx_multicurrency_rate | table | dolibarr_dev - public | llx_notify | table | dolibarr_dev - public | llx_notify_def | table | dolibarr_dev - public | llx_notify_def_object | table | dolibarr_dev - public | llx_oauth_state | table | dolibarr_dev - public | llx_oauth_token | table | dolibarr_dev - public | llx_onlinesignature | table | dolibarr_dev - public | llx_opensurvey_comments | table | dolibarr_dev - public | llx_opensurvey_formquestions | table | dolibarr_dev - public | llx_opensurvey_sondage | table | dolibarr_dev - public | llx_opensurvey_user_formanswers | table | dolibarr_dev - public | llx_opensurvey_user_studs | table | dolibarr_dev - public | llx_overwrite_trans | table | dolibarr_dev - public | llx_paiement | table | dolibarr_dev - public | llx_paiement_facture | table | dolibarr_dev - public | llx_paiementcharge | table | dolibarr_dev - public | llx_paiementfourn | table | dolibarr_dev - public | llx_paiementfourn_facturefourn | table | dolibarr_dev - public | llx_payment_donation | table | dolibarr_dev - public | llx_payment_expensereport | table | dolibarr_dev - public | llx_payment_loan | table | dolibarr_dev - public | llx_payment_salary | table | dolibarr_dev - public | llx_payment_various | table | dolibarr_dev - public | llx_prelevement_bons | table | dolibarr_dev - public | llx_prelevement_facture | table | dolibarr_dev - public | llx_prelevement_facture_demande | table | dolibarr_dev - public | llx_prelevement_lignes | table | dolibarr_dev - public | llx_prelevement_rejet | table | dolibarr_dev - public | llx_printing | table | dolibarr_dev - public | llx_product | table | dolibarr_dev - public | llx_product_association | table | dolibarr_dev - public | llx_product_attribute | table | dolibarr_dev - public | llx_product_attribute_combination | table | dolibarr_dev - public | llx_product_attribute_combination2val | table | dolibarr_dev - public | llx_product_attribute_value | table | dolibarr_dev - public | llx_product_batch | table | dolibarr_dev - public | llx_product_customer_price | table | dolibarr_dev - public | llx_product_customer_price_log | table | dolibarr_dev - public | llx_product_extrafields | table | dolibarr_dev - public | llx_product_fournisseur_price | table | dolibarr_dev - public | llx_product_fournisseur_price_log | table | dolibarr_dev - public | llx_product_lang | table | dolibarr_dev - public | llx_product_lot | table | dolibarr_dev - public | llx_product_lot_extrafields | table | dolibarr_dev - public | llx_product_price | table | dolibarr_dev - public | llx_product_price_by_qty | table | dolibarr_dev - public | llx_product_pricerules | table | dolibarr_dev - public | llx_product_stock | table | dolibarr_dev - public | llx_product_warehouse_properties | table | dolibarr_dev - public | llx_projet | table | dolibarr_dev - public | llx_projet_extrafields | table | dolibarr_dev - public | llx_projet_task | table | dolibarr_dev - public | llx_projet_task_extrafields | table | dolibarr_dev - public | llx_projet_task_time | table | dolibarr_dev - public | llx_propal | table | dolibarr_dev - public | llx_propal_extrafields | table | dolibarr_dev - public | llx_propal_merge_pdf_product | table | dolibarr_dev - public | llx_propaldet | table | dolibarr_dev - public | llx_propaldet_extrafields | table | dolibarr_dev - public | llx_resource | table | dolibarr_dev - public | llx_resource_extrafields | table | dolibarr_dev - public | llx_rights_def | table | dolibarr_dev - public | llx_societe | table | dolibarr_dev - public | llx_societe_account | table | dolibarr_dev - public | llx_societe_address | table | dolibarr_dev - public | llx_societe_commerciaux | table | dolibarr_dev - public | llx_societe_extrafields | table | dolibarr_dev - public | llx_societe_log | table | dolibarr_dev - public | llx_societe_prices | table | dolibarr_dev - public | llx_societe_remise | table | dolibarr_dev - public | llx_societe_remise_except | table | dolibarr_dev - public | llx_societe_remise_supplier | table | dolibarr_dev - public | llx_societe_rib | table | dolibarr_dev - public | llx_socpeople | table | dolibarr_dev - public | llx_socpeople_extrafields | table | dolibarr_dev - public | llx_stock_lotserial | table | dolibarr_dev - public | llx_stock_mouvement | table | dolibarr_dev - public | llx_subscription | table | dolibarr_dev - public | llx_supplier_proposal | table | dolibarr_dev - public | llx_supplier_proposal_extrafields | table | dolibarr_dev - public | llx_supplier_proposaldet | table | dolibarr_dev - public | llx_supplier_proposaldet_extrafields | table | dolibarr_dev - public | llx_ticket | table | dolibarr_dev - public | llx_ticket_extrafields | table | dolibarr_dev - public | llx_ticket_logs | table | dolibarr_dev - public | llx_ticket_msg | table | dolibarr_dev - public | llx_tva | table | dolibarr_dev - public | llx_user | table | dolibarr_dev - public | llx_user_alert | table | dolibarr_dev - public | llx_user_clicktodial | table | dolibarr_dev - public | llx_user_employment | table | dolibarr_dev - public | llx_user_extrafields | table | dolibarr_dev - public | llx_user_param | table | dolibarr_dev - public | llx_user_rib | table | dolibarr_dev - public | llx_user_rights | table | dolibarr_dev - public | llx_usergroup | table | dolibarr_dev - public | llx_usergroup_extrafields | table | dolibarr_dev - public | llx_usergroup_rights | table | dolibarr_dev - public | llx_usergroup_user | table | dolibarr_dev - public | llx_website | table | dolibarr_dev - public | llx_website_extrafields | table | dolibarr_dev - public | llx_website_page | table | dolibarr_dev - public | llx_wsactivateproducts | table | dolibarr_dev - public | llx_wsactivateserials | table | dolibarr_dev -(280 rows) - From 628918f863fc46fafdf67610ba410481532b17d2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Nov 2018 16:43:33 +0100 Subject: [PATCH 398/769] Remove var_dump --- htdocs/core/modules/modAgenda.class.php | 2 +- htdocs/emailcollector/class/emailcollector.class.php | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/htdocs/core/modules/modAgenda.class.php b/htdocs/core/modules/modAgenda.class.php index d69c20ab643..50e767fe411 100644 --- a/htdocs/core/modules/modAgenda.class.php +++ b/htdocs/core/modules/modAgenda.class.php @@ -244,7 +244,7 @@ class modAgenda extends DolibarrModules // Calendar $this->menu[$r]=array('fk_menu'=>'r=1', 'type'=>'left', - 'titre'=>'Agenda', + 'titre'=>'Calendar', 'mainmenu'=>'agenda', 'url'=>'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda', 'langs'=>'agenda', diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index ccf303949ec..7724e312ff2 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -930,18 +930,17 @@ class EmailCollector extends CommonObject if ($errorforactions) break; if (empty($operation['status'])) continue; - // Make Operation if ($operation['type'] == 'recordevent') { $actioncode = 'EMAIL_IN'; - var_dump($structure); + // Insert record of emails sent $actioncomm = new ActionComm($this->db); $actioncomm->type_code = 'AC_OTH_AUTO'; // Type of event ('AC_OTH', 'AC_OTH_AUTO', 'AC_XXX'...) $actioncomm->code = 'AC_'.$actioncode; - $actioncomm->label = $subject; + $actioncomm->label = $langs->trans("EmailReceived").' - '.$langs->trans("From").' '.$from; $actioncomm->note = $messagetext; $actioncomm->fk_project = 0; $actioncomm->datep = $date; @@ -983,9 +982,12 @@ class EmailCollector extends CommonObject } } - var_dump($actioncomm);exit; + elseif ($operation['type'] == 'aaa') + { + } + if (! $errorforactions) { $nbactiondone++; From 723654efea8af3ad34e89a4bb081d975ecc29f54 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Nov 2018 17:15:03 +0100 Subject: [PATCH 399/769] Fix phpcs --- htdocs/emailcollector/class/emailcollector.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 7724e312ff2..a9e2431be71 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -980,7 +980,6 @@ class EmailCollector extends CommonObject $errorforactions++; $this->errors = $actioncomm->errors; } - } elseif ($operation['type'] == 'aaa') { From 35c43683b65b9ba65ca318cbd78389bfb9840e58 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Tue, 13 Nov 2018 09:45:47 +0100 Subject: [PATCH 400/769] fix Erreur DB_ERROR_SYNTAX --- htdocs/install/mysql/migration/8.0.0-9.0.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 996fdb79b17..64811b0a034 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -55,7 +55,7 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN desc_fourn text after ref_f ALTER TABLE llx_user ADD COLUMN dateemploymentend date after dateemployment; ALTER TABLE llx_stock_mouvement ADD COLUMN fk_project integer; -Alter tABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(32) +Alter TABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(32); ALTER TABLE llx_c_field_list ADD COLUMN visible tinyint DEFAULT 1 NOT NULL AFTER search; From 2ed060a07083672d271d9ca81bbf0e4dcf60f529 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Tue, 13 Nov 2018 10:07:04 +0100 Subject: [PATCH 401/769] fix: Invalid argument supplied for foreach() --- htdocs/core/tpl/extrafields_list_search_sql.tpl.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php index b0c97265682..f3c5a10e95b 100644 --- a/htdocs/core/tpl/extrafields_list_search_sql.tpl.php +++ b/htdocs/core/tpl/extrafields_list_search_sql.tpl.php @@ -10,7 +10,7 @@ if (empty($conf) || ! is_object($conf)) if (empty($extrafieldsobjectkey) && is_object($object)) $extrafieldsobjectkey=$object->table_element; // Loop to complete the sql search criterias from extrafields -if (! empty($extrafieldsobjectkey) && ! empty($search_array_options)) // $extrafieldsobject is the $object->table_element like 'societe', 'socpeople', ... +if (! empty($extrafieldsobjectkey) && ! empty($search_array_options) && is_array($search_array_options)) // $extrafieldsobject is the $object->table_element like 'societe', 'socpeople', ... { foreach ($search_array_options as $key => $val) { From 500bb7bc96ad53080389559277163db8fb30afee Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Tue, 13 Nov 2018 10:20:34 +0100 Subject: [PATCH 402/769] best conditions testing --- htdocs/core/class/commonobject.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 67e06ea59f3..870de68948f 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -6152,7 +6152,8 @@ abstract class CommonObject $e = 0; foreach($extrafields->attributes[$this->table_element]['label'] as $key=>$label) { - if(empty($extrafields->attribute_list[$key]) && $mode == 'view'){ + if (isset($extrafields->attributes[$this->table_element]['list'][$key]) + && empty($extrafields->attributes[$this->table_element]['list'][$key]) && $mode == 'view'){ continue; } From 77582b2a4127ca4d90c2fc16b011586ddf5dd751 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Nov 2018 11:36:57 +0100 Subject: [PATCH 403/769] FIX the autofocus feature --- htdocs/core/lib/functions.lib.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 5ec9e40518f..c563cf14bbc 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -7061,6 +7061,7 @@ function printCommonFooter($zone='private') if (! empty($conf->use_javascript_ajax)) { print ''; - } - else if ($type == 'barline') - { - // data is array('series'=>array(serie1,serie2,...), - // 'seriestype'=>array('bar','line',...), - // 'seriescolor'=>array(0=>'#999999',1=>'#999999',...) - // 'xlabel'=>array(0=>labelx1,1=>labelx2,...)); - // serieX is array('label'=>'label', data=>array(0=>y1,1=>y2,...)) with same nb of value than into xlabel - print ' - '; - } - else print 'BadValueForParameterType'; - } -} - /** * Truncate a string to a particular length adding '...' if string larger than length. * If length = max length+1, we do no truncate to avoid having just 1 char replaced with '...'. From 8c61529aee647543f1888ac43325c036c92c8ca2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 20 Nov 2018 20:31:02 +0100 Subject: [PATCH 503/769] Update doc --- ChangeLog | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ChangeLog b/ChangeLog index e4fbf63e758..0bc9d008ea8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -27,6 +27,8 @@ Following changes may create regressions for some external modules, but were nec replace them with links like viewimages.php?modulepart=mycompany&file=logos/... (note that link change only for modulepart=mycompany that now works like others). * Hidden option MAIN_PDF_SHIPPING_DISPLAY_AMOUNT_HT has been renamed into SHIPPING_PDF_DISPLAY_AMOUNT_HT +* Remove the no more used and deprecated dol_print_graph function + ***** ChangeLog for 8.0.3 compared to 8.0.2 ***** From c891f6ed10e1d8591500b223fa7b12d8a3f602fe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 20 Nov 2018 21:26:22 +0100 Subject: [PATCH 504/769] Disable javascript feature with no javascript --- htdocs/admin/defaultvalues.php | 3 ++- htdocs/core/lib/admin.lib.php | 19 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/htdocs/admin/defaultvalues.php b/htdocs/admin/defaultvalues.php index f7a2a031dbf..afec612bf61 100644 --- a/htdocs/admin/defaultvalues.php +++ b/htdocs/admin/defaultvalues.php @@ -288,8 +288,9 @@ if ($mode != 'focus' && $mode != 'mandatory') } // Entity if (! empty($conf->multicompany->enabled) && !$user->entity) print_liste_field_titre("Entity",$_SERVER["PHP_SELF"],'entity,page','',$param,'',$sortfield,$sortorder); +else print_liste_field_titre("",$_SERVER["PHP_SELF"],'','',$param,'',$sortfield,$sortorder); // Actions -print '
'.$langs->trans("SelectedPeriod").' foreach($months as $k => $v){ if (($k+1) >= $date_startmonth) { - print ''.$langs->trans($v).''.$langs->trans('MonthShort'.sprintf("%02s",($k+1))).''.$langs->trans($v).''.$langs->trans('MonthShort'.sprintf("%02s",($k+1))).'
' . price($totCat['NP']) . '' . price($totCat['N']) . '
' . price($resultM) . '
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

DoliCloud is the service to provide you a web hosting solution of Dolibarr ERP CRM in one click. Just enter your email to create your instance and you are ready to work. Backup and full access is to data (SFTP, Mysql) are provided.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Test Dolibarr ERP CRM on Dolicloud →
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
DoliCloud team
\r\n Unsubscribe   |   View on web browser
\r\n
\r\n
','','',NULL,26,'dolibarr@domain.com','','',NULL,'2010-07-11 13:15:59','2017-01-29 21:33:11',NULL,'2017-01-29 21:36:40',1,12,NULL,NULL,NULL,NULL,NULL,NULL),(4,0,'Commercial emailing February',1,'Buy my product','This is a new éEéé\"Mailing content
\r\n
\r\n\r\nYou can adit it with the WYSIWYG editor.
\r\nIt is\r\n
    \r\n
  • \r\n Fast
  • \r\n
  • \r\n Easy to use
  • \r\n
  • \r\n Pretty
  • \r\n
','','',NULL,NULL,'dolibarr@domain.com','','',NULL,'2011-07-18 20:44:33',NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,1,'Commercial emailing March',1,'Buy my product','
\"\"
\r\n\"Seguici\"Seguici\"Seguici\"Seguici
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

DoliCloud is the service to provide you a web hosting solution __EMAIL__ of Dolibarr ERP CRM in one click. Just enter your email to create your instance and you are ready to work. Backup and full access is to data (SFTP, Mysql) are provided.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Test Dolibarr ERP CRM on Dolicloud →
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
DoliCloud team
\r\n Unsubscribe   |   View on web browser
\r\n
\r\n
','','',NULL,28,'dolibarr@domain.com','','',NULL,'2017-01-29 21:47:37','2017-01-29 21:54:55',NULL,NULL,12,12,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_mailing` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_mailing_cibles` +-- + +DROP TABLE IF EXISTS `llx_mailing_cibles`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_mailing_cibles` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_mailing` int(11) NOT NULL, + `fk_contact` int(11) NOT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(160) COLLATE utf8_unicode_ci NOT NULL, + `other` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `tag` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `source_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `source_id` int(11) DEFAULT NULL, + `source_type` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_envoi` datetime DEFAULT NULL, + `error_text` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_mailing_cibles` (`fk_mailing`,`email`), + KEY `idx_mailing_cibles_email` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=60 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_mailing_cibles` +-- + +LOCK TABLES `llx_mailing_cibles` WRITE; +/*!40000 ALTER TABLE `llx_mailing_cibles` DISABLE KEYS */; +INSERT INTO `llx_mailing_cibles` VALUES (1,1,0,'Dupont','Alain','toto@aa.com','Date fin=10/07/2011',NULL,0,'0',NULL,NULL,NULL,NULL),(2,2,0,'Swiss customer supplier','','abademail@aa.com','',NULL,0,'0',NULL,NULL,NULL,NULL),(3,2,0,'Smith Vick','','vsmith@email.com','',NULL,0,'0',NULL,NULL,NULL,NULL),(4,3,0,'Swiss customer supplier','','abademail@aa.com','',NULL,1,'0',NULL,NULL,'2017-01-29 21:36:40',NULL),(5,3,0,'Smith Vick','','vsmith@email.com','',NULL,1,'0',NULL,NULL,'2017-01-29 21:36:40',NULL),(7,3,0,'Name 2','Firstname 2','emailtest2@example.com','','522b79aedf231576db576d246d82a0d7',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(8,3,0,'Name 3','Firstname 3','emailtest3@example.com','','f3e74e96a64068093af469b6826a75bf',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(9,3,0,'Name 4','Firstname 4','emailtest4@example.com','','fdacf67090698e0216f5c9a449e7404a',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(10,3,0,'Name 5','Firstname 5','emailtest5@example.com','','38b4e4895bf5e7f9969c9ad9bbcd0dce',3,'',NULL,'file','2017-01-29 21:36:40',NULL),(11,3,0,'Name 1','Firstname 1','emailtest1@example.com','','b2543a771e2a10c694fc6437859e29ae',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(12,3,0,'Do','John','johndoe@example.com','','bdb70b6835ca053b113e7ac53c83efbe',-1,'',NULL,'file','2017-01-29 21:36:40','Invalid email'),(13,3,0,'Smith,Alan','','alan.smith@example.com','','326b9fb6d83f58b7ce5ca28a51022c83',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(15,3,0,'Bowl','Kathy','kathy.bowl@example.com','','0848d51a04ad29adf28de7d6efe63091',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(16,3,0,'Ducanseen','Herbert','herbert@example.com','','0585f4366c7b0c8bab592acb7256a409',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(17,3,0,'Djay','Djay','djay@example.com','','fad171648dcd8449d6e2f8246724f153',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(18,3,0,'','','alice.bigo@example.com','','86b03b13caec209e9a9d96979b7154b8',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(19,3,0,'','','bob.markus@example.com','','06df0b2b930718949a5afee280f04e6b',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(20,3,0,'Customer 1','','mycustomer1@example.com','','cac0a5a38fa9e67ed63d0753e08cd919',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(21,3,0,'Customer 2','','mycustomer2@example.com','','19b631ee27e7036684675f2db35c54f0',0,'',NULL,'file',NULL,NULL),(22,3,0,'Customer 3','','mycustomer3@example.com','','bfd49e2db7c511e2d5bde30eda7db07a',0,'',NULL,'file',NULL,NULL),(23,3,0,'Customer 4','','mycustomer4@example.com','','de4640d0684c62dd83ffc27ff20d5938',0,'',NULL,'file',NULL,NULL),(24,3,0,'Customer 5','','mycustomer5@example.com','','2eb5786291928fd23ca0354ac261ec9b',0,'',NULL,'file',NULL,NULL),(25,3,0,'Customer 6','','mycustomer6@example.com','','c50c85b7f3370232c1d1335e17f953ca',0,'',NULL,'file',NULL,NULL),(26,3,0,'Prospect 1','','myprospect1@example.com','','553b1f7417f7c96290cdec5ca4c560f7',0,'',NULL,'file',NULL,NULL),(27,3,0,'Prospect 2','','myprospect2@example.com','','de45e526168546315ff4fedb54e63102',0,'',NULL,'file',NULL,NULL),(28,3,0,'Prospect 3','','myprospect3@example.com','','466d946e7c46881334f4abe427d382fa',0,'',NULL,'file',NULL,NULL),(29,3,0,'Prospect 4','','myprospect4@example.com','','619d1ec47318842971db7fa266b6d74a',0,'',NULL,'file',NULL,NULL),(30,3,0,'Prospect 5','','myprospect5@example.com','','e301713dcbf58d33ef1ae540dee58ad7',0,'',NULL,'file',NULL,NULL),(31,3,0,'Prospect 6','','myprospect6@example.com','','26fcbd0c641a535bfc14a80a867a61f2',0,'',NULL,'file',NULL,NULL),(32,5,0,'Swiss customer supplier','','abademail@aa.com','','0e7d20e3c9b1612a75eab5d12da84060',0,'0',NULL,'',NULL,NULL),(33,5,0,'Smith Vick','','vsmith@email.com','','cab14f12668ccb2c92843969819c6c6e',0,'0',NULL,'',NULL,NULL),(34,5,0,'Name 2','Firstname 2','emailtest2@example.com','','1b6adeceaac7e2b9c399c877f8b1a616',0,'',NULL,'file',NULL,NULL),(35,5,0,'Name 3','Firstname 3','emailtest3@example.com','','c9f6f80ba118c378aef4974e17b01a07',0,'',NULL,'file',NULL,NULL),(36,5,0,'Name 4','Firstname 4','emailtest4@example.com','','75a3051301db736a2bb7722de7b4ece1',0,'',NULL,'file',NULL,NULL),(37,5,0,'Name 5','Firstname 5','emailtest5@example.com','','a9e292e70ec11ed58718c9f5da58f870',0,'',NULL,'file',NULL,NULL),(38,5,0,'Name 1','Firstname 1','emailtest1@example.com','','0243e796981c9e82cc23d8a6a5a23570',0,'',NULL,'file',NULL,NULL),(39,5,0,'Do','John','johndoe@example.com','','7db6219748fbad348b1aa89f2014d529',0,'',NULL,'file',NULL,NULL),(40,5,0,'Smith,Alan','','alan.smith@example.com','','5006f91f3bd97918460b6dc3edf4cd7f',0,'',NULL,'file',NULL,NULL),(41,5,0,'Bowl','Kathy','kathy.bowl@example.com','','377ac5b241f2d5bf421a7162c60bf7b6',0,'',NULL,'file',NULL,NULL),(42,5,0,'Ducanseen','Herbert','herbert@example.com','','10e1b891a249ee8046f1686a0a44d773',0,'',NULL,'file',NULL,NULL),(43,5,0,'Djay','Djay','djay@example.com','','6cf76a2b74874caa6b8eced78f63bca1',0,'',NULL,'file',NULL,NULL),(44,5,0,'','','alice.bigo@example.com','','61651804afc02887a3934ab042285044',0,'',NULL,'file',NULL,NULL),(45,5,0,'','','bob.markus@example.com','','b6d3e934e4bc92d194b43041260564da',0,'',NULL,'file',NULL,NULL),(46,5,0,'Customer 1','','mycustomer1@example.com','','fa9ade908a5a420e7dc64e62d1d9eb65',0,'',NULL,'file',NULL,NULL),(47,5,0,'Customer 2','','mycustomer2@example.com','','5d502923487f0f4226ab9f5f71102857',0,'',NULL,'file',NULL,NULL),(48,5,0,'Customer 3','','mycustomer3@example.com','','0b7da54f9969554eee95684069173f23',0,'',NULL,'file',NULL,NULL),(49,5,0,'Customer 4','','mycustomer4@example.com','','b073cf47a6af4740c76620ab4442033c',0,'',NULL,'file',NULL,NULL),(50,5,0,'Customer 5','','mycustomer5@example.com','','468b7404027e91edf437c3980619c8f6',0,'',NULL,'file',NULL,NULL),(51,5,0,'Customer 6','','mycustomer6@example.com','','cb196086497f64cd23dd68aed2bf5cc8',0,'',NULL,'file',NULL,NULL),(52,5,0,'Prospect 1','','myprospect1@example.com','','9854ed6528267f30c8c22c24384b31ae',0,'',NULL,'file',NULL,NULL),(53,5,0,'Prospect 2','','myprospect2@example.com','','b37ed581bbc51b6d9a334e1626b5fe22',0,'',NULL,'file',NULL,NULL),(54,5,0,'Prospect 3','','myprospect3@example.com','','8bedd7821877a72841efae36691f7765',0,'',NULL,'file',NULL,NULL),(55,5,0,'Prospect 4','','myprospect4@example.com','','518353a5cfb1a628ada10874ac4e0098',0,'',NULL,'file',NULL,NULL),(56,5,0,'Prospect 5','','myprospect5@example.com','','de392a2999e262fec63c9de4a3fe7613',0,'',NULL,'file',NULL,NULL),(57,5,0,'Prospect 6','','myprospect6@example.com','','56256cc297c4870c514819cdb4e6b95c',0,'',NULL,'file',NULL,NULL),(58,5,0,'Prospect 7','','myprospect7@example.com','','d32512607d4e74d6f71d031538128721',0,'',NULL,'file',NULL,NULL),(59,5,0,'Prospect 8','','myprospect8@example.com','','427eeb75492ede5355996a8df998f9de',0,'',NULL,'file',NULL,NULL); +/*!40000 ALTER TABLE `llx_mailing_cibles` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_menu` +-- + +DROP TABLE IF EXISTS `llx_menu`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_menu` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `menu_handler` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `module` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(4) COLLATE utf8_unicode_ci NOT NULL, + `mainmenu` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + `fk_menu` int(11) NOT NULL, + `fk_leftmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_mainmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `target` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `titre` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `langs` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `level` smallint(6) DEFAULT NULL, + `leftmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `perms` text COLLATE utf8_unicode_ci, + `enabled` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `usertype` int(11) NOT NULL DEFAULT '0', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_menu_uk_menu` (`menu_handler`,`fk_menu`,`position`,`url`,`entity`), + KEY `idx_menu_menuhandler_type` (`menu_handler`,`type`) +) ENGINE=InnoDB AUTO_INCREMENT=166493 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_menu` +-- + +LOCK TABLES `llx_menu` WRITE; +/*!40000 ALTER TABLE `llx_menu` DISABLE KEYS */; +INSERT INTO `llx_menu` VALUES (103094,'all',2,'agenda','top','agenda',0,NULL,NULL,100,'/comm/action/index.php','','Agenda','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103095,'all',2,'agenda','left','agenda',103094,NULL,NULL,100,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Actions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103096,'all',2,'agenda','left','agenda',103095,NULL,NULL,101,'/comm/action/card.php?mainmenu=agenda&leftmenu=agenda&action=create','','NewAction','commercial',NULL,NULL,'($user->rights->agenda->myactions->create||$user->rights->agenda->allactions->create)','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103097,'all',2,'agenda','left','agenda',103095,NULL,NULL,102,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Calendar','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103098,'all',2,'agenda','left','agenda',103097,NULL,NULL,103,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103099,'all',2,'agenda','left','agenda',103097,NULL,NULL,104,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103100,'all',2,'agenda','left','agenda',103097,NULL,NULL,105,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103101,'all',2,'agenda','left','agenda',103097,NULL,NULL,106,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103102,'all',2,'agenda','left','agenda',103095,NULL,NULL,112,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda','','List','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103103,'all',2,'agenda','left','agenda',103102,NULL,NULL,113,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103104,'all',2,'agenda','left','agenda',103102,NULL,NULL,114,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103105,'all',2,'agenda','left','agenda',103102,NULL,NULL,115,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=todo','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103106,'all',2,'agenda','left','agenda',103102,NULL,NULL,116,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=done','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103107,'all',2,'agenda','left','agenda',103095,NULL,NULL,120,'/comm/action/rapport/index.php?mainmenu=agenda&leftmenu=agenda','','Reportings','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103134,'all',2,'opensurvey','top','opensurvey',0,NULL,NULL,200,'/opensurvey/index.php','','Surveys','opensurvey',NULL,NULL,'$user->rights->opensurvey->survey->read','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103135,'all',2,'opensurvey','left','opensurvey',-1,NULL,'opensurvey',200,'/opensurvey/index.php?mainmenu=opensurvey&leftmenu=opensurvey','','Survey','opensurvey@opensurvey',NULL,'opensurvey','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103136,'all',2,'opensurvey','left','opensurvey',-1,'opensurvey','opensurvey',210,'/opensurvey/public/index.php','_blank','NewSurvey','opensurvey@opensurvey',NULL,'opensurvey_new','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103137,'all',2,'opensurvey','left','opensurvey',-1,'opensurvey','opensurvey',220,'/opensurvey/list.php','','List','opensurvey@opensurvey',NULL,'opensurvey_list','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(124179,'all',1,'cashdesk','top','cashdesk',0,NULL,NULL,100,'/cashdesk/index.php?user=__LOGIN__','pointofsale','CashDeskMenu','cashdesk',NULL,NULL,'$user->rights->cashdesk->use','$conf->cashdesk->enabled',0,'2015-11-15 22:38:33'),(124210,'all',1,'margins','left','accountancy',-1,NULL,'accountancy',100,'/margin/index.php','','Margins','margins',NULL,'margins','$user->rights->margins->liretous','$conf->margin->enabled',2,'2015-11-15 22:41:47'),(145086,'all',1,'supplier_proposal','left','commercial',-1,NULL,'commercial',300,'/supplier_proposal/index.php','','SupplierProposalsShort','supplier_proposal',NULL,'supplier_proposalsubmenu','$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145087,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',301,'/supplier_proposal/card.php?action=create&leftmenu=supplier_proposals','','SupplierProposalNew','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->creer','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145088,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',302,'/supplier_proposal/list.php?leftmenu=supplier_proposals','','List','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145089,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',303,'/comm/propal/stats/index.php?leftmenu=supplier_proposals&mode=supplier','','Statistics','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145090,'all',1,'resource','left','tools',-1,NULL,'tools',100,'/resource/list.php','','MenuResourceIndex','resource',NULL,'resource','$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145091,'all',1,'resource','left','tools',-1,'resource','tools',101,'/resource/add.php','','MenuResourceAdd','resource',NULL,NULL,'$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145092,'all',1,'resource','left','tools',-1,'resource','tools',102,'/resource/list.php','','List','resource',NULL,NULL,'$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145127,'all',1,'printing','left','home',-1,'admintools','home',300,'/printing/index.php?mainmenu=home&leftmenu=admintools','','MenuDirectPrinting','printing',NULL,NULL,'$user->rights->printing->read','$conf->printing->enabled && $leftmenu==\'admintools\'',0,'2017-01-29 15:12:44'),(161088,'auguria',1,'','top','home',0,NULL,NULL,10,'/index.php?mainmenu=home&leftmenu=','','Home','',-1,'','','1',2,'2017-08-30 15:14:30'),(161089,'auguria',1,'societe|fournisseur','top','companies',0,NULL,NULL,20,'/societe/index.php?mainmenu=companies&leftmenu=','','ThirdParties','companies',-1,'','$user->rights->societe->lire || $user->rights->societe->contact->lire','( ! empty($conf->societe->enabled) && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))) || ! empty($conf->fournisseur->enabled)',2,'2017-08-30 15:14:30'),(161090,'auguria',1,'product|service','top','products',0,NULL,NULL,30,'/product/index.php?mainmenu=products&leftmenu=','','Products/Services','products',-1,'','$user->rights->produit->lire||$user->rights->service->lire','$conf->product->enabled || $conf->service->enabled',0,'2017-08-30 15:14:30'),(161092,'auguria',1,'propal|commande|fournisseur|contrat|ficheinter','top','commercial',0,NULL,NULL,40,'/comm/index.php?mainmenu=commercial&leftmenu=','','Commercial','commercial',-1,'','$user->rights->societe->lire || $user->rights->societe->contact->lire','$conf->propal->enabled || $conf->commande->enabled || $conf->supplier_order->enabled || $conf->contrat->enabled || $conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(161093,'auguria',1,'comptabilite|accounting|facture|don|tax|salaries|loan','top','accountancy',0,NULL,NULL,50,'/compta/index.php?mainmenu=accountancy&leftmenu=','','MenuFinancial','compta',-1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->plancompte->lire || $user->rights->facture->lire|| $user->rights->don->lire || $user->rights->tax->charges->lire || $user->rights->salaries->read || $user->rights->loan->read','$conf->comptabilite->enabled || $conf->accounting->enabled || $conf->facture->enabled || $conf->don->enabled || $conf->tax->enabled || $conf->salaries->enabled || $conf->supplier_invoice->enabled || $conf->loan->enabled',2,'2017-08-30 15:14:30'),(161094,'auguria',1,'projet','top','project',0,NULL,NULL,70,'/projet/index.php?mainmenu=project&leftmenu=','','Projects','projects',-1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(161095,'auguria',1,'mailing|export|import|opensurvey|resource','top','tools',0,NULL,NULL,90,'/core/tools.php?mainmenu=tools&leftmenu=','','Tools','other',-1,'','$user->rights->mailing->lire || $user->rights->export->lire || $user->rights->import->run || $user->rights->opensurvey->read || $user->rights->resource->read','$conf->mailing->enabled || $conf->export->enabled || $conf->import->enabled || $conf->opensurvey->enabled || $conf->resource->enabled',2,'2017-08-30 15:14:30'),(161101,'auguria',1,'banque|prelevement','top','bank',0,NULL,NULL,60,'/compta/bank/index.php?mainmenu=bank&leftmenu=bank','','MenuBankCash','banks',-1,'','$user->rights->banque->lire || $user->rights->prelevement->bons->lire','$conf->banque->enabled || $conf->prelevement->enabled',0,'2017-08-30 15:14:30'),(161102,'auguria',1,'hrm|holiday|deplacement|expensereport','top','hrm',0,NULL,NULL,80,'/hrm/index.php?mainmenu=hrm&leftmenu=','','HRM','holiday',-1,'','$user->rights->hrm->employee->read || $user->rights->holiday->write || $user->rights->deplacement->lire || $user->rights->expensereport->lire','$conf->hrm->enabled || $conf->holiday->enabled || $conf->deplacement->enabled || $conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(161177,'auguria',1,'','left','home',161088,NULL,NULL,0,'/index.php','','MyDashboard','',0,'','','1',2,'2017-08-30 15:14:30'),(161187,'auguria',1,'','left','home',161088,NULL,NULL,1,'/admin/index.php?leftmenu=setup','','Setup','admin',0,'setup','','$user->admin',2,'2017-08-30 15:14:30'),(161188,'auguria',1,'','left','home',161187,NULL,NULL,1,'/admin/company.php?leftmenu=setup','','MenuCompanySetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161189,'auguria',1,'','left','home',161187,NULL,NULL,4,'/admin/ihm.php?leftmenu=setup','','GUISetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161190,'auguria',1,'','left','home',161187,NULL,NULL,2,'/admin/modules.php?leftmenu=setup','','Modules','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161191,'auguria',1,'','left','home',161187,NULL,NULL,6,'/admin/boxes.php?leftmenu=setup','','Boxes','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161192,'auguria',1,'','left','home',161187,NULL,NULL,3,'/admin/menus.php?leftmenu=setup','','Menus','admin',1,'','','$leftmenu==\'setup\'',2,'2017-09-06 08:29:47'),(161193,'auguria',1,'','left','home',161187,NULL,NULL,7,'/admin/delais.php?leftmenu=setup','','Alerts','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161194,'auguria',1,'','left','home',161187,NULL,NULL,10,'/admin/pdf.php?leftmenu=setup','','PDF','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161195,'auguria',1,'','left','home',161187,NULL,NULL,8,'/admin/security_other.php?leftmenu=setup','','Security','admin',1,'','','$leftmenu==\'setup\'',2,'2017-09-06 08:29:36'),(161196,'auguria',1,'','left','home',161187,NULL,NULL,11,'/admin/mails.php?leftmenu=setup','','Emails','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161197,'auguria',1,'','left','home',161187,NULL,NULL,9,'/admin/limits.php?leftmenu=setup','','MenuLimits','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161198,'auguria',1,'','left','home',161187,NULL,NULL,13,'/admin/dict.php?leftmenu=setup','','Dictionary','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161199,'auguria',1,'','left','home',161187,NULL,NULL,14,'/admin/const.php?leftmenu=setup','','OtherSetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161200,'auguria',1,'','left','home',161187,NULL,NULL,12,'/admin/sms.php?leftmenu=setup','','SMS','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161201,'auguria',1,'','left','home',161187,NULL,NULL,4,'/admin/translation.php?leftmenu=setup','','Translation','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161288,'auguria',1,'','left','home',161387,NULL,NULL,0,'/admin/system/dolibarr.php?leftmenu=admintools','','InfoDolibarr','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161289,'auguria',1,'','left','home',161288,NULL,NULL,2,'/admin/system/modules.php?leftmenu=admintools','','Modules','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161290,'auguria',1,'','left','home',161288,NULL,NULL,3,'/admin/triggers.php?leftmenu=admintools','','Triggers','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161291,'auguria',1,'','left','home',161288,NULL,NULL,4,'/admin/system/filecheck.php?leftmenu=admintools','','FileCheck','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161292,'auguria',1,'','left','home',161387,NULL,NULL,1,'/admin/system/browser.php?leftmenu=admintools','','InfoBrowser','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161293,'auguria',1,'','left','home',161387,NULL,NULL,2,'/admin/system/os.php?leftmenu=admintools','','InfoOS','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161294,'auguria',1,'','left','home',161387,NULL,NULL,3,'/admin/system/web.php?leftmenu=admintools','','InfoWebServer','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161295,'auguria',1,'','left','home',161387,NULL,NULL,4,'/admin/system/phpinfo.php?leftmenu=admintools','','InfoPHP','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161297,'auguria',1,'','left','home',161387,NULL,NULL,5,'/admin/system/database.php?leftmenu=admintools','','InfoDatabase','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161387,'auguria',1,'','left','home',161088,NULL,NULL,2,'/admin/tools/index.php?leftmenu=admintools','','AdminTools','admin',0,'admintools','','$user->admin',2,'2017-08-30 15:14:30'),(161388,'auguria',1,'','left','home',161387,NULL,NULL,6,'/admin/tools/dolibarr_export.php?leftmenu=admintools','','Backup','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161389,'auguria',1,'','left','home',161387,NULL,NULL,7,'/admin/tools/dolibarr_import.php?leftmenu=admintools','','Restore','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161392,'auguria',1,'','left','home',161387,NULL,NULL,8,'/admin/tools/update.php?leftmenu=admintools','','MenuUpgrade','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161393,'auguria',1,'','left','home',161387,NULL,NULL,9,'/admin/tools/eaccelerator.php?leftmenu=admintools','','EAccelerator','admin',1,'','','$leftmenu==\"admintools\" && function_exists(\"eaccelerator_info\")',2,'2017-08-30 15:14:30'),(161394,'auguria',1,'','left','home',161387,NULL,NULL,10,'/admin/tools/listevents.php?leftmenu=admintools','','Audit','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161395,'auguria',1,'','left','home',161387,NULL,NULL,11,'/admin/tools/listsessions.php?leftmenu=admintools','','Sessions','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161396,'auguria',1,'','left','home',161387,NULL,NULL,12,'/admin/tools/purge.php?leftmenu=admintools','','Purge','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161398,'auguria',1,'','left','home',161387,NULL,NULL,14,'/admin/system/about.php?leftmenu=admintools','','ExternalResources','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161407,'auguria',1,'','left','home',161387,NULL,NULL,15,'/product/admin/product_tools.php?mainmenu=home&leftmenu=admintools','','ProductVatMassChange','products',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161487,'auguria',1,'','left','home',161088,NULL,NULL,4,'/user/home.php?leftmenu=users','','MenuUsersAndGroups','users',0,'users','','1',2,'2017-08-30 15:14:30'),(161488,'auguria',1,'','left','home',161487,NULL,NULL,0,'/user/index.php?leftmenu=users','','Users','users',1,'','$user->rights->user->user->lire || $user->admin','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161489,'auguria',1,'','left','home',161488,NULL,NULL,0,'/user/card.php?leftmenu=users&action=create','','NewUser','users',2,'','($user->rights->user->user->creer || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161490,'auguria',1,'','left','home',161487,NULL,NULL,1,'/user/group/index.php?leftmenu=users','','Groups','users',1,'','(($conf->global->MAIN_USE_ADVANCED_PERMS?$user->rights->user->group_advance->read:$user->rights->user->user->lire) || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161491,'auguria',1,'','left','home',161490,NULL,NULL,0,'/user/group/card.php?leftmenu=users&action=create','','NewGroup','users',2,'','(($conf->global->MAIN_USE_ADVANCED_PERMS?$user->rights->user->group_advance->write:$user->rights->user->user->creer) || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161587,'auguria',1,'','left','companies',161089,NULL,NULL,0,'/societe/index.php?leftmenu=thirdparties','','ThirdParty','companies',0,'thirdparties','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161588,'auguria',1,'','left','companies',161587,NULL,NULL,0,'/societe/card.php?action=create','','MenuNewThirdParty','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161589,'auguria',1,'','left','companies',161587,NULL,NULL,0,'/societe/list.php?action=create','','List','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161590,'auguria',1,'','left','companies',161587,NULL,NULL,5,'/societe/list.php?type=f&leftmenu=suppliers','','ListSuppliersShort','suppliers',1,'','$user->rights->societe->lire && $user->rights->fournisseur->lire','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161591,'auguria',1,'','left','companies',161590,NULL,NULL,0,'/societe/card.php?leftmenu=supplier&action=create&type=f','','NewSupplier','suppliers',2,'','$user->rights->societe->creer','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161593,'auguria',1,'','left','companies',161587,NULL,NULL,3,'/societe/list.php?type=p&leftmenu=prospects','','ListProspectsShort','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161594,'auguria',1,'','left','companies',161593,NULL,NULL,0,'/societe/card.php?leftmenu=prospects&action=create&type=p','','MenuNewProspect','companies',2,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161596,'auguria',1,'','left','companies',161587,NULL,NULL,4,'/societe/list.php?type=c&leftmenu=customers','','ListCustomersShort','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161597,'auguria',1,'','left','companies',161596,NULL,NULL,0,'/societe/card.php?leftmenu=customers&action=create&type=c','','MenuNewCustomer','companies',2,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161687,'auguria',1,'','left','companies',161089,NULL,NULL,1,'/contact/list.php?leftmenu=contacts','','ContactsAddresses','companies',0,'contacts','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161688,'auguria',1,'','left','companies',161687,NULL,NULL,0,'/contact/card.php?leftmenu=contacts&action=create','','NewContactAddress','companies',1,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161689,'auguria',1,'','left','companies',161687,NULL,NULL,1,'/contact/list.php?leftmenu=contacts','','List','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161691,'auguria',1,'','left','companies',161689,NULL,NULL,1,'/contact/list.php?leftmenu=contacts&type=p','','ThirdPartyProspects','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161692,'auguria',1,'','left','companies',161689,NULL,NULL,2,'/contact/list.php?leftmenu=contacts&type=c','','ThirdPartyCustomers','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161693,'auguria',1,'','left','companies',161689,NULL,NULL,3,'/contact/list.php?leftmenu=contacts&type=f','','ThirdPartySuppliers','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161694,'auguria',1,'','left','companies',161689,NULL,NULL,4,'/contact/list.php?leftmenu=contacts&type=o','','Others','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161737,'auguria',1,'','left','companies',161089,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=1','','SuppliersCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161738,'auguria',1,'','left','companies',161737,NULL,NULL,0,'/categories/card.php?action=create&type=1','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161747,'auguria',1,'','left','companies',161089,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=2','','CustomersProspectsCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->fournisseur->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161748,'auguria',1,'','left','companies',161747,NULL,NULL,0,'/categories/card.php?action=create&type=2','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->fournisseur->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161757,'auguria',1,'','left','companies',161089,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=4','','ContactCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161758,'auguria',1,'','left','companies',161757,NULL,NULL,0,'/categories/card.php?action=create&type=4','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(162187,'auguria',1,'','left','commercial',161092,NULL,NULL,4,'/comm/propal/index.php?leftmenu=propals','','Prop','propal',0,'propals','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162188,'auguria',1,'','left','commercial',162187,NULL,NULL,0,'/comm/propal/card.php?action=create&leftmenu=propals','','NewPropal','propal',1,'','$user->rights->propale->creer','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162189,'auguria',1,'','left','commercial',162187,NULL,NULL,1,'/comm/propal/list.php?leftmenu=propals','','List','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162190,'auguria',1,'','left','commercial',162189,NULL,NULL,2,'/comm/propal/list.php?leftmenu=propals&viewstatut=0','','PropalsDraft','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162191,'auguria',1,'','left','commercial',162189,NULL,NULL,3,'/comm/propal/list.php?leftmenu=propals&viewstatut=1','','PropalsOpened','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162192,'auguria',1,'','left','commercial',162189,NULL,NULL,4,'/comm/propal/list.php?leftmenu=propals&viewstatut=2','','PropalStatusSigned','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162193,'auguria',1,'','left','commercial',162189,NULL,NULL,5,'/comm/propal/list.php?leftmenu=propals&viewstatut=3','','PropalStatusNotSigned','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162194,'auguria',1,'','left','commercial',162189,NULL,NULL,6,'/comm/propal/list.php?leftmenu=propals&viewstatut=4','','PropalStatusBilled','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162197,'auguria',1,'','left','commercial',162187,NULL,NULL,4,'/comm/propal/stats/index.php?leftmenu=propals','','Statistics','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162287,'auguria',1,'','left','commercial',161092,NULL,NULL,5,'/commande/index.php?leftmenu=orders','','CustomersOrders','orders',0,'orders','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162288,'auguria',1,'','left','commercial',162287,NULL,NULL,0,'/commande/card.php?action=create&leftmenu=orders','','NewOrder','orders',1,'','$user->rights->commande->creer','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162289,'auguria',1,'','left','commercial',162287,NULL,NULL,1,'/commande/list.php?leftmenu=orders','','List','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162290,'auguria',1,'','left','commercial',162289,NULL,NULL,2,'/commande/list.php?leftmenu=orders&viewstatut=0','','StatusOrderDraftShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162291,'auguria',1,'','left','commercial',162289,NULL,NULL,3,'/commande/list.php?leftmenu=orders&viewstatut=1','','StatusOrderValidated','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162292,'auguria',1,'','left','commercial',162289,NULL,NULL,4,'/commande/list.php?leftmenu=orders&viewstatut=2','','StatusOrderOnProcessShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162293,'auguria',1,'','left','commercial',162289,NULL,NULL,5,'/commande/list.php?leftmenu=orders&viewstatut=3','','StatusOrderToBill','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162294,'auguria',1,'','left','commercial',162289,NULL,NULL,6,'/commande/list.php?leftmenu=orders&viewstatut=4','','StatusOrderProcessed','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162295,'auguria',1,'','left','commercial',162289,NULL,NULL,7,'/commande/list.php?leftmenu=orders&viewstatut=-1','','StatusOrderCanceledShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162296,'auguria',1,'','left','commercial',162287,NULL,NULL,4,'/commande/stats/index.php?leftmenu=orders','','Statistics','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162387,'auguria',1,'','left','commercial',161090,NULL,NULL,6,'/expedition/index.php?leftmenu=sendings','','Shipments','sendings',0,'sendings','$user->rights->expedition->lire','$conf->expedition->enabled',2,'2017-08-30 15:14:30'),(162388,'auguria',1,'','left','commercial',162387,NULL,NULL,0,'/expedition/card.php?action=create2&leftmenu=sendings','','NewSending','sendings',1,'','$user->rights->expedition->creer','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162389,'auguria',1,'','left','commercial',162387,NULL,NULL,1,'/expedition/list.php?leftmenu=sendings','','List','sendings',1,'','$user->rights->expedition->lire','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162390,'auguria',1,'','left','commercial',162387,NULL,NULL,2,'/expedition/stats/index.php?leftmenu=sendings','','Statistics','sendings',1,'','$user->rights->expedition->lire','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162487,'auguria',1,'','left','commercial',161092,NULL,NULL,7,'/contrat/index.php?leftmenu=contracts','','Contracts','contracts',0,'contracts','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162488,'auguria',1,'','left','commercial',162487,NULL,NULL,0,'/contrat/card.php?&action=create&leftmenu=contracts','','NewContract','contracts',1,'','$user->rights->contrat->creer','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162489,'auguria',1,'','left','commercial',162487,NULL,NULL,1,'/contrat/list.php?leftmenu=contracts','','List','contracts',1,'','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162490,'auguria',1,'','left','commercial',162487,NULL,NULL,2,'/contrat/services.php?leftmenu=contracts','','MenuServices','contracts',1,'','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162491,'auguria',1,'','left','commercial',162490,NULL,NULL,0,'/contrat/services.php?leftmenu=contracts&mode=0','','MenuInactiveServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162492,'auguria',1,'','left','commercial',162490,NULL,NULL,1,'/contrat/services.php?leftmenu=contracts&mode=4','','MenuRunningServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162493,'auguria',1,'','left','commercial',162490,NULL,NULL,2,'/contrat/services.php?leftmenu=contracts&mode=4&filter=expired','','MenuExpiredServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162494,'auguria',1,'','left','commercial',162490,NULL,NULL,3,'/contrat/services.php?leftmenu=contracts&mode=5','','MenuClosedServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162587,'auguria',1,'','left','commercial',161092,NULL,NULL,8,'/fichinter/list.php?leftmenu=ficheinter','','Interventions','interventions',0,'ficheinter','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162588,'auguria',1,'','left','commercial',162587,NULL,NULL,0,'/fichinter/card.php?action=create&leftmenu=ficheinter','','NewIntervention','interventions',1,'','$user->rights->ficheinter->creer','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162589,'auguria',1,'','left','commercial',162587,NULL,NULL,1,'/fichinter/list.php?leftmenu=ficheinter','','List','interventions',1,'','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162590,'auguria',1,'','left','commercial',162587,NULL,NULL,2,'/fichinter/stats/index.php?leftmenu=ficheinter','','Statistics','interventions',1,'','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162687,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/fourn/facture/list.php?leftmenu=suppliers_bills','','BillsSuppliers','bills',0,'supplier_bills','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162688,'auguria',1,'','left','accountancy',162687,NULL,NULL,0,'/fourn/facture/card.php?action=create&leftmenu=suppliers_bills','','NewBill','bills',1,'','$user->rights->fournisseur->facture->creer','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162689,'auguria',1,'','left','accountancy',162687,NULL,NULL,1,'/fourn/facture/list.php?leftmenu=suppliers_bills','','List','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162690,'auguria',1,'','left','accountancy',162687,NULL,NULL,2,'/fourn/facture/paiement.php?leftmenu=suppliers_bills','','Payments','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162691,'auguria',1,'','left','accountancy',162687,NULL,NULL,8,'/compta/facture/stats/index.php?leftmenu=customers_bills&mode=supplier','','Statistics','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162692,'auguria',1,'','left','accountancy',162690,NULL,NULL,1,'/fourn/facture/rapport.php?leftmenu=suppliers_bills','','Reporting','bills',2,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162787,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/compta/facture/list.php?leftmenu=customers_bills','','BillsCustomers','bills',0,'customer_bills','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162788,'auguria',1,'','left','accountancy',162787,NULL,NULL,3,'/compta/facture/card.php?action=create&leftmenu=customers_bills','','NewBill','bills',1,'','$user->rights->facture->creer','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162789,'auguria',1,'','left','accountancy',162787,NULL,NULL,5,'/compta/facture/fiche-rec.php?leftmenu=customers_bills','','ListOfTemplates','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162791,'auguria',1,'','left','accountancy',162787,NULL,NULL,6,'/compta/paiement/list.php?leftmenu=customers_bills','','Payments','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162792,'auguria',1,'','left','accountancy',162787,NULL,NULL,4,'/compta/facture/list.php?leftmenu=customers_bills','','List','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162797,'auguria',1,'','left','accountancy',162791,NULL,NULL,1,'/compta/paiement/rapport.php?leftmenu=customers_bills','','Reportings','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162798,'auguria',1,'','left','accountancy',161101,NULL,NULL,9,'/compta/paiement/cheque/index.php?leftmenu=checks&mainmenu=bank','','MenuChequeDeposits','bills',0,'checks','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162799,'auguria',1,'','left','accountancy',162798,NULL,NULL,0,'/compta/paiement/cheque/card.php?leftmenu=checks&action=new','','NewCheckDeposit','compta',1,'','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162800,'auguria',1,'','left','accountancy',162798,NULL,NULL,1,'/compta/paiement/cheque/list.php?leftmenu=checks','','List','bills',1,'','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162801,'auguria',1,'','left','accountancy',162787,NULL,NULL,8,'/compta/facture/stats/index.php?leftmenu=customers_bills','','Statistics','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162807,'auguria',1,'','left','accountancy',162792,NULL,NULL,1,'/compta/facture/list.php?leftmenu=customers_bills&search_status=0','','BillShortStatusDraft','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162808,'auguria',1,'','left','accountancy',162792,NULL,NULL,2,'/compta/facture/list.php?leftmenu=customers_bills&search_status=1','','BillShortStatusNotPaid','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162809,'auguria',1,'','left','accountancy',162792,NULL,NULL,3,'/compta/facture/list.php?leftmenu=customers_bills&search_status=2','','BillShortStatusPaid','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162810,'auguria',1,'','left','accountancy',162792,NULL,NULL,4,'/compta/facture/list.php?leftmenu=customers_bills&search_status=3','','BillShortStatusCanceled','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162987,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/commande/list.php?leftmenu=orders&viewstatut=3','','MenuOrdersToBill','orders',0,'orders','$user->rights->commande->lire','$conf->commande->enabled',0,'2017-08-30 15:14:30'),(163087,'auguria',1,'','left','accountancy',161093,NULL,NULL,4,'/don/index.php?leftmenu=donations&mainmenu=accountancy','','Donations','donations',0,'donations','$user->rights->don->lire','$conf->don->enabled',2,'2017-08-30 15:14:30'),(163088,'auguria',1,'','left','accountancy',163087,NULL,NULL,0,'/don/card.php?leftmenu=donations&mainmenu=accountancy&action=create','','NewDonation','donations',1,'','$user->rights->don->creer','$conf->don->enabled && $leftmenu==\"donations\"',2,'2017-08-30 15:14:30'),(163089,'auguria',1,'','left','accountancy',163087,NULL,NULL,1,'/don/list.php?leftmenu=donations&mainmenu=accountancy','','List','donations',1,'','$user->rights->don->lire','$conf->don->enabled && $leftmenu==\"donations\"',2,'2017-08-30 15:14:30'),(163187,'auguria',1,'','left','accountancy',161102,NULL,NULL,5,'/compta/deplacement/index.php?leftmenu=tripsandexpenses','','TripsAndExpenses','trips',0,'tripsandexpenses','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163188,'auguria',1,'','left','accountancy',163187,NULL,NULL,1,'/compta/deplacement/card.php?action=create&leftmenu=tripsandexpenses','','New','trips',1,'','$user->rights->deplacement->creer','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163189,'auguria',1,'','left','accountancy',163187,NULL,NULL,2,'/compta/deplacement/list.php?leftmenu=tripsandexpenses','','List','trips',1,'','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163190,'auguria',1,'','left','accountancy',163187,NULL,NULL,2,'/compta/deplacement/stats/index.php?leftmenu=tripsandexpenses','','Statistics','trips',1,'','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163287,'auguria',1,'','left','accountancy',161093,NULL,NULL,6,'/compta/charges/index.php?leftmenu=tax&mainmenu=accountancy','','MenuSpecialExpenses','compta',0,'tax','(! empty($conf->tax->enabled) && $user->rights->tax->charges->lire) || (! empty($conf->salaries->enabled) && $user->rights->salaries->read)','$conf->tax->enabled || $conf->salaries->enabled',0,'2017-08-30 15:14:30'),(163297,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/compta/salaries/index.php?leftmenu=tax_salary&mainmenu=accountancy','','Salaries','salaries',1,'tax_sal','$user->rights->salaries->payment->read','$conf->salaries->enabled',0,'2017-08-30 15:14:30'),(163298,'auguria',1,'','left','accountancy',163297,NULL,NULL,2,'/compta/salaries/card.php?leftmenu=tax_salary&action=create','','NewPayment','companies',2,'','$user->rights->salaries->payment->write','$conf->salaries->enabled && $leftmenu==\"tax_salary\"',0,'2017-08-30 15:14:30'),(163299,'auguria',1,'','left','accountancy',163297,NULL,NULL,3,'/compta/salaries/index.php?leftmenu=tax_salary','','Payments','companies',2,'','$user->rights->salaries->payment->read','$conf->salaries->enabled && $leftmenu==\"tax_salary\"',0,'2017-08-30 15:14:30'),(163307,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/loan/index.php?leftmenu=tax_loan&mainmenu=accountancy','','Loans','loan',1,'tax_loan','$user->rights->loan->read','$conf->loan->enabled',0,'2017-08-30 15:14:30'),(163308,'auguria',1,'','left','accountancy',163307,NULL,NULL,2,'/loan/card.php?leftmenu=tax_loan&action=create','','NewLoan','loan',2,'','$user->rights->loan->write','$conf->loan->enabled && $leftmenu==\"tax_loan\"',0,'2017-08-30 15:14:30'),(163310,'auguria',1,'','left','accountancy',163307,NULL,NULL,4,'/loan/calc.php?leftmenu=tax_loan','','Calculator','companies',2,'','$user->rights->loan->calc','$conf->loan->enabled && $leftmenu==\"tax_loan\" && ! empty($conf->global->LOAN_SHOW_CALCULATOR)',0,'2017-08-30 15:14:30'),(163337,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/compta/sociales/index.php?leftmenu=tax_social','','SocialContributions','',1,'tax_social','$user->rights->tax->charges->lire','$conf->tax->enabled',0,'2017-08-30 15:14:30'),(163338,'auguria',1,'','left','accountancy',163337,NULL,NULL,2,'/compta/sociales/card.php?leftmenu=tax_social&action=create','','MenuNewSocialContribution','',2,'','$user->rights->tax->charges->creer','$conf->tax->enabled && $leftmenu==\"tax_social\"',0,'2017-08-30 15:14:30'),(163339,'auguria',1,'','left','accountancy',163337,NULL,NULL,3,'/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=accountancy&mode=sconly','','Payments','',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && $leftmenu==\"tax_social\"',0,'2017-08-30 15:14:30'),(163387,'auguria',1,'','left','accountancy',163287,NULL,NULL,7,'/compta/tva/index.php?leftmenu=tax_vat&mainmenu=accountancy','','VAT','companies',1,'tax_vat','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS)',0,'2017-08-30 15:14:30'),(163388,'auguria',1,'','left','accountancy',163387,NULL,NULL,0,'/compta/tva/card.php?leftmenu=tax_vat&action=create','','New','companies',2,'','$user->rights->tax->charges->creer','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163389,'auguria',1,'','left','accountancy',163387,NULL,NULL,1,'/compta/tva/reglement.php?leftmenu=tax_vat','','List','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163390,'auguria',1,'','left','accountancy',163387,NULL,NULL,2,'/compta/tva/clients.php?leftmenu=tax_vat','','ReportByCustomers','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163391,'auguria',1,'','left','accountancy',163387,NULL,NULL,3,'/compta/tva/quadri_detail.php?leftmenu=tax_vat','','ReportByQuarter','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163487,'auguria',1,'','left','accountancy',161093,NULL,NULL,7,'/accountancy/index.php?leftmenu=accountancy','','MenuAccountancy','accountancy',0,'accounting','! empty($conf->accounting->enabled) || $user->rights->accounting->bind->write || $user->rights->accounting->bind->write || $user->rights->compta->resultat->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163488,'auguria',1,'','left','accountancy',163487,NULL,NULL,2,'/accountancy/customer/index.php?leftmenu=dispatch_customer','','CustomersVentilation','accountancy',1,'dispatch_customer','$user->rights->accounting->bind->write','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163489,'auguria',1,'','left','accountancy',163488,NULL,NULL,3,'/accountancy/customer/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $leftmenu==\"dispatch_customer\"',0,'2017-08-30 15:14:30'),(163490,'auguria',1,'','left','accountancy',163488,NULL,NULL,4,'/accountancy/customer/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $leftmenu==\"dispatch_customer\"',0,'2017-08-30 15:14:30'),(163497,'auguria',1,'','left','accountancy',163487,NULL,NULL,5,'/accountancy/supplier/index.php?leftmenu=dispatch_supplier','','SuppliersVentilation','accountancy',1,'ventil_supplier','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled',0,'2017-08-30 15:14:30'),(163498,'auguria',1,'','left','accountancy',163497,NULL,NULL,6,'/accountancy/supplier/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu==\"dispatch_supplier\"',0,'2017-08-30 15:14:30'),(163499,'auguria',1,'','left','accountancy',163497,NULL,NULL,7,'/accountancy/supplier/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu==\"dispatch_supplier\"',0,'2017-08-30 15:14:30'),(163507,'auguria',1,'','left','accountancy',163487,NULL,NULL,5,'/accountancy/expensereport/index.php?leftmenu=dispatch_expensereport','','ExpenseReportsVentilation','accountancy',1,'ventil_expensereport','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(163508,'auguria',1,'','left','accountancy',163507,NULL,NULL,6,'/accountancy/expensereport/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"dispatch_expensereport\"',0,'2017-08-30 15:14:30'),(163509,'auguria',1,'','left','accountancy',163507,NULL,NULL,7,'/accountancy/expensereport/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"dispatch_expensereport\"',0,'2017-08-30 15:14:30'),(163517,'auguria',1,'','left','accountancy',163487,NULL,NULL,15,'/accountancy/bookkeeping/list.php','','Bookkeeping','accountancy',1,'bookkeeping','$user->rights->accounting->mouvements->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163522,'auguria',1,'','left','accountancy',163487,NULL,NULL,16,'/accountancy/bookkeeping/balance.php','','AccountBalance','accountancy',1,'balance','$user->rights->accounting->mouvements->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163527,'auguria',1,'','left','accountancy',163487,NULL,NULL,17,'/accountancy/report/result.php?mainmenu=accountancy&leftmenu=accountancy','','Reportings','main',1,'report','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163528,'auguria',1,'','left','accountancy',163527,NULL,NULL,19,'/compta/resultat/index.php?mainmenu=accountancy&leftmenu=accountancy','','ReportInOut','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163529,'auguria',1,'','left','accountancy',163528,NULL,NULL,18,'/accountancy/report/result.php?mainmenu=accountancy&leftmenu=accountancy','','ByAccounts','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163530,'auguria',1,'','left','accountancy',163528,NULL,NULL,20,'/compta/resultat/clientfourn.php?mainmenu=accountancy&leftmenu=accountancy','','ByCompanies','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163531,'auguria',1,'','left','accountancy',163527,NULL,NULL,21,'/compta/stats/index.php?mainmenu=accountancy&leftmenu=accountancy','','ReportTurnover','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163532,'auguria',1,'','left','accountancy',163531,NULL,NULL,22,'/compta/stats/casoc.php?mainmenu=accountancy&leftmenu=accountancy','','ByCompanies','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163533,'auguria',1,'','left','accountancy',163531,NULL,NULL,23,'/compta/stats/cabyuser.php?mainmenu=accountancy&leftmenu=accountancy','','ByUsers','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163534,'auguria',1,'','left','accountancy',163531,NULL,NULL,24,'/compta/stats/cabyprodserv.php?mainmenu=accountancy&leftmenu=accountancy','','ByProductsAndServices','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163537,'auguria',1,'','left','accountancy',163538,NULL,NULL,80,'/accountancy/admin/fiscalyear.php?mainmenu=accountancy&leftmenu=accountancy_admin','','FiscalPeriod','admin',1,'accountancy_admin_period','','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\" && $conf->global->MAIN_FEATURES_LEVEL > 0',2,'2017-08-30 15:14:30'),(163538,'auguria',1,'','left','accountancy',163487,NULL,NULL,1,'/accountancy/index.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Setup','accountancy',1,'accountancy_admin','$user->rights->accounting->chartofaccount','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163541,'auguria',1,'','left','accountancy',163538,NULL,NULL,10,'/accountancy/admin/journals_list.php?id=35&mainmenu=accountancy&leftmenu=accountancy_admin','','AccountingJournals','accountancy',2,'accountancy_admin_journal','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163542,'auguria',1,'','left','accountancy',163538,NULL,NULL,20,'/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Pcg_version','accountancy',2,'accountancy_admin_chartmodel','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163543,'auguria',1,'','left','accountancy',163538,NULL,NULL,30,'/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Chartofaccounts','accountancy',2,'accountancy_admin_chart','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163544,'auguria',1,'','left','accountancy',163538,NULL,NULL,40,'/accountancy/admin/categories_list.php?id=32&mainmenu=accountancy&leftmenu=accountancy_admin','','AccountingCategory','accountancy',2,'accountancy_admin_chart_group','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163545,'auguria',1,'','left','accountancy',163538,NULL,NULL,50,'/accountancy/admin/defaultaccounts.php?mainmenu=accountancy&leftmenu=accountancy_admin','','MenuDefaultAccounts','accountancy',2,'accountancy_admin_default','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163546,'auguria',1,'','left','accountancy',163538,NULL,NULL,60,'/admin/dict.php?id=10&from=accountancy&search_country_id=__MYCOUNTRYID__&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuVatAccounts','accountancy',2,'accountancy_admin_vat','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163547,'auguria',1,'','left','accountancy',163538,NULL,NULL,70,'/admin/dict.php?id=7&from=accountancy&search_country_id=__MYCOUNTRYID__&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuTaxAccounts','accountancy',2,'accountancy_admin_tax','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163548,'auguria',1,'','left','accountancy',163538,NULL,NULL,80,'/admin/dict.php?id=17&from=accountancy&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuExpenseReportAccounts','accountancy',2,'accountancy_admin_expensereport','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163549,'auguria',1,'','left','accountancy',163538,NULL,NULL,90,'/accountancy/admin/productaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin','','MenuProductsAccounts','accountancy',2,'accountancy_admin_product','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163587,'auguria',1,'','left','accountancy',161101,NULL,NULL,9,'/compta/prelevement/index.php?leftmenu=withdraw&mainmenu=bank','','StandingOrders','withdrawals',0,'withdraw','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled',2,'2017-08-30 15:14:30'),(163589,'auguria',1,'','left','accountancy',163587,NULL,NULL,0,'/compta/prelevement/create.php?leftmenu=withdraw','','NewStandingOrder','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163590,'auguria',1,'','left','accountancy',163587,NULL,NULL,2,'/compta/prelevement/bons.php?leftmenu=withdraw','','WithdrawalsReceipts','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163591,'auguria',1,'','left','accountancy',163587,NULL,NULL,3,'/compta/prelevement/list.php?leftmenu=withdraw','','WithdrawalsLines','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163593,'auguria',1,'','left','accountancy',163587,NULL,NULL,5,'/compta/prelevement/rejets.php?leftmenu=withdraw','','Rejects','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163594,'auguria',1,'','left','accountancy',163587,NULL,NULL,6,'/compta/prelevement/stats.php?leftmenu=withdraw','','Statistics','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163687,'auguria',1,'','left','accountancy',161101,NULL,NULL,1,'/compta/bank/index.php?leftmenu=bank&mainmenu=bank','','MenuBankCash','banks',0,'bank','$user->rights->banque->lire','$conf->banque->enabled',0,'2017-08-30 15:14:30'),(163688,'auguria',1,'','left','accountancy',163687,NULL,NULL,0,'/compta/bank/card.php?action=create&leftmenu=bank','','MenuNewFinancialAccount','banks',1,'','$user->rights->banque->configurer','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163690,'auguria',1,'','left','accountancy',163687,NULL,NULL,2,'/compta/bank/bankentries.php?leftmenu=bank','','ListTransactions','banks',1,'','$user->rights->banque->lire','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163691,'auguria',1,'','left','accountancy',163687,NULL,NULL,3,'/compta/bank/budget.php?leftmenu=bank','','ListTransactionsByCategory','banks',1,'','$user->rights->banque->lire','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163693,'auguria',1,'','left','accountancy',163687,NULL,NULL,5,'/compta/bank/transfer.php?leftmenu=bank','','BankTransfers','banks',1,'','$user->rights->banque->transfer','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163737,'auguria',1,'','left','accountancy',161101,NULL,NULL,4,'/categories/index.php?leftmenu=bank&type=5','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(163738,'auguria',1,'','left','accountancy',163737,NULL,NULL,0,'/categories/card.php?leftmenu=bank&action=create&type=5','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(163787,'auguria',1,'','left','accountancy',161093,NULL,NULL,11,'/compta/resultat/index.php?leftmenu=ca&mainmenu=accountancy','','Reportings','main',0,'ca','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled',0,'2017-08-30 15:14:30'),(163792,'auguria',1,'','left','accountancy',163487,NULL,NULL,1,'','','Journalization','main',1,'','$user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163793,'auguria',1,'','left','accountancy',163792,NULL,NULL,4,'/accountancy/journal/sellsjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=1','','SellsJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163794,'auguria',1,'','left','accountancy',163792,NULL,NULL,1,'/accountancy/journal/bankjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=3','','BankJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163795,'auguria',1,'','left','accountancy',163792,NULL,NULL,2,'/accountancy/journal/expensereportsjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=6','','ExpenseReportJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163796,'auguria',1,'','left','accountancy',163792,NULL,NULL,3,'/accountancy/journal/purchasesjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=2','','PurchasesJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163798,'auguria',1,'','left','accountancy',163787,NULL,NULL,0,'/compta/resultat/index.php?leftmenu=ca','','ReportInOut','main',1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163799,'auguria',1,'','left','accountancy',163788,NULL,NULL,0,'/compta/resultat/clientfourn.php?leftmenu=ca','','ByCompanies','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163800,'auguria',1,'','left','accountancy',163787,NULL,NULL,1,'/compta/stats/index.php?leftmenu=ca','','ReportTurnover','main',1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163801,'auguria',1,'','left','accountancy',163790,NULL,NULL,0,'/compta/stats/casoc.php?leftmenu=ca','','ByCompanies','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163802,'auguria',1,'','left','accountancy',163790,NULL,NULL,1,'/compta/stats/cabyuser.php?leftmenu=ca','','ByUsers','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163803,'auguria',1,'','left','accountancy',163790,NULL,NULL,1,'/compta/stats/cabyprodserv.php?leftmenu=ca','','ByProductsAndServices','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163887,'auguria',1,'','left','products',161090,NULL,NULL,0,'/product/index.php?leftmenu=product&type=0','','Products','products',0,'product','$user->rights->produit->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163888,'auguria',1,'','left','products',163887,NULL,NULL,0,'/product/card.php?leftmenu=product&action=create&type=0','','NewProduct','products',1,'','$user->rights->produit->creer','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163889,'auguria',1,'','left','products',163887,NULL,NULL,1,'/product/list.php?leftmenu=product&type=0','','List','products',1,'','$user->rights->produit->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163890,'auguria',1,'','left','products',163887,NULL,NULL,4,'/product/reassort.php?type=0','','Stocks','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163891,'auguria',1,'','left','products',163887,NULL,NULL,7,'/product/stats/card.php?id=all&leftmenu=stats&type=0','','Statistics','main',1,'','$user->rights->produit->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(163892,'auguria',1,'','left','products',163887,NULL,NULL,5,'/product/reassortlot.php?type=0','','StocksByLotSerial','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->productbatch->enabled',2,'2017-08-30 15:14:30'),(163893,'auguria',1,'','left','products',163887,NULL,NULL,6,'/product/stock/productlot_list.php','','LotSerial','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->productbatch->enabled',2,'2017-08-30 15:14:30'),(163987,'auguria',1,'','left','products',161090,NULL,NULL,1,'/product/index.php?leftmenu=service&type=1','','Services','products',0,'service','$user->rights->service->lire','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163988,'auguria',1,'','left','products',163987,NULL,NULL,0,'/product/card.php?leftmenu=service&action=create&type=1','','NewService','products',1,'','$user->rights->service->creer','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163989,'auguria',1,'','left','products',163987,NULL,NULL,1,'/product/list.php?leftmenu=service&type=1','','List','products',1,'','$user->rights->service->lire','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163990,'auguria',1,'','left','products',163987,NULL,NULL,5,'/product/stats/card.php?id=all&leftmenu=stats&type=1','','Statistics','main',1,'','$user->rights->service->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(164187,'auguria',1,'','left','products',161090,NULL,NULL,3,'/product/stock/index.php?leftmenu=stock','','Stock','stocks',0,'stock','$user->rights->stock->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164188,'auguria',1,'','left','products',164187,NULL,NULL,0,'/product/stock/card.php?action=create','','MenuNewWarehouse','stocks',1,'','$user->rights->stock->creer','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164189,'auguria',1,'','left','products',164187,NULL,NULL,1,'/product/stock/list.php','','List','stocks',1,'','$user->rights->stock->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164191,'auguria',1,'','left','products',164187,NULL,NULL,3,'/product/stock/mouvement.php','','Movements','stocks',1,'','$user->rights->stock->mouvement->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164192,'auguria',1,'','left','products',164187,NULL,NULL,4,'/product/stock/replenish.php','','Replenishments','stocks',1,'','$user->rights->stock->mouvement->creer && $user->rights->fournisseur->lire','$conf->stock->enabled && $conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(164193,'auguria',1,'','left','products',164187,NULL,NULL,5,'/product/stock/massstockmove.php','','MassStockTransferShort','stocks',1,'','$user->rights->stock->mouvement->creer','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164287,'auguria',1,'','left','products',161090,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=0','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164288,'auguria',1,'','left','products',164287,NULL,NULL,0,'/categories/card.php?action=create&type=0','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164487,'auguria',1,'','left','project',161094,NULL,NULL,3,'/projet/activity/perweek.php?leftmenu=projects','','NewTimeSpent','projects',0,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164687,'auguria',1,'','left','project',161094,NULL,NULL,0,'/projet/index.php?leftmenu=projects','','Projects','projects',0,'projects','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164688,'auguria',1,'','left','project',164687,NULL,NULL,1,'/projet/card.php?leftmenu=projects&action=create','','NewProject','projects',1,'','$user->rights->projet->creer','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164689,'auguria',1,'','left','project',164687,NULL,NULL,2,'/projet/list.php?leftmenu=projects','','List','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164690,'auguria',1,'','left','project',164687,NULL,NULL,3,'/projet/stats/index.php?leftmenu=projects','','Statistics','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164787,'auguria',1,'','left','project',161094,NULL,NULL,0,'/projet/activity/index.php?leftmenu=projects','','Activities','projects',0,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164788,'auguria',1,'','left','project',164787,NULL,NULL,1,'/projet/tasks.php?leftmenu=projects&action=create','','NewTask','projects',1,'','$user->rights->projet->creer','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164789,'auguria',1,'','left','project',164787,NULL,NULL,2,'/projet/tasks/list.php?leftmenu=projects','','List','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164791,'auguria',1,'','left','project',164787,NULL,NULL,4,'/projet/tasks/stats/index.php?leftmenu=projects','','Statistics','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164891,'auguria',1,'','left','project',161094,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=6','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164892,'auguria',1,'','left','project',164891,NULL,NULL,0,'/categories/card.php?action=create&type=6','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164987,'auguria',1,'','left','tools',161095,NULL,NULL,0,'/comm/mailing/index.php?leftmenu=mailing','','EMailings','mails',0,'mailing','$user->rights->mailing->lire','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(164988,'auguria',1,'','left','tools',164987,NULL,NULL,0,'/comm/mailing/card.php?leftmenu=mailing&action=create','','NewMailing','mails',1,'','$user->rights->mailing->creer','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(164989,'auguria',1,'','left','tools',164987,NULL,NULL,1,'/comm/mailing/list.php?leftmenu=mailing','','List','mails',1,'','$user->rights->mailing->lire','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(165187,'auguria',1,'','left','tools',161095,NULL,NULL,2,'/exports/index.php?leftmenu=export','','FormatedExport','exports',0,'export','$user->rights->export->lire','$conf->export->enabled',2,'2017-08-30 15:14:30'),(165188,'auguria',1,'','left','tools',165187,NULL,NULL,0,'/exports/export.php?leftmenu=export','','NewExport','exports',1,'','$user->rights->export->creer','$conf->export->enabled',2,'2017-08-30 15:14:30'),(165217,'auguria',1,'','left','tools',161095,NULL,NULL,2,'/imports/index.php?leftmenu=import','','FormatedImport','exports',0,'import','$user->rights->import->run','$conf->import->enabled',2,'2017-08-30 15:14:30'),(165218,'auguria',1,'','left','tools',165217,NULL,NULL,0,'/imports/import.php?leftmenu=import','','NewImport','exports',1,'','$user->rights->import->run','$conf->import->enabled',2,'2017-08-30 15:14:30'),(165287,'auguria',1,'','left','members',161100,NULL,NULL,0,'/adherents/index.php?leftmenu=members&mainmenu=members','','Members','members',0,'members','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165288,'auguria',1,'','left','members',165287,NULL,NULL,0,'/adherents/card.php?leftmenu=members&action=create','','NewMember','members',1,'','$user->rights->adherent->creer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165289,'auguria',1,'','left','members',165287,NULL,NULL,1,'/adherents/list.php','','List','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165290,'auguria',1,'','left','members',165289,NULL,NULL,2,'/adherents/list.php?leftmenu=members&statut=-1','','MenuMembersToValidate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165291,'auguria',1,'','left','members',165289,NULL,NULL,3,'/adherents/list.php?leftmenu=members&statut=1','','MenuMembersValidated','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165292,'auguria',1,'','left','members',165289,NULL,NULL,4,'/adherents/list.php?leftmenu=members&statut=1&filter=outofdate','','MenuMembersNotUpToDate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165293,'auguria',1,'','left','members',165289,NULL,NULL,5,'/adherents/list.php?leftmenu=members&statut=1&filter=uptodate','','MenuMembersUpToDate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165294,'auguria',1,'','left','members',165289,NULL,NULL,6,'/adherents/list.php?leftmenu=members&statut=0','','MenuMembersResiliated','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165295,'auguria',1,'','left','members',165287,NULL,NULL,7,'/adherents/stats/geo.php?leftmenu=members&mode=memberbycountry','','MenuMembersStats','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165387,'auguria',1,'','left','members',161100,NULL,NULL,1,'/adherents/index.php?leftmenu=members&mainmenu=members','','Subscriptions','compta',0,'','$user->rights->adherent->cotisation->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165388,'auguria',1,'','left','members',165387,NULL,NULL,0,'/adherents/list.php?statut=-1&leftmenu=accountancy&mainmenu=members','','NewSubscription','compta',1,'','$user->rights->adherent->cotisation->creer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165389,'auguria',1,'','left','members',165387,NULL,NULL,1,'/adherents/subscription/list.php?leftmenu=members','','List','compta',1,'','$user->rights->adherent->cotisation->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165390,'auguria',1,'','left','members',165387,NULL,NULL,7,'/adherents/stats/index.php?leftmenu=members','','MenuMembersStats','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165589,'auguria',1,'','left','members',165287,NULL,NULL,9,'/adherents/htpasswd.php?leftmenu=export','','Filehtpasswd','members',1,'','$user->rights->adherent->export','! empty($conf->global->MEMBER_LINK_TO_HTPASSWDFILE) && $conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165590,'auguria',1,'','left','members',165287,NULL,NULL,10,'/adherents/cartes/carte.php?leftmenu=export','','MembersCards','members',1,'','$user->rights->adherent->export','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165687,'auguria',1,'','left','hrm',161102,NULL,NULL,1,'/user/index.php?leftmenu=hrm&mode=employee','','Employees','hrm',0,'hrm','$user->rights->hrm->employee->read','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165688,'auguria',1,'','left','hrm',165687,NULL,NULL,1,'/user/card.php?action=create&employee=1','','NewEmployee','hrm',1,'','$user->rights->hrm->employee->write','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165689,'auguria',1,'','left','hrm',165687,NULL,NULL,2,'/user/index.php?$leftmenu=hrm&mode=employee&contextpage=employeelist','','List','hrm',1,'','$user->rights->hrm->employee->read','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165787,'auguria',1,'','left','members',161100,NULL,NULL,5,'/adherents/type.php?leftmenu=setup&mainmenu=members','','MembersTypes','members',0,'setup','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165788,'auguria',1,'','left','members',165787,NULL,NULL,0,'/adherents/type.php?leftmenu=setup&mainmenu=members&action=create','','New','members',1,'','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165789,'auguria',1,'','left','members',165787,NULL,NULL,1,'/adherents/type.php?leftmenu=setup&mainmenu=members','','List','members',1,'','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(166087,'auguria',1,'','left','hrm',161102,NULL,NULL,1,'/holiday/list.php?&leftmenu=hrm','','CPTitreMenu','holiday',0,'hrm','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166088,'auguria',1,'','left','hrm',166087,NULL,NULL,1,'/holiday/card.php?&action=request','','MenuAddCP','holiday',1,'','$user->rights->holiday->write','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166089,'auguria',1,'','left','hrm',166087,NULL,NULL,1,'/holiday/list.php?&leftmenu=hrm','','List','holiday',1,'','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166090,'auguria',1,'','left','hrm',166089,NULL,NULL,1,'/holiday/list.php?select_statut=2&leftmenu=hrm','','ListToApprove','trips',2,'','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166091,'auguria',1,'','left','hrm',166087,NULL,NULL,2,'/holiday/define_holiday.php?&action=request','','MenuConfCP','holiday',1,'','$user->rights->holiday->define_holiday','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166092,'auguria',1,'','left','hrm',166087,NULL,NULL,3,'/holiday/view_log.php?&action=request','','MenuLogCP','holiday',1,'','$user->rights->holiday->define_holiday','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166187,'auguria',1,'','left','commercial',161092,NULL,NULL,6,'/fourn/commande/index.php?leftmenu=orders_suppliers','','SuppliersOrders','orders',0,'orders_suppliers','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166188,'auguria',1,'','left','commercial',166187,NULL,NULL,0,'/fourn/commande/card.php?action=create&leftmenu=orders_suppliers','','NewOrder','orders',1,'','$user->rights->fournisseur->commande->creer','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166189,'auguria',1,'','left','commercial',166187,NULL,NULL,1,'/fourn/commande/list.php?leftmenu=orders_suppliers&viewstatut=0','','List','orders',1,'','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166195,'auguria',1,'','left','commercial',166187,NULL,NULL,7,'/commande/stats/index.php?leftmenu=orders_suppliers&mode=supplier','','Statistics','orders',1,'','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166287,'auguria',1,'','left','members',161100,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=3','','MembersCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->adherent->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(166288,'auguria',1,'','left','members',166287,NULL,NULL,0,'/categories/card.php?action=create&type=3','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->adherent->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(166387,'auguria',1,'','left','hrm',161102,NULL,NULL,5,'/expensereport/index.php?leftmenu=expensereport','','TripsAndExpenses','trips',0,'expensereport','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166388,'auguria',1,'','left','hrm',166387,NULL,NULL,1,'/expensereport/card.php?action=create&leftmenu=expensereport','','New','trips',1,'','$user->rights->expensereport->creer','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166389,'auguria',1,'','left','hrm',166387,NULL,NULL,2,'/expensereport/list.php?leftmenu=expensereport','','List','trips',1,'','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166390,'auguria',1,'','left','hrm',166389,NULL,NULL,2,'/expensereport/list.php?search_status=2&leftmenu=expensereport','','ListToApprove','trips',2,'','$user->rights->expensereport->approve','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166391,'auguria',1,'','left','hrm',166387,NULL,NULL,2,'/expensereport/stats/index.php?leftmenu=expensereport','','Statistics','trips',1,'','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166467,'all',1,'variants','left','products',-1,'product','products',100,'/variants/list.php','','VariantAttributes','products',NULL,'product','1','$conf->product->enabled',0,'2018-01-19 11:28:04'),(166468,'all',1,'agenda','top','agenda',0,NULL,NULL,15,'/comm/action/index.php','','TMenuAgenda','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166469,'all',1,'agenda','left','agenda',166468,NULL,NULL,100,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Actions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166470,'all',1,'agenda','left','agenda',166469,NULL,NULL,101,'/comm/action/card.php?mainmenu=agenda&leftmenu=agenda&action=create','','NewAction','commercial',NULL,NULL,'($user->rights->agenda->myactions->create||$user->rights->agenda->allactions->create)','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166471,'all',1,'agenda','left','agenda',166469,NULL,NULL,140,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Agenda','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166472,'all',1,'agenda','left','agenda',166471,NULL,NULL,141,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166473,'all',1,'agenda','left','agenda',166471,NULL,NULL,142,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166474,'all',1,'agenda','left','agenda',166471,NULL,NULL,143,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo&filtert=-1','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-03-16 09:54:05'),(166475,'all',1,'agenda','left','agenda',166471,NULL,NULL,144,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done&filtert=-1','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-03-16 09:54:05'),(166476,'all',1,'agenda','left','agenda',166469,NULL,NULL,110,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda','','List','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166477,'all',1,'agenda','left','agenda',166476,NULL,NULL,111,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166478,'all',1,'agenda','left','agenda',166476,NULL,NULL,112,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166479,'all',1,'agenda','left','agenda',166476,NULL,NULL,113,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=todo&filtert=-1','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-03-16 09:54:05'),(166480,'all',1,'agenda','left','agenda',166476,NULL,NULL,114,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=done&filtert=-1','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-03-16 09:54:05'),(166481,'all',1,'agenda','left','agenda',166469,NULL,NULL,160,'/comm/action/rapport/index.php?mainmenu=agenda&leftmenu=agenda','','Reportings','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$conf->agenda->enabled',2,'2018-03-16 09:54:05'),(166482,'all',1,'barcode','left','tools',-1,NULL,'tools',200,'/barcode/printsheet.php?mainmenu=tools&leftmenu=barcodeprint','','BarCodePrintsheet','products',NULL,'barcodeprint','($conf->global->MAIN_USE_ADVANCED_PERMS && $user->rights->barcode->lire_advance) || (! $conf->global->MAIN_USE_ADVANCED_PERMS)','$conf->barcode->enabled',2,'2018-03-16 09:54:05'),(166483,'all',1,'barcode','left','home',-1,'admintools','home',300,'/barcode/codeinit.php?mainmenu=home&leftmenu=admintools','','MassBarcodeInit','products',NULL,NULL,'($conf->global->MAIN_USE_ADVANCED_PERMS && $user->rights->barcode->creer_advance) || (! $conf->global->MAIN_USE_ADVANCED_PERMS)','$conf->barcode->enabled && preg_match(\'/^admintools/\',$leftmenu)',0,'2018-03-16 09:54:05'),(166484,'all',1,'cron','left','home',-1,'admintools','home',200,'/cron/list.php?status=-2&leftmenu=admintools','','CronList','cron',NULL,NULL,'$user->rights->cron->read','$conf->cron->enabled && preg_match(\'/^admintools/\', $leftmenu)',2,'2018-03-16 09:54:05'),(166485,'all',1,'ecm','top','ecm',0,NULL,NULL,100,'/ecm/index.php','','MenuECM','ecm',NULL,NULL,'$user->rights->ecm->read || $user->rights->ecm->upload || $user->rights->ecm->setup','$conf->ecm->enabled',2,'2018-03-16 09:54:05'),(166486,'all',1,'ecm','left','ecm',-1,NULL,'ecm',101,'/ecm/index.php?mainmenu=ecm&leftmenu=ecm','','ECMArea','ecm',NULL,'ecm','$user->rights->ecm->read || $user->rights->ecm->upload','$user->rights->ecm->read || $user->rights->ecm->upload',2,'2018-03-16 09:54:05'),(166487,'all',1,'ecm','left','ecm',-1,'ecm','ecm',102,'/ecm/index.php?action=file_manager&mainmenu=ecm&leftmenu=ecm','','ECMSectionsManual','ecm',NULL,'ecm_manual','$user->rights->ecm->read || $user->rights->ecm->upload','$user->rights->ecm->read || $user->rights->ecm->upload',2,'2018-03-16 09:54:05'),(166488,'all',1,'ecm','left','ecm',-1,'ecm','ecm',103,'/ecm/index_auto.php?action=file_manager&mainmenu=ecm&leftmenu=ecm','','ECMSectionsAuto','ecm',NULL,NULL,'$user->rights->ecm->read || $user->rights->ecm->upload','($user->rights->ecm->read || $user->rights->ecm->upload) && ! empty($conf->global->ECM_AUTO_TREE_ENABLED)',2,'2018-03-16 09:54:05'),(166489,'all',1,'opensurvey','left','tools',-1,NULL,'tools',200,'/opensurvey/index.php?mainmenu=tools&leftmenu=opensurvey','','Survey','opensurvey',NULL,'opensurvey','$user->rights->opensurvey->read','$conf->opensurvey->enabled',0,'2018-03-16 09:54:05'),(166490,'all',1,'opensurvey','left','tools',-1,'opensurvey','tools',210,'/opensurvey/wizard/index.php','','NewSurvey','opensurvey',NULL,'opensurvey_new','$user->rights->opensurvey->write','$conf->opensurvey->enabled',0,'2018-03-16 09:54:05'),(166491,'all',1,'opensurvey','left','tools',-1,'opensurvey','tools',220,'/opensurvey/list.php','','List','opensurvey',NULL,'opensurvey_list','$user->rights->opensurvey->read','$conf->opensurvey->enabled',0,'2018-03-16 09:54:05'),(166492,'all',1,'blockedlog','left','tools',-1,NULL,'tools',200,'/blockedlog/admin/blockedlog_list.php?mainmenu=tools&leftmenu=blockedlogbrowser','','BrowseBlockedLog','blockedlog',NULL,'blockedlogbrowser','$user->rights->blockedlog->read','$conf->blockedlog->enabled',2,'2018-03-16 09:57:24'); +/*!40000 ALTER TABLE `llx_menu` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_abcdef` +-- + +DROP TABLE IF EXISTS `llx_monmodule_abcdef`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_abcdef` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_abcdef_rowid` (`rowid`), + KEY `idx_monmodule_abcdef_ref` (`ref`), + KEY `idx_monmodule_abcdef_entity` (`entity`), + KEY `idx_monmodule_abcdef_fk_soc` (`fk_soc`), + KEY `idx_monmodule_abcdef_status` (`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_abcdef` +-- + +LOCK TABLES `llx_monmodule_abcdef` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_abcdef` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_abcdef` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_abcdef_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_abcdef_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_abcdef_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_abcdef_extrafields` +-- + +LOCK TABLES `llx_monmodule_abcdef_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_abcdef_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_abcdef_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_actioncommreminder` +-- + +DROP TABLE IF EXISTS `llx_monmodule_actioncommreminder`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_actioncommreminder` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `status` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT '1', + `dateremind` datetime NOT NULL, + `typeremind` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_user` int(11) NOT NULL, + `offsetvalue` int(11) NOT NULL, + `offsetunit` varchar(1) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_actioncommreminder_rowid` (`rowid`), + KEY `idx_monmodule_actioncommreminder_status` (`status`), + KEY `idx_monmodule_actioncommreminder_dateremind` (`dateremind`), + KEY `idx_monmodule_actioncommreminder_fk_user` (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_actioncommreminder` +-- + +LOCK TABLES `llx_monmodule_actioncommreminder` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_actioncommreminder_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_actioncommreminder_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_actioncommreminder_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_actioncommreminder_extrafields` +-- + +LOCK TABLES `llx_monmodule_actioncommreminder_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_eleves` +-- + +DROP TABLE IF EXISTS `llx_monmodule_eleves`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_eleves` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_eleves_rowid` (`rowid`), + KEY `idx_monmodule_eleves_ref` (`ref`), + KEY `idx_monmodule_eleves_entity` (`entity`), + KEY `idx_monmodule_eleves_fk_soc` (`fk_soc`), + KEY `idx_monmodule_eleves_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_eleves` +-- + +LOCK TABLES `llx_monmodule_eleves` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_eleves` DISABLE KEYS */; +INSERT INTO `llx_monmodule_eleves` VALUES (1,'aaa',1,'jjl',NULL,32,NULL,NULL,'2017-11-21 15:02:43','2017-11-21 15:02:43',12,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_monmodule_eleves` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_eleves_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_eleves_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_eleves_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_eleves_extrafields` +-- + +LOCK TABLES `llx_monmodule_eleves_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_eleves_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_eleves_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monobj_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monobj_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monobj_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monobj_extrafields` +-- + +LOCK TABLES `llx_monobj_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monobj_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monobj_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_multicurrency` +-- + +DROP TABLE IF EXISTS `llx_multicurrency`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_multicurrency` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_create` datetime DEFAULT NULL, + `code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT '1', + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_multicurrency` +-- + +LOCK TABLES `llx_multicurrency` WRITE; +/*!40000 ALTER TABLE `llx_multicurrency` DISABLE KEYS */; +INSERT INTO `llx_multicurrency` VALUES (1,'2017-02-15 21:17:16','EUR','Euros (€)',1,12); +/*!40000 ALTER TABLE `llx_multicurrency` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_multicurrency_rate` +-- + +DROP TABLE IF EXISTS `llx_multicurrency_rate`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_multicurrency_rate` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_sync` datetime DEFAULT NULL, + `rate` double NOT NULL DEFAULT '0', + `fk_multicurrency` int(11) NOT NULL, + `entity` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_multicurrency_rate` +-- + +LOCK TABLES `llx_multicurrency_rate` WRITE; +/*!40000 ALTER TABLE `llx_multicurrency_rate` DISABLE KEYS */; +INSERT INTO `llx_multicurrency_rate` VALUES (1,'2017-02-15 21:17:16',1,1,1); +/*!40000 ALTER TABLE `llx_multicurrency_rate` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_myobject` +-- + +DROP TABLE IF EXISTS `llx_myobject`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_myobject` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_othertable` int(11) NOT NULL, + `name` varchar(189) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_fk_othertable` (`fk_othertable`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_myobject` +-- + +LOCK TABLES `llx_myobject` WRITE; +/*!40000 ALTER TABLE `llx_myobject` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_myobject` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature` +-- + +DROP TABLE IF EXISTS `llx_nomenclature`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + `fk_object` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature_parent` int(11) NOT NULL DEFAULT '0', + `is_default` int(11) NOT NULL DEFAULT '0', + `qty_reference` double NOT NULL DEFAULT '0', + `totalPRCMO_PMP` double NOT NULL DEFAULT '0', + `totalPRCMO_OF` double NOT NULL DEFAULT '0', + `totalPRCMO` double NOT NULL DEFAULT '0', + `object_type` varchar(255) DEFAULT NULL, + `note_private` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `fk_nomenclature_parent` (`fk_nomenclature_parent`), + KEY `is_default` (`is_default`), + KEY `qty_reference` (`qty_reference`), + KEY `object_type` (`object_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature` +-- + +LOCK TABLES `llx_nomenclature` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature` DISABLE KEYS */; +INSERT INTO `llx_nomenclature` VALUES (1,'2018-11-18 16:22:02','2018-11-18 16:25:48','BOM 1',196,0,0,1,0,0,53.9,'product',''),(2,'2018-11-18 17:18:53','2018-11-18 17:20:45','BOM 2',195,0,0,1,0,0,22,'product',''); +/*!40000 ALTER TABLE `llx_nomenclature` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_coef` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_coef`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_coef` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `label` varchar(255) DEFAULT NULL, + `description` varchar(255) DEFAULT NULL, + `code_type` varchar(30) DEFAULT NULL, + `tx` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `code_type` (`code_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_coef` +-- + +LOCK TABLES `llx_nomenclature_coef` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_coef` DISABLE KEYS */; +INSERT INTO `llx_nomenclature_coef` VALUES (1,'2018-11-18 15:55:54','2018-11-18 15:55:54','Marge','Coef. de marge','coef_marge',1.1); +/*!40000 ALTER TABLE `llx_nomenclature_coef` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_coef_object` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_coef_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_coef_object` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_object` int(11) NOT NULL DEFAULT '0', + `type_object` varchar(50) DEFAULT NULL, + `code_type` varchar(30) DEFAULT NULL, + `tx_object` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `type_object` (`type_object`), + KEY `code_type` (`code_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_coef_object` +-- + +LOCK TABLES `llx_nomenclature_coef_object` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_coef_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_coef_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_workstation` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_workstation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_workstation` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature` int(11) NOT NULL DEFAULT '0', + `rang` int(11) NOT NULL DEFAULT '0', + `unifyRang` int(11) NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + `nb_days_before_beginning` double NOT NULL DEFAULT '0', + `note_private` longtext, + `code_type` varchar(30) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_workstation` (`fk_workstation`), + KEY `fk_nomenclature` (`fk_nomenclature`), + KEY `rang` (`rang`), + KEY `unifyRang` (`unifyRang`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_workstation` +-- + +LOCK TABLES `llx_nomenclature_workstation` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_workstation` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_workstation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_workstation_thm_object` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_workstation_thm_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_workstation_thm_object` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `fk_object` int(11) NOT NULL DEFAULT '0', + `type_object` varchar(50) DEFAULT NULL, + `thm_object` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `type_object` (`type_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_workstation_thm_object` +-- + +LOCK TABLES `llx_nomenclature_workstation_thm_object` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_workstation_thm_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_workstation_thm_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclaturedet` +-- + +DROP TABLE IF EXISTS `llx_nomenclaturedet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclaturedet` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature` int(11) NOT NULL DEFAULT '0', + `is_imported` int(11) NOT NULL DEFAULT '0', + `rang` int(11) NOT NULL DEFAULT '0', + `unifyRang` int(11) NOT NULL DEFAULT '0', + `code_type` varchar(30) DEFAULT NULL, + `workstations` varchar(255) DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0', + `price` double NOT NULL DEFAULT '0', + `note_private` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_product` (`fk_product`), + KEY `fk_nomenclature` (`fk_nomenclature`), + KEY `is_imported` (`is_imported`), + KEY `rang` (`rang`), + KEY `unifyRang` (`unifyRang`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclaturedet` +-- + +LOCK TABLES `llx_nomenclaturedet` WRITE; +/*!40000 ALTER TABLE `llx_nomenclaturedet` DISABLE KEYS */; +INSERT INTO `llx_nomenclaturedet` VALUES (1,'2018-11-18 16:22:25','2018-11-18 16:25:48','',192,1,0,0,0,'coef_marge','',2,0,'aaa'),(2,'2018-11-18 16:22:37','2018-11-18 16:25:48','',151,1,0,1,0,'coef_marge','',1,0,'bbb'),(3,'2018-11-18 16:25:42','2018-11-18 16:25:48','',10,1,0,2,0,'coef_marge','',1,0,'ccc'),(4,'2018-11-18 17:19:13','2018-11-18 17:20:45','',190,2,0,0,0,'coef_marge','',2,0,'aaa'),(5,'2018-11-18 17:20:19','2018-11-18 17:20:45','',11,2,0,1,0,'coef_marge','',1,0,'bbb'),(6,'2018-11-18 17:20:40','2018-11-18 17:20:45','',10,2,0,2,0,'coef_marge','',1,0,''); +/*!40000 ALTER TABLE `llx_nomenclaturedet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify` +-- + +DROP TABLE IF EXISTS `llx_notify`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `daten` datetime DEFAULT NULL, + `fk_action` int(11) NOT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `objet_type` varchar(24) COLLATE utf8_unicode_ci NOT NULL, + `objet_id` int(11) NOT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'email', + `type_target` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify` +-- + +LOCK TABLES `llx_notify` WRITE; +/*!40000 ALTER TABLE `llx_notify` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify_def` +-- + +DROP TABLE IF EXISTS `llx_notify_def`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify_def` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` date DEFAULT NULL, + `fk_action` int(11) NOT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `type` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'email', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify_def` +-- + +LOCK TABLES `llx_notify_def` WRITE; +/*!40000 ALTER TABLE `llx_notify_def` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify_def` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify_def_object` +-- + +DROP TABLE IF EXISTS `llx_notify_def_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify_def_object` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `objet_type` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `objet_id` int(11) NOT NULL, + `type_notif` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'browser', + `date_notif` datetime DEFAULT NULL, + `user_id` int(11) DEFAULT NULL, + `moreparam` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify_def_object` +-- + +LOCK TABLES `llx_notify_def_object` WRITE; +/*!40000 ALTER TABLE `llx_notify_def_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify_def_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_oauth_state` +-- + +DROP TABLE IF EXISTS `llx_oauth_state`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_oauth_state` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `service` varchar(36) COLLATE utf8_unicode_ci DEFAULT NULL, + `state` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_oauth_state` +-- + +LOCK TABLES `llx_oauth_state` WRITE; +/*!40000 ALTER TABLE `llx_oauth_state` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_oauth_state` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_oauth_token` +-- + +DROP TABLE IF EXISTS `llx_oauth_token`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_oauth_token` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `service` varchar(36) COLLATE utf8_unicode_ci DEFAULT NULL, + `token` text COLLATE utf8_unicode_ci, + `fk_user` int(11) DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + `tokenstring` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_oauth_token` +-- + +LOCK TABLES `llx_oauth_token` WRITE; +/*!40000 ALTER TABLE `llx_oauth_token` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_oauth_token` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_onlinesignature` +-- + +DROP TABLE IF EXISTS `llx_onlinesignature`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_onlinesignature` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `object_type` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `object_id` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `ip` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pathoffile` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_onlinesignature` +-- + +LOCK TABLES `llx_onlinesignature` WRITE; +/*!40000 ALTER TABLE `llx_onlinesignature` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_onlinesignature` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_comments` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_comments`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_comments` ( + `id_comment` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_sondage` char(16) COLLATE utf8_unicode_ci NOT NULL, + `comment` text COLLATE utf8_unicode_ci NOT NULL, + `usercomment` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`id_comment`), + KEY `idx_id_comment` (`id_comment`), + KEY `idx_id_sondage` (`id_sondage`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_comments` +-- + +LOCK TABLES `llx_opensurvey_comments` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_comments` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_comments` VALUES (2,'434dio8rxfljs3p1','aaa','aaa'),(5,'434dio8rxfljs3p1','aaa','aaa'),(6,'434dio8rxfljs3p1','gfh','jj'),(11,'434dio8rxfljs3p1','fsdf','fdsf'),(12,'3imby4hf7joiilsu','fsdf','aa'),(16,'3imby4hf7joiilsu','gdfg','gfdg'),(17,'3imby4hf7joiilsu','gfdgd','gdfgd'),(18,'om4e7azfiurnjtqe','fds','fdsf'),(26,'qgsfrgb922rqzocy','gfdg','gfdg'),(27,'qgsfrgb922rqzocy','gfdg','gfd'),(30,'ckanvbe7kt3rdb3h','hfgh','fdfds'); +/*!40000 ALTER TABLE `llx_opensurvey_comments` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_formquestions` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_formquestions`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_formquestions` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `id_sondage` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `question` text COLLATE utf8_unicode_ci, + `available_answers` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_formquestions` +-- + +LOCK TABLES `llx_opensurvey_formquestions` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_formquestions` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_opensurvey_formquestions` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_sondage` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_sondage`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_sondage` ( + `id_sondage` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `commentaires` text COLLATE utf8_unicode_ci, + `mail_admin` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `nom_admin` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_creat` int(11) NOT NULL, + `titre` text COLLATE utf8_unicode_ci NOT NULL, + `date_fin` datetime DEFAULT NULL, + `status` int(11) DEFAULT '1', + `format` varchar(2) COLLATE utf8_unicode_ci NOT NULL, + `mailsonde` tinyint(4) NOT NULL DEFAULT '0', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `entity` int(11) NOT NULL DEFAULT '1', + `allow_comments` tinyint(4) NOT NULL DEFAULT '1', + `allow_spy` tinyint(4) NOT NULL DEFAULT '1', + `sujet` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`id_sondage`), + KEY `idx_date_fin` (`date_fin`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_sondage` +-- + +LOCK TABLES `llx_opensurvey_sondage` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_sondage` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_sondage` VALUES ('m4467s2mtk6khmxc','What is your prefered date for a brunch','myemail@aaa.com','fdfds',0,'Date of next brunch','2013-03-07 00:00:00',1,'D',1,'2018-03-16 10:00:54',1,1,1,',1483473600'),('tim1dye8x5eeetxu','Please vote for the candidate you want to have for our new president this year.',NULL,NULL,12,'Election of new president','2017-02-26 04:00:00',1,'A',0,'2018-03-16 10:00:54',1,1,0,'Alan Candide@foragainst,Alex Candor@foragainst'); +/*!40000 ALTER TABLE `llx_opensurvey_sondage` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_user_formanswers` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_user_formanswers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_user_formanswers` ( + `fk_user_survey` int(11) NOT NULL, + `fk_question` int(11) NOT NULL, + `reponses` text COLLATE utf8_unicode_ci +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_user_formanswers` +-- + +LOCK TABLES `llx_opensurvey_user_formanswers` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_user_formanswers` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_opensurvey_user_formanswers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_user_studs` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_user_studs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_user_studs` ( + `id_users` int(11) NOT NULL AUTO_INCREMENT, + `nom` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `id_sondage` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `reponses` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`id_users`), + KEY `idx_id_users` (`id_users`), + KEY `idx_nom` (`nom`), + KEY `idx_id_sondage` (`id_sondage`), + KEY `idx_opensurvey_user_studs_id_users` (`id_users`), + KEY `idx_opensurvey_user_studs_nom` (`nom`), + KEY `idx_opensurvey_user_studs_id_sondage` (`id_sondage`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_user_studs` +-- + +LOCK TABLES `llx_opensurvey_user_studs` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_user_studs` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_user_studs` VALUES (1,'gfdgdf','om4e7azfiurnjtqe','01'),(2,'aa','3imby4hf7joiilsu','210'),(3,'fsdf','z2qcqjh5pm1q4p99','0110'),(5,'hfghf','z2qcqjh5pm1q4p99','1110'),(6,'qqqq','ah9xvaqu1ajjrqse','000111'),(7,'hjgh','ah9xvaqu1ajjrqse','000010'),(8,'bcvb','qgsfrgb922rqzocy','011000'),(9,'gdfg','ah9xvaqu1ajjrqse','001000'),(10,'ggg','ah9xvaqu1ajjrqse','000100'),(11,'gfdgd','ah9xvaqu1ajjrqse','001000'),(12,'hhhh','ah9xvaqu1ajjrqse','010000'),(13,'iii','ah9xvaqu1ajjrqse','000100'),(14,'kkk','ah9xvaqu1ajjrqse','001000'),(15,'lllll','ah9xvaqu1ajjrqse','000001'),(16,'kk','ah9xvaqu1ajjrqse','000001'),(17,'gggg','ah9xvaqu1ajjrqse','001000'),(18,'mmmm','ah9xvaqu1ajjrqse','000000'),(19,'jkjkj','ah9xvaqu1ajjrqse','000001'),(20,'azerty','8mcdnf2hgcntfibe','012'),(21,'hfghfg','8mcdnf2hgcntfibe','012'),(22,'fd','ckanvbe7kt3rdb3h','10'),(25,'John Doe','m4467s2mtk6khmxc','1'),(26,'Martial Bill','m4467s2mtk6khmxc','01'),(27,'Marissa Campbell','m4467s2mtk6khmxc','11'),(28,'Leonard Cast','m4467s2mtk6khmxc','01'),(29,'John Doe','tim1dye8x5eeetxu','01'),(30,'Eldy','tim1dye8x5eeetxu','11'); +/*!40000 ALTER TABLE `llx_opensurvey_user_studs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_overwrite_trans` +-- + +DROP TABLE IF EXISTS `llx_overwrite_trans`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_overwrite_trans` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `lang` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `transkey` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `transvalue` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_overwrite_trans` (`lang`,`transkey`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_overwrite_trans` +-- + +LOCK TABLES `llx_overwrite_trans` WRITE; +/*!40000 ALTER TABLE `llx_overwrite_trans` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_overwrite_trans` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_packages` +-- + +DROP TABLE IF EXISTS `llx_packages`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_packages` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `sqldump` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `conffile1` mediumtext COLLATE utf8_unicode_ci, + `sqlafter` mediumtext COLLATE utf8_unicode_ci, + `crontoadd` mediumtext COLLATE utf8_unicode_ci, + `cliafter` text COLLATE utf8_unicode_ci, + `status` int(11) DEFAULT NULL, + `targetsrcfile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetsrcfile2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetsrcfile3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datafile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetdatafile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetconffile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_packages_rowid` (`rowid`), + KEY `idx_packages_ref` (`ref`), + KEY `idx_packages_entity` (`entity`), + KEY `idx_packages_import_key` (`import_key`), + KEY `idx_packages_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_packages` +-- + +LOCK TABLES `llx_packages` WRITE; +/*!40000 ALTER TABLE `llx_packages` DISABLE KEYS */; +INSERT INTO `llx_packages` VALUES (1,'Dolibarr',1,'Dolibarr ERP CRM','2017-09-23 20:27:03','2017-11-04 20:19:20',1,12,NULL,'a','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/htdocs','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/htdocs/install/doctemplates','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/scripts','','UPDATE llx_user set pass_crypted = \'__APPPASSWORD0SALTED__\', email = \'__APPEMAIL__\' where login = \'admin\' AND (pass = \'admin\' OR pass_crypted = \'25edccd81ce2def41eae1317392fd106d8152a5b\');\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'CRON_KEY\', 0, \'__OSUSERNAME__\', \'chaine\', 0);\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'MAIN_INFO_SOCIETE_NOM\', 1, \'__APPORGNAME__\', \'chaine\', 0);\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'MAIN_INFO_SOCIETE_COUNTRY\', 1, \'__APPCOUNTRYIDCODELABEL__\', \'chaine\', 0);\r\nUPDATE llx_const set value = \'__APPEMAIL__\' where name = \'MAIN_MAIL_EMAIL_FROM\';\r\n\r\n','__INSTALLMINUTES__ __INSTALLHOURS__ * * * __OSUSERNAME__ __INSTANCEDIR__/scripts/cron/cron_run_jobs.php __OSUSERNAME__ firstadmin > __INSTANCEDIR__/documents/cron.log 2>&1','touch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents',1,'__INSTANCEDIR__/htdocs','__INSTANCEDIR__/documents/doctemplates','__INSTANCEDIR__/scripts','__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__','a','__INSTANCEDIR__/htdocs/conf/conf.php','',''),(5,'Dolibarr 6',1,'Dolibarr ERP CRM','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/htdocs','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/htdocs/install/doctemplates','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/scripts','','UPDATE llx_user set pass_crypted = \'__APPPASSWORD0SALTED__\', email = \'__APPEMAIL__\' where login = \'admin\' AND (pass = \'admin\' OR pass_crypted = \'25edccd81ce2def41eae1317392fd106d8152a5b\');\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'CRON_KEY\', 0, \'__OSUSERNAME__\', \'chaine\', 0);','__INSTALLMINUTES__ __INSTALLHOURS__ * * * __OSUSERNAME__ __INSTANCEDIR__/scripts/cron/cron_run_jobs.php __OSUSERNAME__ firstadmin > __INSTANCEDIR__/documents/cron.log 2>&1','touch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents',1,'__INSTANCEDIR__/htdocs','__INSTANCEDIR__/documents/doctemplates','__INSTANCEDIR__/scripts','__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,'__INSTANCEDIR__/htdocs/conf/conf.php','',''),(6,'DoliPos',1,'Module POS','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/module_pos',NULL,NULL,NULL,NULL,NULL,'rm -fr __INSTANCEDIR__/documents/install.lock;\r\ncd __INSTANCEDIR__/htdocs/install/;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Societe;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Facture;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Commande;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Product;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Stock;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Banque;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_POS;\r\ntouch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents;',1,'__INSTANCEDIR__/htdocs',NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,NULL,'',''),(7,'DoliMed',1,'Module DoliMed','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/module_dolimed/htdocs',NULL,NULL,NULL,NULL,NULL,'rm -fr __INSTANCEDIR__/documents/install.lock;\r\ncd __INSTANCEDIR__/htdocs/install/;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_SOCIETE,MAIN_MODULE_CabinetMed;\r\ntouch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents;',1,'__INSTANCEDIR__/htdocs',NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,NULL,'',''); +/*!40000 ALTER TABLE `llx_packages` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_packages_extrafields` +-- + +DROP TABLE IF EXISTS `llx_packages_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_packages_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_packages_extrafields` +-- + +LOCK TABLES `llx_packages_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_packages_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_packages_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiement` +-- + +DROP TABLE IF EXISTS `llx_paiement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiement` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL DEFAULT '', + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_paiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `fk_export_compta` int(11) NOT NULL DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiement` +-- + +LOCK TABLES `llx_paiement` WRITE; +/*!40000 ALTER TABLE `llx_paiement` DISABLE KEYS */; +INSERT INTO `llx_paiement` VALUES (2,'',1,'2011-07-18 20:50:24','2016-07-30 15:13:20','2016-07-08 12:00:00',20.00000000,6,'','',5,1,NULL,0,0,0.00000000),(3,'',1,'2011-07-18 20:50:47','2016-07-30 15:13:20','2016-07-08 12:00:00',10.00000000,4,'','',6,1,NULL,0,0,0.00000000),(5,'',1,'2011-08-01 03:34:11','2016-07-30 15:12:32','2015-08-01 03:34:11',5.63000000,6,'','Payment Invoice FA1108-0003',8,1,NULL,0,0,0.00000000),(6,'',1,'2011-08-06 20:33:54','2016-07-30 15:12:32','2015-08-06 20:33:53',5.98000000,4,'','Payment Invoice FA1108-0004',13,1,NULL,0,0,0.00000000),(8,'',1,'2011-08-08 02:53:40','2016-07-30 15:12:32','2015-08-08 12:00:00',26.10000000,4,'','',14,1,NULL,0,0,0.00000000),(9,'',1,'2011-08-08 02:55:58','2016-07-30 15:12:32','2015-08-08 12:00:00',26.96000000,1,'','',15,1,NULL,0,0,0.00000000),(17,'',1,'2012-12-09 15:28:44','2016-07-30 15:12:32','2015-12-09 12:00:00',2.00000000,4,'','',16,1,NULL,0,0,0.00000000),(18,'',1,'2012-12-09 15:28:53','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',17,1,NULL,0,0,0.00000000),(19,'',1,'2012-12-09 17:35:55','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',18,1,NULL,0,0,0.00000000),(20,'',1,'2012-12-09 17:37:02','2016-07-30 15:12:32','2015-12-09 12:00:00',2.00000000,4,'','',19,1,NULL,0,0,0.00000000),(21,'',1,'2012-12-09 18:35:07','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',20,1,NULL,0,0,0.00000000),(23,'',1,'2012-12-12 18:54:33','2016-07-30 15:12:32','2015-12-12 12:00:00',1.00000000,1,'','',21,1,NULL,0,0,0.00000000),(24,'',1,'2013-03-06 16:48:16','2016-07-30 15:13:20','2016-03-06 00:00:00',20.00000000,4,'','Adhésion/cotisation 2016',22,1,NULL,0,0,0.00000000),(25,'',1,'2013-03-20 14:30:11','2016-07-30 15:13:20','2016-03-20 00:00:00',10.00000000,2,'','Adhésion/cotisation 2011',23,1,NULL,0,0,0.00000000),(26,'',1,'2014-03-02 19:57:58','2016-07-30 15:13:20','2016-07-09 12:00:00',605.00000000,2,'','',24,1,NULL,0,0,0.00000000),(29,'',1,'2014-03-02 20:01:39','2016-07-30 15:13:20','2016-03-19 12:00:00',500.00000000,4,'','',26,1,NULL,0,0,0.00000000),(30,'',1,'2014-03-02 20:02:06','2016-07-30 15:13:20','2016-03-21 12:00:00',400.00000000,2,'','',27,1,NULL,0,0,0.00000000),(32,'',1,'2014-03-03 19:22:32','2016-07-30 15:12:32','2015-10-03 12:00:00',-400.00000000,4,'','',28,1,NULL,0,0,0.00000000),(33,'',1,'2014-03-03 19:23:16','2016-07-30 15:13:20','2016-03-10 12:00:00',-300.00000000,4,'','',29,1,NULL,0,0,0.00000000),(34,'PAY1603-0001',1,'2017-02-06 08:10:24','2017-02-06 04:10:24','2016-03-22 12:00:00',150.00000000,7,'','',33,12,NULL,0,0,150.00000000),(35,'PAY1603-0002',1,'2017-02-06 08:10:50','2017-02-06 04:10:50','2016-03-25 12:00:00',140.00000000,3,'','',34,12,NULL,0,0,140.00000000),(36,'PAY1702-0003',1,'2017-02-21 16:07:43','2017-02-21 12:07:43','2017-02-21 12:00:00',50.00000000,3,'T170201','',37,12,NULL,0,0,50.00000000),(38,'PAY1803-0004',1,'2018-03-16 13:59:31','2018-03-16 09:59:31','2018-03-16 12:00:00',10.00000000,7,'','',39,12,NULL,0,0,10.00000000); +/*!40000 ALTER TABLE `llx_paiement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiement_facture` +-- + +DROP TABLE IF EXISTS `llx_paiement_facture`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiement_facture` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_paiement` int(11) DEFAULT NULL, + `fk_facture` int(11) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_paiement_facture` (`fk_paiement`,`fk_facture`), + KEY `idx_paiement_facture_fk_facture` (`fk_facture`), + KEY `idx_paiement_facture_fk_paiement` (`fk_paiement`), + CONSTRAINT `fk_paiement_facture_fk_facture` FOREIGN KEY (`fk_facture`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_paiement_facture_fk_paiement` FOREIGN KEY (`fk_paiement`) REFERENCES `llx_paiement` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=43 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiement_facture` +-- + +LOCK TABLES `llx_paiement_facture` WRITE; +/*!40000 ALTER TABLE `llx_paiement_facture` DISABLE KEYS */; +INSERT INTO `llx_paiement_facture` VALUES (2,2,2,20.00000000,0.00000000),(3,3,2,10.00000000,0.00000000),(5,5,5,5.63000000,0.00000000),(6,6,6,5.98000000,0.00000000),(9,8,2,16.10000000,0.00000000),(10,8,8,10.00000000,0.00000000),(11,9,3,15.00000000,0.00000000),(12,9,9,11.96000000,0.00000000),(24,20,9,1.00000000,0.00000000),(31,26,32,600.00000000,0.00000000),(36,29,32,500.00000000,0.00000000),(37,30,32,400.00000000,0.00000000),(38,34,211,150.00000000,150.00000000),(39,35,211,140.00000000,140.00000000),(40,36,211,50.00000000,50.00000000),(42,38,149,10.00000000,10.00000000); +/*!40000 ALTER TABLE `llx_paiement_facture` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementcharge` +-- + +DROP TABLE IF EXISTS `llx_paiementcharge`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementcharge` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_charge` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepaiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementcharge` +-- + +LOCK TABLES `llx_paiementcharge` WRITE; +/*!40000 ALTER TABLE `llx_paiementcharge` DISABLE KEYS */; +INSERT INTO `llx_paiementcharge` VALUES (4,4,'2011-08-05 23:11:37','2011-08-05 21:11:37','2011-08-05 12:00:00',10.00000000,2,'','',12,1,NULL); +/*!40000 ALTER TABLE `llx_paiementcharge` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementfourn` +-- + +DROP TABLE IF EXISTS `llx_paiementfourn`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementfourn` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_paiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementfourn` +-- + +LOCK TABLES `llx_paiementfourn` WRITE; +/*!40000 ALTER TABLE `llx_paiementfourn` DISABLE KEYS */; +INSERT INTO `llx_paiementfourn` VALUES (1,'1',1,'2018-01-19 11:17:47','2016-01-22 18:56:34','2016-01-22 12:00:00',900.00000000,12,NULL,4,'','',30,0,0.00000000,NULL),(2,'SPAY1702-0001',1,'2017-02-01 15:02:45','2017-02-01 19:02:44','2017-02-01 12:00:00',200.00000000,12,NULL,4,'','',32,0,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_paiementfourn` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementfourn_facturefourn` +-- + +DROP TABLE IF EXISTS `llx_paiementfourn_facturefourn`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementfourn_facturefourn` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_paiementfourn` int(11) DEFAULT NULL, + `fk_facturefourn` int(11) DEFAULT NULL, + `amount` double DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_paiementfourn_facturefourn` (`fk_paiementfourn`,`fk_facturefourn`), + KEY `idx_paiementfourn_facturefourn_fk_facture` (`fk_facturefourn`), + KEY `idx_paiementfourn_facturefourn_fk_paiement` (`fk_paiementfourn`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementfourn_facturefourn` +-- + +LOCK TABLES `llx_paiementfourn_facturefourn` WRITE; +/*!40000 ALTER TABLE `llx_paiementfourn_facturefourn` DISABLE KEYS */; +INSERT INTO `llx_paiementfourn_facturefourn` VALUES (1,1,16,900,0.00000000),(2,2,20,200,200.00000000); +/*!40000 ALTER TABLE `llx_paiementfourn_facturefourn` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_donation` +-- + +DROP TABLE IF EXISTS `llx_payment_donation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_donation` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_donation` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_donation` +-- + +LOCK TABLES `llx_payment_donation` WRITE; +/*!40000 ALTER TABLE `llx_payment_donation` DISABLE KEYS */; +INSERT INTO `llx_payment_donation` VALUES (1,3,'2017-09-06 20:08:36','2017-09-06 16:08:36','2017-09-06 12:00:00',10.00000000,4,'','',38,12,NULL); +/*!40000 ALTER TABLE `llx_payment_donation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_expensereport` +-- + +DROP TABLE IF EXISTS `llx_payment_expensereport`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_expensereport` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_expensereport` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_expensereport` +-- + +LOCK TABLES `llx_payment_expensereport` WRITE; +/*!40000 ALTER TABLE `llx_payment_expensereport` DISABLE KEYS */; +INSERT INTO `llx_payment_expensereport` VALUES (1,1,'2017-02-16 02:13:13','2017-02-15 22:13:13','2017-02-16 12:00:00',5.00000000,7,'','',0,12,NULL),(2,1,'2017-02-16 02:22:09','2017-02-15 22:22:09','2017-02-16 12:00:00',1.00000000,7,'','',36,12,NULL); +/*!40000 ALTER TABLE `llx_payment_expensereport` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_loan` +-- + +DROP TABLE IF EXISTS `llx_payment_loan`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_loan` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_loan` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount_capital` double(24,8) DEFAULT NULL, + `amount_insurance` double(24,8) DEFAULT NULL, + `amount_interest` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_loan` +-- + +LOCK TABLES `llx_payment_loan` WRITE; +/*!40000 ALTER TABLE `llx_payment_loan` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_payment_loan` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_salary` +-- + +DROP TABLE IF EXISTS `llx_payment_salary`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_salary` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user` int(11) NOT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `salary` double(24,8) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datesp` date DEFAULT NULL, + `dateep` date DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_payment_salary_ref` (`num_payment`), + KEY `idx_payment_salary_user` (`fk_user`,`entity`), + KEY `idx_payment_salary_datep` (`datep`), + KEY `idx_payment_salary_datesp` (`datesp`), + KEY `idx_payment_salary_dateep` (`dateep`), + CONSTRAINT `fk_payment_salary_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_salary` +-- + +LOCK TABLES `llx_payment_salary` WRITE; +/*!40000 ALTER TABLE `llx_payment_salary` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_payment_salary` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_various` +-- + +DROP TABLE IF EXISTS `llx_payment_various`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_various` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `sens` smallint(6) NOT NULL DEFAULT '0', + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_various` +-- + +LOCK TABLES `llx_payment_various` WRITE; +/*!40000 ALTER TABLE `llx_payment_various` DISABLE KEYS */; +INSERT INTO `llx_payment_various` VALUES (2,'2017-07-14 14:46:19','2017-07-14 18:46:19','2017-07-14','2017-07-14',0,123.00000000,4,'','Miscellaneous payment','518',NULL,1,NULL,48,12,NULL); +/*!40000 ALTER TABLE `llx_payment_various` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_bons` +-- + +DROP TABLE IF EXISTS `llx_prelevement_bons`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_bons` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `statut` smallint(6) DEFAULT '0', + `credite` smallint(6) DEFAULT '0', + `note` text COLLATE utf8_unicode_ci, + `date_trans` datetime DEFAULT NULL, + `method_trans` smallint(6) DEFAULT NULL, + `fk_user_trans` int(11) DEFAULT NULL, + `date_credit` datetime DEFAULT NULL, + `fk_user_credit` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_prelevement_bons_ref` (`ref`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_bons` +-- + +LOCK TABLES `llx_prelevement_bons` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_bons` DISABLE KEYS */; +INSERT INTO `llx_prelevement_bons` VALUES (1,'T170201',1,'2017-02-21 15:53:46',50.00000000,2,0,NULL,'2017-02-21 12:00:00',0,12,'2017-02-21 12:00:00',12); +/*!40000 ALTER TABLE `llx_prelevement_bons` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_facture` +-- + +DROP TABLE IF EXISTS `llx_prelevement_facture`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_facture` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `fk_prelevement_lignes` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_prelevement_facture_fk_prelevement_lignes` (`fk_prelevement_lignes`), + CONSTRAINT `fk_prelevement_facture_fk_prelevement_lignes` FOREIGN KEY (`fk_prelevement_lignes`) REFERENCES `llx_prelevement_lignes` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_facture` +-- + +LOCK TABLES `llx_prelevement_facture` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_facture` DISABLE KEYS */; +INSERT INTO `llx_prelevement_facture` VALUES (1,211,1); +/*!40000 ALTER TABLE `llx_prelevement_facture` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_facture_demande` +-- + +DROP TABLE IF EXISTS `llx_prelevement_facture_demande`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_facture_demande` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `amount` double(24,8) DEFAULT NULL, + `date_demande` datetime NOT NULL, + `traite` smallint(6) DEFAULT '0', + `date_traite` datetime DEFAULT NULL, + `fk_prelevement_bons` int(11) DEFAULT NULL, + `fk_user_demande` int(11) NOT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_facture_demande` +-- + +LOCK TABLES `llx_prelevement_facture_demande` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_facture_demande` DISABLE KEYS */; +INSERT INTO `llx_prelevement_facture_demande` VALUES (1,211,50.00000000,'2017-02-06 08:11:17',1,'2017-02-21 15:53:46',1,12,'','','',''); +/*!40000 ALTER TABLE `llx_prelevement_facture_demande` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_lignes` +-- + +DROP TABLE IF EXISTS `llx_prelevement_lignes`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_lignes` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prelevement_bons` int(11) DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `statut` smallint(6) DEFAULT '0', + `client_nom` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_prelevement_lignes_fk_prelevement_bons` (`fk_prelevement_bons`), + CONSTRAINT `fk_prelevement_lignes_fk_prelevement_bons` FOREIGN KEY (`fk_prelevement_bons`) REFERENCES `llx_prelevement_bons` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_lignes` +-- + +LOCK TABLES `llx_prelevement_lignes` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_lignes` DISABLE KEYS */; +INSERT INTO `llx_prelevement_lignes` VALUES (1,1,19,2,'Magic Food Store',50.00000000,'','','','',NULL); +/*!40000 ALTER TABLE `llx_prelevement_lignes` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_rejet` +-- + +DROP TABLE IF EXISTS `llx_prelevement_rejet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_rejet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prelevement_lignes` int(11) DEFAULT NULL, + `date_rejet` datetime DEFAULT NULL, + `motif` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `fk_user_creation` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `afacturer` tinyint(4) DEFAULT '0', + `fk_facture` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_rejet` +-- + +LOCK TABLES `llx_prelevement_rejet` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_rejet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_prelevement_rejet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printer_receipt` +-- + +DROP TABLE IF EXISTS `llx_printer_receipt`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printer_receipt` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_type` int(11) DEFAULT NULL, + `fk_profile` int(11) DEFAULT NULL, + `parameter` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printer_receipt` +-- + +LOCK TABLES `llx_printer_receipt` WRITE; +/*!40000 ALTER TABLE `llx_printer_receipt` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printer_receipt` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printer_receipt_template` +-- + +DROP TABLE IF EXISTS `llx_printer_receipt_template`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printer_receipt_template` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `template` text COLLATE utf8_unicode_ci, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printer_receipt_template` +-- + +LOCK TABLES `llx_printer_receipt_template` WRITE; +/*!40000 ALTER TABLE `llx_printer_receipt_template` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printer_receipt_template` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printing` +-- + +DROP TABLE IF EXISTS `llx_printing`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printing` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `printer_name` text COLLATE utf8_unicode_ci NOT NULL, + `printer_location` text COLLATE utf8_unicode_ci NOT NULL, + `printer_id` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `copy` int(11) NOT NULL DEFAULT '1', + `module` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `driver` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `userid` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printing` +-- + +LOCK TABLES `llx_printing` WRITE; +/*!40000 ALTER TABLE `llx_printing` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printing` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product` +-- + +DROP TABLE IF EXISTS `llx_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `virtual` tinyint(4) NOT NULL DEFAULT '0', + `fk_parent` int(11) DEFAULT '0', + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `note` text COLLATE utf8_unicode_ci, + `customcode` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `tosell` tinyint(4) DEFAULT '1', + `tobuy` tinyint(4) DEFAULT '1', + `onportal` smallint(6) DEFAULT '0', + `tobatch` tinyint(4) NOT NULL DEFAULT '0', + `fk_product_type` int(11) DEFAULT '0', + `duration` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `seuil_stock_alerte` int(11) DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT NULL, + `accountancy_code_sell` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_sell_intra` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_sell_export` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_buy` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `partnumber` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `weight` float DEFAULT NULL, + `weight_units` tinyint(4) DEFAULT NULL, + `length` float DEFAULT NULL, + `length_units` tinyint(4) DEFAULT NULL, + `surface` float DEFAULT NULL, + `surface_units` tinyint(4) DEFAULT NULL, + `volume` float DEFAULT NULL, + `volume_units` tinyint(4) DEFAULT NULL, + `stock` double DEFAULT NULL, + `pmp` double(24,8) NOT NULL DEFAULT '0.00000000', + `fifo` double(24,8) DEFAULT NULL, + `lifo` double(24,8) DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT 'default@product', + `finished` tinyint(4) DEFAULT NULL, + `hidden` tinyint(4) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `desiredstock` int(11) DEFAULT '0', + `fk_price_expression` int(11) DEFAULT NULL, + `fk_unit` int(11) DEFAULT NULL, + `cost_price` double(24,8) DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `price_autogen` smallint(6) DEFAULT '0', + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT '', + `width` float DEFAULT NULL, + `width_units` tinyint(4) DEFAULT NULL, + `height` float DEFAULT NULL, + `height_units` tinyint(4) DEFAULT NULL, + `fk_default_warehouse` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_ref` (`ref`,`entity`), + UNIQUE KEY `uk_product_barcode` (`barcode`,`fk_barcode_type`,`entity`), + KEY `idx_product_label` (`label`), + KEY `idx_product_barcode` (`barcode`), + KEY `idx_product_import_key` (`import_key`), + KEY `idx_product_fk_country` (`fk_country`), + KEY `idx_product_fk_user_author` (`fk_user_author`), + KEY `idx_product_fk_barcode_type` (`fk_barcode_type`), + KEY `fk_product_fk_unit` (`fk_unit`), + KEY `idx_product_seuil_stock_alerte` (`seuil_stock_alerte`), + KEY `fk_product_default_warehouse` (`fk_default_warehouse`), + CONSTRAINT `fk_product_barcode_type` FOREIGN KEY (`fk_barcode_type`) REFERENCES `llx_c_barcode_type` (`rowid`), + CONSTRAINT `fk_product_default_warehouse` FOREIGN KEY (`fk_default_warehouse`) REFERENCES `llx_entrepot` (`rowid`), + CONSTRAINT `fk_product_fk_country` FOREIGN KEY (`fk_country`) REFERENCES `llx_c_country` (`rowid`), + CONSTRAINT `fk_product_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product` +-- + +LOCK TABLES `llx_product` WRITE; +/*!40000 ALTER TABLE `llx_product` DISABLE KEYS */; +INSERT INTO `llx_product` VALUES (1,'2010-07-08 14:33:17','2016-01-16 16:30:35',0,0,'PINKDRESS',1,NULL,'Pink dress','A beatifull pink dress','','',NULL,100.00000000,112.50000000,90.00000000,101.25000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789066',2,'701PINKDRESS',NULL,NULL,'601PINKDRESS',NULL,670,-3,NULL,0,NULL,0,NULL,0,2,0.00000000,NULL,NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(2,'2010-07-09 00:30:01','2016-01-16 16:37:14',0,0,'PEARPIE',1,NULL,'Pear Pie','','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789077',2,'',NULL,NULL,'',NULL,NULL,0,NULL,0,NULL,0,NULL,0,998,0.00000000,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(3,'2010-07-09 00:30:25','2016-01-16 16:40:03',0,0,'CAKECONTRIB',1,NULL,'Cake making contribution','','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,1,'1m',NULL,NULL,'123456789088',2,'701CAKEM',NULL,NULL,'601CAKEM',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(4,'2010-07-10 14:44:06','2016-01-16 15:58:20',0,0,'APPLEPIE',1,NULL,'Apple Pie','Nice Bio Apple Pie.
\r\n ','','',NULL,5.00000000,5.62500000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789034',2,'701',NULL,NULL,'601',NULL,500,-3,NULL,0,NULL,0,NULL,0,1001,10.00000000,NULL,NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(5,'2011-07-20 23:11:38','2016-01-16 16:18:24',0,0,'DOLIDROID',1,NULL,'DoliDroid, Android app for Dolibarr','DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

','','',NULL,10.00000000,11.96000000,0.00000000,0.00000000,'HT',19.600,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,'https://play.google.com/store/apps/details?id=com.nltechno.dolidroidpro','123456789023',2,'701',NULL,NULL,'601',NULL,NULL,0,NULL,0,NULL,0,NULL,0,NULL,0.00000000,NULL,NULL,'',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(10,'2008-12-31 00:00:00','2017-02-16 00:12:09',0,0,'COMP-XP4523',1,NULL,'Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.','USXP765',11,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,0,0.000,'0',0.000,'0',NULL,12,1,1,0,1,0,'',150,NULL,'123456789055',2,'701OLDC',NULL,NULL,'601OLDC',NULL,1.7,0,NULL,0,NULL,0,NULL,0,110,0.00000000,NULL,NULL,NULL,NULL,0,'20110729232310',200,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(11,'2013-01-13 20:24:42','2016-07-30 13:42:31',0,0,'ROLLUPABC',1,NULL,'Rollup Dolibarr','A nice rollup','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',0.000,0,0.000,'0',0.000,'0',1,12,0,0,0,0,0,'',NULL,NULL,'123456789044',2,'',NULL,NULL,'',NULL,2.5,0,NULL,0,2.34,0,NULL,0,-1,0.00000000,NULL,NULL,'',1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(12,'2016-07-30 17:31:29','2016-07-30 13:35:02',0,0,'DOLICLOUD',1,NULL,'SaaS service of Dolibarr ERP CRM','Cloud hosting of Dolibarr ERP and CRM software','','',NULL,9.00000000,9.00000000,9.00000000,9.00000000,'HT',0.000,0,0.000,'0',0.000,'0',12,12,1,1,0,0,1,'',NULL,'http://www.dolicloud.com','123456789013',2,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,NULL,NULL,'',0,0,NULL,NULL,NULL,NULL,8.50000000,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(13,'2017-02-16 03:49:00','2017-02-15 23:49:27',0,0,'COMP-XP4548',1,NULL,'Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.','USXP765',11,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,0,0.000,'0',0.000,'0',12,12,1,1,0,1,0,'',150,NULL,NULL,2,'',NULL,NULL,'',NULL,1.7,0,NULL,0,NULL,0,NULL,0,NULL,0.00000000,NULL,NULL,'',NULL,0,NULL,200,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_association` +-- + +DROP TABLE IF EXISTS `llx_product_association`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_association` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_pere` int(11) NOT NULL DEFAULT '0', + `fk_product_fils` int(11) NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `incdec` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_association` (`fk_product_pere`,`fk_product_fils`), + KEY `idx_product_association` (`fk_product_fils`), + KEY `idx_product_association_fils` (`fk_product_fils`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_association` +-- + +LOCK TABLES `llx_product_association` WRITE; +/*!40000 ALTER TABLE `llx_product_association` DISABLE KEYS */; +INSERT INTO `llx_product_association` VALUES (2,5,1,1,1),(3,4,3,5,1),(4,4,1,2,1); +/*!40000 ALTER TABLE `llx_product_association` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute` +-- + +DROP TABLE IF EXISTS `llx_product_attribute`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `rang` int(11) NOT NULL DEFAULT '0', + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_attribute_ref` (`ref`), + UNIQUE KEY `unique_ref` (`ref`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute` +-- + +LOCK TABLES `llx_product_attribute` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_combination` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_combination`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_combination` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_parent` int(11) NOT NULL, + `fk_product_child` int(11) NOT NULL, + `variation_price` float NOT NULL, + `variation_price_percentage` int(11) DEFAULT NULL, + `variation_weight` float NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_combination` +-- + +LOCK TABLES `llx_product_attribute_combination` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_combination` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_combination` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_combination2val` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_combination2val`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_combination2val` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prod_combination` int(11) NOT NULL, + `fk_prod_attr` int(11) NOT NULL, + `fk_prod_attr_val` int(11) NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_combination2val` +-- + +LOCK TABLES `llx_product_attribute_combination2val` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_combination2val` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_combination2val` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_value` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_value`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_value` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_attribute` int(11) NOT NULL, + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `value` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_attribute_value` (`fk_product_attribute`,`ref`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_value` +-- + +LOCK TABLES `llx_product_attribute_value` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_value` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_value` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_batch` +-- + +DROP TABLE IF EXISTS `llx_product_batch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_batch` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_batch` (`fk_product_stock`,`batch`), + KEY `idx_fk_product_stock` (`fk_product_stock`), + KEY `ix_fk_product_stock` (`fk_product_stock`), + KEY `idx_batch` (`batch`), + CONSTRAINT `fk_product_batch_fk_product_stock` FOREIGN KEY (`fk_product_stock`) REFERENCES `llx_product_stock` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_batch` +-- + +LOCK TABLES `llx_product_batch` WRITE; +/*!40000 ALTER TABLE `llx_product_batch` DISABLE KEYS */; +INSERT INTO `llx_product_batch` VALUES (1,'2016-07-30 13:40:39',8,NULL,NULL,'5599887766452',15,NULL),(2,'2016-07-30 13:40:12',8,NULL,NULL,'4494487766452',60,NULL),(3,'2017-02-16 00:12:09',9,NULL,NULL,'5599887766452',35,NULL); +/*!40000 ALTER TABLE `llx_product_batch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_customer_price` +-- + +DROP TABLE IF EXISTS `llx_product_customer_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_customer_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_customer_price_fk_product_fk_soc` (`fk_product`,`fk_soc`), + KEY `idx_product_customer_price_fk_user` (`fk_user`), + KEY `fk_customer_price_fk_soc` (`fk_soc`), + KEY `idx_product_customer_price_fk_soc` (`fk_soc`), + CONSTRAINT `fk_customer_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`) ON DELETE CASCADE, + CONSTRAINT `fk_customer_price_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) ON DELETE CASCADE, + CONSTRAINT `fk_product_customer_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_customer_price_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_product_customer_price_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_customer_price` +-- + +LOCK TABLES `llx_product_customer_price` WRITE; +/*!40000 ALTER TABLE `llx_product_customer_price` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_customer_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_customer_price_log` +-- + +DROP TABLE IF EXISTS `llx_product_customer_price_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_customer_price_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_customer_price_log` +-- + +LOCK TABLES `llx_product_customer_price_log` WRITE; +/*!40000 ALTER TABLE `llx_product_customer_price_log` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_customer_price_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_extrafields` +-- + +DROP TABLE IF EXISTS `llx_product_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_extrafields` +-- + +LOCK TABLES `llx_product_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_product_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_factory` +-- + +DROP TABLE IF EXISTS `llx_product_factory`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_factory` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_father` int(11) NOT NULL DEFAULT '0', + `fk_product_children` int(11) NOT NULL DEFAULT '0', + `pmp` double(24,8) DEFAULT '0.00000000', + `price` double(24,8) DEFAULT '0.00000000', + `qty` double DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_factory` (`fk_product_father`,`fk_product_children`), + KEY `idx_product_factory_fils` (`fk_product_children`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_factory` +-- + +LOCK TABLES `llx_product_factory` WRITE; +/*!40000 ALTER TABLE `llx_product_factory` DISABLE KEYS */; +INSERT INTO `llx_product_factory` VALUES (2,26,25,0.00000000,0.00000000,3),(3,27,26,0.00000000,0.00000000,2); +/*!40000 ALTER TABLE `llx_product_factory` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_fournisseur_price` +-- + +DROP TABLE IF EXISTS `llx_product_fournisseur_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_fournisseur_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `ref_fourn` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_availability` int(11) DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `quantity` double DEFAULT NULL, + `remise_percent` double NOT NULL DEFAULT '0', + `remise` double NOT NULL DEFAULT '0', + `unitprice` double(24,8) DEFAULT '0.00000000', + `charges` double(24,8) DEFAULT '0.00000000', + `tva_tx` double(6,3) NOT NULL DEFAULT '0.000', + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `info_bits` int(11) NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_supplier_price_expression` int(11) DEFAULT NULL, + `fk_price_expression` int(11) DEFAULT NULL, + `delivery_time_days` int(11) DEFAULT NULL, + `supplier_reputation` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_unitprice` double(24,8) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_price` double(24,8) DEFAULT NULL, + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_fournisseur_price_ref` (`ref_fourn`,`fk_soc`,`quantity`,`entity`), + KEY `idx_product_fournisseur_price_fk_user` (`fk_user`), + KEY `idx_product_fourn_price_fk_product` (`fk_product`,`entity`), + KEY `idx_product_fourn_price_fk_soc` (`fk_soc`,`entity`), + CONSTRAINT `fk_product_fournisseur_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_fournisseur_price_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_fournisseur_price` +-- + +LOCK TABLES `llx_product_fournisseur_price` WRITE; +/*!40000 ALTER TABLE `llx_product_fournisseur_price` DISABLE KEYS */; +INSERT INTO `llx_product_fournisseur_price` VALUES (1,'2010-07-11 18:45:42','2012-12-08 13:11:08',4,1,'ABCD',NULL,10.00000000,1,0,0,10.00000000,0.00000000,0.000,NULL,0,1,NULL,1,NULL,NULL,NULL,NULL,1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'),(2,'2016-07-30 17:34:38','2016-07-30 13:34:38',12,10,'BASIC',0,9.00000000,1,0,0,9.00000000,0.00000000,0.000,NULL,0,12,NULL,1,NULL,NULL,NULL,'FAVORITE',1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'),(3,'2017-02-02 05:17:08','2017-02-02 01:17:08',1,10,'aaa',0,100.00000000,1,10,0,100.00000000,0.00000000,12.500,NULL,0,12,NULL,1,NULL,NULL,NULL,NULL,1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'); +/*!40000 ALTER TABLE `llx_product_fournisseur_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_fournisseur_price_log` +-- + +DROP TABLE IF EXISTS `llx_product_fournisseur_price_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_fournisseur_price_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `fk_product_fournisseur` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `quantity` double DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price` double(24,8) DEFAULT NULL, + `multicurrency_unitprice` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_fournisseur_price_log` +-- + +LOCK TABLES `llx_product_fournisseur_price_log` WRITE; +/*!40000 ALTER TABLE `llx_product_fournisseur_price_log` DISABLE KEYS */; +INSERT INTO `llx_product_fournisseur_price_log` VALUES (1,'2010-07-11 18:45:42',1,10.00000000,1,1,NULL,NULL,1.00000000,NULL,NULL); +/*!40000 ALTER TABLE `llx_product_fournisseur_price_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lang` +-- + +DROP TABLE IF EXISTS `llx_product_lang`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lang` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL DEFAULT '0', + `lang` varchar(5) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `note` text COLLATE utf8_unicode_ci, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_lang` (`fk_product`,`lang`), + CONSTRAINT `fk_product_lang_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lang` +-- + +LOCK TABLES `llx_product_lang` WRITE; +/*!40000 ALTER TABLE `llx_product_lang` DISABLE KEYS */; +INSERT INTO `llx_product_lang` VALUES (1,1,'en_US','Pink dress','A beatifull pink dress','',NULL),(2,2,'en_US','Pear Pie','','',NULL),(3,3,'en_US','Cake making contribution','','',NULL),(4,4,'fr_FR','Decapsuleur','','',NULL),(5,5,'en_US','DoliDroid, Android app for Dolibarr','DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

','',NULL),(9,11,'fr_FR','hfghf','','',NULL),(10,2,'fr_FR','Product P1','','',NULL),(11,4,'en_US','Apple Pie','Nice Bio Apple Pie.
\r\n ','',NULL),(12,11,'en_US','Rollup Dolibarr','A nice rollup','',NULL),(13,10,'en_US','Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.',NULL),(14,12,'en_US','SaaS hosting of Dolibarr ERP CRM','Cloud hosting of Dolibarr ERP and CRM software','',NULL),(15,12,'fr_FR','Service SaaS Hébergement Dolibarr ERP CRM','Service SaaS d'hébergement de la solution Dolibarr ERP CRM','',NULL),(16,13,'en_US','Computer XP4523','A powerfull computer XP4523 ',NULL,NULL),(17,13,'fr_FR','Computer XP4523','A powerfull computer XP4523 ',NULL,NULL); +/*!40000 ALTER TABLE `llx_product_lang` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lot` +-- + +DROP TABLE IF EXISTS `llx_product_lot`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lot` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_product` int(11) NOT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_lot` (`fk_product`,`batch`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lot` +-- + +LOCK TABLES `llx_product_lot` WRITE; +/*!40000 ALTER TABLE `llx_product_lot` DISABLE KEYS */; +INSERT INTO `llx_product_lot` VALUES (1,1,2,'123456','2016-07-07',NULL,'2016-07-21 20:55:19','2016-12-12 10:53:58',NULL,NULL,NULL),(2,1,2,'2222','2016-07-08','2016-07-07','2016-07-21 21:00:42','2016-12-12 10:53:58',NULL,NULL,NULL),(3,1,10,'5599887766452',NULL,NULL,'2016-07-30 17:39:31','2016-12-12 10:53:58',NULL,NULL,NULL),(4,1,10,'4494487766452',NULL,NULL,'2016-07-30 17:40:12','2016-12-12 10:53:58',NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_product_lot` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lot_extrafields` +-- + +DROP TABLE IF EXISTS `llx_product_lot_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lot_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_lot_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lot_extrafields` +-- + +LOCK TABLES `llx_product_lot_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_product_lot_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_lot_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_price` +-- + +DROP TABLE IF EXISTS `llx_product_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `date_price` datetime DEFAULT NULL, + `price_level` smallint(6) DEFAULT '1', + `price` double(24,8) DEFAULT NULL, + `price_ttc` double(24,8) DEFAULT NULL, + `price_min` double(24,8) DEFAULT NULL, + `price_min_ttc` double(24,8) DEFAULT NULL, + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) NOT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `tosell` tinyint(4) DEFAULT '1', + `price_by_qty` int(11) NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_price_expression` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_price` double(24,8) DEFAULT '0.00000000', + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price_ttc` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_price_fk_user_author` (`fk_user_author`), + KEY `idx_product_price_fk_product` (`fk_product`), + CONSTRAINT `fk_product_price_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_price_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_price` +-- + +LOCK TABLES `llx_product_price` WRITE; +/*!40000 ALTER TABLE `llx_product_price` DISABLE KEYS */; +INSERT INTO `llx_product_price` VALUES (1,1,'2010-07-08 12:33:17',1,'2010-07-08 14:33:17',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(2,1,'2010-07-08 22:30:01',2,'2010-07-09 00:30:01',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(3,1,'2010-07-08 22:30:25',3,'2010-07-09 00:30:25',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(4,1,'2010-07-10 12:44:06',4,'2010-07-10 14:44:06',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(5,1,'2011-07-20 21:11:38',5,'2011-07-20 23:11:38',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',19.600,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(6,1,'2011-07-27 17:02:59',5,'2011-07-27 19:02:59',1,10.00000000,11.96000000,0.00000000,0.00000000,'HT',19.600,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(10,1,'2011-07-31 22:34:27',4,'2011-08-01 00:34:27',1,5.00000000,5.62500000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(12,1,'2013-01-13 19:24:59',11,'2013-01-13 20:24:59',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',0.000,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(13,1,'2013-03-12 09:30:24',1,'2013-03-12 10:30:24',1,100.00000000,112.50000000,90.00000000,101.25000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(14,1,'2016-07-30 13:31:29',12,'2016-07-30 17:31:29',1,9.00000000,9.00000000,9.00000000,9.00000000,'HT',0.000,NULL,0,0.000,'0',0.000,'0',12,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(15,1,'2017-02-15 23:49:00',13,'2017-02-16 03:49:00',1,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,NULL,0,0.000,'0',0.000,'0',12,0,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(16,1,'2017-08-30 15:04:04',10,'2017-08-30 19:04:04',1,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,NULL,0,0.000,'0',0.000,'0',12,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL); +/*!40000 ALTER TABLE `llx_product_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_price_by_qty` +-- + +DROP TABLE IF EXISTS `llx_product_price_by_qty`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_price_by_qty` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_price` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `remise_percent` double NOT NULL DEFAULT '0', + `remise` double NOT NULL DEFAULT '0', + `qty_min` double DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `quantity` double DEFAULT NULL, + `unitprice` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price` double(24,8) DEFAULT NULL, + `multicurrency_price_ttc` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_price_by_qty_level` (`fk_product_price`,`quantity`), + KEY `idx_product_price_by_qty_fk_product_price` (`fk_product_price`), + CONSTRAINT `fk_product_price_by_qty_fk_product_price` FOREIGN KEY (`fk_product_price`) REFERENCES `llx_product_price` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_price_by_qty` +-- + +LOCK TABLES `llx_product_price_by_qty` WRITE; +/*!40000 ALTER TABLE `llx_product_price_by_qty` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_price_by_qty` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_pricerules` +-- + +DROP TABLE IF EXISTS `llx_product_pricerules`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_pricerules` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `level` int(11) NOT NULL, + `fk_level` int(11) NOT NULL, + `var_percent` float NOT NULL, + `var_min_percent` float NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `unique_level` (`level`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_pricerules` +-- + +LOCK TABLES `llx_product_pricerules` WRITE; +/*!40000 ALTER TABLE `llx_product_pricerules` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_pricerules` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_stock` +-- + +DROP TABLE IF EXISTS `llx_product_stock`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_stock` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `reel` double DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_stock` (`fk_product`,`fk_entrepot`), + KEY `idx_product_stock_fk_product` (`fk_product`), + KEY `idx_product_stock_fk_entrepot` (`fk_entrepot`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_stock` +-- + +LOCK TABLES `llx_product_stock` WRITE; +/*!40000 ALTER TABLE `llx_product_stock` DISABLE KEYS */; +INSERT INTO `llx_product_stock` VALUES (1,'2010-07-08 22:43:51',2,2,1000,NULL),(3,'2010-07-10 23:02:20',4,2,1000,NULL),(4,'2013-01-19 17:22:48',4,1,1,NULL),(5,'2013-01-19 17:22:48',1,1,2,NULL),(6,'2013-01-19 17:22:48',11,1,-1,NULL),(7,'2013-01-19 17:31:58',2,1,-2,NULL),(8,'2016-07-30 13:40:39',10,2,75,NULL),(9,'2017-02-16 00:12:09',10,1,35,NULL); +/*!40000 ALTER TABLE `llx_product_stock` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_subproduct` +-- + +DROP TABLE IF EXISTS `llx_product_subproduct`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_subproduct` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL, + `fk_product_subproduct` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `fk_product` (`fk_product`,`fk_product_subproduct`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_subproduct` +-- + +LOCK TABLES `llx_product_subproduct` WRITE; +/*!40000 ALTER TABLE `llx_product_subproduct` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_subproduct` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_warehouse_properties` +-- + +DROP TABLE IF EXISTS `llx_product_warehouse_properties`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_warehouse_properties` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `seuil_stock_alerte` int(11) DEFAULT '0', + `desiredstock` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_warehouse_properties` +-- + +LOCK TABLES `llx_product_warehouse_properties` WRITE; +/*!40000 ALTER TABLE `llx_product_warehouse_properties` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_warehouse_properties` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet` +-- + +DROP TABLE IF EXISTS `llx_projet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dateo` date DEFAULT NULL, + `datee` date DEFAULT NULL, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `title` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_user_creat` int(11) NOT NULL, + `public` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `fk_opp_status` int(11) DEFAULT NULL, + `opp_percent` double(5,2) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `budget_amount` double(24,8) DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `fk_user_close` int(11) DEFAULT NULL, + `opp_amount` double(24,8) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `bill_time` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_ref` (`ref`,`entity`), + KEY `idx_projet_fk_soc` (`fk_soc`), + CONSTRAINT `fk_projet_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet` +-- + +LOCK TABLES `llx_projet` WRITE; +/*!40000 ALTER TABLE `llx_projet` DISABLE KEYS */; +INSERT INTO `llx_projet` VALUES (1,11,'2010-07-09 00:00:00','2015-10-05 20:51:28','2010-07-09',NULL,'PROJ1',1,'Project One','',1,0,1,NULL,NULL,NULL,'gdfgdfg','baleine',NULL,NULL,NULL,NULL,NULL,NULL,0),(2,13,'2010-07-09 00:00:00','2015-10-05 20:51:51','2010-07-09',NULL,'PROJ2',1,'Project Two','',1,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(3,1,'2010-07-09 00:00:00','2017-02-01 11:55:08','2010-07-09',NULL,'PROJINDIAN',1,'Project for Indian company move','',1,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(4,NULL,'2010-07-09 00:00:00','2010-07-08 22:50:49','2010-07-09',NULL,'PROJSHARED',1,'The Global project','',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(5,NULL,'2010-07-11 00:00:00','2017-02-01 15:01:51','2010-07-11','2011-07-14','RMLL',1,'Project management RMLL','',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(6,10,'2016-07-30 00:00:00','2016-07-30 15:53:07','2016-07-30',NULL,'PJ1607-0001',1,'PROJALICE1','The Alice project number 1',12,0,1,2,20.00,NULL,NULL,NULL,5000.00000000,NULL,NULL,8000.00000000,NULL,NULL,0),(7,10,'2016-07-30 00:00:00','2017-02-01 12:24:37','2016-07-30',NULL,'PJ1607-0002',1,'PROJALICE2','The Alice project number 2',12,0,1,6,100.00,NULL,NULL,NULL,NULL,'2017-02-01 16:24:31',12,7000.00000000,NULL,NULL,0),(8,10,'2016-07-30 00:00:00','2016-07-30 15:53:23','2016-07-30',NULL,'PJ1607-0003',1,'PROJALICE2','The Alice project number 3',12,0,1,6,100.00,NULL,NULL,NULL,NULL,NULL,NULL,3550.00000000,NULL,NULL,0),(9,4,'2016-07-31 00:00:00','2016-07-31 14:27:26','2016-07-31',NULL,'PJ1607-0004',1,'Project Top X','',12,0,1,2,27.00,NULL,NULL,NULL,NULL,NULL,NULL,4000.00000000,NULL,NULL,0); +/*!40000 ALTER TABLE `llx_projet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_projet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `priority` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_projet_extrafields` (`fk_object`) +) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_extrafields` +-- + +LOCK TABLES `llx_projet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_projet_extrafields` DISABLE KEYS */; +INSERT INTO `llx_projet_extrafields` VALUES (5,'2016-07-30 15:53:07',6,NULL,'3'),(7,'2016-07-30 15:53:23',8,NULL,'5'),(9,'2016-07-31 14:27:24',9,NULL,'0'),(13,'2017-02-01 11:55:08',3,NULL,'0'),(15,'2017-02-01 12:24:31',7,NULL,'1'),(16,'2017-02-01 15:01:51',5,NULL,'0'); +/*!40000 ALTER TABLE `llx_projet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task` +-- + +DROP TABLE IF EXISTS `llx_projet_task`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_projet` int(11) NOT NULL, + `fk_task_parent` int(11) NOT NULL DEFAULT '0', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dateo` datetime DEFAULT NULL, + `datee` datetime DEFAULT NULL, + `datev` datetime DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `duration_effective` double DEFAULT '0', + `planned_workload` double DEFAULT '0', + `progress` int(11) DEFAULT '0', + `priority` int(11) DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `rang` int(11) DEFAULT '0', + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_task_ref` (`ref`,`entity`), + KEY `idx_projet_task_fk_projet` (`fk_projet`), + KEY `idx_projet_task_fk_user_creat` (`fk_user_creat`), + KEY `idx_projet_task_fk_user_valid` (`fk_user_valid`), + CONSTRAINT `fk_projet_task_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_projet_task_fk_user_creat` FOREIGN KEY (`fk_user_creat`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_projet_task_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task` +-- + +LOCK TABLES `llx_projet_task` WRITE; +/*!40000 ALTER TABLE `llx_projet_task` DISABLE KEYS */; +INSERT INTO `llx_projet_task` VALUES (2,'2',1,5,0,'2010-07-11 16:23:53','2013-09-08 23:06:14','2010-07-11 12:00:00','2011-07-14 12:00:00',NULL,'Heberger site RMLL','',0,0,0,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(3,'TK1007-0001',1,1,0,'2014-12-21 13:52:41','2016-07-30 11:35:40','2014-12-21 16:52:00',NULL,NULL,'Analyze','',9000,36000,0,0,1,NULL,0,NULL,'gdfgdfgdf',0,NULL,NULL),(4,'TK1007-0002',1,1,0,'2014-12-21 13:55:39','2016-07-30 11:35:51','2014-12-21 16:55:00',NULL,NULL,'Specification','',7200,18000,25,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(5,'TK1007-0003',1,1,0,'2014-12-21 14:16:58','2016-07-30 11:35:59','2014-12-21 17:16:00',NULL,NULL,'Development','',0,0,0,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(6,'TK1607-0004',1,6,0,'2016-07-30 15:33:27','2016-07-30 11:34:47','2016-07-30 02:00:00',NULL,NULL,'Project preparation phase A','',75600,720000,10,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(7,'TK1607-0005',1,6,0,'2016-07-30 15:33:39','2017-01-30 11:23:39','2016-07-30 02:00:00',NULL,NULL,'Project preparation phase B','',40260,1080000,5,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(8,'TK1607-0006',1,6,0,'2016-07-30 15:33:53','2016-07-30 11:33:53','2016-07-30 02:00:00',NULL,NULL,'Project execution phase A','',0,162000,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(9,'TK1607-0007',1,6,0,'2016-07-30 15:34:09','2016-07-30 11:34:09','2016-10-27 02:00:00',NULL,NULL,'Project execution phase B','',0,2160000,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(10,'TK1007-0008',1,1,0,'2016-07-30 15:36:31','2016-07-30 11:36:31','2016-07-30 02:00:00',NULL,NULL,'Tests','',0,316800,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL); +/*!40000 ALTER TABLE `llx_projet_task` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task_extrafields` +-- + +DROP TABLE IF EXISTS `llx_projet_task_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_projet_task_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task_extrafields` +-- + +LOCK TABLES `llx_projet_task_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_projet_task_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_task_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task_time` +-- + +DROP TABLE IF EXISTS `llx_projet_task_time`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task_time` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_task` int(11) NOT NULL, + `task_date` date DEFAULT NULL, + `task_datehour` datetime DEFAULT NULL, + `task_date_withhour` int(11) DEFAULT '0', + `task_duration` double DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `thm` double(24,8) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `invoice_id` int(11) DEFAULT NULL, + `invoice_line_id` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `datec` date DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_projet_task_time_task` (`fk_task`), + KEY `idx_projet_task_time_date` (`task_date`), + KEY `idx_projet_task_time_datehour` (`task_datehour`) +) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task_time` +-- + +LOCK TABLES `llx_projet_task_time` WRITE; +/*!40000 ALTER TABLE `llx_projet_task_time` DISABLE KEYS */; +INSERT INTO `llx_projet_task_time` VALUES (2,4,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,'',NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(3,4,'2014-12-18','2014-12-18 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(4,3,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(5,3,'2014-12-21','2014-12-21 12:00:00',0,1800,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(6,3,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(7,6,'2016-07-25','2016-07-25 00:00:00',0,18000,12,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(8,6,'2016-07-26','2016-07-26 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(9,6,'2016-07-27','2016-07-27 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(10,6,'2016-07-29','2016-07-29 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(11,6,'2016-07-31','2016-07-31 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(12,7,'2016-07-25','2016-07-25 00:00:00',0,10800,12,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(13,7,'2016-07-26','2016-07-26 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(14,7,'2016-07-27','2016-07-27 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(15,7,'2017-01-30','2017-01-30 10:00:00',1,660,12,NULL,'',NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'); +/*!40000 ALTER TABLE `llx_projet_task_time` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_taskdet` +-- + +DROP TABLE IF EXISTS `llx_projet_taskdet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_taskdet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_task` int(11) NOT NULL DEFAULT '0', + `fk_product` int(11) NOT NULL DEFAULT '0', + `qty_planned` double DEFAULT NULL, + `qty_used` double DEFAULT NULL, + `qty_deleted` double DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `pmp` double(24,8) DEFAULT '0.00000000', + `price` double(24,8) DEFAULT '0.00000000', + `fk_statut` int(11) NOT NULL DEFAULT '0', + `note_public` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_taskdet` (`fk_task`,`fk_product`), + KEY `idx_projet_taskdet_fk_task` (`fk_task`), + KEY `idx_projet_taskdet_fk_product` (`fk_product`), + CONSTRAINT `fk_projet_taskdet_fk_task` FOREIGN KEY (`fk_task`) REFERENCES `llx_projet_task` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_taskdet` +-- + +LOCK TABLES `llx_projet_taskdet` WRITE; +/*!40000 ALTER TABLE `llx_projet_taskdet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_taskdet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_taskdet_equipement` +-- + +DROP TABLE IF EXISTS `llx_projet_taskdet_equipement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_taskdet_equipement` ( + `fk_equipement` int(11) NOT NULL DEFAULT '0', + `fk_projet_taskdet` int(11) NOT NULL DEFAULT '0', + UNIQUE KEY `uk_factory_equipement` (`fk_equipement`,`fk_projet_taskdet`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_taskdet_equipement` +-- + +LOCK TABLES `llx_projet_taskdet_equipement` WRITE; +/*!40000 ALTER TABLE `llx_projet_taskdet_equipement` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_taskdet_equipement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal` +-- + +DROP TABLE IF EXISTS `llx_propal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_client` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `datep` date DEFAULT NULL, + `fin_validite` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `price` double DEFAULT '0', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_livraison` date DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `fk_availability` int(11) DEFAULT NULL, + `fk_delivery_address` int(11) DEFAULT NULL, + `fk_input_reason` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_propal_ref` (`ref`,`entity`), + KEY `idx_propal_fk_soc` (`fk_soc`), + KEY `idx_propal_fk_user_author` (`fk_user_author`), + KEY `idx_propal_fk_user_valid` (`fk_user_valid`), + KEY `idx_propal_fk_user_cloture` (`fk_user_cloture`), + KEY `idx_propal_fk_projet` (`fk_projet`), + KEY `idx_propal_fk_account` (`fk_account`), + KEY `idx_propal_fk_currency` (`fk_currency`), + CONSTRAINT `fk_propal_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_propal_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_propal_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_propal_fk_user_cloture` FOREIGN KEY (`fk_user_cloture`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_propal_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal` +-- + +LOCK TABLES `llx_propal` WRITE; +/*!40000 ALTER TABLE `llx_propal` DISABLE KEYS */; +INSERT INTO `llx_propal` VALUES (1,2,NULL,'2016-07-30 15:56:45','PR1007-0001',1,NULL,NULL,'','2010-07-09 01:33:49','2016-07-09','2016-07-24 12:00:00','2017-08-08 14:24:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,30.00000000,3.84000000,0.00000000,0.00000000,33.84000000,NULL,NULL,1,0,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(2,1,NULL,'2016-07-30 15:56:54','PR1007-0002',1,NULL,NULL,'','2010-07-10 02:11:44','2016-07-10','2016-07-25 12:00:00','2016-07-10 02:12:55','2017-07-20 15:23:12',1,NULL,1,1,2,0,NULL,NULL,0,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,NULL,NULL,1,1,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(3,4,NULL,'2016-07-30 15:56:54','PR1007-0003',1,NULL,NULL,'','2010-07-18 11:35:11','2016-07-18','2016-08-02 12:00:00','2016-07-18 11:36:18','2017-07-20 15:21:15',1,NULL,1,1,2,0,NULL,NULL,0,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(5,19,NULL,'2016-07-30 15:56:54','PR1302-0005',1,NULL,NULL,'','2013-02-17 15:39:56','2016-02-17','2016-03-04 12:00:00','2018-11-15 23:27:10',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,10.00000000,2.00000000,0.00000000,0.00000000,12.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(6,19,NULL,'2016-07-30 15:56:54','PR1302-0006',1,NULL,NULL,'','2013-02-17 15:40:12','2016-02-17','2016-03-04 12:00:00',NULL,NULL,1,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(7,19,NULL,'2017-01-29 17:49:33','PR1302-0007',1,NULL,NULL,'','2013-02-17 15:41:15','2016-02-17','2016-03-04 12:00:00','2017-01-29 21:49:33',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,400.00000000,0.00000000,400.00000000,NULL),(8,19,NULL,'2016-07-30 15:56:39','PR1302-0008',1,NULL,NULL,'','2013-02-17 15:43:39','2016-02-17','2016-03-04 12:00:00',NULL,NULL,1,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(10,7,NULL,'2016-07-30 15:57:25','(PROV10)',1,NULL,NULL,'','2015-11-15 23:37:08','2015-11-15','2016-11-30 12:00:00',NULL,NULL,12,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,3,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,0,'',NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(11,1,NULL,'2017-02-16 00:44:58','PR1702-0009',1,NULL,NULL,'','2017-02-16 01:44:58','2015-05-13','2015-05-28 12:00:00','2017-02-16 01:44:58',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,60.00000000,0.00000000,0.00000000,0.00000000,60.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,60.00000000,0.00000000,60.00000000,NULL),(12,7,NULL,'2017-02-16 00:45:44','PR1702-0010',1,NULL,NULL,'','2017-02-16 01:45:44','2015-06-24','2015-07-09 12:00:00','2017-02-16 01:45:44',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,832.00000000,0.00000000,0.00000000,0.00000000,832.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,832.00000000,0.00000000,832.00000000,NULL),(13,26,NULL,'2017-02-16 00:46:15','PR1702-0011',1,NULL,NULL,'','2017-02-16 01:46:15','2015-04-03','2015-04-18 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,242.00000000,0.00000000,0.00000000,0.00000000,242.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,242.00000000,0.00000000,242.00000000,NULL),(14,3,NULL,'2017-02-16 00:46:15','PR1702-0012',1,NULL,NULL,'','2017-02-16 01:46:15','2016-06-19','2016-07-04 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,245.00000000,0.00000000,0.00000000,0.00000000,245.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,245.00000000,0.00000000,245.00000000,NULL),(15,26,NULL,'2017-02-16 00:46:15','PR1702-0013',1,NULL,NULL,'','2017-02-16 01:46:15','2016-05-01','2016-05-16 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,940.00000000,0.00000000,0.00000000,0.00000000,940.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,940.00000000,0.00000000,940.00000000,NULL),(16,1,NULL,'2017-02-16 00:46:15','PR1702-0014',1,NULL,NULL,'','2017-02-16 01:46:15','2015-05-13','2015-05-28 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,125.00000000,0.00000000,0.00000000,0.00000000,125.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,125.00000000,0.00000000,125.00000000,NULL),(17,1,NULL,'2017-02-16 00:46:15','PR1702-0015',1,NULL,NULL,'','2017-02-16 01:46:15','2016-07-23','2016-08-07 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,163.00000000,0.00000000,0.00000000,0.00000000,163.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,163.00000000,0.00000000,163.00000000,NULL),(18,26,NULL,'2017-02-16 00:46:15','PR1702-0016',1,NULL,NULL,'','2017-02-16 01:46:15','2015-02-13','2015-02-28 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,900.00000000,0.00000000,0.00000000,0.00000000,900.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,900.00000000,0.00000000,900.00000000,NULL),(19,12,NULL,'2017-02-16 00:46:15','PR1702-0017',1,NULL,NULL,'','2017-02-16 01:46:15','2015-03-30','2015-04-14 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,200.00000000,0.00000000,200.00000000,NULL),(20,26,NULL,'2017-02-16 00:46:15','PR1702-0018',1,NULL,NULL,'','2017-02-16 01:46:15','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,830.00000000,0.00000000,0.00000000,0.00000000,830.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,830.00000000,0.00000000,830.00000000,NULL),(21,1,NULL,'2017-02-16 00:47:09','PR1702-0019',1,NULL,NULL,'','2017-02-16 01:46:15','2015-09-23','2018-10-08 12:00:00','2017-02-16 04:47:09',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,89.00000000,0.00000000,0.00000000,0.00000000,89.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,89.00000000,0.00000000,89.00000000,NULL),(22,26,NULL,'2017-02-16 00:47:13','PR1702-0020',1,NULL,NULL,'','2017-02-16 01:46:15','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,0,0,NULL,NULL,0,70.00000000,0.00000000,0.00000000,0.00000000,70.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,70.00000000,0.00000000,70.00000000,NULL),(23,12,NULL,'2017-02-17 12:07:18','PR1702-0021',1,NULL,NULL,'','2017-02-16 01:46:17','2016-04-03','2016-04-18 12:00:00','2017-02-17 16:07:18',NULL,2,NULL,12,NULL,1,0,NULL,NULL,0,715.00000000,0.00000000,0.00000000,0.00000000,715.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,715.00000000,0.00000000,715.00000000,NULL),(24,7,NULL,'2017-02-16 00:46:17','PR1702-0022',1,NULL,NULL,'','2017-02-16 01:46:17','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:17',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,250.00000000,0.00000000,0.00000000,0.00000000,250.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,250.00000000,0.00000000,250.00000000,NULL),(25,3,NULL,'2017-02-16 00:47:29','PR1702-0023',1,NULL,NULL,'','2017-02-16 01:46:17','2016-07-09','2016-07-24 12:00:00','2017-02-16 01:46:17','2017-02-16 04:47:29',1,NULL,1,12,4,0,NULL,NULL,0,1018.00000000,0.00000000,0.00000000,0.00000000,1018.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1018.00000000,0.00000000,1018.00000000,NULL),(26,1,NULL,'2017-02-16 00:46:18','PR1702-0024',1,NULL,NULL,'','2017-02-16 01:46:17','2016-04-03','2016-04-18 12:00:00','2017-02-16 01:46:18',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,710.00000000,0.00000000,0.00000000,0.00000000,710.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,710.00000000,0.00000000,710.00000000,NULL),(27,6,NULL,'2017-02-16 00:46:18','PR1702-0025',1,NULL,NULL,'','2017-02-16 01:46:18','2016-11-12','2016-11-27 12:00:00','2017-02-16 01:46:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,300.00000000,0.00000000,300.00000000,NULL),(28,19,NULL,'2017-02-16 00:46:31','PR1702-0026',1,NULL,NULL,'','2017-02-16 01:46:18','2015-07-30','2015-08-14 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:31',2,NULL,2,12,2,0,NULL,NULL,0,440.00000000,0.00000000,0.00000000,0.00000000,440.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,440.00000000,0.00000000,440.00000000,NULL),(29,1,NULL,'2017-02-16 00:46:37','PR1702-0027',1,NULL,NULL,'','2017-02-16 01:46:18','2015-07-23','2015-08-07 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:37',2,NULL,2,12,2,0,NULL,NULL,0,1000.00000000,0.00000000,0.00000000,0.00000000,1000.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1000.00000000,0.00000000,1000.00000000,NULL),(30,1,NULL,'2017-02-16 00:46:42','PR1702-0028',1,NULL,NULL,'','2017-02-16 01:46:18','2016-05-01','2016-05-16 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:42',2,NULL,2,12,3,0,NULL,NULL,0,1200.00000000,0.00000000,0.00000000,0.00000000,1200.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1200.00000000,0.00000000,1200.00000000,NULL),(31,11,NULL,'2017-02-16 00:46:18','PR1702-0029',1,NULL,NULL,'','2017-02-16 01:46:18','2016-06-24','2016-07-09 12:00:00','2017-02-16 01:46:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,720.00000000,0.00000000,0.00000000,0.00000000,720.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,720.00000000,0.00000000,720.00000000,NULL),(32,19,NULL,'2017-02-16 00:46:18','PR1702-0030',1,NULL,NULL,'','2017-02-16 01:46:18','2016-11-12','2016-11-27 12:00:00','2017-02-16 01:46:18',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,608.00000000,0.00000000,0.00000000,0.00000000,608.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,608.00000000,0.00000000,608.00000000,NULL); +/*!40000 ALTER TABLE `llx_propal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal_extrafields` +-- + +DROP TABLE IF EXISTS `llx_propal_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_propal_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal_extrafields` +-- + +LOCK TABLES `llx_propal_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_propal_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propal_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal_merge_pdf_product` +-- + +DROP TABLE IF EXISTS `llx_propal_merge_pdf_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal_merge_pdf_product` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL, + `file_name` varchar(200) COLLATE utf8_unicode_ci NOT NULL, + `lang` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal_merge_pdf_product` +-- + +LOCK TABLES `llx_propal_merge_pdf_product` WRITE; +/*!40000 ALTER TABLE `llx_propal_merge_pdf_product` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propal_merge_pdf_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propaldet` +-- + +DROP TABLE IF EXISTS `llx_propaldet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propaldet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_propal` int(11) DEFAULT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_remise_except` int(11) DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `price` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `special_code` int(10) unsigned DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `idx_propaldet_fk_propal` (`fk_propal`), + KEY `idx_propaldet_fk_product` (`fk_product`), + KEY `fk_propaldet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_propaldet_fk_propal` FOREIGN KEY (`fk_propal`) REFERENCES `llx_propal` (`rowid`), + CONSTRAINT `fk_propaldet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=109 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propaldet` +-- + +LOCK TABLES `llx_propaldet` WRITE; +/*!40000 ALTER TABLE `llx_propaldet` DISABLE KEYS */; +INSERT INTO `llx_propaldet` VALUES (1,1,NULL,NULL,NULL,'Une machine à café',NULL,12.500,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,1.25000000,0.00000000,0.00000000,11.25000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(2,2,NULL,NULL,NULL,'Product 1',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(3,2,NULL,2,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(4,3,NULL,NULL,NULL,'A new marvelous product',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(5,1,NULL,5,NULL,'cccc',NULL,19.600,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,1.96000000,0.00000000,0.00000000,11.96000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(11,1,NULL,4,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(12,1,NULL,4,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(13,1,NULL,4,NULL,'',NULL,12.500,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,0.63000000,0.00000000,0.00000000,5.63000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(24,5,NULL,NULL,NULL,'On demand Apple pie',NULL,20.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,2.00000000,0.00000000,0.00000000,12.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(25,7,NULL,NULL,NULL,'Help to setup Magic Food computer',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,400.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'',400.00000000,400.00000000,0.00000000,400.00000000),(26,11,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(27,11,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(28,12,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,5.00000000,0.00000000,5.00000000),(29,12,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(30,12,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(31,12,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(32,12,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(33,13,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(34,13,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(35,13,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(36,13,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(37,14,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(38,14,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(39,15,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(40,15,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(41,15,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(42,15,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(43,16,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(44,16,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(45,16,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(46,17,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(47,17,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(48,17,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(49,17,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(50,17,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(51,18,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(52,18,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(53,18,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(54,19,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(55,19,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(56,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(57,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(58,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(59,20,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(60,20,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(61,20,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(62,20,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(63,21,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(64,21,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,9.00000000,9.00000000,0.00000000,0.00000000,0.00000000,9.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,9.00000000,0.00000000,9.00000000),(65,21,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(66,21,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(67,22,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(68,22,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(69,23,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(70,23,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(71,23,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(72,23,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(73,24,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,5.00000000,0.00000000,5.00000000),(74,24,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(75,24,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(76,24,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(77,25,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(78,25,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(79,25,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(80,25,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(81,25,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(82,26,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(83,26,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(84,26,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(85,26,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(86,26,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(87,27,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(88,27,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(89,28,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(90,28,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,10.00000000,30.00000000,0.00000000,0.00000000,0.00000000,30.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,30.00000000,0.00000000,30.00000000),(91,28,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(92,28,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(93,29,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(94,29,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(95,29,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(96,30,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(97,30,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(98,30,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(99,30,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(100,31,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,5.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,20.00000000,0.00000000,20.00000000),(101,31,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(102,31,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(103,31,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(104,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(105,32,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(106,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(107,32,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(108,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000); +/*!40000 ALTER TABLE `llx_propaldet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propaldet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_propaldet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propaldet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_propaldet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propaldet_extrafields` +-- + +LOCK TABLES `llx_propaldet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_propaldet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propaldet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_resource` +-- + +DROP TABLE IF EXISTS `llx_resource`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_resource` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `asset_number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_code_type_resource` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` text COLLATE utf8_unicode_ci, + `note_private` text COLLATE utf8_unicode_ci, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_resource_ref` (`ref`,`entity`), + KEY `fk_code_type_resource_idx` (`fk_code_type_resource`), + KEY `idx_resource_fk_country` (`fk_country`), + CONSTRAINT `fk_resource_fk_country` FOREIGN KEY (`fk_country`) REFERENCES `llx_c_country` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_resource` +-- + +LOCK TABLES `llx_resource` WRITE; +/*!40000 ALTER TABLE `llx_resource` DISABLE KEYS */; +INSERT INTO `llx_resource` VALUES (1,1,'Car Kangoo 1',NULL,'Car number 1 - Num XDF-45-GH','RES_CARS',NULL,NULL,'2017-02-20 16:44:12',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(2,1,'Car Kangoo 2',NULL,'Car number 2 - Num GHY-78-JJ','RES_CARS',NULL,NULL,'2017-02-20 16:44:01',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(3,1,'Meeting room - 14p',NULL,'Meeting room
\r\n14 places','RES_ROOMS',NULL,NULL,'2017-02-20 16:44:38',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(4,1,'Meeting room - 8p',NULL,'Meeting room
\r\n8 places','RES_ROOMS',NULL,NULL,'2017-02-20 16:45:00',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_resource` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_resource_extrafields` +-- + +DROP TABLE IF EXISTS `llx_resource_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_resource_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_resource_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_resource_extrafields` +-- + +LOCK TABLES `llx_resource_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_resource_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_resource_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_rights_def` +-- + +DROP TABLE IF EXISTS `llx_rights_def`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_rights_def` ( + `id` int(11) NOT NULL DEFAULT '0', + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `module` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `perms` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `subperms` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL, + `bydefault` tinyint(4) DEFAULT '0', + PRIMARY KEY (`id`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_rights_def` +-- + +LOCK TABLES `llx_rights_def` WRITE; +/*!40000 ALTER TABLE `llx_rights_def` DISABLE KEYS */; +INSERT INTO `llx_rights_def` VALUES (11,'Read invoices','facture',1,'lire',NULL,'a',0),(11,'Lire les factures','facture',2,'lire',NULL,'a',1),(12,'Create and update invoices','facture',1,'creer',NULL,'a',0),(12,'Creer/modifier les factures','facture',2,'creer',NULL,'a',0),(13,'Devalidate invoices','facture',1,'invoice_advance','unvalidate','a',0),(13,'Dévalider les factures','facture',2,'invoice_advance','unvalidate','a',0),(14,'Validate invoices','facture',1,'invoice_advance','validate','a',0),(14,'Valider les factures','facture',2,'valider',NULL,'a',0),(15,'Send invoices by email','facture',1,'invoice_advance','send','a',0),(15,'Envoyer les factures par mail','facture',2,'invoice_advance','send','a',0),(16,'Issue payments on invoices','facture',1,'paiement',NULL,'a',0),(16,'Emettre des paiements sur les factures','facture',2,'paiement',NULL,'a',0),(19,'Delete invoices','facture',1,'supprimer',NULL,'a',0),(19,'Supprimer les factures','facture',2,'supprimer',NULL,'a',0),(21,'Lire les propositions commerciales','propale',1,'lire',NULL,'r',1),(21,'Lire les propositions commerciales','propale',2,'lire',NULL,'r',1),(22,'Creer/modifier les propositions commerciales','propale',1,'creer',NULL,'w',0),(22,'Creer/modifier les propositions commerciales','propale',2,'creer',NULL,'w',0),(24,'Valider les propositions commerciales','propale',1,'propal_advance','validate','d',0),(24,'Valider les propositions commerciales','propale',2,'valider',NULL,'d',0),(25,'Envoyer les propositions commerciales aux clients','propale',1,'propal_advance','send','d',0),(25,'Envoyer les propositions commerciales aux clients','propale',2,'propal_advance','send','d',0),(26,'Cloturer les propositions commerciales','propale',1,'cloturer',NULL,'d',0),(26,'Cloturer les propositions commerciales','propale',2,'cloturer',NULL,'d',0),(27,'Supprimer les propositions commerciales','propale',1,'supprimer',NULL,'d',0),(27,'Supprimer les propositions commerciales','propale',2,'supprimer',NULL,'d',0),(28,'Exporter les propositions commerciales et attributs','propale',1,'export',NULL,'r',0),(28,'Exporter les propositions commerciales et attributs','propale',2,'export',NULL,'r',0),(31,'Lire les produits','produit',1,'lire',NULL,'r',1),(31,'Lire les produits','produit',2,'lire',NULL,'r',1),(32,'Creer/modifier les produits','produit',1,'creer',NULL,'w',0),(32,'Creer/modifier les produits','produit',2,'creer',NULL,'w',0),(34,'Supprimer les produits','produit',1,'supprimer',NULL,'d',0),(34,'Supprimer les produits','produit',2,'supprimer',NULL,'d',0),(38,'Exporter les produits','produit',1,'export',NULL,'r',0),(38,'Exporter les produits','produit',2,'export',NULL,'r',0),(41,'Read projects and tasks (shared projects or projects I am contact for). Can also enter time consumed on assigned tasks (timesheet)','projet',1,'lire',NULL,'r',1),(42,'Create/modify projects and tasks (shared projects or projects I am contact for)','projet',1,'creer',NULL,'w',0),(44,'Delete project and tasks (shared projects or projects I am contact for)','projet',1,'supprimer',NULL,'d',0),(45,'Export projects','projet',1,'export',NULL,'d',0),(61,'Lire les fiches d\'intervention','ficheinter',1,'lire',NULL,'r',1),(62,'Creer/modifier les fiches d\'intervention','ficheinter',1,'creer',NULL,'w',0),(64,'Supprimer les fiches d\'intervention','ficheinter',1,'supprimer',NULL,'d',0),(67,'Exporter les fiches interventions','ficheinter',1,'export',NULL,'r',0),(68,'Envoyer les fiches d\'intervention par courriel','ficheinter',1,'ficheinter_advance','send','r',0),(69,'Valider les fiches d\'intervention ','ficheinter',1,'ficheinter_advance','validate','a',0),(70,'Dévalider les fiches d\'intervention','ficheinter',1,'ficheinter_advance','unvalidate','a',0),(71,'Read members\' card','adherent',1,'lire',NULL,'r',0),(72,'Create/modify members (need also user module permissions if member linked to a user)','adherent',1,'creer',NULL,'w',0),(74,'Remove members','adherent',1,'supprimer',NULL,'d',0),(75,'Setup types of membership','adherent',1,'configurer',NULL,'w',0),(76,'Export members','adherent',1,'export',NULL,'r',0),(78,'Read subscriptions','adherent',1,'cotisation','lire','r',0),(79,'Create/modify/remove subscriptions','adherent',1,'cotisation','creer','w',0),(81,'Lire les commandes clients','commande',1,'lire',NULL,'r',0),(82,'Creer/modifier les commandes clients','commande',1,'creer',NULL,'w',0),(84,'Valider les commandes clients','commande',1,'order_advance','validate','d',0),(86,'Envoyer les commandes clients','commande',1,'order_advance','send','d',0),(87,'Cloturer les commandes clients','commande',1,'cloturer',NULL,'d',0),(88,'Annuler les commandes clients','commande',1,'order_advance','annuler','d',0),(89,'Supprimer les commandes clients','commande',1,'supprimer',NULL,'d',0),(91,'Lire les charges','tax',1,'charges','lire','r',0),(91,'Lire les charges','tax',2,'charges','lire','r',1),(92,'Creer/modifier les charges','tax',1,'charges','creer','w',0),(92,'Creer/modifier les charges','tax',2,'charges','creer','w',0),(93,'Supprimer les charges','tax',1,'charges','supprimer','d',0),(93,'Supprimer les charges','tax',2,'charges','supprimer','d',0),(94,'Exporter les charges','tax',1,'charges','export','r',0),(94,'Exporter les charges','tax',2,'charges','export','r',0),(101,'Lire les expeditions','expedition',1,'lire',NULL,'r',1),(102,'Creer modifier les expeditions','expedition',1,'creer',NULL,'w',0),(104,'Valider les expeditions','expedition',1,'shipping_advance','validate','d',0),(105,'Envoyer les expeditions aux clients','expedition',1,'shipping_advance','send','d',0),(106,'Exporter les expeditions','expedition',1,'shipment','export','r',0),(109,'Supprimer les expeditions','expedition',1,'supprimer',NULL,'d',0),(111,'Lire les comptes bancaires','banque',1,'lire',NULL,'r',0),(111,'Lire les comptes bancaires','banque',2,'lire',NULL,'r',1),(112,'Creer/modifier montant/supprimer ecriture bancaire','banque',1,'modifier',NULL,'w',0),(112,'Creer/modifier montant/supprimer ecriture bancaire','banque',2,'modifier',NULL,'w',0),(113,'Configurer les comptes bancaires (creer, gerer categories)','banque',1,'configurer',NULL,'a',0),(113,'Configurer les comptes bancaires (creer, gerer categories)','banque',2,'configurer',NULL,'a',0),(114,'Rapprocher les ecritures bancaires','banque',1,'consolidate',NULL,'w',0),(114,'Rapprocher les ecritures bancaires','banque',2,'consolidate',NULL,'w',0),(115,'Exporter transactions et releves','banque',1,'export',NULL,'r',0),(115,'Exporter transactions et releves','banque',2,'export',NULL,'r',0),(116,'Virements entre comptes','banque',1,'transfer',NULL,'w',0),(116,'Virements entre comptes','banque',2,'transfer',NULL,'w',0),(117,'Gerer les envois de cheques','banque',1,'cheque',NULL,'w',0),(117,'Gerer les envois de cheques','banque',2,'cheque',NULL,'w',0),(121,'Read third parties','societe',1,'lire',NULL,'r',0),(121,'Lire les societes','societe',2,'lire',NULL,'r',1),(122,'Create and update third parties','societe',1,'creer',NULL,'w',0),(122,'Creer modifier les societes','societe',2,'creer',NULL,'w',0),(125,'Delete third parties','societe',1,'supprimer',NULL,'d',0),(125,'Supprimer les societes','societe',2,'supprimer',NULL,'d',0),(126,'Export third parties','societe',1,'export',NULL,'r',0),(126,'Exporter les societes','societe',2,'export',NULL,'r',0),(141,'Read all projects and tasks (also private projects I am not contact for)','projet',1,'all','lire','r',0),(142,'Create/modify all projects and tasks (also private projects I am not contact for)','projet',1,'all','creer','w',0),(144,'Delete all projects and tasks (also private projects I am not contact for)','projet',1,'all','supprimer','d',0),(151,'Read withdrawals','prelevement',1,'bons','lire','r',1),(152,'Create/modify a withdrawals','prelevement',1,'bons','creer','w',0),(153,'Send withdrawals to bank','prelevement',1,'bons','send','a',0),(154,'credit/refuse withdrawals','prelevement',1,'bons','credit','a',0),(161,'Lire les contrats','contrat',1,'lire',NULL,'r',1),(162,'Creer / modifier les contrats','contrat',1,'creer',NULL,'w',0),(163,'Activer un service d\'un contrat','contrat',1,'activer',NULL,'w',0),(164,'Desactiver un service d\'un contrat','contrat',1,'desactiver',NULL,'w',0),(165,'Supprimer un contrat','contrat',1,'supprimer',NULL,'d',0),(167,'Export contracts','contrat',1,'export',NULL,'r',0),(221,'Consulter les mailings','mailing',1,'lire',NULL,'r',1),(221,'Consulter les mailings','mailing',2,'lire',NULL,'r',1),(222,'Creer/modifier les mailings (sujet, destinataires...)','mailing',1,'creer',NULL,'w',0),(222,'Creer/modifier les mailings (sujet, destinataires...)','mailing',2,'creer',NULL,'w',0),(223,'Valider les mailings (permet leur envoi)','mailing',1,'valider',NULL,'w',0),(223,'Valider les mailings (permet leur envoi)','mailing',2,'valider',NULL,'w',0),(229,'Supprimer les mailings','mailing',1,'supprimer',NULL,'d',0),(229,'Supprimer les mailings','mailing',2,'supprimer',NULL,'d',0),(237,'View recipients and info','mailing',1,'mailing_advance','recipient','r',0),(237,'View recipients and info','mailing',2,'mailing_advance','recipient','r',0),(238,'Manually send mailings','mailing',1,'mailing_advance','send','w',0),(238,'Manually send mailings','mailing',2,'mailing_advance','send','w',0),(239,'Delete mailings after validation and/or sent','mailing',1,'mailing_advance','delete','d',0),(239,'Delete mailings after validation and/or sent','mailing',2,'mailing_advance','delete','d',0),(241,'Lire les categories','categorie',1,'lire',NULL,'r',1),(242,'Creer/modifier les categories','categorie',1,'creer',NULL,'w',0),(243,'Supprimer les categories','categorie',1,'supprimer',NULL,'d',0),(251,'Consulter les autres utilisateurs','user',1,'user','lire','r',0),(252,'Consulter les permissions des autres utilisateurs','user',1,'user_advance','readperms','r',0),(253,'Creer/modifier utilisateurs internes et externes','user',1,'user','creer','w',0),(254,'Creer/modifier utilisateurs externes seulement','user',1,'user_advance','write','w',0),(255,'Modifier le mot de passe des autres utilisateurs','user',1,'user','password','w',0),(256,'Supprimer ou desactiver les autres utilisateurs','user',1,'user','supprimer','d',0),(262,'Read all third parties by internal users (otherwise only if commercial contact). Not effective for external users (limited to themselves).','societe',1,'client','voir','r',0),(262,'Consulter tous les tiers par utilisateurs internes (sinon uniquement si contact commercial). Non effectif pour utilisateurs externes (tjs limités à eux-meme).','societe',2,'client','voir','r',1),(281,'Read contacts','societe',1,'contact','lire','r',0),(281,'Lire les contacts','societe',2,'contact','lire','r',1),(282,'Create and update contact','societe',1,'contact','creer','w',0),(282,'Creer modifier les contacts','societe',2,'contact','creer','w',0),(283,'Delete contacts','societe',1,'contact','supprimer','d',0),(283,'Supprimer les contacts','societe',2,'contact','supprimer','d',0),(286,'Export contacts','societe',1,'contact','export','d',0),(286,'Exporter les contacts','societe',2,'contact','export','d',0),(300,'Read barcodes','barcode',1,'lire_advance',NULL,'r',1),(301,'Create/modify barcodes','barcode',1,'creer_advance',NULL,'w',0),(331,'Lire les bookmarks','bookmark',1,'lire',NULL,'r',0),(332,'Creer/modifier les bookmarks','bookmark',1,'creer',NULL,'r',0),(333,'Supprimer les bookmarks','bookmark',1,'supprimer',NULL,'r',0),(341,'Consulter ses propres permissions','user',1,'self_advance','readperms','r',0),(342,'Creer/modifier ses propres infos utilisateur','user',1,'self','creer','w',0),(343,'Modifier son propre mot de passe','user',1,'self','password','w',0),(344,'Modifier ses propres permissions','user',1,'self_advance','writeperms','w',0),(351,'Consulter les groupes','user',1,'group_advance','read','r',0),(352,'Consulter les permissions des groupes','user',1,'group_advance','readperms','r',0),(353,'Creer/modifier les groupes et leurs permissions','user',1,'group_advance','write','w',0),(354,'Supprimer ou desactiver les groupes','user',1,'group_advance','delete','d',0),(358,'Exporter les utilisateurs','user',1,'user','export','r',0),(501,'Read employee contracts/salaries','salaries',1,'read',NULL,'r',0),(502,'Create/modify employee contracts/salaries','salaries',1,'write',NULL,'w',0),(511,'Read payment of salaries','salaries',1,'payment','read','w',0),(512,'Create/modify payment of salaries','salaries',1,'payment','write','w',0),(514,'Delete contracts/salaries','salaries',1,'delete',NULL,'d',0),(517,'Export employee contracts and salaries payments','salaries',1,'export',NULL,'r',0),(520,'Read loans','loan',1,'read',NULL,'r',0),(522,'Create/modify loans','loan',1,'write',NULL,'w',0),(524,'Delete loans','loan',1,'delete',NULL,'d',0),(525,'Access loan calculator','loan',1,'calc',NULL,'r',0),(527,'Export loans','loan',1,'export',NULL,'r',0),(531,'Lire les services','service',1,'lire',NULL,'r',0),(532,'Creer/modifier les services','service',1,'creer',NULL,'w',0),(534,'Supprimer les services','service',1,'supprimer',NULL,'d',0),(538,'Exporter les services','service',1,'export',NULL,'r',0),(701,'Lire les dons','don',1,'lire',NULL,'r',1),(701,'Lire les dons','don',2,'lire',NULL,'r',1),(702,'Creer/modifier les dons','don',1,'creer',NULL,'w',0),(702,'Creer/modifier les dons','don',2,'creer',NULL,'w',0),(703,'Supprimer les dons','don',1,'supprimer',NULL,'d',0),(703,'Supprimer les dons','don',2,'supprimer',NULL,'d',0),(771,'Read expense reports (yours and your subordinates)','expensereport',1,'lire',NULL,'r',1),(772,'Create/modify expense reports','expensereport',1,'creer',NULL,'w',0),(773,'Delete expense reports','expensereport',1,'supprimer',NULL,'d',0),(774,'Read all expense reports','expensereport',1,'readall',NULL,'r',1),(775,'Approve expense reports','expensereport',1,'approve',NULL,'w',0),(776,'Pay expense reports','expensereport',1,'to_paid',NULL,'w',0),(777,'Read expense reports of everybody','expensereport',1,'readall',NULL,'r',1),(778,'Create expense reports for everybody','expensereport',1,'writeall_advance',NULL,'w',0),(779,'Export expense reports','expensereport',1,'export',NULL,'r',0),(1001,'Lire les stocks','stock',1,'lire',NULL,'r',1),(1002,'Creer/Modifier les stocks','stock',1,'creer',NULL,'w',0),(1003,'Supprimer les stocks','stock',1,'supprimer',NULL,'d',0),(1004,'Lire mouvements de stocks','stock',1,'mouvement','lire','r',1),(1005,'Creer/modifier mouvements de stocks','stock',1,'mouvement','creer','w',0),(1101,'Lire les bons de livraison','expedition',1,'livraison','lire','r',1),(1102,'Creer modifier les bons de livraison','expedition',1,'livraison','creer','w',0),(1104,'Valider les bons de livraison','expedition',1,'livraison_advance','validate','d',0),(1109,'Supprimer les bons de livraison','expedition',1,'livraison','supprimer','d',0),(1121,'Read supplier proposals','supplier_proposal',1,'lire',NULL,'w',1),(1122,'Create/modify supplier proposals','supplier_proposal',1,'creer',NULL,'w',0),(1123,'Validate supplier proposals','supplier_proposal',1,'validate_advance',NULL,'w',0),(1124,'Envoyer les demandes fournisseurs','supplier_proposal',1,'send_advance',NULL,'w',0),(1125,'Delete supplier proposals','supplier_proposal',1,'supprimer',NULL,'w',0),(1126,'Close supplier price requests','supplier_proposal',1,'cloturer',NULL,'w',0),(1181,'Consulter les fournisseurs','fournisseur',1,'lire',NULL,'r',0),(1182,'Consulter les commandes fournisseur','fournisseur',1,'commande','lire','r',0),(1183,'Creer une commande fournisseur','fournisseur',1,'commande','creer','w',0),(1184,'Valider une commande fournisseur','fournisseur',1,'supplier_order_advance','validate','w',0),(1185,'Approuver une commande fournisseur','fournisseur',1,'commande','approuver','w',0),(1186,'Commander une commande fournisseur','fournisseur',1,'commande','commander','w',0),(1187,'Receptionner une commande fournisseur','fournisseur',1,'commande','receptionner','d',0),(1188,'Supprimer une commande fournisseur','fournisseur',1,'commande','supprimer','d',0),(1189,'Check/Uncheck a supplier order reception','fournisseur',1,'commande_advance','check','w',0),(1201,'Lire les exports','export',1,'lire',NULL,'r',1),(1202,'Creer/modifier un export','export',1,'creer',NULL,'w',0),(1231,'Consulter les factures fournisseur','fournisseur',1,'facture','lire','r',0),(1232,'Creer une facture fournisseur','fournisseur',1,'facture','creer','w',0),(1233,'Valider une facture fournisseur','fournisseur',1,'supplier_invoice_advance','validate','w',0),(1234,'Supprimer une facture fournisseur','fournisseur',1,'facture','supprimer','d',0),(1235,'Envoyer les factures par mail','fournisseur',1,'supplier_invoice_advance','send','a',0),(1236,'Exporter les factures fournisseurs, attributs et reglements','fournisseur',1,'facture','export','r',0),(1237,'Exporter les commande fournisseurs, attributs','fournisseur',1,'commande','export','r',0),(1251,'Run mass imports of external data (data load)','import',1,'run',NULL,'r',0),(1321,'Export customer invoices, attributes and payments','facture',1,'facture','export','r',0),(1321,'Exporter les factures clients, attributs et reglements','facture',2,'facture','export','r',0),(1322,'Re-open a fully paid invoice','facture',1,'invoice_advance','reopen','r',0),(1421,'Exporter les commandes clients et attributs','commande',1,'commande','export','r',0),(2401,'Read actions/tasks linked to his account','agenda',1,'myactions','read','r',0),(2401,'Read actions/tasks linked to his account','agenda',2,'myactions','read','r',1),(2402,'Create/modify actions/tasks linked to his account','agenda',1,'myactions','create','w',0),(2402,'Create/modify actions/tasks linked to his account','agenda',2,'myactions','create','w',0),(2403,'Delete actions/tasks linked to his account','agenda',1,'myactions','delete','w',0),(2403,'Delete actions/tasks linked to his account','agenda',2,'myactions','delete','w',0),(2411,'Read actions/tasks of others','agenda',1,'allactions','read','r',0),(2411,'Read actions/tasks of others','agenda',2,'allactions','read','r',0),(2412,'Create/modify actions/tasks of others','agenda',1,'allactions','create','w',0),(2412,'Create/modify actions/tasks of others','agenda',2,'allactions','create','w',0),(2413,'Delete actions/tasks of others','agenda',1,'allactions','delete','w',0),(2413,'Delete actions/tasks of others','agenda',2,'allactions','delete','w',0),(2414,'Export actions/tasks of others','agenda',1,'export',NULL,'w',0),(2501,'Consulter/Télécharger les documents','ecm',1,'read',NULL,'r',0),(2503,'Soumettre ou supprimer des documents','ecm',1,'upload',NULL,'w',0),(2515,'Administrer les rubriques de documents','ecm',1,'setup',NULL,'w',0),(3200,'Read archived events and fingerprints','blockedlog',1,'read',NULL,'w',0),(20001,'Read your own holidays','holiday',1,'read',NULL,'w',0),(20001,'Créer / Modifier / Lire ses demandes de congés payés','holiday',2,'write',NULL,'w',1),(20002,'Create/modify your own holidays','holiday',1,'write',NULL,'w',0),(20002,'Lire / Modifier toutes les demandes de congés payés','holiday',2,'lire_tous',NULL,'w',0),(20003,'Delete holidays','holiday',1,'delete',NULL,'w',0),(20003,'Supprimer des demandes de congés payés','holiday',2,'delete',NULL,'w',0),(20004,'Read holidays for everybody','holiday',1,'read_all',NULL,'w',0),(20004,'Définir les congés payés des utilisateurs','holiday',2,'define_holiday',NULL,'w',0),(20005,'Create/modify holidays for everybody','holiday',1,'write_all',NULL,'w',0),(20005,'Voir les logs de modification des congés payés','holiday',2,'view_log',NULL,'w',0),(20006,'Setup holidays of users (setup and update balance)','holiday',1,'define_holiday',NULL,'w',0),(20006,'Accéder au rapport mensuel des congés payés','holiday',2,'month_report',NULL,'w',0),(23001,'Read cron jobs','cron',1,'read',NULL,'w',0),(23002,'Create cron Jobs','cron',1,'create',NULL,'w',0),(23003,'Delete cron Jobs','cron',1,'delete',NULL,'w',0),(23004,'Execute cron Jobs','cron',1,'execute',NULL,'w',0),(50101,'Use point of sale','cashdesk',1,'use',NULL,'a',1),(50401,'Bind products and invoices with accounting accounts','accounting',1,'bind','write','r',0),(50411,'Read operations in General Ledger','accounting',1,'mouvements','lire','r',0),(50412,'Write/Edit operations in General Ledger','accounting',1,'mouvements','creer','w',0),(50420,'Report and export reports (turnover, balance, journals, general ledger)','accounting',1,'comptarapport','lire','r',0),(50430,'Define and close a fiscal year','accounting',1,'fiscalyear',NULL,'r',0),(50440,'Manage chart of accounts, setup of accountancy','accounting',1,'chartofaccount',NULL,'r',0),(55001,'Read surveys','opensurvey',1,'read',NULL,'r',0),(55002,'Create/modify surveys','opensurvey',1,'write',NULL,'w',0),(59001,'Visualiser les marges','margins',1,'liretous',NULL,'r',1),(59002,'Définir les marges','margins',1,'creer',NULL,'w',0),(59003,'Read every user margin','margins',1,'read','all','r',0),(63001,'Read resources','resource',1,'read',NULL,'w',1),(63002,'Create/Modify resources','resource',1,'write',NULL,'w',0),(63003,'Delete resources','resource',1,'delete',NULL,'w',0),(63004,'Link resources','resource',1,'link',NULL,'w',0),(64001,'DirectPrint','printing',1,'read',NULL,'r',0),(101250,'Read surveys','opensurvey',2,'survey','read','r',0),(101251,'Create/modify surveys','opensurvey',2,'survey','write','w',0); +/*!40000 ALTER TABLE `llx_rights_def` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_sellyoursaas_cancellation` +-- + +DROP TABLE IF EXISTS `llx_sellyoursaas_cancellation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_sellyoursaas_cancellation` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + `codelang` varchar(8) DEFAULT NULL, + `url` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_sellyoursaas_cancellation_rowid` (`rowid`), + KEY `idx_sellyoursaas_cancellation_ref` (`ref`), + KEY `idx_sellyoursaas_cancellation_entity` (`entity`), + KEY `idx_sellyoursaas_cancellation_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_sellyoursaas_cancellation` +-- + +LOCK TABLES `llx_sellyoursaas_cancellation` WRITE; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation` DISABLE KEYS */; +INSERT INTO `llx_sellyoursaas_cancellation` VALUES (2,'fff',1,NULL,'2018-06-02 11:00:44','2018-06-02 09:00:44',12,NULL,NULL,1,NULL,'fff'),(3,'gfdg',1,NULL,'2018-06-02 11:01:20','2018-06-02 09:01:20',12,NULL,NULL,1,'gfd','gfd'),(4,'aaa',1,NULL,'2018-06-02 11:02:40','2018-06-02 09:02:40',12,NULL,NULL,1,NULL,'aaa'); +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_sellyoursaas_cancellation_extrafields` +-- + +DROP TABLE IF EXISTS `llx_sellyoursaas_cancellation_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_sellyoursaas_cancellation_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_sellyoursaas_cancellation_extrafields` +-- + +LOCK TABLES `llx_sellyoursaas_cancellation_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe` +-- + +DROP TABLE IF EXISTS `llx_societe`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `statut` tinyint(4) DEFAULT '0', + `parent` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `nom` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_client` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_fournisseur` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_compta` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_compta_fournisseur` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_departement` int(11) DEFAULT '0', + `fk_pays` int(11) DEFAULT '0', + `phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_effectif` int(11) DEFAULT '0', + `fk_typent` int(11) DEFAULT '0', + `fk_forme_juridique` int(11) DEFAULT '0', + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `siren` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `siret` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `ape` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof4` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `tva_intra` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `capital` double(24,8) DEFAULT NULL, + `fk_stcomm` int(11) NOT NULL DEFAULT '0', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `prefix_comm` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `client` tinyint(4) DEFAULT '0', + `fournisseur` tinyint(4) DEFAULT '0', + `supplier_account` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_prospectlevel` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL, + `customer_bad` tinyint(4) DEFAULT '0', + `customer_rate` double DEFAULT '0', + `supplier_rate` double DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `remise_client` double DEFAULT '0', + `remise_supplier` double DEFAULT '0', + `mode_reglement` tinyint(4) DEFAULT NULL, + `cond_reglement` tinyint(4) DEFAULT NULL, + `mode_reglement_supplier` int(11) DEFAULT NULL, + `outstanding_limit` double(24,8) DEFAULT NULL, + `order_min_amount` double(24,8) DEFAULT NULL, + `supplier_order_min_amount` double(24,8) DEFAULT NULL, + `cond_reglement_supplier` int(11) DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `tva_assuj` tinyint(4) DEFAULT '1', + `localtax1_assuj` tinyint(4) DEFAULT '0', + `localtax1_value` double(6,3) DEFAULT NULL, + `localtax2_assuj` tinyint(4) DEFAULT '0', + `localtax2_value` double(6,3) DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `price_level` int(11) DEFAULT NULL, + `default_lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` tinyint(4) DEFAULT '1', + `logo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof5` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof6` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT '0', + `webservices_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `webservices_key` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `name_alias` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_entrepot` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_prefix_comm` (`prefix_comm`,`entity`), + UNIQUE KEY `uk_societe_code_client` (`code_client`,`entity`), + UNIQUE KEY `uk_societe_barcode` (`barcode`,`fk_barcode_type`,`entity`), + UNIQUE KEY `uk_societe_code_fournisseur` (`code_fournisseur`,`entity`), + KEY `idx_societe_user_creat` (`fk_user_creat`), + KEY `idx_societe_user_modif` (`fk_user_modif`), + KEY `idx_societe_barcode` (`barcode`) +) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe` +-- + +LOCK TABLES `llx_societe` WRITE; +/*!40000 ALTER TABLE `llx_societe` DISABLE KEYS */; +INSERT INTO `llx_societe` VALUES (1,0,NULL,'2016-01-16 15:21:09','2010-07-08 14:21:44','Indian SAS',1,NULL,NULL,'CU1212-0007','SU1212-0005','7050','6050','1 alalah road',NULL,'Delhi',0,117,NULL,NULL,NULL,NULL,NULL,NULL,4,NULL,'0','','','','','',5000.00000000,1,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'en_IN',NULL,NULL,1,'indiancompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(2,0,NULL,'2016-07-30 11:45:49','2010-07-08 14:23:48','Teclib',1,NULL,NULL,'CU1108-0001','SU1108-0001','411CU11080001','401SU11080001','',NULL,'Paris',0,1,NULL,NULL,'www.teclib.com',NULL,NULL,4,3,57,'0','123456789','','ACE14','','',400000.00000000,0,NULL,NULL,NULL,3,1,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,'fr_FR',NULL,NULL,1,'teclibcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,0,'',NULL,0),(3,0,NULL,'2017-02-16 00:47:25','2010-07-08 22:42:12','Spanish Comp',1,NULL,NULL,'SPANISHCOMP','SU1601-0009',NULL,NULL,'1 via mallere',NULL,'Madrid',123,4,NULL,NULL,NULL,NULL,NULL,3,4,408,'0','','','','','',10000.00000000,0,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'es_AR',NULL,NULL,1,'spanishcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(4,0,NULL,'2016-01-22 17:24:53','2010-07-08 22:48:18','Prospector Vaalen',1,NULL,NULL,'CU1303-0014',NULL,NULL,NULL,'',NULL,'Bruxelles',103,2,NULL,NULL,NULL,NULL,NULL,3,4,201,'0','12345678','','','','',0.00000000,0,NULL,NULL,NULL,3,0,NULL,'PL_LOW',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'valeencompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(5,0,NULL,'2017-02-21 11:01:17','2010-07-08 23:22:57','NoCountry GmBh',1,NULL,NULL,NULL,NULL,NULL,NULL,'',NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,0,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'nocountrycomp.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(6,0,NULL,'2016-01-16 15:35:56','2010-07-09 00:15:09','Swiss Touch',1,NULL,NULL,'CU1601-0018','SU1601-0010',NULL,NULL,'',NULL,'Genevia',0,6,NULL,NULL,NULL,'swisstouch@example.ch',NULL,2,2,601,'0','','','','','',56000.00000000,0,NULL,NULL,NULL,3,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'swisstouch.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(7,0,NULL,'2016-01-16 15:38:32','2010-07-09 01:24:26','Generic customer',1,NULL,NULL,'CU1302-0011',NULL,NULL,NULL,'',NULL,NULL,0,7,NULL,NULL,NULL,'ttt@ttt.com',NULL,NULL,8,NULL,'0','','','','','',0.00000000,0,'Generic customer to use for Point Of Sale module.
',NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'genericcustomer.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(10,0,NULL,'2016-01-16 15:44:20','2010-07-10 15:13:08','NLTechno',1,NULL,NULL,'CU1212-0005','SU1601-0011',NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,'notanemail@nltechno.com',NULL,1,4,54,'0','493861496','49386149600039','6209Z','22-01-2007','FR123456789',10000.00000000,0,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,'123456789012',NULL,'fr_FR',NULL,NULL,1,'logo_nltechno_94x100.png','','',0,NULL,NULL,'The OpenSource company',0,NULL,NULL,NULL,NULL,NULL,0),(11,0,NULL,'2017-05-12 09:06:31','2010-07-10 18:35:57','Company Corp 1',1,NULL,NULL,'CU1510-0017',NULL,'7051',NULL,'21 Green Hill street','75500','Los Angeles',0,11,'444123456',NULL,'companycorp1.com','companycorp1@example.com','corp1',1,1,NULL,'0','AB1234567','','','','USABS123',10000.00000000,0,NULL,NULL,NULL,3,0,NULL,'PL_LOW',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,'en_US',NULL,NULL,1,'comapnycorp1company.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(12,0,NULL,'2016-01-22 16:41:56','2010-07-11 16:18:08','Dupont Alain',1,NULL,NULL,'CU1601-0019',NULL,NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,'dalain@example.com',NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'pierrecurie.jpg','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(13,0,NULL,'2016-01-22 17:13:16','2010-07-11 17:13:20','Company Corp 2',1,NULL,NULL,NULL,'SU1510-0008',NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'companycorp2company.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(17,0,NULL,'2017-02-15 22:55:34','2011-08-01 02:41:26','Book Keeping Company',1,NULL,NULL,'CU1108-0004','SU1108-0004',NULL,'401SU11080004','The French Company',NULL,NULL,0,1,NULL,NULL,NULL,NULL,NULL,1,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'bookkeepercompany.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(19,0,NULL,'2017-02-21 11:51:40','2013-01-12 12:23:05','Magic Food Store',1,NULL,NULL,'CU1301-0008',NULL,NULL,NULL,'65 holdywood boulevard','123456','BigTown',0,4,NULL,'0101',NULL,'myemail@domain.com',NULL,NULL,0,NULL,'0','','','10/10/2010','','',0.00000000,0,NULL,NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,0.000,NULL,0.000,NULL,NULL,'en_US','patient@cabinetmed',NULL,1,'magicfoodstore.png','','',0,NULL,NULL,'',0,NULL,'sepamandate',NULL,NULL,NULL,0),(25,0,NULL,'2016-01-22 17:21:17','2013-03-10 15:47:37','Print Company',1,NULL,NULL,'CU1303-0016','SU1303-0007',NULL,NULL,'21 Gutenberg street','45600','Berlin',0,5,NULL,NULL,NULL,'printcompany@example.com',NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'de_DE',NULL,NULL,1,'printcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(26,0,NULL,'2017-02-21 00:05:05','2017-02-12 23:17:04','Patient SuperIll',1,NULL,NULL,'CU1702-0020',NULL,'411CU17020020',NULL,'',NULL,NULL,0,14,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'','','','','',NULL,0,NULL,NULL,NULL,3,0,NULL,'',0,0,0,12,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.000,NULL,0.000,NULL,NULL,'en_US','patient@cabinetmed',NULL,1,NULL,'','',0,NULL,NULL,'',0,NULL,NULL,0,'',NULL,0); +/*!40000 ALTER TABLE `llx_societe` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_account` +-- + +DROP TABLE IF EXISTS `llx_societe_account`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_account` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `login` varchar(128) NOT NULL, + `pass_encoding` varchar(24) DEFAULT NULL, + `pass_crypted` varchar(128) DEFAULT NULL, + `pass_temp` varchar(128) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `site` varchar(128) DEFAULT NULL, + `fk_website` int(11) DEFAULT NULL, + `note_private` text, + `date_last_login` datetime DEFAULT NULL, + `date_previous_login` datetime DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `key_account` varchar(128) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_account_login_website_soc` (`entity`,`fk_soc`,`login`,`site`,`fk_website`), + UNIQUE KEY `uk_societe_account_key_account_soc` (`entity`,`fk_soc`,`key_account`,`site`,`fk_website`), + KEY `idx_societe_account_rowid` (`rowid`), + KEY `idx_societe_account_login` (`login`), + KEY `idx_societe_account_status` (`status`), + KEY `idx_societe_account_fk_website` (`fk_website`), + KEY `idx_societe_account_fk_soc` (`fk_soc`), + CONSTRAINT `llx_societe_account_fk_societe` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `llx_societe_account_fk_website` FOREIGN KEY (`fk_website`) REFERENCES `llx_website` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_account` +-- + +LOCK TABLES `llx_societe_account` WRITE; +/*!40000 ALTER TABLE `llx_societe_account` DISABLE KEYS */; +INSERT INTO `llx_societe_account` VALUES (1,1,'','',NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-13 19:25:01','2018-03-19 09:01:17',12,NULL,NULL,0,''),(4,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 01:04:19','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(5,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 01:08:02','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(6,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 17:09:36','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(7,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 17:09:44','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(8,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:43:23','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(9,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:46:09','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(10,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:46:15','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(13,1,'',NULL,NULL,NULL,163,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:33:19','2018-03-14 15:33:19',0,NULL,NULL,0,'cus_CUam8x0KCoKZlc'),(14,1,'',NULL,NULL,NULL,182,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:48:48','2018-03-14 15:48:49',0,NULL,NULL,0,'cus_CUb2Xt4A2p5vMd'),(15,1,'',NULL,NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:52:13','2018-03-21 10:43:37',12,NULL,NULL,0,''),(17,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:57:42','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(18,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:57:47','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(19,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:58:13','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(20,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:58:19','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(21,1,'',NULL,NULL,NULL,151,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 19:10:29','2018-03-16 15:10:29',12,NULL,NULL,0,'cus_CVKshSj8uuaATf'),(22,1,'','',NULL,NULL,152,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 19:11:15','2018-03-16 15:11:15',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(24,1,'',NULL,NULL,NULL,153,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 20:15:45','2018-03-16 16:15:45',18,NULL,NULL,0,'cus_CVLv9rX4wMouSk'),(25,1,'','',NULL,NULL,155,'stripe',NULL,NULL,NULL,NULL,'2018-03-18 23:55:37','2018-03-18 19:55:37',12,NULL,NULL,0,'cus_CVLLzP90RCWx76'),(26,1,'','',NULL,NULL,155,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 00:01:47','2018-03-18 20:01:47',12,NULL,NULL,1,'cus_CVLLzP90RCWx76'),(27,1,'','',NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:01:17','2018-03-19 09:01:17',12,NULL,NULL,0,''),(28,1,'',NULL,NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:21:02','2018-03-19 09:21:02',0,NULL,NULL,0,'cus_CWMu7PlGViJN1S'),(29,1,'',NULL,NULL,NULL,1,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:38:26','2018-03-19 09:38:26',0,NULL,NULL,0,'cus_CWNCF7mttdVEae'),(30,1,'','',NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-21 14:43:37','2018-03-21 10:43:37',12,NULL,NULL,0,''),(31,1,'',NULL,NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-21 14:44:18','2018-03-21 10:44:18',0,NULL,NULL,0,'cus_CX8hWwDQPMht5r'),(32,1,'',NULL,NULL,NULL,211,'stripe',NULL,NULL,NULL,NULL,'2018-04-19 16:20:27','2018-04-19 14:20:27',18,NULL,NULL,0,'cus_Ci3khlxtfYB0Xl'),(33,1,'',NULL,NULL,NULL,7,'stripe',NULL,NULL,NULL,NULL,'2018-04-30 14:57:29','2018-04-30 12:57:29',0,NULL,NULL,0,'cus_Cm9td5UQieFnlZ'),(38,1,'',NULL,NULL,NULL,154,'stripe',NULL,NULL,NULL,NULL,'2018-05-16 17:01:24','2018-05-16 15:01:24',18,NULL,NULL,0,'cus_CsBVSuBeNzmYw9'),(39,1,'','',NULL,NULL,151,'stripe',NULL,NULL,NULL,NULL,'2018-05-17 09:42:37','2018-05-17 07:42:37',12,NULL,NULL,1,'cus_CVKshSj8uuaATf'),(40,1,'',NULL,NULL,NULL,217,'stripe',NULL,NULL,NULL,NULL,'2018-06-01 19:47:16','2018-06-01 17:47:16',18,NULL,NULL,0,'cus_CyDmj3FJD8rYsd'),(41,1,'',NULL,NULL,NULL,218,'stripe',NULL,NULL,NULL,NULL,'2018-06-11 11:34:38','2018-06-11 09:34:38',12,NULL,NULL,0,'cus_D1q6IoIUoG7LMq'),(42,1,'',NULL,NULL,NULL,10,'stripe',NULL,NULL,NULL,NULL,'2018-06-12 13:49:51','2018-06-12 11:49:51',0,NULL,NULL,0,'cus_D2FVgMTgsYjt6k'),(44,1,'',NULL,NULL,NULL,215,'stripe',NULL,NULL,NULL,NULL,'2018-06-15 16:01:07','2018-06-15 14:01:07',18,NULL,NULL,0,'cus_D3PIZ5HzIeMj7B'),(45,1,'',NULL,NULL,NULL,229,'stripe',NULL,NULL,NULL,NULL,'2018-06-27 01:40:40','2018-06-26 23:40:40',18,NULL,NULL,0,'cus_D7g8Bvgx0AFfha'),(46,1,'',NULL,NULL,NULL,156,'stripe',NULL,NULL,NULL,NULL,'2018-07-17 14:13:48','2018-07-17 12:13:48',18,NULL,NULL,0,'cus_DFMnr5WsUoaCJX'),(47,1,'',NULL,NULL,NULL,231,'stripe',NULL,NULL,NULL,NULL,'2018-07-17 17:46:42','2018-07-17 15:46:42',18,NULL,NULL,0,'cus_DFQEkv3jONVJwR'),(48,1,'',NULL,NULL,NULL,250,'stripe',NULL,NULL,NULL,NULL,'2018-09-17 09:27:23','2018-09-17 07:27:23',18,NULL,NULL,0,'cus_DcWBnburaSkf0c'),(49,1,'',NULL,NULL,NULL,11,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:08:01','2018-10-12 18:08:01',0,NULL,NULL,0,'cus_Dm39EV1tf8CRBT'),(50,1,'',NULL,NULL,NULL,214,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:57:17','2018-10-12 18:57:17',18,NULL,NULL,0,'cus_Dm3wMg8aMLoRC9'),(51,1,'',NULL,NULL,NULL,213,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:59:41','2018-10-12 18:59:41',18,NULL,NULL,0,'cus_Dm3zHwLuFKePzk'); +/*!40000 ALTER TABLE `llx_societe_account` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_address` +-- + +DROP TABLE IF EXISTS `llx_societe_address`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_address` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT '0', + `name` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_pays` int(11) DEFAULT '0', + `phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_address` +-- + +LOCK TABLES `llx_societe_address` WRITE; +/*!40000 ALTER TABLE `llx_societe_address` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_address` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_commerciaux` +-- + +DROP TABLE IF EXISTS `llx_societe_commerciaux`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_commerciaux` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_commerciaux` (`fk_soc`,`fk_user`) +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_commerciaux` +-- + +LOCK TABLES `llx_societe_commerciaux` WRITE; +/*!40000 ALTER TABLE `llx_societe_commerciaux` DISABLE KEYS */; +INSERT INTO `llx_societe_commerciaux` VALUES (1,2,2,NULL),(2,3,2,NULL),(5,17,1,NULL),(6,19,1,NULL),(8,19,3,NULL),(9,11,16,NULL),(10,13,17,NULL),(11,26,12,NULL); +/*!40000 ALTER TABLE `llx_societe_commerciaux` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_extrafields` +-- + +DROP TABLE IF EXISTS `llx_societe_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_extrafields` (`fk_object`) +) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_extrafields` +-- + +LOCK TABLES `llx_societe_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_societe_extrafields` DISABLE KEYS */; +INSERT INTO `llx_societe_extrafields` VALUES (75,'2016-01-22 16:40:03',10,NULL),(77,'2016-01-22 16:41:56',12,NULL),(79,'2016-01-22 17:13:16',13,NULL),(81,'2016-01-22 17:18:08',19,NULL),(82,'2016-01-22 17:21:17',25,NULL),(83,'2016-01-22 17:21:51',1,NULL),(85,'2016-01-22 17:22:32',3,NULL),(86,'2016-01-22 17:24:53',4,NULL),(88,'2016-01-22 17:25:26',6,NULL),(89,'2016-01-22 17:25:41',7,NULL),(92,'2016-07-30 11:45:49',2,NULL),(94,'2017-02-15 22:55:34',17,NULL),(95,'2017-02-21 00:05:05',26,NULL),(96,'2017-02-21 11:01:17',5,NULL),(97,'2017-05-12 09:06:31',11,NULL); +/*!40000 ALTER TABLE `llx_societe_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_log` +-- + +DROP TABLE IF EXISTS `llx_societe_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `datel` datetime DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_statut` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `author` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_log` +-- + +LOCK TABLES `llx_societe_log` WRITE; +/*!40000 ALTER TABLE `llx_societe_log` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_prices` +-- + +DROP TABLE IF EXISTS `llx_societe_prices`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_prices` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT '0', + `tms` timestamp NULL DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `price_level` tinyint(4) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_prices` +-- + +LOCK TABLES `llx_societe_prices` WRITE; +/*!40000 ALTER TABLE `llx_societe_prices` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_prices` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise` +-- + +DROP TABLE IF EXISTS `llx_societe_remise`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `remise_client` double(6,3) NOT NULL DEFAULT '0.000', + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise` +-- + +LOCK TABLES `llx_societe_remise` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_remise` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise_except` +-- + +DROP TABLE IF EXISTS `llx_societe_remise_except`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise_except` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `discount_type` int(11) NOT NULL DEFAULT '0', + `datec` datetime DEFAULT NULL, + `amount_ht` double(24,8) NOT NULL, + `amount_tva` double(24,8) NOT NULL DEFAULT '0.00000000', + `amount_ttc` double(24,8) NOT NULL DEFAULT '0.00000000', + `tva_tx` double(6,3) NOT NULL DEFAULT '0.000', + `fk_user` int(11) NOT NULL, + `fk_facture_line` int(11) DEFAULT NULL, + `fk_facture` int(11) DEFAULT NULL, + `fk_facture_source` int(11) DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci NOT NULL, + `multicurrency_amount_ht` double(24,8) NOT NULL DEFAULT '0.00000000', + `multicurrency_amount_tva` double(24,8) NOT NULL DEFAULT '0.00000000', + `multicurrency_amount_ttc` double(24,8) NOT NULL DEFAULT '0.00000000', + `fk_invoice_supplier_line` int(11) DEFAULT NULL, + `fk_invoice_supplier` int(11) DEFAULT NULL, + `fk_invoice_supplier_source` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_societe_remise_except_fk_user` (`fk_user`), + KEY `idx_societe_remise_except_fk_soc` (`fk_soc`), + KEY `idx_societe_remise_except_fk_facture_line` (`fk_facture_line`), + KEY `idx_societe_remise_except_fk_facture` (`fk_facture`), + KEY `idx_societe_remise_except_fk_facture_source` (`fk_facture_source`), + KEY `fk_soc_remise_fk_invoice_supplier_line` (`fk_invoice_supplier_line`), + KEY `fk_societe_remise_fk_invoice_supplier_source` (`fk_invoice_supplier`), + KEY `idx_societe_remise_except_discount_type` (`discount_type`), + CONSTRAINT `fk_soc_remise_fk_facture_line` FOREIGN KEY (`fk_facture_line`) REFERENCES `llx_facturedet` (`rowid`), + CONSTRAINT `fk_soc_remise_fk_invoice_supplier_line` FOREIGN KEY (`fk_invoice_supplier_line`) REFERENCES `llx_facture_fourn_det` (`rowid`), + CONSTRAINT `fk_soc_remise_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture` FOREIGN KEY (`fk_facture`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture_line` FOREIGN KEY (`fk_facture_line`) REFERENCES `llx_facturedet` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture_source` FOREIGN KEY (`fk_facture_source`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_invoice_supplier` FOREIGN KEY (`fk_invoice_supplier`) REFERENCES `llx_facture_fourn` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_invoice_supplier_source` FOREIGN KEY (`fk_invoice_supplier`) REFERENCES `llx_facture_fourn` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise_except` +-- + +LOCK TABLES `llx_societe_remise_except` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise_except` DISABLE KEYS */; +INSERT INTO `llx_societe_remise_except` VALUES (2,1,19,0,'2013-03-19 09:36:15',10.00000000,1.25000000,11.25000000,12.500,1,NULL,NULL,NULL,'hfghgf',0.00000000,0.00000000,0.00000000,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_societe_remise_except` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise_supplier` +-- + +DROP TABLE IF EXISTS `llx_societe_remise_supplier`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise_supplier` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `remise_supplier` double(6,3) NOT NULL DEFAULT '0.000', + `note` text, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise_supplier` +-- + +LOCK TABLES `llx_societe_remise_supplier` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise_supplier` DISABLE KEYS */; +INSERT INTO `llx_societe_remise_supplier` VALUES (1,1,1,'2018-04-06 18:21:00','2018-04-06 20:21:00',12,6.000,'llll'); +/*!40000 ALTER TABLE `llx_societe_remise_supplier` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_rib` +-- + +DROP TABLE IF EXISTS `llx_societe_rib`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_rib` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `bank` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `bic` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `iban_prefix` varchar(34) COLLATE utf8_unicode_ci DEFAULT NULL, + `domiciliation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `proprio` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `owner_address` text COLLATE utf8_unicode_ci, + `default_rib` tinyint(4) NOT NULL DEFAULT '0', + `rum` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_rum` date DEFAULT NULL, + `frstrecur` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'FRST', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `last_four` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL, + `card_type` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cvn` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `exp_date_month` int(11) DEFAULT NULL, + `exp_date_year` int(11) DEFAULT NULL, + `country_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `approved` int(11) DEFAULT '0', + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ending_date` date DEFAULT NULL, + `max_total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `preapproval_key` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `starting_date` date DEFAULT NULL, + `total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `stripe_card_ref` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_rib` +-- + +LOCK TABLES `llx_societe_rib` WRITE; +/*!40000 ALTER TABLE `llx_societe_rib` DISABLE KEYS */; +INSERT INTO `llx_societe_rib` VALUES (1,'ban',19,'2017-02-21 15:50:32','2017-02-21 11:53:08','Morgan Bank','Morgan Bank','','','','','PSPBFIHH','ES80 2310 0001 1800 0001 2345','Royal via,\r\nMadrid','Mr Esposito','10 via ferrata,\r\nMadrid',1,'RUM1301-0008-0',NULL,'FRST',NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_societe_rib` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_rib2` +-- + +DROP TABLE IF EXISTS `llx_societe_rib2`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_rib2` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(32) DEFAULT 'ban', + `label` varchar(30) DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `bank` varchar(255) DEFAULT NULL, + `code_banque` varchar(128) DEFAULT NULL, + `code_guichet` varchar(6) DEFAULT NULL, + `number` varchar(255) DEFAULT NULL, + `cle_rib` varchar(5) DEFAULT NULL, + `bic` varchar(20) DEFAULT NULL, + `iban_prefix` varchar(34) DEFAULT NULL, + `domiciliation` varchar(255) DEFAULT NULL, + `proprio` varchar(60) DEFAULT NULL, + `owner_address` varchar(255) DEFAULT NULL, + `default_rib` smallint(6) NOT NULL DEFAULT '0', + `rum` varchar(32) DEFAULT NULL, + `date_rum` date DEFAULT NULL, + `frstrecur` varchar(16) DEFAULT 'FRST', + `last_four` varchar(4) DEFAULT NULL, + `card_type` varchar(255) DEFAULT NULL, + `cvn` varchar(255) DEFAULT NULL, + `exp_date_month` int(11) DEFAULT NULL, + `exp_date_year` int(11) DEFAULT NULL, + `country_code` varchar(10) DEFAULT NULL, + `approved` int(11) DEFAULT '0', + `email` varchar(255) DEFAULT NULL, + `ending_date` date DEFAULT NULL, + `max_total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `preapproval_key` varchar(255) DEFAULT NULL, + `starting_date` date DEFAULT NULL, + `total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `stripe_card_ref` varchar(128) DEFAULT NULL, + `status` int(11) NOT NULL DEFAULT '1', + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_rib2` +-- + +LOCK TABLES `llx_societe_rib2` WRITE; +/*!40000 ALTER TABLE `llx_societe_rib2` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_rib2` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_socpeople` +-- + +DROP TABLE IF EXISTS `llx_socpeople`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_socpeople` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_soc` int(11) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `civility` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` text COLLATE utf8_unicode_ci, + `fk_departement` int(11) DEFAULT NULL, + `fk_pays` int(11) DEFAULT '0', + `birthday` date DEFAULT NULL, + `poste` varchar(80) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_perso` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_mobile` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `jabberid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `photo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `priv` smallint(6) NOT NULL DEFAULT '0', + `no_email` smallint(6) NOT NULL DEFAULT '0', + `fk_user_creat` int(11) DEFAULT '0', + `fk_user_modif` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `default_lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + KEY `idx_socpeople_fk_soc` (`fk_soc`), + KEY `idx_socpeople_fk_user_creat` (`fk_user_creat`), + CONSTRAINT `fk_socpeople_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_socpeople_user_creat_user_rowid` FOREIGN KEY (`fk_user_creat`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_socpeople` +-- + +LOCK TABLES `llx_socpeople` WRITE; +/*!40000 ALTER TABLE `llx_socpeople` DISABLE KEYS */; +INSERT INTO `llx_socpeople` VALUES (1,'2010-07-08 14:26:14','2016-01-16 15:07:51',1,1,NULL,'MR','Indra','Mahala','','','',297,117,'2010-07-08','Project leader','','','','','','','',NULL,0,0,1,12,'Met during a congress at Dubai','',NULL,NULL,NULL,1),(2,'2010-07-08 22:44:50','2010-07-08 20:59:57',NULL,1,NULL,'MR','Freeman','Public','','','',200,11,NULL,'','','','','','','',NULL,NULL,0,0,1,1,'A friend that is a free contact not linked to any company',NULL,NULL,NULL,NULL,1),(3,'2010-07-08 22:59:02','2016-01-22 17:30:07',NULL,1,NULL,'MR','Mywife','Nicy','','','',NULL,11,'1980-10-03','','','','','','','','',NULL,1,0,1,12,'This is a private contact','',NULL,NULL,NULL,1),(4,'2010-07-09 00:16:58','2010-07-08 22:16:58',6,1,NULL,'MR','Rotchield','Evan','','','',NULL,6,NULL,'Bank director','','','','','','',NULL,NULL,0,0,1,1,'The bank director',NULL,NULL,NULL,NULL,1),(6,'2011-08-01 02:41:26','2016-01-22 17:29:53',17,1,NULL,'','Bookkeeper','Bob','99 account street','123456','BigTown',NULL,4,NULL,'book keeper','','','','','','','',NULL,0,0,1,12,'','',NULL,NULL,NULL,1),(7,'2016-07-30 16:11:06','2016-07-30 12:16:07',NULL,1,'','MR','Dad','','','','',NULL,14,'1967-09-04','','','','','','','','','',1,0,12,12,'','',NULL,NULL,NULL,1),(8,'2016-07-30 16:13:03','2016-07-30 12:15:58',NULL,1,'','MLE','Mom','','','','',NULL,14,NULL,'','','','','','','','','',1,0,12,12,'','',NULL,NULL,NULL,1),(9,'2016-07-30 16:14:41','2016-07-30 12:15:51',NULL,1,'','MR','Francky','','','89455','Virigia',NULL,205,'1980-07-09','Baker','555-98989898','','','','francky@example.com','','','',0,0,12,12,'','',NULL,NULL,NULL,1),(10,'2016-07-30 16:26:22','2016-07-30 12:52:38',10,1,'','MR','Eldy','','','33600','Pessac',NULL,1,'1972-10-10','Dolibarr project leader','','','','','eldy@example.com','','','ldestailleur_200x200.jpg',0,0,NULL,12,'','',NULL,NULL,NULL,1),(11,'2017-05-12 13:16:36','2017-05-12 09:18:20',11,1,'','MR','Smith','Laurent','45 Big road','897','Seattle',NULL,11,NULL,'Director','','','','','','','','ldestailleur_200x200.png',0,0,12,12,'','',NULL,NULL,NULL,1),(12,'2017-05-12 13:19:31','2017-05-12 09:19:42',11,1,'','MR','Einstein','','','','',NULL,11,NULL,'Genius','333444555','','','','genius@example.com','','','Einstein.jpg',0,0,12,12,'','',NULL,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_socpeople` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_socpeople_extrafields` +-- + +DROP TABLE IF EXISTS `llx_socpeople_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_socpeople_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_socpeople_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_socpeople_extrafields` +-- + +LOCK TABLES `llx_socpeople_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_socpeople_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_socpeople_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_stock_lotserial` +-- + +DROP TABLE IF EXISTS `llx_stock_lotserial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_stock_lotserial` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_stock_lotserial` +-- + +LOCK TABLES `llx_stock_lotserial` WRITE; +/*!40000 ALTER TABLE `llx_stock_lotserial` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_stock_lotserial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_stock_mouvement` +-- + +DROP TABLE IF EXISTS `llx_stock_mouvement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_stock_mouvement` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datem` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `value` double DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `type_mouvement` smallint(6) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_origin` int(11) DEFAULT NULL, + `origintype` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `inventorycode` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_stock_mouvement_fk_product` (`fk_product`), + KEY `idx_stock_mouvement_fk_entrepot` (`fk_entrepot`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_stock_mouvement` +-- + +LOCK TABLES `llx_stock_mouvement` WRITE; +/*!40000 ALTER TABLE `llx_stock_mouvement` DISABLE KEYS */; +INSERT INTO `llx_stock_mouvement` VALUES (1,'2010-07-08 22:43:51','2010-07-09 00:43:51',2,2,1000,0.00000000,0,1,'Correct stock',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'2010-07-10 22:56:18','2010-07-11 00:56:18',4,2,500,0.00000000,0,1,'Init',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,'2010-07-10 23:02:20','2010-07-11 01:02:20',4,2,500,0.00000000,0,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,'2010-07-11 16:49:44','2010-07-11 18:49:44',4,1,2,10.00000000,3,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(6,'2010-07-11 16:49:44','2010-07-11 18:49:44',1,1,4,0.00000000,3,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(7,'2013-01-19 17:22:48','2013-01-19 18:22:48',11,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(8,'2013-01-19 17:22:48','2013-01-19 18:22:48',4,1,-1,5.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(9,'2013-01-19 17:22:48','2013-01-19 18:22:48',1,1,-2,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(10,'2013-01-19 17:31:10','2013-01-19 18:31:10',2,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,'2013-01-19 17:31:58','2013-01-19 18:31:58',2,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,'2016-07-30 13:39:31','2016-07-30 17:39:31',10,2,50,0.00000000,0,12,'Stock correction for product COMP-XP4523',0,'',NULL,NULL,'5599887766452',NULL,NULL),(13,'2016-07-30 13:40:12','2016-07-30 17:40:12',10,2,60,0.00000000,0,12,'Stock correction for product COMP-XP4523',0,'',NULL,NULL,'4494487766452',NULL,NULL),(14,'2016-07-30 13:40:39','2016-07-30 17:40:39',10,2,-35,0.00000000,1,12,'Stock transfer of product COMP-XP4523 into another warehouse',0,'',NULL,'160730174015','5599887766452',NULL,NULL),(15,'2016-07-30 13:40:39','2016-07-30 17:40:39',10,1,35,0.00000000,0,12,'Stock transfer of product COMP-XP4523 into another warehouse',0,'',NULL,'160730174015','5599887766452',NULL,NULL),(16,'2017-02-15 23:58:08','2017-02-16 03:58:08',10,1,-1,100.00000000,2,12,'Expédition SH1702-0002 validée',3,'shipping',NULL,NULL,'5599887766452',NULL,NULL),(17,'2017-02-16 00:12:09','2017-02-16 04:12:09',10,1,1,0.00000000,3,12,'Expédition SH1702-0002 supprimée',0,'',NULL,NULL,'5599887766452',NULL,NULL); +/*!40000 ALTER TABLE `llx_stock_mouvement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_message` +-- + +DROP TABLE IF EXISTS `llx_submitew_message`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_message` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `statut` smallint(6) DEFAULT '0', + `label` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `title` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `body_short` text COLLATE utf8_unicode_ci, + `body_long` text COLLATE utf8_unicode_ci, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cible` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `nbemail` int(11) DEFAULT NULL, + `email_from` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_replyto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_errorsto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `tag` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creat` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_appro` datetime DEFAULT NULL, + `date_envoi` datetime DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_appro` int(11) DEFAULT NULL, + `joined_file1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file4` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_message` +-- + +LOCK TABLES `llx_submitew_message` WRITE; +/*!40000 ALTER TABLE `llx_submitew_message` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_submitew_message` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_targets` +-- + +DROP TABLE IF EXISTS `llx_submitew_targets`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_targets` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `targetcode` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `langcode` varchar(5) COLLATE utf8_unicode_ci DEFAULT 'en_US', + `url` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `login` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `comment` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) DEFAULT '0', + `titlelength` int(11) DEFAULT '32', + `descshortlength` int(11) DEFAULT '256', + `desclonglength` int(11) DEFAULT '2000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_submitewtargets` (`label`,`langcode`) +) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_targets` +-- + +LOCK TABLES `llx_submitew_targets` WRITE; +/*!40000 ALTER TABLE `llx_submitew_targets` DISABLE KEYS */; +INSERT INTO `llx_submitew_targets` VALUES (17,'hhho','email','fr_FR','',NULL,NULL,NULL,0,0,-1,0),(34,'pppp','facebook','fr_FR',NULL,'eldy','ld101010-fk',NULL,0,-1,-1,-1),(35,'hfghfgh','web','de_DE','http://wwww','ffffmmm','null',NULL,0,-1,-1,-1),(37,'llll','linkedin','fr_FR','',NULL,NULL,NULL,0,32,256,2000),(55,'fff','dig','fr_FR',NULL,'hfgh','hfghgf',NULL,0,-1,-1,-1),(56,'aaaaaaa','linkedin','da_DK',NULL,'aa','aaa',NULL,0,32,256,2000),(57,'ddd','dig','en_US',NULL,'dd',NULL,NULL,0,32,256,2000),(59,'dddff','dig','en_US',NULL,NULL,NULL,NULL,0,32,256,2000),(68,'dddffe','dig','en_US',NULL,NULL,NULL,NULL,0,32,256,2000),(70,'dddffef','dig','en_US','http://www.dig.com',NULL,NULL,NULL,0,32,256,2000),(71,'ffff','dig','en_US','http://www.dig.com',NULL,NULL,NULL,0,32,256,2000); +/*!40000 ALTER TABLE `llx_submitew_targets` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_targets_params` +-- + +DROP TABLE IF EXISTS `llx_submitew_targets_params`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_targets_params` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_target` int(11) NOT NULL, + `paramkey` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `paramvalue` varchar(128) COLLATE utf8_unicode_ci DEFAULT '', + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_submitewtargets_fk_target` (`fk_target`), + UNIQUE KEY `uk_submitewtargets_params` (`fk_target`,`paramkey`,`paramvalue`), + CONSTRAINT `fk_submitewtargets_fk_target` FOREIGN KEY (`fk_target`) REFERENCES `llx_submitew_targets` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_targets_params` +-- + +LOCK TABLES `llx_submitew_targets_params` WRITE; +/*!40000 ALTER TABLE `llx_submitew_targets_params` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_submitew_targets_params` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_subscription` +-- + +DROP TABLE IF EXISTS `llx_subscription`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_subscription` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `dateadh` datetime DEFAULT NULL, + `datef` date DEFAULT NULL, + `subscription` double(24,8) DEFAULT NULL, + `fk_bank` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_subscription` (`fk_adherent`,`dateadh`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_subscription` +-- + +LOCK TABLES `llx_subscription` WRITE; +/*!40000 ALTER TABLE `llx_subscription` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_subscription` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposal` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposal` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `price` double DEFAULT '0', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_livraison` date DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposal` +-- + +LOCK TABLES `llx_supplier_proposal` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposal` DISABLE KEYS */; +INSERT INTO `llx_supplier_proposal` VALUES (2,'(PROV2)',1,NULL,NULL,10,NULL,'2017-02-17 00:40:50','2017-02-17 04:40:14',NULL,NULL,12,NULL,NULL,NULL,0,0,NULL,NULL,0,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,NULL,NULL,2,7,'','','aurore','2017-02-17',1,NULL,NULL,1,'EUR',1.00000000,200.00000000,0.00000000,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_supplier_proposal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposal_extrafields` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposal_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposal_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposal_extrafields` +-- + +LOCK TABLES `llx_supplier_proposal_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposal_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_supplier_proposal_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposaldet` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposaldet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposaldet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_supplier_proposal` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_remise_except` int(11) DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `price` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `info_bits` int(11) DEFAULT '0', + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `special_code` int(11) DEFAULT '0', + `rang` int(11) DEFAULT '0', + `ref_fourn` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_unit` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_supplier_proposaldet_fk_supplier_proposal` (`fk_supplier_proposal`), + KEY `idx_supplier_proposaldet_fk_product` (`fk_product`), + KEY `fk_supplier_proposaldet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_supplier_proposaldet_fk_supplier_proposal` FOREIGN KEY (`fk_supplier_proposal`) REFERENCES `llx_supplier_proposal` (`rowid`), + CONSTRAINT `fk_supplier_proposaldet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposaldet` +-- + +LOCK TABLES `llx_supplier_proposaldet` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposaldet` DISABLE KEYS */; +INSERT INTO `llx_supplier_proposaldet` VALUES (2,2,NULL,NULL,NULL,'A powerfull computer with 8Gb memory.',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,200.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,0,0.00000000,NULL,0,1,'',1,'EUR',200.00000000,200.00000000,0.00000000,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_supplier_proposaldet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposaldet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposaldet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposaldet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposaldet_extrafields` +-- + +LOCK TABLES `llx_supplier_proposaldet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposaldet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_supplier_proposaldet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_takepos_floor_tables` +-- + +DROP TABLE IF EXISTS `llx_takepos_floor_tables`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_takepos_floor_tables` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) DEFAULT NULL, + `leftpos` float DEFAULT NULL, + `toppos` float DEFAULT NULL, + `floor` int(3) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_takepos_floor_tables` +-- + +LOCK TABLES `llx_takepos_floor_tables` WRITE; +/*!40000 ALTER TABLE `llx_takepos_floor_tables` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_takepos_floor_tables` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket` +-- + +DROP TABLE IF EXISTS `llx_ticket`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `ref` varchar(128) NOT NULL, + `track_id` varchar(128) NOT NULL, + `fk_soc` int(11) DEFAULT '0', + `fk_project` int(11) DEFAULT '0', + `origin_email` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_assign` int(11) DEFAULT NULL, + `subject` varchar(255) DEFAULT NULL, + `message` text, + `fk_statut` int(11) DEFAULT NULL, + `resolution` int(11) DEFAULT NULL, + `progress` varchar(100) DEFAULT NULL, + `timing` varchar(20) DEFAULT NULL, + `type_code` varchar(32) DEFAULT NULL, + `category_code` varchar(32) DEFAULT NULL, + `severity_code` varchar(32) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `date_read` datetime DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `notify_tiers_at_create` tinyint(4) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ticket_track_id` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket` +-- + +LOCK TABLES `llx_ticket` WRITE; +/*!40000 ALTER TABLE `llx_ticket` DISABLE KEYS */; +INSERT INTO `llx_ticket` VALUES (1,1,'aaa','d42iybp7p6d1cvqi',248,12,NULL,12,NULL,'aaa','aaa',1,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-06-04 21:36:42','2018-10-01 03:20:18',NULL,0,'2018-10-01 01:20:18'); +/*!40000 ALTER TABLE `llx_ticket` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_extrafields` +-- + +DROP TABLE IF EXISTS `llx_ticket_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + `aaa` int(10) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_extrafields` +-- + +LOCK TABLES `llx_ticket_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_ticket_extrafields` DISABLE KEYS */; +INSERT INTO `llx_ticket_extrafields` VALUES (1,'2018-06-04 19:36:42',1,NULL,NULL); +/*!40000 ALTER TABLE `llx_ticket_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_logs` +-- + +DROP TABLE IF EXISTS `llx_ticket_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_logs` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + PRIMARY KEY (`rowid`), + KEY `fk_ticket_logs_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticket_logs_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticket` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_logs` +-- + +LOCK TABLES `llx_ticket_logs` WRITE; +/*!40000 ALTER TABLE `llx_ticket_logs` DISABLE KEYS */; +INSERT INTO `llx_ticket_logs` VALUES (1,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:20:18','Ticket read by Alice Adminson'); +/*!40000 ALTER TABLE `llx_ticket_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_msg` +-- + +DROP TABLE IF EXISTS `llx_ticket_msg`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_msg` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_action` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + `private` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `fk_ticket_msg_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticket_msg_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticket` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_msg` +-- + +LOCK TABLES `llx_ticket_msg` WRITE; +/*!40000 ALTER TABLE `llx_ticket_msg` DISABLE KEYS */; +INSERT INTO `llx_ticket_msg` VALUES (1,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:18:19','gdfgdf',0),(2,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:18:30','gdf',0); +/*!40000 ALTER TABLE `llx_ticket_msg` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup` +-- + +DROP TABLE IF EXISTS `llx_ticketsup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `ref` varchar(128) NOT NULL, + `track_id` varchar(128) NOT NULL, + `fk_soc` int(11) DEFAULT '0', + `fk_project` int(11) DEFAULT '0', + `origin_email` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_assign` int(11) DEFAULT NULL, + `subject` varchar(255) DEFAULT NULL, + `message` text, + `fk_statut` int(11) DEFAULT NULL, + `resolution` int(11) DEFAULT NULL, + `progress` varchar(100) DEFAULT NULL, + `timing` varchar(20) DEFAULT NULL, + `type_code` varchar(32) DEFAULT NULL, + `category_code` varchar(32) DEFAULT NULL, + `severity_code` varchar(32) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `date_read` datetime DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `notify_tiers_at_create` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ticketsup_track_id` (`track_id`), + KEY `id_ticketsup_track_id` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup` +-- + +LOCK TABLES `llx_ticketsup` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup` DISABLE KEYS */; +INSERT INTO `llx_ticketsup` VALUES (16,1,'TS1803-0001','bmhki5neaa7bszvy',64,12,NULL,12,11,'hfghfgbvcbcv','hgfhfghf
\r\ngdgdgdhghfghf',3,NULL,'100','NORMAL','COM','OTHER','NORMAL','2018-03-13 15:19:47','2018-03-18 21:55:12','2018-04-10 18:00:15','2018-05-01 10:32:20',1),(17,1,'TS1803-0002','ltvd8zthmu5b7v42',148,NULL,NULL,12,NULL,'hfghf','jghjhg',6,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-16 13:30:33','2018-03-18 22:00:39',NULL,'2018-03-18 18:27:03',1),(20,1,'TS1803-0005','o9997psaapahwrxi',NULL,NULL,NULL,12,NULL,'khjkhj','mmmmm',1,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-18 22:55:56','2018-03-19 14:57:36',NULL,'2018-03-19 10:57:36',0),(21,1,'TS1803-0006','hh2ludsvj32lp8sq',NULL,NULL,NULL,12,NULL,'gdfg','gdfgfd',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-18 22:56:20',NULL,NULL,'2018-03-18 18:56:20',1),(22,1,'TS1803-0007','4e8iy89hes9a5w8d',NULL,NULL,NULL,12,NULL,'ffffffff','fsdf',0,NULL,'0','NORMAL','COM','OTHER','NORMAL','2018-03-18 23:00:41',NULL,NULL,'2018-04-12 19:41:47',1),(23,1,'TS1804-0008','jbm8vxsqw19817fm',79,NULL,'aaa@aaa.com',NULL,NULL,'ssss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:20:40',NULL,NULL,'2018-04-12 21:20:40',1),(24,1,'TS1804-0009','q32naisayppjgr5b',NULL,NULL,'f@f.com',NULL,NULL,'sss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:23:34',NULL,NULL,'2018-04-12 21:23:34',1),(25,1,'TS1804-0010','dst5xryjb55jjxs6',NULL,NULL,'f@f.com',NULL,NULL,'sss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:31:01',NULL,NULL,'2018-04-12 21:31:01',1),(26,1,'TS1804-0011','qh9ar34ut2shp5rq',151,NULL,'testldr6@dolicloud.com',NULL,NULL,'ppppp','gdgdgdfg',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-19 15:05:23',NULL,NULL,'2018-04-19 13:05:23',1); +/*!40000 ALTER TABLE `llx_ticketsup` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_extrafields` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + `aaa` varchar(255) DEFAULT NULL, + `listeonly` varchar(255) DEFAULT NULL, + `bbb` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=57 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_extrafields` +-- + +LOCK TABLES `llx_ticketsup_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_extrafields` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_extrafields` VALUES (15,'2018-04-12 21:20:40',23,NULL,'aaaa',NULL,NULL),(16,'2018-04-12 21:23:34',24,NULL,'aaa',NULL,NULL),(17,'2018-04-12 21:31:01',25,NULL,'aaa',NULL,NULL),(20,'2018-04-13 10:42:15',22,NULL,'fffppgggffooppmmpp',NULL,NULL),(26,'2018-04-19 13:05:23',26,NULL,'aaa',NULL,NULL),(56,'2018-04-30 08:32:50',16,NULL,'ljklj',NULL,NULL); +/*!40000 ALTER TABLE `llx_ticketsup_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_logs` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_logs` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + PRIMARY KEY (`rowid`), + KEY `fk_ticketsup_logs_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticketsup_logs_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticketsup` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=82 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_logs` +-- + +LOCK TABLES `llx_ticketsup_logs` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_logs` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_logs` VALUES (14,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:31:15','Change classification : from Other to Other'),(15,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:31:22','Change classification : from Commercial question to Issue or problem'),(16,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:27','Ticket assigned to David Doe'),(17,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:36','Ticket assigned to hgfhfg hgfh'),(18,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:47','Ticket assigned to Sam Scientol'),(19,1,'bmhki5neaa7bszvy',12,'2018-03-18 15:01:20','Ticket assigned to Zack Zeceo'),(20,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:30:49','Ticket read by Alice Adminson'),(22,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:37:42','Status changed : Read to Not read'),(23,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:37:55','Ticket read by Alice Adminson'),(24,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:03','Status changed : Read to Not read'),(25,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:25','Ticket read by Alice Adminson'),(26,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:29','Status changed : Read to Not read'),(27,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:45','Ticket read by Alice Adminson'),(28,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:43:30','Status changed : Read to Not read'),(29,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:19','Status changed : Not read to Read'),(30,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:21','Status changed : Read to Not read'),(31,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:25','Ticket read by Alice Adminson'),(32,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:29','Status changed : Read to Not read'),(33,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:31','Status changed : Not read to Read'),(34,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:40','Status changed : Read to Not read'),(35,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:48:06','Ticket read by Alice Adminson'),(36,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:48:10','Status changed : Read to Not read'),(37,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:55:06','Ticket read by Alice Adminson'),(38,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:55:12','Ticket read by Alice Adminson'),(39,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:00:39','Ticket read by Alice Adminson'),(40,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:01','Status changed : Answered to Assigned'),(41,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:08','Status changed : Assigned to Answered'),(42,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:16','Status changed : Answered to In progress'),(43,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:27:03','Status changed : In progress to Waiting'),(44,1,'o9997psaapahwrxi',12,'2018-03-19 14:57:35','Ticket read by Alice Adminson'),(45,1,'o9997psaapahwrxi',12,'2018-03-19 14:57:36','Ticket read by Alice Adminson'),(46,1,'bmhki5neaa7bszvy',12,'2018-04-10 17:58:28','Status changed : Lu to En cours'),(47,1,'bmhki5neaa7bszvy',12,'2018-04-10 17:58:44','Ticket clôt par Alice Adminson'),(48,1,'bmhki5neaa7bszvy',12,'2018-04-10 18:00:15','Ticket clôt par Alice Adminson'),(49,1,'bmhki5neaa7bszvy',12,'2018-04-13 12:11:32','Ticket ré-ouvert'),(50,1,'bmhki5neaa7bszvy',12,'2018-04-15 11:45:53','Status changed : assigné to Unread'),(51,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:01:24','Change classification : from to '),(52,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:01:26','Change classification : from to '),(53,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:02:03','Change classification : from to '),(54,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:02:27','Change classification : from to '),(55,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:09:03','Change classification : from to '),(56,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:09:34','Change classification : from to '),(57,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:15:04','Change classification : from to '),(58,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:15:54','Change classification : from to '),(59,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:17:47','Change classification : from to '),(60,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:04','Change classification : from to '),(61,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:28','Change classification : from to '),(62,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:39','Change classification : from to '),(63,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:00','Change classification : from to '),(64,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:06','Change classification : from to '),(65,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:09','Change classification : from to '),(66,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:13','Change classification : from to '),(67,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:24:52','Change classification : from to '),(68,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:24:58','Change classification : from to '),(69,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:26:41','Change classification : from to '),(70,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:03','Change classification : from to '),(71,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:06','Change classification : from to '),(72,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:30','Initial message modified \n hgfhfghf\n+ gdgdgd\n'),(73,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:13','Initial message modified \n hgfhfghf\n gdgdgd\n'),(74,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:28','Initial message modified \n hgfhfghf\n gdgdgd\n'),(75,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:47','Initial message modified \n hgfhfghf\n gdgdgd\n'),(76,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:55','Initial message modified \n hgfhfghf\n- gdgdgd\n+ gdgdgdhghfghf\n'),(77,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:58','Change classification : from to '),(78,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:29:55','Change classification : from to '),(79,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:32:42','Change classification : from to '),(80,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:32:50','Change classification : from to '),(81,1,'bmhki5neaa7bszvy',12,'2018-05-01 12:32:20','Status changed : Unread to Answered'); +/*!40000 ALTER TABLE `llx_ticketsup_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_msg` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_msg`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_msg` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_action` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + `private` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `fk_ticketsup_msg_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticketsup_msg_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticketsup` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_msg` +-- + +LOCK TABLES `llx_ticketsup_msg` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_msg` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_msg` VALUES (1,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:30:57','gdfd',0),(2,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:24:18','fdsfds',0),(3,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:24:39','hfghfg',0); +/*!40000 ALTER TABLE `llx_ticketsup_msg` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_tva` +-- + +DROP TABLE IF EXISTS `llx_tva`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_tva` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` date DEFAULT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_typepayment` int(11) DEFAULT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_tva` +-- + +LOCK TABLES `llx_tva` WRITE; +/*!40000 ALTER TABLE `llx_tva` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_tva` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user` +-- + +DROP TABLE IF EXISTS `llx_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `login` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `civility` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `employee` smallint(6) DEFAULT '1', + `fk_establishment` int(11) DEFAULT '0', + `pass` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass_crypted` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass_temp` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `api_key` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `job` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `office_phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `office_fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `user_mobile` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `signature` text COLLATE utf8_unicode_ci, + `admin` smallint(6) DEFAULT '0', + `webcal_login` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `module_comm` smallint(6) DEFAULT '1', + `module_compta` smallint(6) DEFAULT '1', + `fk_soc` int(11) DEFAULT NULL, + `fk_socpeople` int(11) DEFAULT NULL, + `fk_member` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `datelastlogin` datetime DEFAULT NULL, + `datepreviouslogin` datetime DEFAULT NULL, + `egroupware_id` int(11) DEFAULT NULL, + `ldap_sid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` tinyint(4) DEFAULT '1', + `photo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `openid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `thm` double(24,8) DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_state` int(11) DEFAULT '0', + `fk_country` int(11) DEFAULT '0', + `color` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT '0', + `nb_holiday` int(11) DEFAULT '0', + `salary` double(24,8) DEFAULT NULL, + `tjm` double(24,8) DEFAULT NULL, + `salaryextra` double(24,8) DEFAULT NULL, + `weeklyhours` double(16,8) DEFAULT NULL, + `gender` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` text COLLATE utf8_unicode_ci, + `dateemployment` datetime DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `birth` date DEFAULT NULL, + `pass_encoding` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `default_range` int(11) DEFAULT NULL, + `default_c_exp_tax_cat` int(11) DEFAULT NULL, + `dateemploymentend` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_login` (`login`,`entity`), + UNIQUE KEY `uk_user_fk_socpeople` (`fk_socpeople`), + UNIQUE KEY `uk_user_fk_member` (`fk_member`), + UNIQUE KEY `uk_user_api_key` (`api_key`), + KEY `idx_user_api_key` (`api_key`), + KEY `idx_user_fk_societe` (`fk_soc`) +) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user` +-- + +LOCK TABLES `llx_user` WRITE; +/*!40000 ALTER TABLE `llx_user` DISABLE KEYS */; +INSERT INTO `llx_user` VALUES (1,'2010-07-08 13:20:11','2017-02-01 15:06:04',NULL,NULL,'aeinstein',0,NULL,NULL,NULL,1,0,NULL,'11c9c772d6471aa24c27274bdd8a223b',NULL,NULL,'Einstein','Albert','','','123456789','','','aeinstein@example.com','',0,'',1,1,NULL,NULL,NULL,'','2015-10-05 08:32:44','2015-10-03 11:43:50',NULL,'',1,'alberteinstein.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'aaaaff','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,'2010-07-08 13:54:48','2017-02-01 15:06:04',NULL,NULL,'demo',1,NULL,NULL,NULL,1,0,NULL,'fe01ce2a7fbac8fafaed7c982a04e229',NULL,NULL,'Doe','David','','','09123123','','','daviddoe@mycompany.com','',0,'',1,1,NULL,NULL,NULL,'','2016-07-30 23:10:54','2016-07-30 23:04:17',NULL,'',1,'johndoe.png',NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'2010-07-11 16:18:59','2017-02-01 15:06:04',NULL,NULL,'pcurie',1,NULL,NULL,NULL,1,0,NULL,'ab335b4eb4c3c99334f656e5db9584c9',NULL,NULL,'Curie','Pierre','','','','','','pcurie@example.com','',0,'',1,1,NULL,NULL,2,'','2012-12-21 17:38:55',NULL,NULL,'',1,'pierrecurie.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,'2013-01-23 17:52:27','2017-02-01 15:06:04',NULL,NULL,'bbookkeeper',1,NULL,NULL,NULL,1,0,NULL,'a7d30b58d647fcf59b7163f9592b1dbb',NULL,NULL,'Bookkeeper','Bob','Bookkeeper','','','','','','',0,'',1,1,17,6,NULL,'','2013-02-25 10:18:41','2013-01-23 17:53:20',NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(10,'2015-10-03 11:47:41','2017-02-01 15:06:04',NULL,NULL,'mcurie',1,NULL,NULL,NULL,1,0,NULL,'52cda011808bb282d1d3625ab607a145',NULL,'t3mnkbhs','Curie','Marie','','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,'mariecurie.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'ffaaff','',NULL,0,0,NULL,NULL,NULL,NULL,'woman',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,'2015-10-05 09:07:52','2017-02-01 15:06:04',NULL,NULL,'zzeceo',1,NULL,NULL,NULL,1,0,NULL,'92af989c4c3a5140fb5d73eb77a52454',NULL,'cq78nf9m','Zeceo','Zack','President','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 22:48:08','2015-10-05 21:18:46',NULL,'',1,NULL,NULL,NULL,NULL,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,'2015-10-05 09:09:46','2018-01-19 11:24:18',NULL,NULL,'admin',0,NULL,NULL,NULL,1,0,NULL,'f6fdffe48c908deb0f4c3bd36c032e72',NULL,'nd6hgbcr','Adminson','Alice','Admin Technical','','','','','','Alice - 123',1,NULL,1,1,NULL,NULL,NULL,'','2018-03-16 13:54:23','2018-01-19 11:21:41',NULL,'',1,'mariecurie.jpg',NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'woman',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(13,'2015-10-05 21:29:35','2017-02-01 15:06:04',NULL,NULL,'ccommercy',1,NULL,NULL,NULL,1,0,NULL,'179858e041af35e8f4c81d68c55fe9da',NULL,'y451ksdv','Commercy','Charle','Commercial leader','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(14,'2015-10-05 21:33:33','2017-02-01 15:06:04',NULL,NULL,'sscientol',1,NULL,NULL,NULL,1,0,NULL,'39bee07ac42f31c98e79cdcd5e5fe4c5',NULL,'s2hp8bxd','Scientol','Sam','Scientist leader','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(16,'2015-10-05 22:47:52','2017-02-20 16:49:00',NULL,NULL,'ccommerson',1,NULL,NULL,NULL,1,0,NULL,'d68005ccf362b82d084551b6291792a3',NULL,'cx9y1dk0','Charle1','Commerson','Sale representative','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 23:46:24','2015-10-05 23:37:31',NULL,'',1,NULL,NULL,NULL,13,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(17,'2015-10-05 22:48:39','2017-02-01 15:06:04',NULL,NULL,'cc2',1,NULL,NULL,NULL,1,0,NULL,'a964065211872fb76f876c6c3e952ea3',NULL,'gw8cb7xj','Charle2','Commerson','Sale representative','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 23:16:06',NULL,NULL,'',0,NULL,NULL,NULL,13,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(18,'2016-01-22 17:27:02','2017-02-01 15:06:04',NULL,NULL,'ldestailleur',1,NULL,NULL,NULL,1,0,NULL,'1bb7805145a7a5066df9e6d585b8b645',NULL,'87g06wbx','Destailleur','Laurent','Project leader of Dolibarr ERP CRM','','','','','ldestailleur@example.com','
Laurent DESTAILLEUR
\r\n\r\n
\r\n
Project Director
\r\nldestailleur@example.com
\r\n\r\n
 
\r\n\r\n\r\n
',0,NULL,1,1,10,10,NULL,'More information on http://www.destailleur.fr','2017-09-06 11:55:30','2017-08-30 15:53:25',NULL,'',1,'ldestailleur_200x200.jpg',NULL,NULL,NULL,NULL,'','','',NULL,NULL,'007f7f','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(19,'2017-02-02 03:55:44','2017-02-01 23:56:50',NULL,NULL,'aboston',1,NULL,NULL,NULL,1,0,NULL,'a7a77a5aff2d5fc2f75f2f61507c88d4',NULL,NULL,'Boston','Alex','','','','','','aboston@example.com','Alex Boston
\r\nAdmin support service - 555 01 02 03 04',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,12,25.00000000,'','','',NULL,NULL,'ff00ff','',NULL,0,0,NULL,NULL,NULL,32.00000000,NULL,NULL,'2014-11-04 00:00:00',NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_user` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_alert` +-- + +DROP TABLE IF EXISTS `llx_user_alert`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_alert` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_alert` +-- + +LOCK TABLES `llx_user_alert` WRITE; +/*!40000 ALTER TABLE `llx_user_alert` DISABLE KEYS */; +INSERT INTO `llx_user_alert` VALUES (1,1,1,1),(2,1,10,12); +/*!40000 ALTER TABLE `llx_user_alert` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_clicktodial` +-- + +DROP TABLE IF EXISTS `llx_user_clicktodial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_clicktodial` ( + `fk_user` int(11) NOT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `login` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `poste` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_clicktodial` +-- + +LOCK TABLES `llx_user_clicktodial` WRITE; +/*!40000 ALTER TABLE `llx_user_clicktodial` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_clicktodial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_employment` +-- + +DROP TABLE IF EXISTS `llx_user_employment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_employment` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `job` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) NOT NULL, + `salary` double(24,8) DEFAULT NULL, + `salaryextra` double(24,8) DEFAULT NULL, + `weeklyhours` double(16,8) DEFAULT NULL, + `dateemployment` date DEFAULT NULL, + `dateemploymentend` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_employment` (`ref`,`entity`), + KEY `fk_user_employment_fk_user` (`fk_user`), + CONSTRAINT `fk_user_employment_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_employment` +-- + +LOCK TABLES `llx_user_employment` WRITE; +/*!40000 ALTER TABLE `llx_user_employment` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_employment` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_extrafields` +-- + +DROP TABLE IF EXISTS `llx_user_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_user_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_extrafields` +-- + +LOCK TABLES `llx_user_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_user_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_param` +-- + +DROP TABLE IF EXISTS `llx_user_param`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_param` ( + `fk_user` int(11) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `param` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `value` text COLLATE utf8_unicode_ci NOT NULL, + UNIQUE KEY `uk_user_param` (`fk_user`,`param`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_param` +-- + +LOCK TABLES `llx_user_param` WRITE; +/*!40000 ALTER TABLE `llx_user_param` DISABLE KEYS */; +INSERT INTO `llx_user_param` VALUES (1,1,'MAIN_BOXES_0','1'),(1,1,'MAIN_THEME','eldy'),(1,3,'THEME_ELDY_ENABLE_PERSONALIZED','1'),(1,1,'THEME_ELDY_RGB','ded0ed'),(1,3,'THEME_ELDY_RGB','d0ddc3'),(2,1,'MAIN_BOXES_0','1'),(11,1,'MAIN_BOXES_0','1'),(12,1,'MAIN_BOXES_0','1'),(12,1,'MAIN_LANG_DEFAULT','en_US'),(12,1,'MAIN_SELECTEDFIELDS_/dolibarr_4.0/htdocs/adherents/list.php','d.zip,d.ref,d.lastname,d.firstname,d.company,d.login,d.morphy,t.libelle,d.email,d.datefin,d.statut,'),(12,1,'MAIN_SELECTEDFIELDS_invoicelist','f.tms,f.facnumber,f.ref_client,f.date,f.date_lim_reglement,s.nom,s.town,s.zip,f.fk_mode_reglement,f.total_ht,rtp,f.fk_statut,'),(12,1,'MAIN_SELECTEDFIELDS_projectlist','p.budget_amount,p.ref,p.title,s.nom,commercial,p.dateo,p.datee,p.public,p.opp_amount,p.fk_opp_status,p.opp_percent,p.fk_statut,ef.priority,'),(12,1,'MAIN_SELECTEDFIELDS_proposallist','p.datec,p.ref,p.ref_client,s.nom,s.town,s.zip,p.date,p.fin_validite,p.total_ht,u.login,p.fk_statut,'),(12,1,'MAIN_SELECTEDFIELDS_servicelist','p.ref,p.label,p.duration,p.sellprice,p.minbuyprice,p.tosell,p.tobuy,'); +/*!40000 ALTER TABLE `llx_user_param` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_rib` +-- + +DROP TABLE IF EXISTS `llx_user_rib`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_rib` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `bank` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `bic` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL, + `iban_prefix` varchar(34) COLLATE utf8_unicode_ci DEFAULT NULL, + `domiciliation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `proprio` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `owner_address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_rib` +-- + +LOCK TABLES `llx_user_rib` WRITE; +/*!40000 ALTER TABLE `llx_user_rib` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_rib` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_rights` +-- + +DROP TABLE IF EXISTS `llx_user_rights`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_rights` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `fk_id` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_rights` (`entity`,`fk_user`,`fk_id`), + KEY `fk_user_rights_fk_user_user` (`fk_user`), + CONSTRAINT `fk_user_rights_fk_user_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=16387 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_rights` +-- + +LOCK TABLES `llx_user_rights` WRITE; +/*!40000 ALTER TABLE `llx_user_rights` DISABLE KEYS */; +INSERT INTO `llx_user_rights` VALUES (12402,1,1,11),(12380,1,1,12),(12385,1,1,13),(12389,1,1,14),(12393,1,1,15),(12398,1,1,16),(12404,1,1,19),(9726,1,1,21),(9700,1,1,22),(9706,1,1,24),(9711,1,1,25),(9716,1,1,26),(9722,1,1,27),(9728,1,1,28),(9978,1,1,31),(9968,1,1,32),(9974,1,1,34),(1910,1,1,36),(9980,1,1,38),(11573,1,1,41),(11574,1,1,42),(11575,1,1,44),(11576,1,1,45),(7184,1,1,61),(7181,1,1,62),(7183,1,1,64),(7185,1,1,67),(7186,1,1,68),(1678,1,1,71),(1673,1,1,72),(1675,1,1,74),(1679,1,1,75),(1677,1,1,76),(1681,1,1,78),(1682,1,1,79),(12322,1,1,81),(12309,1,1,82),(12312,1,1,84),(12314,1,1,86),(12317,1,1,87),(12320,1,1,88),(12323,1,1,89),(11580,1,1,91),(11581,1,1,92),(11582,1,1,93),(11583,1,1,94),(10097,1,1,95),(10099,1,1,96),(10103,1,1,97),(10104,1,1,98),(7139,1,1,101),(7134,1,1,102),(7136,1,1,104),(7137,1,1,105),(7138,1,1,106),(7140,1,1,109),(10229,1,1,111),(10201,1,1,112),(10207,1,1,113),(10213,1,1,114),(10219,1,1,115),(10225,1,1,116),(10231,1,1,117),(12518,1,1,121),(12508,1,1,122),(12514,1,1,125),(12520,1,1,126),(11577,1,1,141),(11578,1,1,142),(11579,1,1,144),(2307,1,1,151),(2304,1,1,152),(2306,1,1,153),(2308,1,1,154),(10092,1,1,161),(10093,1,1,162),(10094,1,1,163),(10095,1,1,164),(10096,1,1,165),(1585,1,1,170),(12342,1,1,171),(12331,1,1,172),(12335,1,1,173),(12339,1,1,174),(12343,1,1,178),(10000,1,1,221),(9990,1,1,222),(9996,1,1,223),(10002,1,1,229),(10007,1,1,237),(10011,1,1,238),(10015,1,1,239),(1686,1,1,241),(1685,1,1,242),(1687,1,1,243),(12604,1,1,251),(12566,1,1,252),(12569,1,1,253),(12572,1,1,254),(12575,1,1,255),(12579,1,1,256),(1617,1,1,258),(12525,1,1,262),(12544,1,1,281),(12534,1,1,282),(12540,1,1,283),(12546,1,1,286),(12288,1,1,300),(12290,1,1,301),(11591,1,1,302),(1763,1,1,331),(1762,1,1,332),(1764,1,1,333),(12582,1,1,341),(12584,1,1,342),(12586,1,1,343),(12588,1,1,344),(12600,1,1,351),(12593,1,1,352),(12597,1,1,353),(12601,1,1,354),(12605,1,1,358),(12560,1,1,531),(12553,1,1,532),(12557,1,1,534),(1625,1,1,536),(12561,1,1,538),(12358,1,1,700),(12348,1,1,701),(12354,1,1,702),(12360,1,1,703),(1755,1,1,1001),(1754,1,1,1002),(1756,1,1,1003),(1758,1,1,1004),(1759,1,1,1005),(7146,1,1,1101),(7143,1,1,1102),(7145,1,1,1104),(7147,1,1,1109),(12412,1,1,1181),(12458,1,1,1182),(12417,1,1,1183),(12420,1,1,1184),(12423,1,1,1185),(12427,1,1,1186),(12431,1,1,1187),(12437,1,1,1188),(12434,1,1,1189),(1578,1,1,1201),(1579,1,1,1202),(12454,1,1,1231),(12443,1,1,1232),(12446,1,1,1233),(12449,1,1,1234),(12452,1,1,1235),(12455,1,1,1236),(12459,1,1,1237),(1736,1,1,1251),(12409,1,1,1321),(12326,1,1,1421),(8190,1,1,1791),(8187,1,1,1792),(8191,1,1,1793),(12264,1,1,2401),(12260,1,1,2402),(12266,1,1,2403),(12280,1,1,2411),(12276,1,1,2412),(12282,1,1,2413),(12286,1,1,2414),(1618,1,1,2500),(12370,1,1,2501),(12367,1,1,2503),(12371,1,1,2515),(9610,1,1,5001),(9611,1,1,5002),(12490,1,1,20001),(12468,1,1,20002),(12474,1,1,20003),(12480,1,1,20004),(12486,1,1,20005),(12492,1,1,20006),(12302,1,1,23001),(12295,1,1,23002),(12299,1,1,23003),(12303,1,1,23004),(7701,1,1,50101),(4984,1,1,50401),(4983,1,1,50402),(4985,1,1,50403),(4987,1,1,50411),(4988,1,1,50412),(4989,1,1,50415),(12498,1,1,55001),(12499,1,1,55002),(3564,1,1,100700),(3565,1,1,100701),(9596,1,1,101051),(9598,1,1,101052),(9600,1,1,101053),(9604,1,1,101060),(9605,1,1,101061),(7177,1,1,101201),(7178,1,1,101202),(10353,1,1,101250),(10355,1,1,101251),(8980,1,1,101261),(8981,1,1,101262),(7616,1,1,101331),(10030,1,1,101701),(10031,1,1,101702),(3582,1,1,102000),(3583,1,1,102001),(9819,1,1,400051),(9823,1,1,400052),(9827,1,1,400053),(9831,1,1,400055),(132,1,2,11),(133,1,2,12),(134,1,2,13),(135,1,2,14),(136,1,2,16),(137,1,2,19),(138,1,2,21),(139,1,2,22),(140,1,2,24),(141,1,2,25),(142,1,2,26),(143,1,2,27),(10359,1,2,31),(145,1,2,32),(10361,1,2,34),(146,1,2,36),(147,1,2,41),(148,1,2,42),(149,1,2,44),(150,1,2,61),(151,1,2,62),(152,1,2,64),(153,1,2,71),(154,1,2,72),(155,1,2,74),(156,1,2,75),(157,1,2,78),(158,1,2,79),(159,1,2,81),(160,1,2,82),(161,1,2,84),(162,1,2,86),(163,1,2,87),(164,1,2,88),(165,1,2,89),(166,1,2,91),(167,1,2,92),(168,1,2,93),(2475,1,2,95),(2476,1,2,96),(2477,1,2,97),(2478,1,2,98),(169,1,2,101),(170,1,2,102),(171,1,2,104),(172,1,2,109),(173,1,2,111),(174,1,2,112),(175,1,2,113),(176,1,2,114),(177,1,2,116),(178,1,2,117),(179,1,2,121),(180,1,2,122),(181,1,2,125),(182,1,2,141),(183,1,2,142),(184,1,2,144),(2479,1,2,151),(2480,1,2,152),(2481,1,2,153),(2482,1,2,154),(185,1,2,161),(186,1,2,162),(187,1,2,163),(188,1,2,164),(189,1,2,165),(190,1,2,170),(2471,1,2,171),(192,1,2,172),(2472,1,2,173),(193,1,2,221),(194,1,2,222),(195,1,2,229),(196,1,2,241),(197,1,2,242),(198,1,2,243),(199,1,2,251),(201,1,2,262),(202,1,2,281),(203,1,2,282),(204,1,2,283),(205,1,2,331),(15072,1,2,510),(2483,1,2,531),(207,1,2,532),(2484,1,2,534),(208,1,2,536),(2473,1,2,700),(210,1,2,701),(211,1,2,702),(2474,1,2,703),(15064,1,2,771),(15057,1,2,772),(15059,1,2,773),(15061,1,2,774),(15063,1,2,775),(15065,1,2,776),(212,1,2,1001),(213,1,2,1002),(214,1,2,1003),(215,1,2,1004),(216,1,2,1005),(217,1,2,1101),(218,1,2,1102),(219,1,2,1104),(220,1,2,1109),(15073,1,2,1121),(15074,1,2,1122),(15075,1,2,1123),(15076,1,2,1124),(15077,1,2,1125),(15078,1,2,1126),(221,1,2,1181),(222,1,2,1182),(223,1,2,1183),(224,1,2,1184),(225,1,2,1185),(226,1,2,1186),(227,1,2,1187),(228,1,2,1188),(229,1,2,1201),(230,1,2,1202),(231,1,2,1231),(232,1,2,1232),(233,1,2,1233),(234,1,2,1234),(235,1,2,1421),(236,1,2,2401),(237,1,2,2402),(238,1,2,2403),(239,1,2,2411),(240,1,2,2412),(241,1,2,2413),(242,1,2,2500),(2470,1,2,2501),(243,1,2,2515),(10363,1,2,20001),(10364,1,2,20002),(10365,1,2,20003),(10366,1,2,20004),(10367,1,2,20005),(10368,1,2,20006),(15054,1,2,23001),(10362,1,2,50101),(15067,1,2,55001),(15066,1,2,59001),(15068,1,2,63001),(15069,1,2,63002),(15070,1,2,63003),(15071,1,2,63004),(10372,1,2,101250),(1807,1,3,11),(1808,1,3,31),(1809,1,3,36),(1810,1,3,41),(1811,1,3,61),(1812,1,3,71),(1813,1,3,72),(1814,1,3,74),(1815,1,3,75),(1816,1,3,78),(1817,1,3,79),(1818,1,3,91),(1819,1,3,95),(1820,1,3,97),(1821,1,3,111),(1822,1,3,121),(1823,1,3,122),(1824,1,3,125),(1825,1,3,161),(1826,1,3,170),(1827,1,3,171),(1828,1,3,172),(1829,1,3,221),(1830,1,3,222),(1831,1,3,229),(1832,1,3,241),(1833,1,3,242),(1834,1,3,243),(1835,1,3,251),(1836,1,3,255),(1837,1,3,256),(1838,1,3,262),(1839,1,3,281),(1840,1,3,282),(1841,1,3,283),(1842,1,3,331),(1843,1,3,531),(1844,1,3,536),(1845,1,3,700),(1846,1,3,1001),(1847,1,3,1002),(1848,1,3,1003),(1849,1,3,1004),(1850,1,3,1005),(1851,1,3,1181),(1852,1,3,1182),(1853,1,3,1201),(1854,1,3,1202),(1855,1,3,1231),(1856,1,3,2401),(1857,1,3,2402),(1858,1,3,2403),(1859,1,3,2411),(1860,1,3,2412),(1861,1,3,2413),(1862,1,3,2500),(1863,1,3,2515),(8026,1,4,11),(8027,1,4,21),(8028,1,4,31),(8029,1,4,41),(8030,1,4,61),(8031,1,4,71),(8032,1,4,72),(8033,1,4,74),(8034,1,4,75),(8035,1,4,78),(8036,1,4,79),(8037,1,4,81),(8038,1,4,91),(8039,1,4,95),(8040,1,4,97),(8041,1,4,101),(8042,1,4,111),(8043,1,4,121),(8044,1,4,151),(8045,1,4,161),(8046,1,4,171),(8047,1,4,221),(8048,1,4,222),(8049,1,4,229),(8050,1,4,241),(8051,1,4,242),(8052,1,4,243),(8146,1,4,251),(8147,1,4,253),(8053,1,4,262),(8054,1,4,281),(8055,1,4,331),(8056,1,4,341),(8057,1,4,342),(8058,1,4,343),(8059,1,4,344),(8060,1,4,531),(8061,1,4,700),(8062,1,4,1001),(8063,1,4,1002),(8064,1,4,1003),(8065,1,4,1004),(8066,1,4,1005),(8067,1,4,1101),(8068,1,4,1181),(8069,1,4,1182),(8070,1,4,1201),(8071,1,4,1202),(8072,1,4,1231),(8073,1,4,2401),(8074,1,4,2501),(8075,1,4,2503),(8076,1,4,2515),(8077,1,4,20001),(8078,1,4,50101),(8079,1,4,101201),(8080,1,4,101261),(8081,1,4,102000),(8082,1,4,400051),(8083,1,4,400052),(8084,1,4,400053),(8085,1,4,400055),(12608,1,10,11),(12609,1,10,21),(12610,1,10,31),(12611,1,10,41),(12612,1,10,61),(12613,1,10,71),(12614,1,10,72),(12615,1,10,74),(12616,1,10,75),(12617,1,10,78),(12618,1,10,79),(12619,1,10,81),(12620,1,10,91),(12621,1,10,95),(12622,1,10,97),(12623,1,10,101),(12624,1,10,111),(12625,1,10,121),(12626,1,10,151),(12627,1,10,161),(12628,1,10,171),(12629,1,10,221),(12630,1,10,222),(12631,1,10,229),(12632,1,10,241),(12633,1,10,242),(12634,1,10,243),(12635,1,10,262),(12636,1,10,281),(12637,1,10,300),(12638,1,10,331),(12639,1,10,341),(12640,1,10,342),(12641,1,10,343),(12642,1,10,344),(12643,1,10,531),(12644,1,10,700),(12645,1,10,1001),(12646,1,10,1002),(12647,1,10,1003),(12648,1,10,1004),(12649,1,10,1005),(12650,1,10,1101),(12651,1,10,1181),(12652,1,10,1182),(12653,1,10,1201),(12654,1,10,1202),(12655,1,10,1231),(12656,1,10,2401),(12657,1,10,2501),(12658,1,10,2503),(12659,1,10,2515),(12660,1,10,20001),(12661,1,10,20002),(12662,1,10,23001),(12663,1,10,50101),(12664,1,11,11),(12665,1,11,21),(12666,1,11,31),(12667,1,11,41),(12668,1,11,61),(12669,1,11,71),(12670,1,11,72),(12671,1,11,74),(12672,1,11,75),(12673,1,11,78),(12674,1,11,79),(12675,1,11,81),(12676,1,11,91),(12677,1,11,95),(12678,1,11,97),(12679,1,11,101),(12680,1,11,111),(12681,1,11,121),(12682,1,11,151),(12683,1,11,161),(12684,1,11,171),(12685,1,11,221),(12686,1,11,222),(12687,1,11,229),(12688,1,11,241),(12689,1,11,242),(12690,1,11,243),(12691,1,11,262),(12692,1,11,281),(12693,1,11,300),(12694,1,11,331),(12695,1,11,341),(12696,1,11,342),(12697,1,11,343),(12698,1,11,344),(12699,1,11,531),(12700,1,11,700),(12701,1,11,1001),(12702,1,11,1002),(12703,1,11,1003),(12704,1,11,1004),(12705,1,11,1005),(12706,1,11,1101),(12707,1,11,1181),(12708,1,11,1182),(12709,1,11,1201),(12710,1,11,1202),(12711,1,11,1231),(12712,1,11,2401),(12713,1,11,2501),(12714,1,11,2503),(12715,1,11,2515),(12716,1,11,20001),(12717,1,11,20002),(12718,1,11,23001),(12719,1,11,50101),(16272,1,12,11),(16262,1,12,12),(16264,1,12,13),(16266,1,12,14),(16268,1,12,15),(16271,1,12,16),(16274,1,12,19),(14146,1,12,21),(14135,1,12,22),(14137,1,12,24),(14139,1,12,25),(14142,1,12,26),(14145,1,12,27),(14148,1,12,28),(14930,1,12,31),(14926,1,12,32),(14929,1,12,34),(14932,1,12,38),(13816,1,12,41),(13813,1,12,42),(13815,1,12,44),(13817,1,12,45),(14094,1,12,61),(14091,1,12,62),(14093,1,12,64),(14095,1,12,67),(14096,1,12,68),(16203,1,12,71),(16198,1,12,72),(16200,1,12,74),(16204,1,12,75),(16202,1,12,76),(16206,1,12,78),(16207,1,12,79),(16242,1,12,81),(16236,1,12,82),(16237,1,12,84),(16238,1,12,86),(16240,1,12,87),(16241,1,12,88),(16243,1,12,89),(15401,1,12,91),(15397,1,12,92),(15400,1,12,93),(15403,1,12,94),(13990,1,12,95),(12734,1,12,97),(14939,1,12,101),(14935,1,12,102),(14936,1,12,104),(14937,1,12,105),(14938,1,12,106),(14940,1,12,109),(15390,1,12,111),(15377,1,12,112),(15380,1,12,113),(15383,1,12,114),(15386,1,12,115),(15389,1,12,116),(15392,1,12,117),(16331,1,12,121),(16327,1,12,122),(16330,1,12,125),(16333,1,12,126),(13821,1,12,141),(13820,1,12,142),(13822,1,12,144),(13912,1,12,151),(13909,1,12,152),(13911,1,12,153),(13913,1,12,154),(14063,1,12,161),(14056,1,12,162),(14058,1,12,163),(14060,1,12,164),(14062,1,12,165),(14064,1,12,167),(13350,1,12,171),(13345,1,12,172),(13347,1,12,173),(13349,1,12,174),(13351,1,12,178),(13838,1,12,221),(13834,1,12,222),(13837,1,12,223),(13840,1,12,229),(13842,1,12,237),(13844,1,12,238),(13846,1,12,239),(13516,1,12,241),(13515,1,12,242),(13517,1,12,243),(16374,1,12,251),(16355,1,12,252),(16357,1,12,253),(16358,1,12,254),(16360,1,12,255),(16362,1,12,256),(16335,1,12,262),(16344,1,12,281),(16340,1,12,282),(16343,1,12,283),(16346,1,12,286),(16225,1,12,300),(16226,1,12,301),(16194,1,12,331),(16193,1,12,332),(16195,1,12,333),(16363,1,12,341),(16364,1,12,342),(16365,1,12,343),(16366,1,12,344),(16372,1,12,351),(16369,1,12,352),(16371,1,12,353),(16373,1,12,354),(16375,1,12,358),(16384,1,12,501),(16378,1,12,502),(13865,1,12,510),(16380,1,12,511),(16381,1,12,512),(16383,1,12,514),(16385,1,12,517),(15291,1,12,520),(15286,1,12,522),(15288,1,12,524),(15290,1,12,525),(15292,1,12,527),(16352,1,12,531),(16349,1,12,532),(16351,1,12,534),(16353,1,12,538),(13358,1,12,700),(16250,1,12,701),(16249,1,12,702),(16252,1,12,703),(15090,1,12,771),(15081,1,12,772),(15083,1,12,773),(15085,1,12,774),(15087,1,12,775),(15089,1,12,776),(15091,1,12,779),(14917,1,12,1001),(14916,1,12,1002),(14918,1,12,1003),(14920,1,12,1004),(14921,1,12,1005),(14945,1,12,1101),(14943,1,12,1102),(14944,1,12,1104),(14946,1,12,1109),(14762,1,12,1121),(14755,1,12,1122),(14757,1,12,1123),(14759,1,12,1124),(14761,1,12,1125),(14763,1,12,1126),(16278,1,12,1181),(16301,1,12,1182),(16281,1,12,1183),(16282,1,12,1184),(16284,1,12,1185),(16286,1,12,1186),(16288,1,12,1187),(16291,1,12,1188),(16289,1,12,1189),(13827,1,12,1201),(13828,1,12,1202),(16299,1,12,1231),(16294,1,12,1232),(16295,1,12,1233),(16297,1,12,1234),(16298,1,12,1235),(16300,1,12,1236),(16302,1,12,1237),(13829,1,12,1251),(16276,1,12,1321),(16277,1,12,1322),(16244,1,12,1421),(16213,1,12,2401),(16212,1,12,2402),(16215,1,12,2403),(16221,1,12,2411),(16220,1,12,2412),(16223,1,12,2413),(16224,1,12,2414),(16256,1,12,2501),(16255,1,12,2503),(16257,1,12,2515),(16386,1,12,3200),(15435,1,12,5001),(15436,1,12,5002),(16317,1,12,20001),(16307,1,12,20002),(16310,1,12,20003),(16313,1,12,20004),(16316,1,12,20005),(16319,1,12,20006),(16232,1,12,23001),(16229,1,12,23002),(16231,1,12,23003),(16233,1,12,23004),(13712,1,12,50101),(15499,1,12,50401),(15501,1,12,50411),(15502,1,12,50412),(15503,1,12,50420),(15504,1,12,50430),(15498,1,12,50440),(16321,1,12,55001),(16322,1,12,55002),(14128,1,12,59001),(14129,1,12,59002),(14130,1,12,59003),(14818,1,12,63001),(14815,1,12,63002),(14817,1,12,63003),(14819,1,12,63004),(15241,1,12,64001),(16009,1,12,101331),(16010,1,12,101332),(16011,1,12,101333),(15438,1,12,101701),(15439,1,12,101702),(12776,1,13,11),(12777,1,13,21),(12778,1,13,31),(12779,1,13,41),(12780,1,13,61),(12781,1,13,71),(12782,1,13,72),(12783,1,13,74),(12784,1,13,75),(12785,1,13,78),(12786,1,13,79),(12787,1,13,81),(12788,1,13,91),(12789,1,13,95),(12790,1,13,97),(12791,1,13,101),(12792,1,13,111),(12793,1,13,121),(12794,1,13,151),(12795,1,13,161),(12796,1,13,171),(12797,1,13,221),(12798,1,13,222),(12799,1,13,229),(12800,1,13,241),(12801,1,13,242),(12802,1,13,243),(12803,1,13,262),(12804,1,13,281),(12805,1,13,300),(12806,1,13,331),(12807,1,13,341),(12808,1,13,342),(12809,1,13,343),(12810,1,13,344),(12811,1,13,531),(12812,1,13,700),(12813,1,13,1001),(12814,1,13,1002),(12815,1,13,1003),(12816,1,13,1004),(12817,1,13,1005),(12818,1,13,1101),(12819,1,13,1181),(12820,1,13,1182),(12821,1,13,1201),(12822,1,13,1202),(12823,1,13,1231),(12824,1,13,2401),(12825,1,13,2501),(12826,1,13,2503),(12827,1,13,2515),(12828,1,13,20001),(12829,1,13,20002),(12830,1,13,23001),(12831,1,13,50101),(12832,1,14,11),(12833,1,14,21),(12834,1,14,31),(12835,1,14,41),(12836,1,14,61),(12837,1,14,71),(12838,1,14,72),(12839,1,14,74),(12840,1,14,75),(12841,1,14,78),(12842,1,14,79),(12843,1,14,81),(12844,1,14,91),(12845,1,14,95),(12846,1,14,97),(12847,1,14,101),(12848,1,14,111),(12849,1,14,121),(12850,1,14,151),(12851,1,14,161),(12852,1,14,171),(12853,1,14,221),(12854,1,14,222),(12855,1,14,229),(12856,1,14,241),(12857,1,14,242),(12858,1,14,243),(12859,1,14,262),(12860,1,14,281),(12861,1,14,300),(12862,1,14,331),(12863,1,14,341),(12864,1,14,342),(12865,1,14,343),(12866,1,14,344),(12867,1,14,531),(12868,1,14,700),(12869,1,14,1001),(12870,1,14,1002),(12871,1,14,1003),(12872,1,14,1004),(12873,1,14,1005),(12874,1,14,1101),(12875,1,14,1181),(12876,1,14,1182),(12877,1,14,1201),(12878,1,14,1202),(12879,1,14,1231),(12880,1,14,2401),(12881,1,14,2501),(12882,1,14,2503),(12883,1,14,2515),(12884,1,14,20001),(12885,1,14,20002),(12886,1,14,23001),(12887,1,14,50101),(12944,1,16,11),(12945,1,16,21),(12946,1,16,31),(13056,1,16,41),(13057,1,16,42),(13058,1,16,44),(13059,1,16,45),(12948,1,16,61),(12949,1,16,71),(12950,1,16,72),(12951,1,16,74),(12952,1,16,75),(12953,1,16,78),(12954,1,16,79),(12955,1,16,81),(12956,1,16,91),(12957,1,16,95),(12958,1,16,97),(12959,1,16,101),(12960,1,16,111),(12961,1,16,121),(13060,1,16,141),(13061,1,16,142),(13062,1,16,144),(12962,1,16,151),(12963,1,16,161),(12964,1,16,171),(12965,1,16,221),(12966,1,16,222),(12967,1,16,229),(12968,1,16,241),(12969,1,16,242),(12970,1,16,243),(13128,1,16,251),(13064,1,16,262),(12972,1,16,281),(12973,1,16,300),(12974,1,16,331),(12975,1,16,341),(12976,1,16,342),(12977,1,16,343),(12978,1,16,344),(12979,1,16,531),(12980,1,16,700),(12981,1,16,1001),(12982,1,16,1002),(12983,1,16,1003),(12984,1,16,1004),(12985,1,16,1005),(12986,1,16,1101),(12987,1,16,1181),(12988,1,16,1182),(12989,1,16,1201),(12990,1,16,1202),(12991,1,16,1231),(12992,1,16,2401),(12993,1,16,2501),(12994,1,16,2503),(12995,1,16,2515),(12996,1,16,20001),(12997,1,16,20002),(12998,1,16,23001),(12999,1,16,50101),(13000,1,17,11),(13001,1,17,21),(13002,1,17,31),(13065,1,17,41),(13066,1,17,42),(13067,1,17,44),(13068,1,17,45),(13004,1,17,61),(13005,1,17,71),(13006,1,17,72),(13007,1,17,74),(13008,1,17,75),(13009,1,17,78),(13010,1,17,79),(13011,1,17,81),(13012,1,17,91),(13013,1,17,95),(13014,1,17,97),(13015,1,17,101),(13016,1,17,111),(13017,1,17,121),(13069,1,17,141),(13070,1,17,142),(13071,1,17,144),(13018,1,17,151),(13019,1,17,161),(13020,1,17,171),(13021,1,17,221),(13022,1,17,222),(13023,1,17,229),(13024,1,17,241),(13025,1,17,242),(13026,1,17,243),(13028,1,17,281),(13029,1,17,300),(13030,1,17,331),(13031,1,17,341),(13032,1,17,342),(13033,1,17,343),(13034,1,17,344),(13035,1,17,531),(13036,1,17,700),(13037,1,17,1001),(13038,1,17,1002),(13039,1,17,1003),(13040,1,17,1004),(13041,1,17,1005),(13042,1,17,1101),(13043,1,17,1181),(13044,1,17,1182),(13045,1,17,1201),(13046,1,17,1202),(13047,1,17,1231),(13048,1,17,2401),(13049,1,17,2501),(13050,1,17,2503),(13051,1,17,2515),(13052,1,17,20001),(13053,1,17,20002),(13054,1,17,23001),(13055,1,17,50101),(14504,1,18,11),(14505,1,18,21),(14506,1,18,31),(14507,1,18,41),(14508,1,18,61),(14509,1,18,71),(14510,1,18,78),(14511,1,18,81),(14512,1,18,91),(14513,1,18,95),(14514,1,18,101),(14515,1,18,111),(14516,1,18,121),(14517,1,18,151),(14518,1,18,161),(14519,1,18,221),(14520,1,18,241),(14521,1,18,262),(14522,1,18,281),(14523,1,18,300),(14524,1,18,331),(14525,1,18,332),(14526,1,18,333),(14527,1,18,341),(14528,1,18,342),(14529,1,18,343),(14530,1,18,344),(14531,1,18,531),(14532,1,18,701),(14533,1,18,771),(14534,1,18,774),(14535,1,18,1001),(14536,1,18,1004),(14537,1,18,1101),(14538,1,18,1181),(14539,1,18,1182),(14540,1,18,1201),(14541,1,18,1231),(14542,1,18,2401),(14543,1,18,2501),(14544,1,18,2503),(14545,1,18,2515),(14546,1,18,20001),(14547,1,18,20002),(14548,1,18,50101),(14549,1,18,59001),(15242,1,19,21),(15243,1,19,31),(15244,1,19,41),(15245,1,19,61),(15246,1,19,71),(15247,1,19,78),(15248,1,19,81),(15249,1,19,101),(15250,1,19,121),(15251,1,19,151),(15252,1,19,161),(15253,1,19,221),(15254,1,19,241),(15255,1,19,262),(15256,1,19,281),(15257,1,19,300),(15258,1,19,331),(15259,1,19,332),(15260,1,19,341),(15261,1,19,342),(15262,1,19,343),(15263,1,19,344),(15264,1,19,531),(15265,1,19,701),(15266,1,19,771),(15267,1,19,774),(15268,1,19,777),(15269,1,19,1001),(15270,1,19,1004),(15271,1,19,1101),(15272,1,19,1121),(15273,1,19,1181),(15274,1,19,1182),(15275,1,19,1201),(15276,1,19,1231),(15277,1,19,2401),(15278,1,19,2501),(15279,1,19,20001),(15280,1,19,20002),(15281,1,19,50101),(15282,1,19,59001),(15283,1,19,63001); +/*!40000 ALTER TABLE `llx_user_rights` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup` +-- + +DROP TABLE IF EXISTS `llx_usergroup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `nom` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `note` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_name` (`nom`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup` +-- + +LOCK TABLES `llx_usergroup` WRITE; +/*!40000 ALTER TABLE `llx_usergroup` DISABLE KEYS */; +INSERT INTO `llx_usergroup` VALUES (1,'Sale representatives',1,'2013-01-16 20:48:08','2015-10-03 09:44:44','All sales representative users',NULL),(2,'Management',1,'2015-10-03 11:46:25','2015-10-03 09:46:25','',NULL),(3,'Scientists',1,'2015-10-03 11:46:46','2015-10-03 09:46:46','',NULL),(4,'Commercial',1,'2015-10-05 21:30:13','2015-10-05 19:30:13','',NULL); +/*!40000 ALTER TABLE `llx_usergroup` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_extrafields` +-- + +DROP TABLE IF EXISTS `llx_usergroup_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_usergroup_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_extrafields` +-- + +LOCK TABLES `llx_usergroup_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_usergroup_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_rights` +-- + +DROP TABLE IF EXISTS `llx_usergroup_rights`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_rights` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_usergroup` int(11) NOT NULL, + `fk_id` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_rights` (`entity`,`fk_usergroup`,`fk_id`), + KEY `fk_usergroup_rights_fk_usergroup` (`fk_usergroup`), + CONSTRAINT `fk_usergroup_rights_fk_usergroup` FOREIGN KEY (`fk_usergroup`) REFERENCES `llx_usergroup` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=200 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_rights` +-- + +LOCK TABLES `llx_usergroup_rights` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_rights` DISABLE KEYS */; +INSERT INTO `llx_usergroup_rights` VALUES (1,1,1,2401),(2,1,1,2402),(3,1,1,2403),(4,1,1,2411),(5,1,1,2412),(6,1,1,2413),(78,1,2,11),(79,1,2,12),(80,1,2,13),(81,1,2,14),(82,1,2,15),(83,1,2,16),(84,1,2,19),(144,1,2,21),(145,1,2,22),(146,1,2,24),(147,1,2,25),(148,1,2,26),(149,1,2,27),(150,1,2,28),(133,1,2,31),(134,1,2,32),(135,1,2,34),(136,1,2,38),(137,1,2,41),(138,1,2,42),(139,1,2,44),(140,1,2,45),(86,1,2,61),(87,1,2,62),(88,1,2,64),(89,1,2,67),(90,1,2,68),(7,1,2,71),(8,1,2,72),(9,1,2,74),(10,1,2,75),(11,1,2,76),(12,1,2,78),(13,1,2,79),(32,1,2,81),(33,1,2,82),(34,1,2,84),(35,1,2,86),(36,1,2,87),(37,1,2,88),(38,1,2,89),(173,1,2,91),(174,1,2,92),(175,1,2,93),(176,1,2,94),(66,1,2,101),(67,1,2,102),(68,1,2,104),(69,1,2,105),(70,1,2,106),(71,1,2,109),(21,1,2,111),(22,1,2,112),(23,1,2,113),(24,1,2,114),(25,1,2,115),(26,1,2,116),(27,1,2,117),(164,1,2,121),(165,1,2,122),(166,1,2,125),(167,1,2,126),(141,1,2,141),(142,1,2,142),(143,1,2,144),(129,1,2,151),(130,1,2,152),(131,1,2,153),(132,1,2,154),(44,1,2,161),(45,1,2,162),(46,1,2,163),(47,1,2,164),(48,1,2,165),(49,1,2,167),(120,1,2,221),(121,1,2,222),(122,1,2,223),(123,1,2,229),(124,1,2,237),(125,1,2,238),(126,1,2,239),(29,1,2,241),(30,1,2,242),(31,1,2,243),(182,1,2,251),(183,1,2,252),(184,1,2,253),(185,1,2,254),(186,1,2,255),(187,1,2,256),(168,1,2,262),(169,1,2,281),(170,1,2,282),(171,1,2,283),(172,1,2,286),(197,1,2,331),(198,1,2,332),(199,1,2,333),(188,1,2,341),(189,1,2,342),(190,1,2,343),(191,1,2,344),(192,1,2,351),(193,1,2,352),(194,1,2,353),(195,1,2,354),(196,1,2,358),(151,1,2,531),(152,1,2,532),(153,1,2,534),(154,1,2,538),(60,1,2,701),(61,1,2,702),(62,1,2,703),(177,1,2,1001),(178,1,2,1002),(179,1,2,1003),(180,1,2,1004),(181,1,2,1005),(72,1,2,1101),(73,1,2,1102),(74,1,2,1104),(75,1,2,1109),(91,1,2,1181),(92,1,2,1182),(93,1,2,1183),(94,1,2,1184),(95,1,2,1185),(96,1,2,1186),(97,1,2,1187),(98,1,2,1188),(99,1,2,1189),(76,1,2,1201),(77,1,2,1202),(100,1,2,1231),(101,1,2,1232),(102,1,2,1233),(103,1,2,1234),(104,1,2,1235),(105,1,2,1236),(106,1,2,1237),(113,1,2,1251),(85,1,2,1321),(39,1,2,1421),(14,1,2,2401),(15,1,2,2402),(16,1,2,2403),(17,1,2,2411),(18,1,2,2412),(19,1,2,2413),(20,1,2,2414),(63,1,2,2501),(64,1,2,2503),(65,1,2,2515),(114,1,2,20001),(115,1,2,20002),(116,1,2,20003),(117,1,2,20004),(118,1,2,20005),(119,1,2,20006),(50,1,2,23001),(51,1,2,23002),(52,1,2,23003),(53,1,2,23004),(28,1,2,50101),(127,1,2,55001),(128,1,2,55002); +/*!40000 ALTER TABLE `llx_usergroup_rights` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_user` +-- + +DROP TABLE IF EXISTS `llx_usergroup_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_user` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `fk_usergroup` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_user` (`entity`,`fk_user`,`fk_usergroup`), + KEY `fk_usergroup_user_fk_user` (`fk_user`), + KEY `fk_usergroup_user_fk_usergroup` (`fk_usergroup`), + CONSTRAINT `fk_usergroup_user_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_usergroup_user_fk_usergroup` FOREIGN KEY (`fk_usergroup`) REFERENCES `llx_usergroup` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_user` +-- + +LOCK TABLES `llx_usergroup_user` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_user` DISABLE KEYS */; +INSERT INTO `llx_usergroup_user` VALUES (2,1,1,3),(12,1,2,4),(3,1,3,3),(4,1,11,2),(13,1,12,1),(5,1,13,4),(6,1,16,1),(7,1,17,1),(11,1,18,1); +/*!40000 ALTER TABLE `llx_usergroup_user` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_draft` +-- + +DROP TABLE IF EXISTS `llx_webmail_draft`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_draft` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL DEFAULT '0', + `fk_contact` int(11) NOT NULL DEFAULT '0', + `size` int(11) NOT NULL DEFAULT '0', + `subject` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `body` longtext COLLATE utf8_unicode_ci NOT NULL, + `from` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `to` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `cc` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `bcc` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `files` int(11) NOT NULL DEFAULT '0', + `cron` datetime DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_webmail_draft_fk_user` (`fk_user`), + KEY `idx_webmail_draft_cron` (`cron`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_draft` +-- + +LOCK TABLES `llx_webmail_draft` WRITE; +/*!40000 ALTER TABLE `llx_webmail_draft` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_draft` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_files` +-- + +DROP TABLE IF EXISTS `llx_webmail_files`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_files` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_mail` int(11) NOT NULL DEFAULT '0', + `fk_user` int(11) NOT NULL DEFAULT '0', + `datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `file_name` text NOT NULL, + `file` text NOT NULL, + `file_size` int(11) NOT NULL DEFAULT '0', + `file_type` varchar(255) NOT NULL DEFAULT '', + `search` mediumtext NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_webmail_files_fk_user` (`fk_user`), + KEY `idx_webmail_files_files` (`fk_mail`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_files` +-- + +LOCK TABLES `llx_webmail_files` WRITE; +/*!40000 ALTER TABLE `llx_webmail_files` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_files` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_mail` +-- + +DROP TABLE IF EXISTS `llx_webmail_mail`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_mail` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL DEFAULT '0', + `fk_soc` int(11) NOT NULL DEFAULT '0', + `fk_contact` int(11) NOT NULL DEFAULT '0', + `uidl` varchar(255) NOT NULL DEFAULT '', + `datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `size` int(11) NOT NULL DEFAULT '0', + `subject` text NOT NULL, + `body` mediumtext NOT NULL, + `state_new` int(11) NOT NULL DEFAULT '0', + `state_reply` int(11) NOT NULL DEFAULT '0', + `state_forward` int(11) NOT NULL DEFAULT '0', + `state_wait` int(11) NOT NULL DEFAULT '0', + `state_spam` int(11) NOT NULL DEFAULT '0', + `id_correo` int(11) NOT NULL DEFAULT '0', + `is_outbox` int(11) NOT NULL DEFAULT '0', + `state_sent` int(11) NOT NULL DEFAULT '0', + `state_error` varchar(255) NOT NULL DEFAULT '', + `state_crt` int(11) NOT NULL DEFAULT '0', + `state_archiv` int(11) NOT NULL DEFAULT '0', + `priority` int(11) NOT NULL DEFAULT '0', + `sensitivity` int(11) NOT NULL DEFAULT '0', + `from` text NOT NULL, + `to` text NOT NULL, + `cc` text NOT NULL, + `bcc` text NOT NULL, + `files` int(11) NOT NULL DEFAULT '0', + `state_delete` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_webmail_mail_nospam` (`fk_user`,`state_spam`), + KEY `idx_webmail_mail_count` (`fk_user`,`state_new`), + KEY `idx_webmail_mail_sendmail` (`is_outbox`,`state_sent`), + KEY `idx_webmail_mail_fk_user` (`fk_user`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_mail` +-- + +LOCK TABLES `llx_webmail_mail` WRITE; +/*!40000 ALTER TABLE `llx_webmail_mail` DISABLE KEYS */; +INSERT INTO `llx_webmail_mail` VALUES (1,1,1,27,0,'1452254519','2016-01-08 16:01:59',0,'Submission of invoice 16','You will find here the invoice 16
\r\n
\r\nSincerely',0,0,0,0,0,0,1,1,'0',0,0,0,0,'first last ','Aljoun Samira ','','',1,0); +/*!40000 ALTER TABLE `llx_webmail_mail` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_users` +-- + +DROP TABLE IF EXISTS `llx_webmail_users`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_users` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `login` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `password` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `safemail` tinyint(4) DEFAULT '1', + `dayssafe` int(11) DEFAULT '10', + PRIMARY KEY (`rowid`), + KEY `fk_webmail_users_fk_user` (`fk_user`), + CONSTRAINT `fk_webmail_users_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_users` +-- + +LOCK TABLES `llx_webmail_users` WRITE; +/*!40000 ALTER TABLE `llx_webmail_users` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_users` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_users_view` +-- + +DROP TABLE IF EXISTS `llx_webmail_users_view`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_users_view` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `fk_user_view` int(11) NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_users_view` +-- + +LOCK TABLES `llx_webmail_users_view` WRITE; +/*!40000 ALTER TABLE `llx_webmail_users_view` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_users_view` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website` +-- + +DROP TABLE IF EXISTS `llx_website`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `fk_default_home` int(11) DEFAULT NULL, + `virtualhost` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `date_modification` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_website_ref` (`ref`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website` +-- + +LOCK TABLES `llx_website` WRITE; +/*!40000 ALTER TABLE `llx_website` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website_extrafields` +-- + +DROP TABLE IF EXISTS `llx_website_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_website_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website_extrafields` +-- + +LOCK TABLES `llx_website_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_website_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website_page` +-- + +DROP TABLE IF EXISTS `llx_website_page`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website_page` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_website` int(11) NOT NULL, + `pageurl` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `aliasalt` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `keywords` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `content` mediumtext COLLATE utf8_unicode_ci, + `status` int(11) DEFAULT '1', + `date_creation` datetime DEFAULT NULL, + `date_modification` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `type_container` varchar(16) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'page', + `lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_page` int(11) DEFAULT NULL, + `grabbed_from` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `htmlheader` mediumtext COLLATE utf8_unicode_ci, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_website_page_url` (`fk_website`,`pageurl`), + CONSTRAINT `fk_website_page_website` FOREIGN KEY (`fk_website`) REFERENCES `llx_website` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website_page` +-- + +LOCK TABLES `llx_website_page` WRITE; +/*!40000 ALTER TABLE `llx_website_page` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website_page` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_websiteaccount` +-- + +DROP TABLE IF EXISTS `llx_websiteaccount`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_websiteaccount` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `login` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `password` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_websiteaccount_rowid` (`rowid`), + KEY `idx_websiteaccount_login` (`login`), + KEY `idx_websiteaccount_fk_soc` (`fk_soc`), + KEY `idx_websiteaccount_import_key` (`import_key`), + KEY `idx_websiteaccount_status` (`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_websiteaccount` +-- + +LOCK TABLES `llx_websiteaccount` WRITE; +/*!40000 ALTER TABLE `llx_websiteaccount` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_websiteaccount` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_websiteaccount_extrafields` +-- + +DROP TABLE IF EXISTS `llx_websiteaccount_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_websiteaccount_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_websiteaccount_extrafields` +-- + +LOCK TABLES `llx_websiteaccount_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_websiteaccount_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_websiteaccount_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation` +-- + +DROP TABLE IF EXISTS `llx_workstation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '0', + `fk_usergroup` int(11) NOT NULL DEFAULT '0', + `name` varchar(255) DEFAULT NULL, + `background` varchar(255) DEFAULT NULL, + `type` varchar(10) DEFAULT NULL, + `code` varchar(10) DEFAULT NULL, + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + `nb_hour_capacity` double NOT NULL DEFAULT '0', + `nb_ressource` double NOT NULL DEFAULT '0', + `thm` double NOT NULL DEFAULT '0', + `thm_machine` double NOT NULL DEFAULT '0', + `thm_overtime` double NOT NULL DEFAULT '0', + `thm_night` double NOT NULL DEFAULT '0', + `nb_hour_before` double NOT NULL DEFAULT '0', + `nb_hour_after` double NOT NULL DEFAULT '0', + `is_parallele` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `entity` (`entity`), + KEY `fk_usergroup` (`fk_usergroup`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation` +-- + +LOCK TABLES `llx_workstation` WRITE; +/*!40000 ALTER TABLE `llx_workstation` DISABLE KEYS */; +INSERT INTO `llx_workstation` VALUES (1,'2018-11-18 17:50:22','2018-11-18 17:50:22',1,4,'aaaa','#','HUMAN','',0,0,0,0,0,0,0,0,0,0,0); +/*!40000 ALTER TABLE `llx_workstation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation_product` +-- + +DROP TABLE IF EXISTS `llx_workstation_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation_product` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `rang` double NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_product` (`fk_product`), + KEY `fk_workstation` (`fk_workstation`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation_product` +-- + +LOCK TABLES `llx_workstation_product` WRITE; +/*!40000 ALTER TABLE `llx_workstation_product` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_workstation_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation_schedule` +-- + +DROP TABLE IF EXISTS `llx_workstation_schedule`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation_schedule` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `day_moment` varchar(255) DEFAULT NULL, + `week_day` int(11) NOT NULL DEFAULT '0', + `nb_ressource` int(11) NOT NULL DEFAULT '0', + `date_off` datetime DEFAULT NULL, + `nb_hour_capacity` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_workstation` (`fk_workstation`), + KEY `date_off` (`date_off`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation_schedule` +-- + +LOCK TABLES `llx_workstation_schedule` WRITE; +/*!40000 ALTER TABLE `llx_workstation_schedule` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_workstation_schedule` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_links` +-- + +DROP TABLE IF EXISTS `tmp_links`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_links` ( + `objectid` int(11) NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `max_rowid` int(11) DEFAULT NULL, + `count_rowid` bigint(21) NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_links` +-- + +LOCK TABLES `tmp_links` WRITE; +/*!40000 ALTER TABLE `tmp_links` DISABLE KEYS */; +INSERT INTO `tmp_links` VALUES (3,'fdf',6,2); +/*!40000 ALTER TABLE `tmp_links` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_llx_product_batch` +-- + +DROP TABLE IF EXISTS `tmp_llx_product_batch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_llx_product_batch` ( + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double DEFAULT NULL, + `nb` bigint(21) NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_llx_product_batch` +-- + +LOCK TABLES `tmp_llx_product_batch` WRITE; +/*!40000 ALTER TABLE `tmp_llx_product_batch` DISABLE KEYS */; +/*!40000 ALTER TABLE `tmp_llx_product_batch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_llx_product_batch2` +-- + +DROP TABLE IF EXISTS `tmp_llx_product_batch2`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_llx_product_batch2` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_llx_product_batch2` +-- + +LOCK TABLES `tmp_llx_product_batch2` WRITE; +/*!40000 ALTER TABLE `tmp_llx_product_batch2` DISABLE KEYS */; +/*!40000 ALTER TABLE `tmp_llx_product_batch2` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2018-11-23 12:56:45 diff --git a/dev/initdemo/mysqldump_dolibarr_9.0.0.sql b/dev/initdemo/mysqldump_dolibarr_9.0.0.sql new file mode 100644 index 00000000000..fc2be863791 --- /dev/null +++ b/dev/initdemo/mysqldump_dolibarr_9.0.0.sql @@ -0,0 +1,14215 @@ +-- MySQL dump 10.13 Distrib 5.7.24, for Linux (x86_64) +-- +-- Host: localhost Database: dolibarr_dev +-- ------------------------------------------------------ +-- Server version 5.7.24-0ubuntu0.16.04.1 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `llx_accounting_account` +-- + +DROP TABLE IF EXISTS `llx_accounting_account`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_account` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_pcg_version` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `pcg_type` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `pcg_subtype` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `account_number` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `account_parent` int(11) DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_accounting_category` int(11) DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_accountingaccount_fk_pcg_version` (`fk_pcg_version`), + KEY `idx_accounting_account_account_number` (`account_number`), + KEY `idx_accounting_account_account_parent` (`account_parent`), + CONSTRAINT `fk_accounting_account_fk_pcg_version` FOREIGN KEY (`fk_pcg_version`) REFERENCES `llx_accounting_system` (`pcg_version`) +) ENGINE=InnoDB AUTO_INCREMENT=4785 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_account` +-- + +LOCK TABLES `llx_accounting_account` WRITE; +/*!40000 ALTER TABLE `llx_accounting_account` DISABLE KEYS */; +INSERT INTO `llx_accounting_account` VALUES (1,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','CAPITAL','101',1401,'Capital',0,NULL,NULL,1,NULL,NULL),(2,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','105',1401,'Ecarts de réévaluation',0,NULL,NULL,1,NULL,NULL),(3,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','1061',1401,'Réserve légale',0,NULL,NULL,1,NULL,NULL),(4,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','1063',1401,'Réserves statutaires ou contractuelles',0,NULL,NULL,1,NULL,NULL),(5,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','1064',1401,'Réserves réglementées',0,NULL,NULL,1,NULL,NULL),(6,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','1068',1401,'Autres réserves',0,NULL,NULL,1,NULL,NULL),(7,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','108',1401,'Compte de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(8,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','12',1401,'Résultat de l\'exercice',0,NULL,NULL,1,NULL,NULL),(9,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','145',1401,'Amortissements dérogatoires',0,NULL,NULL,1,NULL,NULL),(10,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','146',1401,'Provision spéciale de réévaluation',0,NULL,NULL,1,NULL,NULL),(11,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','147',1401,'Plus-values réinvesties',0,NULL,NULL,1,NULL,NULL),(12,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','148',1401,'Autres provisions réglementées',0,NULL,NULL,1,NULL,NULL),(13,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','15',1401,'Provisions pour risques et charges',0,NULL,NULL,1,NULL,NULL),(14,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','CAPIT','XXXXXX','16',1401,'Emprunts et dettes assimilees',0,NULL,NULL,1,NULL,NULL),(15,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','20',1402,'Immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(16,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','201',15,'Frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(17,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','206',15,'Droit au bail',0,NULL,NULL,1,NULL,NULL),(18,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','207',15,'Fonds commercial',0,NULL,NULL,1,NULL,NULL),(19,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','208',15,'Autres immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(20,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','21',1402,'Immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(21,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','23',1402,'Immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(22,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','27',1402,'Autres immobilisations financieres',0,NULL,NULL,1,NULL,NULL),(23,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','280',1402,'Amortissements des immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(24,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','281',1402,'Amortissements des immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(25,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','290',1402,'Provisions pour dépréciation des immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(26,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','291',1402,'Provisions pour dépréciation des immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(27,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','IMMO','XXXXXX','297',1402,'Provisions pour dépréciation des autres immobilisations financières',0,NULL,NULL,1,NULL,NULL),(28,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','31',1403,'Matieres premières',0,NULL,NULL,1,NULL,NULL),(29,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','32',1403,'Autres approvisionnements',0,NULL,NULL,1,NULL,NULL),(30,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','33',1403,'En-cours de production de biens',0,NULL,NULL,1,NULL,NULL),(31,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','34',1403,'En-cours de production de services',0,NULL,NULL,1,NULL,NULL),(32,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','35',1403,'Stocks de produits',0,NULL,NULL,1,NULL,NULL),(33,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','37',1403,'Stocks de marchandises',0,NULL,NULL,1,NULL,NULL),(34,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','391',1403,'Provisions pour dépréciation des matières premières',0,NULL,NULL,1,NULL,NULL),(35,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','392',1403,'Provisions pour dépréciation des autres approvisionnements',0,NULL,NULL,1,NULL,NULL),(36,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','393',1403,'Provisions pour dépréciation des en-cours de production de biens',0,NULL,NULL,1,NULL,NULL),(37,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','394',1403,'Provisions pour dépréciation des en-cours de production de services',0,NULL,NULL,1,NULL,NULL),(38,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','395',1403,'Provisions pour dépréciation des stocks de produits',0,NULL,NULL,1,NULL,NULL),(39,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','STOCK','XXXXXX','397',1403,'Provisions pour dépréciation des stocks de marchandises',0,NULL,NULL,1,NULL,NULL),(40,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','SUPPLIER','400',1404,'Fournisseurs et Comptes rattachés',0,NULL,NULL,1,NULL,NULL),(41,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','409',1404,'Fournisseurs débiteurs',0,NULL,NULL,1,NULL,NULL),(42,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','CUSTOMER','410',1404,'Clients et Comptes rattachés',0,NULL,NULL,1,NULL,NULL),(43,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','419',1404,'Clients créditeurs',0,NULL,NULL,1,NULL,NULL),(44,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','421',1404,'Personnel',0,NULL,NULL,1,NULL,NULL),(45,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','428',1404,'Personnel',0,NULL,NULL,1,NULL,NULL),(46,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','43',1404,'Sécurité sociale et autres organismes sociaux',0,NULL,NULL,1,NULL,NULL),(47,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','444',1404,'Etat - impôts sur bénéfice',0,NULL,NULL,1,NULL,NULL),(48,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','445',1404,'Etat - Taxes sur chiffre affaires',0,NULL,NULL,1,NULL,NULL),(49,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','447',1404,'Autres impôts, taxes et versements assimilés',0,NULL,NULL,1,NULL,NULL),(50,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','45',1404,'Groupe et associes',0,NULL,NULL,1,NULL,NULL),(51,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','455',50,'Associés',0,NULL,NULL,1,NULL,NULL),(52,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','46',1404,'Débiteurs divers et créditeurs divers',0,NULL,NULL,1,NULL,NULL),(53,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','47',1404,'Comptes transitoires ou d\'attente',0,NULL,NULL,1,NULL,NULL),(54,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','481',1404,'Charges à répartir sur plusieurs exercices',0,NULL,NULL,1,NULL,NULL),(55,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','486',1404,'Charges constatées d\'avance',0,NULL,NULL,1,NULL,NULL),(56,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','487',1404,'Produits constatés d\'avance',0,NULL,NULL,1,NULL,NULL),(57,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','491',1404,'Provisions pour dépréciation des comptes de clients',0,NULL,NULL,1,NULL,NULL),(58,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','TIERS','XXXXXX','496',1404,'Provisions pour dépréciation des comptes de débiteurs divers',0,NULL,NULL,1,NULL,NULL),(59,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','XXXXXX','50',1405,'Valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(60,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','BANK','51',1405,'Banques, établissements financiers et assimilés',0,NULL,NULL,1,NULL,NULL),(61,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','CASH','53',1405,'Caisse',0,NULL,NULL,1,NULL,NULL),(62,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','XXXXXX','54',1405,'Régies d\'avance et accréditifs',0,NULL,NULL,1,NULL,NULL),(63,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','XXXXXX','58',1405,'Virements internes',0,NULL,NULL,1,NULL,NULL),(64,1,NULL,'2016-01-22 17:28:15','PCG99-ABREGE','FINAN','XXXXXX','590',1405,'Provisions pour dépréciation des valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(65,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','PRODUCT','60',1406,'Achats',0,NULL,NULL,1,NULL,NULL),(66,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','603',65,'Variations des stocks',0,NULL,NULL,1,NULL,NULL),(67,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','SERVICE','61',1406,'Services extérieurs',0,NULL,NULL,1,NULL,NULL),(68,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','62',1406,'Autres services extérieurs',0,NULL,NULL,1,NULL,NULL),(69,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','63',1406,'Impôts, taxes et versements assimiles',0,NULL,NULL,1,NULL,NULL),(70,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','641',1406,'Rémunérations du personnel',0,NULL,NULL,1,NULL,NULL),(71,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','644',1406,'Rémunération du travail de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(72,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','SOCIAL','645',1406,'Charges de sécurité sociale et de prévoyance',0,NULL,NULL,1,NULL,NULL),(73,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','646',1406,'Cotisations sociales personnelles de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(74,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','65',1406,'Autres charges de gestion courante',0,NULL,NULL,1,NULL,NULL),(75,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','66',1406,'Charges financières',0,NULL,NULL,1,NULL,NULL),(76,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','67',1406,'Charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(77,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','681',1406,'Dotations aux amortissements et aux provisions',0,NULL,NULL,1,NULL,NULL),(78,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','686',1406,'Dotations aux amortissements et aux provisions',0,NULL,NULL,1,NULL,NULL),(79,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','687',1406,'Dotations aux amortissements et aux provisions',0,NULL,NULL,1,NULL,NULL),(80,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','691',1406,'Participation des salariés aux résultats',0,NULL,NULL,1,NULL,NULL),(81,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','695',1406,'Impôts sur les bénéfices',0,NULL,NULL,1,NULL,NULL),(82,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','697',1406,'Imposition forfaitaire annuelle des sociétés',0,NULL,NULL,1,NULL,NULL),(83,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','699',1406,'Produits',0,NULL,NULL,1,NULL,NULL),(84,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','PRODUCT','701',1407,'Ventes de produits finis',0,NULL,NULL,1,NULL,NULL),(85,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','SERVICE','706',1407,'Prestations de services',0,NULL,NULL,1,NULL,NULL),(86,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','PRODUCT','707',1407,'Ventes de marchandises',0,NULL,NULL,1,NULL,NULL),(87,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','PRODUCT','708',1407,'Produits des activités annexes',0,NULL,NULL,1,NULL,NULL),(88,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','709',1407,'Rabais, remises et ristournes accordés par l\'entreprise',0,NULL,NULL,1,NULL,NULL),(89,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','713',1407,'Variation des stocks',0,NULL,NULL,1,NULL,NULL),(90,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','72',1407,'Production immobilisée',0,NULL,NULL,1,NULL,NULL),(91,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','73',1407,'Produits nets partiels sur opérations à long terme',0,NULL,NULL,1,NULL,NULL),(92,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','74',1407,'Subventions d\'exploitation',0,NULL,NULL,1,NULL,NULL),(93,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','75',1407,'Autres produits de gestion courante',0,NULL,NULL,1,NULL,NULL),(94,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','753',93,'Jetons de présence et rémunérations d\'administrateurs, gérants,...',0,NULL,NULL,1,NULL,NULL),(95,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','754',93,'Ristournes perçues des coopératives',0,NULL,NULL,1,NULL,NULL),(96,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','755',93,'Quotes-parts de résultat sur opérations faites en commun',0,NULL,NULL,1,NULL,NULL),(97,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','76',1407,'Produits financiers',0,NULL,NULL,1,NULL,NULL),(98,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','77',1407,'Produits exceptionnels',0,NULL,NULL,1,NULL,NULL),(99,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','781',1407,'Reprises sur amortissements et provisions',0,NULL,NULL,1,NULL,NULL),(100,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','786',1407,'Reprises sur provisions pour risques',0,NULL,NULL,1,NULL,NULL),(101,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','787',1407,'Reprises sur provisions',0,NULL,NULL,1,NULL,NULL),(102,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','79',1407,'Transferts de charges',0,NULL,NULL,1,NULL,NULL),(103,1,NULL,'2017-02-20 10:49:11','PCG99-BASE','CAPIT','XXXXXX','10',1501,'Capital et réserves',0,NULL,NULL,1,NULL,NULL),(104,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','CAPITAL','101',103,'Capital',0,NULL,NULL,1,NULL,NULL),(105,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','104',103,'Primes liées au capital social',0,NULL,NULL,1,NULL,NULL),(106,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','105',103,'Ecarts de réévaluation',0,NULL,NULL,1,NULL,NULL),(107,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','106',103,'Réserves',0,NULL,NULL,1,NULL,NULL),(108,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','107',103,'Ecart d\'equivalence',0,NULL,NULL,1,NULL,NULL),(109,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','108',103,'Compte de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(110,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','109',103,'Actionnaires : capital souscrit - non appelé',0,NULL,NULL,1,NULL,NULL),(111,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','11',1501,'Report à nouveau (solde créditeur ou débiteur)',0,NULL,NULL,1,NULL,NULL),(112,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','110',111,'Report à nouveau (solde créditeur)',0,NULL,NULL,1,NULL,NULL),(113,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','119',111,'Report à nouveau (solde débiteur)',0,NULL,NULL,1,NULL,NULL),(114,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','12',1501,'Résultat de l\'exercice (bénéfice ou perte)',0,NULL,NULL,1,NULL,NULL),(115,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','120',114,'Résultat de l\'exercice (bénéfice)',0,NULL,NULL,1,NULL,NULL),(116,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','129',114,'Résultat de l\'exercice (perte)',0,NULL,NULL,1,NULL,NULL),(117,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','13',1501,'Subventions d\'investissement',0,NULL,NULL,1,NULL,NULL),(118,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','131',117,'Subventions d\'équipement',0,NULL,NULL,1,NULL,NULL),(119,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','138',117,'Autres subventions d\'investissement',0,NULL,NULL,1,NULL,NULL),(120,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','139',117,'Subventions d\'investissement inscrites au compte de résultat',0,NULL,NULL,1,NULL,NULL),(121,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','14',1501,'Provisions réglementées',0,NULL,NULL,1,NULL,NULL),(122,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','142',121,'Provisions réglementées relatives aux immobilisations',0,NULL,NULL,1,NULL,NULL),(123,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','143',121,'Provisions réglementées relatives aux stocks',0,NULL,NULL,1,NULL,NULL),(124,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','144',121,'Provisions réglementées relatives aux autres éléments de l\'actif',0,NULL,NULL,1,NULL,NULL),(125,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','145',121,'Amortissements dérogatoires',0,NULL,NULL,1,NULL,NULL),(126,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','146',121,'Provision spéciale de réévaluation',0,NULL,NULL,1,NULL,NULL),(127,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','147',121,'Plus-values réinvesties',0,NULL,NULL,1,NULL,NULL),(128,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','148',121,'Autres provisions réglementées',0,NULL,NULL,1,NULL,NULL),(129,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','15',1501,'Provisions pour risques et charges',0,NULL,NULL,1,NULL,NULL),(130,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','151',129,'Provisions pour risques',0,NULL,NULL,1,NULL,NULL),(131,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','153',129,'Provisions pour pensions et obligations similaires',0,NULL,NULL,1,NULL,NULL),(132,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','154',129,'Provisions pour restructurations',0,NULL,NULL,1,NULL,NULL),(133,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','155',129,'Provisions pour impôts',0,NULL,NULL,1,NULL,NULL),(134,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','156',129,'Provisions pour renouvellement des immobilisations (entreprises concessionnaires)',0,NULL,NULL,1,NULL,NULL),(135,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','157',129,'Provisions pour charges à répartir sur plusieurs exercices',0,NULL,NULL,1,NULL,NULL),(136,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','158',129,'Autres provisions pour charges',0,NULL,NULL,1,NULL,NULL),(137,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','16',1501,'Emprunts et dettes assimilees',0,NULL,NULL,1,NULL,NULL),(138,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','161',137,'Emprunts obligataires convertibles',0,NULL,NULL,1,NULL,NULL),(139,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','163',137,'Autres emprunts obligataires',0,NULL,NULL,1,NULL,NULL),(140,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','164',137,'Emprunts auprès des établissements de crédit',0,NULL,NULL,1,NULL,NULL),(141,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','165',137,'Dépôts et cautionnements reçus',0,NULL,NULL,1,NULL,NULL),(142,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','166',137,'Participation des salariés aux résultats',0,NULL,NULL,1,NULL,NULL),(143,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','167',137,'Emprunts et dettes assortis de conditions particulières',0,NULL,NULL,1,NULL,NULL),(144,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','168',137,'Autres emprunts et dettes assimilées',0,NULL,NULL,1,NULL,NULL),(145,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','169',137,'Primes de remboursement des obligations',0,NULL,NULL,1,NULL,NULL),(146,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','17',1501,'Dettes rattachées à des participations',0,NULL,NULL,1,NULL,NULL),(147,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','171',146,'Dettes rattachées à des participations (groupe)',0,NULL,NULL,1,NULL,NULL),(148,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','174',146,'Dettes rattachées à des participations (hors groupe)',0,NULL,NULL,1,NULL,NULL),(149,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','178',146,'Dettes rattachées à des sociétés en participation',0,NULL,NULL,1,NULL,NULL),(150,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','18',1501,'Comptes de liaison des établissements et sociétés en participation',0,NULL,NULL,1,NULL,NULL),(151,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','181',150,'Comptes de liaison des établissements',0,NULL,NULL,1,NULL,NULL),(152,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','186',150,'Biens et prestations de services échangés entre établissements (charges)',0,NULL,NULL,1,NULL,NULL),(153,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','187',150,'Biens et prestations de services échangés entre établissements (produits)',0,NULL,NULL,1,NULL,NULL),(154,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','CAPIT','XXXXXX','188',150,'Comptes de liaison des sociétés en participation',0,NULL,NULL,1,NULL,NULL),(155,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','20',1502,'Immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(156,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','201',155,'Frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(157,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','203',155,'Frais de recherche et de développement',0,NULL,NULL,1,NULL,NULL),(158,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','205',155,'Concessions et droits similaires, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',0,NULL,NULL,1,NULL,NULL),(159,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','206',155,'Droit au bail',0,NULL,NULL,1,NULL,NULL),(160,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','207',155,'Fonds commercial',0,NULL,NULL,1,NULL,NULL),(161,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','208',155,'Autres immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(162,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','21',1502,'Immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(163,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','211',162,'Terrains',0,NULL,NULL,1,NULL,NULL),(164,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','212',162,'Agencements et aménagements de terrains',0,NULL,NULL,1,NULL,NULL),(165,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','213',162,'Constructions',0,NULL,NULL,1,NULL,NULL),(166,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','214',162,'Constructions sur sol d\'autrui',0,NULL,NULL,1,NULL,NULL),(167,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','215',162,'Installations techniques, matériels et outillage industriels',0,NULL,NULL,1,NULL,NULL),(168,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','218',162,'Autres immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(169,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','22',1502,'Immobilisations mises en concession',0,NULL,NULL,1,NULL,NULL),(170,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','23',1502,'Immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(171,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','231',170,'Immobilisations corporelles en cours',0,NULL,NULL,1,NULL,NULL),(172,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','232',170,'Immobilisations incorporelles en cours',0,NULL,NULL,1,NULL,NULL),(173,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','237',170,'Avances et acomptes versés sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(174,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','238',170,'Avances et acomptes versés sur commandes d\'immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(175,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','25',1502,'Parts dans des entreprises liées et créances sur des entreprises liées',0,NULL,NULL,1,NULL,NULL),(176,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','26',1502,'Participations et créances rattachées à des participations',0,NULL,NULL,1,NULL,NULL),(177,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','261',176,'Titres de participation',0,NULL,NULL,1,NULL,NULL),(178,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','266',176,'Autres formes de participation',0,NULL,NULL,1,NULL,NULL),(179,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','267',176,'Créances rattachées à des participations',0,NULL,NULL,1,NULL,NULL),(180,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','268',176,'Créances rattachées à des sociétés en participation',0,NULL,NULL,1,NULL,NULL),(181,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','269',176,'Versements restant à effectuer sur titres de participation non libérés',0,NULL,NULL,1,NULL,NULL),(182,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','27',1502,'Autres immobilisations financieres',0,NULL,NULL,1,NULL,NULL),(183,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','271',183,'Titres immobilisés autres que les titres immobilisés de l\'activité de portefeuille (droit de propriété)',0,NULL,NULL,1,NULL,NULL),(184,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','272',183,'Titres immobilisés (droit de créance)',0,NULL,NULL,1,NULL,NULL),(185,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','273',183,'Titres immobilisés de l\'activité de portefeuille',0,NULL,NULL,1,NULL,NULL),(186,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','274',183,'Prêts',0,NULL,NULL,1,NULL,NULL),(187,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','275',183,'Dépôts et cautionnements versés',0,NULL,NULL,1,NULL,NULL),(188,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','276',183,'Autres créances immobilisées',0,NULL,NULL,1,NULL,NULL),(189,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','277',183,'(Actions propres ou parts propres)',0,NULL,NULL,1,NULL,NULL),(190,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','279',183,'Versements restant à effectuer sur titres immobilisés non libérés',0,NULL,NULL,1,NULL,NULL),(191,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','28',1502,'Amortissements des immobilisations',0,NULL,NULL,1,NULL,NULL),(192,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','280',191,'Amortissements des immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(193,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','281',191,'Amortissements des immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(194,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','282',191,'Amortissements des immobilisations mises en concession',0,NULL,NULL,1,NULL,NULL),(195,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','29',1502,'Dépréciations des immobilisations',0,NULL,NULL,1,NULL,NULL),(196,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','290',195,'Dépréciations des immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(197,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','291',195,'Dépréciations des immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(198,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','292',195,'Dépréciations des immobilisations mises en concession',0,NULL,NULL,1,NULL,NULL),(199,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','293',195,'Dépréciations des immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(200,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','296',195,'Provisions pour dépréciation des participations et créances rattachées à des participations',0,NULL,NULL,1,NULL,NULL),(201,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','IMMO','XXXXXX','297',195,'Provisions pour dépréciation des autres immobilisations financières',0,NULL,NULL,1,NULL,NULL),(202,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','31',1503,'Matières premières (et fournitures)',0,NULL,NULL,1,NULL,NULL),(203,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','311',202,'Matières (ou groupe) A',0,NULL,NULL,1,NULL,NULL),(204,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','312',202,'Matières (ou groupe) B',0,NULL,NULL,1,NULL,NULL),(205,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','317',202,'Fournitures A, B, C,',0,NULL,NULL,1,NULL,NULL),(206,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','32',1503,'Autres approvisionnements',0,NULL,NULL,1,NULL,NULL),(207,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','321',206,'Matières consommables',0,NULL,NULL,1,NULL,NULL),(208,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','322',206,'Fournitures consommables',0,NULL,NULL,1,NULL,NULL),(209,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','326',206,'Emballages',0,NULL,NULL,1,NULL,NULL),(210,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','33',1503,'En-cours de production de biens',0,NULL,NULL,1,NULL,NULL),(211,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','331',210,'Produits en cours',0,NULL,NULL,1,NULL,NULL),(212,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','335',210,'Travaux en cours',0,NULL,NULL,1,NULL,NULL),(213,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','34',1503,'En-cours de production de services',0,NULL,NULL,1,NULL,NULL),(214,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','341',213,'Etudes en cours',0,NULL,NULL,1,NULL,NULL),(215,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','345',213,'Prestations de services en cours',0,NULL,NULL,1,NULL,NULL),(216,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','35',1503,'Stocks de produits',0,NULL,NULL,1,NULL,NULL),(217,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','351',216,'Produits intermédiaires',0,NULL,NULL,1,NULL,NULL),(218,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','355',216,'Produits finis',0,NULL,NULL,1,NULL,NULL),(219,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','358',216,'Produits résiduels (ou matières de récupération)',0,NULL,NULL,1,NULL,NULL),(220,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','37',1503,'Stocks de marchandises',0,NULL,NULL,1,NULL,NULL),(221,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','371',220,'Marchandises (ou groupe) A',0,NULL,NULL,1,NULL,NULL),(222,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','372',220,'Marchandises (ou groupe) B',0,NULL,NULL,1,NULL,NULL),(223,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','39',1503,'Provisions pour dépréciation des stocks et en-cours',0,NULL,NULL,1,NULL,NULL),(224,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','391',223,'Provisions pour dépréciation des matières premières',0,NULL,NULL,1,NULL,NULL),(225,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','392',223,'Provisions pour dépréciation des autres approvisionnements',0,NULL,NULL,1,NULL,NULL),(226,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','393',223,'Provisions pour dépréciation des en-cours de production de biens',0,NULL,NULL,1,NULL,NULL),(227,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','394',223,'Provisions pour dépréciation des en-cours de production de services',0,NULL,NULL,1,NULL,NULL),(228,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','395',223,'Provisions pour dépréciation des stocks de produits',0,NULL,NULL,1,NULL,NULL),(229,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','STOCK','XXXXXX','397',223,'Provisions pour dépréciation des stocks de marchandises',0,NULL,NULL,1,NULL,NULL),(230,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','40',1504,'Fournisseurs et Comptes rattachés',0,NULL,NULL,1,NULL,NULL),(231,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','400',230,'Fournisseurs et Comptes rattachés',0,NULL,NULL,1,NULL,NULL),(232,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','SUPPLIER','401',230,'Fournisseurs',0,NULL,NULL,1,NULL,NULL),(233,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','403',230,'Fournisseurs - Effets à payer',0,NULL,NULL,1,NULL,NULL),(234,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','404',230,'Fournisseurs d\'immobilisations',0,NULL,NULL,1,NULL,NULL),(235,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','405',230,'Fournisseurs d\'immobilisations - Effets à payer',0,NULL,NULL,1,NULL,NULL),(236,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','408',230,'Fournisseurs - Factures non parvenues',0,NULL,NULL,1,NULL,NULL),(237,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','409',230,'Fournisseurs débiteurs',0,NULL,NULL,1,NULL,NULL),(238,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','41',1504,'Clients et comptes rattachés',0,NULL,NULL,1,NULL,NULL),(239,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','410',238,'Clients et Comptes rattachés',0,NULL,NULL,1,NULL,NULL),(240,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','CUSTOMER','411',238,'Clients',0,NULL,NULL,1,NULL,NULL),(241,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','413',238,'Clients - Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(242,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','416',238,'Clients douteux ou litigieux',0,NULL,NULL,1,NULL,NULL),(243,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','418',238,'Clients - Produits non encore facturés',0,NULL,NULL,1,NULL,NULL),(244,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','419',238,'Clients créditeurs',0,NULL,NULL,1,NULL,NULL),(245,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','42',1504,'Personnel et comptes rattachés',0,NULL,NULL,1,NULL,NULL),(246,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','421',245,'Personnel - Rémunérations dues',0,NULL,NULL,1,NULL,NULL),(247,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','422',245,'Comités d\'entreprises, d\'établissement, ...',0,NULL,NULL,1,NULL,NULL),(248,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','424',245,'Participation des salariés aux résultats',0,NULL,NULL,1,NULL,NULL),(249,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','425',245,'Personnel - Avances et acomptes',0,NULL,NULL,1,NULL,NULL),(250,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','426',245,'Personnel - Dépôts',0,NULL,NULL,1,NULL,NULL),(251,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','427',245,'Personnel - Oppositions',0,NULL,NULL,1,NULL,NULL),(252,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','428',245,'Personnel - Charges à payer et produits à recevoir',0,NULL,NULL,1,NULL,NULL),(253,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','43',1504,'Sécurité sociale et autres organismes sociaux',0,NULL,NULL,1,NULL,NULL),(254,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','431',253,'Sécurité sociale',0,NULL,NULL,1,NULL,NULL),(255,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','437',253,'Autres organismes sociaux',0,NULL,NULL,1,NULL,NULL),(256,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','438',253,'Organismes sociaux - Charges à payer et produits à recevoir',0,NULL,NULL,1,NULL,NULL),(257,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','44',1504,'État et autres collectivités publiques',0,NULL,NULL,1,NULL,NULL),(258,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','441',257,'État - Subventions à recevoir',0,NULL,NULL,1,NULL,NULL),(259,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','442',257,'Etat - Impôts et taxes recouvrables sur des tiers',0,NULL,NULL,1,NULL,NULL),(260,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','443',257,'Opérations particulières avec l\'Etat, les collectivités publiques, les organismes internationaux',0,NULL,NULL,1,NULL,NULL),(261,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','444',257,'Etat - Impôts sur les bénéfices',0,NULL,NULL,1,NULL,NULL),(262,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','445',257,'Etat - Taxes sur le chiffre d\'affaires',0,NULL,NULL,1,NULL,NULL),(263,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','446',257,'Obligations cautionnées',0,NULL,NULL,1,NULL,NULL),(264,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','447',257,'Autres impôts, taxes et versements assimilés',0,NULL,NULL,1,NULL,NULL),(265,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','448',257,'Etat - Charges à payer et produits à recevoir',0,NULL,NULL,1,NULL,NULL),(266,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','449',257,'Quotas d\'émission à restituer à l\'Etat',0,NULL,NULL,1,NULL,NULL),(267,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','45',1504,'Groupe et associes',0,NULL,NULL,1,NULL,NULL),(268,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','451',267,'Groupe',0,NULL,NULL,1,NULL,NULL),(269,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','455',267,'Associés - Comptes courants',0,NULL,NULL,1,NULL,NULL),(270,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','456',267,'Associés - Opérations sur le capital',0,NULL,NULL,1,NULL,NULL),(271,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','457',267,'Associés - Dividendes à payer',0,NULL,NULL,1,NULL,NULL),(272,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','458',267,'Associés - Opérations faites en commun et en G.I.E.',0,NULL,NULL,1,NULL,NULL),(273,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','46',1504,'Débiteurs divers et créditeurs divers',0,NULL,NULL,1,NULL,NULL),(274,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','462',273,'Créances sur cessions d\'immobilisations',0,NULL,NULL,1,NULL,NULL),(275,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','464',273,'Dettes sur acquisitions de valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(276,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','465',273,'Créances sur cessions de valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(277,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','467',273,'Autres comptes débiteurs ou créditeurs',0,NULL,NULL,1,NULL,NULL),(278,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','468',273,'Divers - Charges à payer et produits à recevoir',0,NULL,NULL,1,NULL,NULL),(279,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','47',1504,'Comptes transitoires ou d\'attente',0,NULL,NULL,1,NULL,NULL),(280,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','471',279,'Comptes d\'attente',0,NULL,NULL,1,NULL,NULL),(281,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','476',279,'Différence de conversion - Actif',0,NULL,NULL,1,NULL,NULL),(282,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','477',279,'Différences de conversion - Passif',0,NULL,NULL,1,NULL,NULL),(283,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','478',279,'Autres comptes transitoires',0,NULL,NULL,1,NULL,NULL),(284,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','48',1504,'Comptes de régularisation',0,NULL,NULL,1,NULL,NULL),(285,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','481',284,'Charges à répartir sur plusieurs exercices',0,NULL,NULL,1,NULL,NULL),(286,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','486',284,'Charges constatées d\'avance',0,NULL,NULL,1,NULL,NULL),(287,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','487',284,'Produits constatés d\'avance',0,NULL,NULL,1,NULL,NULL),(288,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','488',284,'Comptes de répartition périodique des charges et des produits',0,NULL,NULL,1,NULL,NULL),(289,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','489',284,'Quotas d\'émission alloués par l\'Etat',0,NULL,NULL,1,NULL,NULL),(290,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','49',1504,'Provisions pour dépréciation des comptes de tiers',0,NULL,NULL,1,NULL,NULL),(291,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','491',290,'Provisions pour dépréciation des comptes de clients',0,NULL,NULL,1,NULL,NULL),(292,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','495',290,'Provisions pour dépréciation des comptes du groupe et des associés',0,NULL,NULL,1,NULL,NULL),(293,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','TIERS','XXXXXX','496',290,'Provisions pour dépréciation des comptes de débiteurs divers',0,NULL,NULL,1,NULL,NULL),(294,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','50',1505,'Valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(295,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','501',294,'Parts dans des entreprises liées',0,NULL,NULL,1,NULL,NULL),(296,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','502',294,'Actions propres',0,NULL,NULL,1,NULL,NULL),(297,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','503',294,'Actions',0,NULL,NULL,1,NULL,NULL),(298,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','504',294,'Autres titres conférant un droit de propriété',0,NULL,NULL,1,NULL,NULL),(299,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','505',294,'Obligations et bons émis par la société et rachetés par elle',0,NULL,NULL,1,NULL,NULL),(300,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','506',294,'Obligations',0,NULL,NULL,1,NULL,NULL),(301,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','507',294,'Bons du Trésor et bons de caisse à court terme',0,NULL,NULL,1,NULL,NULL),(302,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','508',294,'Autres valeurs mobilières de placement et autres créances assimilées',0,NULL,NULL,1,NULL,NULL),(303,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','509',294,'Versements restant à effectuer sur valeurs mobilières de placement non libérées',0,NULL,NULL,1,NULL,NULL),(304,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','51',1505,'Banques, établissements financiers et assimilés',0,NULL,NULL,1,NULL,NULL),(305,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','511',304,'Valeurs à l\'encaissement',0,NULL,NULL,1,NULL,NULL),(306,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','BANK','512',304,'Banques',0,NULL,NULL,1,NULL,NULL),(307,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','514',304,'Chèques postaux',0,NULL,NULL,1,NULL,NULL),(308,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','515',304,'\"Caisses\" du Trésor et des établissements publics',0,NULL,NULL,1,NULL,NULL),(309,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','516',304,'Sociétés de bourse',0,NULL,NULL,1,NULL,NULL),(310,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','517',304,'Autres organismes financiers',0,NULL,NULL,1,NULL,NULL),(311,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','518',304,'Intérêts courus',0,NULL,NULL,1,NULL,NULL),(312,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','519',304,'Concours bancaires courants',0,NULL,NULL,1,NULL,NULL),(313,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','52',1505,'Instruments de trésorerie',0,NULL,NULL,1,NULL,NULL),(314,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','CASH','53',1505,'Caisse',0,NULL,NULL,1,NULL,NULL),(315,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','531',314,'Caisse siège social',0,NULL,NULL,1,NULL,NULL),(316,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','532',314,'Caisse succursale (ou usine) A',0,NULL,NULL,1,NULL,NULL),(317,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','533',314,'Caisse succursale (ou usine) B',0,NULL,NULL,1,NULL,NULL),(318,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','54',1505,'Régies d\'avance et accréditifs',0,NULL,NULL,1,NULL,NULL),(319,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','58',1505,'Virements internes',0,NULL,NULL,1,NULL,NULL),(320,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','59',1505,'Provisions pour dépréciation des comptes financiers',0,NULL,NULL,1,NULL,NULL),(321,1,NULL,'2016-01-22 17:28:15','PCG99-BASE','FINAN','XXXXXX','590',320,'Provisions pour dépréciation des valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(322,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','PRODUCT','60',1506,'Achats',0,NULL,NULL,1,NULL,NULL),(323,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','601',322,'Achats stockés - Matières premières (et fournitures)',0,NULL,NULL,1,NULL,NULL),(324,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','602',322,'Achats stockés - Autres approvisionnements',0,NULL,NULL,1,NULL,NULL),(325,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','603',322,'Variations des stocks (approvisionnements et marchandises)',0,NULL,NULL,1,NULL,NULL),(326,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','604',322,'Achats stockés - Matières premières (et fournitures)',0,NULL,NULL,1,NULL,NULL),(327,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','605',322,'Achats de matériel, équipements et travaux',0,NULL,NULL,1,NULL,NULL),(328,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','606',322,'Achats non stockés de matière et fournitures',0,NULL,NULL,1,NULL,NULL),(329,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','607',322,'Achats de marchandises',0,NULL,NULL,1,NULL,NULL),(330,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','608',322,'(Compte réservé, le cas échéant, à la récapitulation des frais accessoires incorporés aux achats)',0,NULL,NULL,1,NULL,NULL),(331,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','609',322,'Rabais, remises et ristournes obtenus sur achats',0,NULL,NULL,1,NULL,NULL),(332,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','SERVICE','61',1506,'Services extérieurs',0,NULL,NULL,1,NULL,NULL),(333,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','611',332,'Sous-traitance générale',0,NULL,NULL,1,NULL,NULL),(334,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','612',332,'Redevances de crédit-bail',0,NULL,NULL,1,NULL,NULL),(335,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','613',332,'Locations',0,NULL,NULL,1,NULL,NULL),(336,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','614',332,'Charges locatives et de copropriété',0,NULL,NULL,1,NULL,NULL),(337,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','615',332,'Entretien et réparations',0,NULL,NULL,1,NULL,NULL),(338,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','616',332,'Primes d\'assurances',0,NULL,NULL,1,NULL,NULL),(339,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','617',332,'Etudes et recherches',0,NULL,NULL,1,NULL,NULL),(340,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','618',332,'Divers',0,NULL,NULL,1,NULL,NULL),(341,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','619',332,'Rabais, remises et ristournes obtenus sur services extérieurs',0,NULL,NULL,1,NULL,NULL),(342,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','62',1506,'Autres services extérieurs',0,NULL,NULL,1,NULL,NULL),(343,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','621',342,'Personnel extérieur à l\'entreprise',0,NULL,NULL,1,NULL,NULL),(344,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','622',342,'Rémunérations d\'intermédiaires et honoraires',0,NULL,NULL,1,NULL,NULL),(345,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','623',342,'Publicité, publications, relations publiques',0,NULL,NULL,1,NULL,NULL),(346,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','624',342,'Transports de biens et transports collectifs du personnel',0,NULL,NULL,1,NULL,NULL),(347,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','625',342,'Déplacements, missions et réceptions',0,NULL,NULL,1,NULL,NULL),(348,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','626',342,'Frais postaux et de télécommunications',0,NULL,NULL,1,NULL,NULL),(349,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','627',342,'Services bancaires et assimilés',0,NULL,NULL,1,NULL,NULL),(350,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','628',342,'Divers',0,NULL,NULL,1,NULL,NULL),(351,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','629',342,'Rabais, remises et ristournes obtenus sur autres services extérieurs',0,NULL,NULL,1,NULL,NULL),(352,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','63',1506,'Impôts, taxes et versements assimilés',0,NULL,NULL,1,NULL,NULL),(353,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','631',352,'Impôts, taxes et versements assimilés sur rémunérations (administrations des impôts)',0,NULL,NULL,1,NULL,NULL),(354,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','633',352,'Impôts, taxes et versements assimilés sur rémunérations (autres organismes)',0,NULL,NULL,1,NULL,NULL),(355,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','635',352,'Autres impôts, taxes et versements assimilés (administrations des impôts)',0,NULL,NULL,1,NULL,NULL),(356,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','637',352,'Autres impôts, taxes et versements assimilés (autres organismes)',0,NULL,NULL,1,NULL,NULL),(357,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','64',1506,'Charges de personnel',0,NULL,NULL,1,NULL,NULL),(358,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','641',357,'Rémunérations du personnel',0,NULL,NULL,1,NULL,NULL),(359,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','644',357,'Rémunération du travail de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(360,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','SOCIAL','645',357,'Charges de sécurité sociale et de prévoyance',0,NULL,NULL,1,NULL,NULL),(361,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','646',357,'Cotisations sociales personnelles de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(362,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','647',357,'Autres charges sociales',0,NULL,NULL,1,NULL,NULL),(363,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','648',357,'Autres charges de personnel',0,NULL,NULL,1,NULL,NULL),(364,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','65',1506,'Autres charges de gestion courante',0,NULL,NULL,1,NULL,NULL),(365,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','651',364,'Redevances pour concessions, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',0,NULL,NULL,1,NULL,NULL),(366,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','653',364,'Jetons de présence',0,NULL,NULL,1,NULL,NULL),(367,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','654',364,'Pertes sur créances irrécouvrables',0,NULL,NULL,1,NULL,NULL),(368,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','655',364,'Quote-part de résultat sur opérations faites en commun',0,NULL,NULL,1,NULL,NULL),(369,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','658',364,'Charges diverses de gestion courante',0,NULL,NULL,1,NULL,NULL),(370,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','66',1506,'Charges financières',0,NULL,NULL,1,NULL,NULL),(371,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','661',370,'Charges d\'intérêts',0,NULL,NULL,1,NULL,NULL),(372,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','664',370,'Pertes sur créances liées à des participations',0,NULL,NULL,1,NULL,NULL),(373,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','665',370,'Escomptes accordés',0,NULL,NULL,1,NULL,NULL),(374,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','666',370,'Pertes de change',0,NULL,NULL,1,NULL,NULL),(375,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','667',370,'Charges nettes sur cessions de valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(376,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','668',370,'Autres charges financières',0,NULL,NULL,1,NULL,NULL),(377,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','67',1506,'Charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(378,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','671',377,'Charges exceptionnelles sur opérations de gestion',0,NULL,NULL,1,NULL,NULL),(379,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','672',377,'(Compte à la disposition des entités pour enregistrer, en cours d\'exercice, les charges sur exercices antérieurs)',0,NULL,NULL,1,NULL,NULL),(380,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','675',377,'Valeurs comptables des éléments d\'actif cédés',0,NULL,NULL,1,NULL,NULL),(381,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','678',377,'Autres charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(382,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','68',1506,'Dotations aux amortissements et aux provisions',0,NULL,NULL,1,NULL,NULL),(383,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','681',382,'Dotations aux amortissements et aux provisions - Charges d\'exploitation',0,NULL,NULL,1,NULL,NULL),(384,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','686',382,'Dotations aux amortissements et aux provisions - Charges financières',0,NULL,NULL,1,NULL,NULL),(385,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','687',382,'Dotations aux amortissements et aux provisions - Charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(386,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','69',1506,'Participation des salariés - impôts sur les bénéfices et assimiles',0,NULL,NULL,1,NULL,NULL),(387,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','691',386,'Participation des salariés aux résultats',0,NULL,NULL,1,NULL,NULL),(388,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','695',386,'Impôts sur les bénéfices',0,NULL,NULL,1,NULL,NULL),(389,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','696',386,'Suppléments d\'impôt sur les sociétés liés aux distributions',0,NULL,NULL,1,NULL,NULL),(390,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','697',386,'Imposition forfaitaire annuelle des sociétés',0,NULL,NULL,1,NULL,NULL),(391,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','698',386,'Intégration fiscale',0,NULL,NULL,1,NULL,NULL),(392,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','699',386,'Produits - Reports en arrière des déficits',0,NULL,NULL,1,NULL,NULL),(393,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','70',1507,'Ventes de produits fabriqués, prestations de services, marchandises',0,NULL,NULL,1,NULL,NULL),(394,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','PRODUCT','701',393,'Ventes de produits finis',0,NULL,NULL,1,NULL,NULL),(395,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','702',393,'Ventes de produits intermédiaires',0,NULL,NULL,1,NULL,NULL),(396,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','703',393,'Ventes de produits résiduels',0,NULL,NULL,1,NULL,NULL),(397,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','704',393,'Travaux',0,NULL,NULL,1,NULL,NULL),(398,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','705',393,'Etudes',0,NULL,NULL,1,NULL,NULL),(399,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','SERVICE','706',393,'Prestations de services',0,NULL,NULL,1,NULL,NULL),(400,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','PRODUCT','707',393,'Ventes de marchandises',0,NULL,NULL,1,NULL,NULL),(401,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','PRODUCT','708',393,'Produits des activités annexes',0,NULL,NULL,1,NULL,NULL),(402,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','709',393,'Rabais, remises et ristournes accordés par l\'entreprise',0,NULL,NULL,1,NULL,NULL),(403,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','71',1507,'Production stockée (ou déstockage)',0,NULL,NULL,1,NULL,NULL),(404,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','713',403,'Variation des stocks (en-cours de production, produits)',0,NULL,NULL,1,NULL,NULL),(405,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','72',1507,'Production immobilisée',0,NULL,NULL,1,NULL,NULL),(406,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','721',405,'Immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(407,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','722',405,'Immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(408,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','74',1507,'Subventions d\'exploitation',0,NULL,NULL,1,NULL,NULL),(409,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','75',1507,'Autres produits de gestion courante',0,NULL,NULL,1,NULL,NULL),(410,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','751',409,'Redevances pour concessions, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',0,NULL,NULL,1,NULL,NULL),(411,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','752',409,'Revenus des immeubles non affectés à des activités professionnelles',0,NULL,NULL,1,NULL,NULL),(412,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','753',409,'Jetons de présence et rémunérations d\'administrateurs, gérants,...',0,NULL,NULL,1,NULL,NULL),(413,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','754',409,'Ristournes perçues des coopératives (provenant des excédents)',0,NULL,NULL,1,NULL,NULL),(414,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','755',409,'Quotes-parts de résultat sur opérations faites en commun',0,NULL,NULL,1,NULL,NULL),(415,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','758',409,'Produits divers de gestion courante',0,NULL,NULL,1,NULL,NULL),(416,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','76',1507,'Produits financiers',0,NULL,NULL,1,NULL,NULL),(417,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','761',416,'Produits de participations',0,NULL,NULL,1,NULL,NULL),(418,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','762',416,'Produits des autres immobilisations financières',0,NULL,NULL,1,NULL,NULL),(419,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','763',416,'Revenus des autres créances',0,NULL,NULL,1,NULL,NULL),(420,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','764',416,'Revenus des valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(421,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','765',416,'Escomptes obtenus',0,NULL,NULL,1,NULL,NULL),(422,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','766',416,'Gains de change',0,NULL,NULL,1,NULL,NULL),(423,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','767',416,'Produits nets sur cessions de valeurs mobilières de placement',0,NULL,NULL,1,NULL,NULL),(424,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','768',416,'Autres produits financiers',0,NULL,NULL,1,NULL,NULL),(425,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','77',1507,'Produits exceptionnels',0,NULL,NULL,1,NULL,NULL),(426,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','771',425,'Produits exceptionnels sur opérations de gestion',0,NULL,NULL,1,NULL,NULL),(427,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','772',425,'(Compte à la disposition des entités pour enregistrer, en cours d\'exercice, les produits sur exercices antérieurs)',0,NULL,NULL,1,NULL,NULL),(428,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','775',425,'Produits des cessions d\'éléments d\'actif',0,NULL,NULL,1,NULL,NULL),(429,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','777',425,'Quote-part des subventions d\'investissement virée au résultat de l\'exercice',0,NULL,NULL,1,NULL,NULL),(430,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','778',425,'Autres produits exceptionnels',0,NULL,NULL,1,NULL,NULL),(431,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','78',1507,'Reprises sur amortissements et provisions',0,NULL,NULL,1,NULL,NULL),(432,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','781',431,'Reprises sur amortissements et provisions (à inscrire dans les produits d\'exploitation)',0,NULL,NULL,1,NULL,NULL),(433,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','786',431,'Reprises sur provisions pour risques (à inscrire dans les produits financiers)',0,NULL,NULL,1,NULL,NULL),(434,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','787',431,'Reprises sur provisions (à inscrire dans les produits exceptionnels)',0,NULL,NULL,1,NULL,NULL),(435,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','79',1507,'Transferts de charges',0,NULL,NULL,1,NULL,NULL),(436,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','791',435,'Transferts de charges d\'exploitation ',0,NULL,NULL,1,NULL,NULL),(437,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','796',435,'Transferts de charges financières',0,NULL,NULL,1,NULL,NULL),(438,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','797',435,'Transferts de charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(439,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','10',1351,'Capital',0,NULL,NULL,1,NULL,NULL),(440,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','100',439,'Capital souscrit ou capital personnel',0,NULL,NULL,1,NULL,NULL),(441,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1000',440,'Capital non amorti',0,NULL,NULL,1,NULL,NULL),(442,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1001',440,'Capital amorti',0,NULL,NULL,1,NULL,NULL),(443,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','101',439,'Capital non appelé',0,NULL,NULL,1,NULL,NULL),(444,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','109',439,'Compte de l\'exploitant',0,NULL,NULL,1,NULL,NULL),(445,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1090',444,'Opérations courantes',0,NULL,NULL,1,NULL,NULL),(446,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1091',444,'Impôts personnels',0,NULL,NULL,1,NULL,NULL),(447,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1092',444,'Rémunérations et autres avantages',0,NULL,NULL,1,NULL,NULL),(448,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','11',1351,'Primes d\'émission',0,NULL,NULL,1,NULL,NULL),(449,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','12',1351,'Plus-values de réévaluation',0,NULL,NULL,1,NULL,NULL),(450,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','120',449,'Plus-values de réévaluation sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(451,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1200',450,'Plus-values de réévaluation',0,NULL,NULL,1,NULL,NULL),(452,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1201',450,'Reprises de réductions de valeur',0,NULL,NULL,1,NULL,NULL),(453,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','121',449,'Plus-values de réévaluation sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(454,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1210',453,'Plus-values de réévaluation',0,NULL,NULL,1,NULL,NULL),(455,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1211',453,'Reprises de réductions de valeur',0,NULL,NULL,1,NULL,NULL),(456,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','122',449,'Plus-values de réévaluation sur immobilisations financières',0,NULL,NULL,1,NULL,NULL),(457,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1220',456,'Plus-values de réévaluation',0,NULL,NULL,1,NULL,NULL),(458,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1221',456,'Reprises de réductions de valeur',0,NULL,NULL,1,NULL,NULL),(459,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','123',449,'Plus-values de réévaluation sur stocks',0,NULL,NULL,1,NULL,NULL),(460,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','124',449,'Reprises de réductions de valeur sur placements de trésorerie',0,NULL,NULL,1,NULL,NULL),(461,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','13',1351,'Réserve',0,NULL,NULL,1,NULL,NULL),(462,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','130',461,'Réserve légale',0,NULL,NULL,1,NULL,NULL),(463,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','131',461,'Réserves indisponibles',0,NULL,NULL,1,NULL,NULL),(464,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1310',463,'Réserve pour actions propres',0,NULL,NULL,1,NULL,NULL),(465,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1311',463,'Autres réserves indisponibles',0,NULL,NULL,1,NULL,NULL),(466,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','132',461,'Réserves immunisées',0,NULL,NULL,1,NULL,NULL),(467,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','133',461,'Réserves disponibles',0,NULL,NULL,1,NULL,NULL),(468,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1330',467,'Réserve pour régularisation de dividendes',0,NULL,NULL,1,NULL,NULL),(469,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1331',467,'Réserve pour renouvellement des immobilisations',0,NULL,NULL,1,NULL,NULL),(470,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1332',467,'Réserve pour installations en faveur du personnel 1333 Réserves libres',0,NULL,NULL,1,NULL,NULL),(471,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','14',1351,'Bénéfice reporté (ou perte reportée)',0,NULL,NULL,1,NULL,NULL),(472,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','15',1351,'Subsides en capital',0,NULL,NULL,1,NULL,NULL),(473,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','150',472,'Montants obtenus',0,NULL,NULL,1,NULL,NULL),(474,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','151',472,'Montants transférés aux résultats',0,NULL,NULL,1,NULL,NULL),(475,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','16',1351,'Provisions pour risques et charges',0,NULL,NULL,1,NULL,NULL),(476,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','160',475,'Provisions pour pensions et obligations similaires',0,NULL,NULL,1,NULL,NULL),(477,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','161',475,'Provisions pour charges fiscales',0,NULL,NULL,1,NULL,NULL),(478,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','162',475,'Provisions pour grosses réparations et gros entretiens',0,NULL,NULL,1,NULL,NULL),(479,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','163',475,'à 169 Provisions pour autres risques et charges',0,NULL,NULL,1,NULL,NULL),(480,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','164',475,'Provisions pour sûretés personnelles ou réelles constituées à l\'appui de dettes et d\'engagements de tiers',0,NULL,NULL,1,NULL,NULL),(481,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','165',475,'Provisions pour engagements relatifs à l\'acquisition ou à la cession d\'immobilisations',0,NULL,NULL,1,NULL,NULL),(482,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','166',475,'Provisions pour exécution de commandes passées ou reçues',0,NULL,NULL,1,NULL,NULL),(483,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','167',475,'Provisions pour positions et marchés à terme en devises ou positions et marchés à terme en marchandises',0,NULL,NULL,1,NULL,NULL),(484,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','168',475,'Provisions pour garanties techniques attachées aux ventes et prestations déjà effectuées par l\'entreprise',0,NULL,NULL,1,NULL,NULL),(485,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','169',475,'Provisions pour autres risques et charges',0,NULL,NULL,1,NULL,NULL),(486,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1690',485,'Pour litiges en cours',0,NULL,NULL,1,NULL,NULL),(487,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1691',485,'Pour amendes, doubles droits et pénalités',0,NULL,NULL,1,NULL,NULL),(488,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1692',485,'Pour propre assureur',0,NULL,NULL,1,NULL,NULL),(489,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1693',485,'Pour risques inhérents aux opérations de crédits à moyen ou long terme',0,NULL,NULL,1,NULL,NULL),(490,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1695',485,'Provision pour charge de liquidation',0,NULL,NULL,1,NULL,NULL),(491,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1696',485,'Provision pour départ de personnel',0,NULL,NULL,1,NULL,NULL),(492,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1699',485,'Pour risques divers',0,NULL,NULL,1,NULL,NULL),(493,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17',1351,'Dettes à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(494,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','170',493,'Emprunts subordonnés',0,NULL,NULL,1,NULL,NULL),(495,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1700',494,'Convertibles',0,NULL,NULL,1,NULL,NULL),(496,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1701',494,'Non convertibles',0,NULL,NULL,1,NULL,NULL),(497,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','171',493,'Emprunts obligataires non subordonnés',0,NULL,NULL,1,NULL,NULL),(498,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1710',498,'Convertibles',0,NULL,NULL,1,NULL,NULL),(499,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1711',498,'Non convertibles',0,NULL,NULL,1,NULL,NULL),(500,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','172',493,'Dettes de location-financement et assimilés',0,NULL,NULL,1,NULL,NULL),(501,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1720',500,'Dettes de location-financement de biens immobiliers',0,NULL,NULL,1,NULL,NULL),(502,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1721',500,'Dettes de location-financement de biens mobiliers',0,NULL,NULL,1,NULL,NULL),(503,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1722',500,'Dettes sur droits réels sur immeubles',0,NULL,NULL,1,NULL,NULL),(504,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','173',493,'Etablissements de crédit',0,NULL,NULL,1,NULL,NULL),(505,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1730',504,'Dettes en compte',0,NULL,NULL,1,NULL,NULL),(506,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17300',505,'Banque A',0,NULL,NULL,1,NULL,NULL),(507,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17301',505,'Banque B',0,NULL,NULL,1,NULL,NULL),(508,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17302',505,'Banque C',0,NULL,NULL,1,NULL,NULL),(509,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17303',505,'Banque D',0,NULL,NULL,1,NULL,NULL),(510,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1731',504,'Promesses',0,NULL,NULL,1,NULL,NULL),(511,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17310',510,'Banque A',0,NULL,NULL,1,NULL,NULL),(512,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17311',510,'Banque B',0,NULL,NULL,1,NULL,NULL),(513,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17312',510,'Banque C',0,NULL,NULL,1,NULL,NULL),(514,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17313',510,'Banque D',0,NULL,NULL,1,NULL,NULL),(515,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1732',504,'Crédits d\'acceptation',0,NULL,NULL,1,NULL,NULL),(516,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17320',515,'Banque A',0,NULL,NULL,1,NULL,NULL),(517,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17321',515,'Banque B',0,NULL,NULL,1,NULL,NULL),(518,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17322',515,'Banque C',0,NULL,NULL,1,NULL,NULL),(519,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17323',515,'Banque D',0,NULL,NULL,1,NULL,NULL),(520,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','174',493,'Autres emprunts',0,NULL,NULL,1,NULL,NULL),(521,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175',493,'Dettes commerciales',0,NULL,NULL,1,NULL,NULL),(522,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1750',521,'Fournisseurs : dettes en compte',0,NULL,NULL,1,NULL,NULL),(523,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17500',522,'Entreprises apparentées',0,NULL,NULL,1,NULL,NULL),(524,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175000',523,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(525,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175001',523,'Entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(526,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17501',522,'Fournisseurs ordinaires',0,NULL,NULL,1,NULL,NULL),(527,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175010',526,'Fournisseurs belges',0,NULL,NULL,1,NULL,NULL),(528,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175011',526,'Fournisseurs C.E.E.',0,NULL,NULL,1,NULL,NULL),(529,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175012',526,'Fournisseurs importation',0,NULL,NULL,1,NULL,NULL),(530,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1751',521,'Effets à payer',0,NULL,NULL,1,NULL,NULL),(531,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17510',530,'Entreprises apparentées',0,NULL,NULL,1,NULL,NULL),(532,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175100',531,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(533,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175101',531,'Entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(534,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','17511',530,'Fournisseurs ordinaires',0,NULL,NULL,1,NULL,NULL),(535,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175110',534,'Fournisseurs belges',0,NULL,NULL,1,NULL,NULL),(536,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175111',534,'Fournisseurs C.E.E.',0,NULL,NULL,1,NULL,NULL),(537,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','175112',534,'Fournisseurs importation',0,NULL,NULL,1,NULL,NULL),(538,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','176',493,'Acomptes reçus sur commandes',0,NULL,NULL,1,NULL,NULL),(539,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','178',493,'Cautionnements reçus en numéraires',0,NULL,NULL,1,NULL,NULL),(540,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','179',493,'Dettes diverses',0,NULL,NULL,1,NULL,NULL),(541,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1790',540,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(542,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1791',540,'Autres entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(543,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1792',540,'Administrateurs, gérants et associés',0,NULL,NULL,1,NULL,NULL),(544,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1794',540,'Rentes viagères capitalisées',0,NULL,NULL,1,NULL,NULL),(545,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1798',540,'Dettes envers les coparticipants des associations momentanées et en participation',0,NULL,NULL,1,NULL,NULL),(546,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','1799',540,'Autres dettes diverses',0,NULL,NULL,1,NULL,NULL),(547,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','CAPIT','XXXXXX','18',1351,'Comptes de liaison des établissements et succursales',0,NULL,NULL,1,NULL,NULL),(548,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','20',1352,'Frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(549,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','200',548,'Frais de constitution et d\'augmentation de capital',0,NULL,NULL,1,NULL,NULL),(550,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2000',549,'Frais de constitution et d\'augmentation de capital',0,NULL,NULL,1,NULL,NULL),(551,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2009',549,'Amortissements sur frais de constitution et d\'augmentation de capital',0,NULL,NULL,1,NULL,NULL),(552,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','201',548,'Frais d\'émission d\'emprunts et primes de remboursement',0,NULL,NULL,1,NULL,NULL),(553,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2010',552,'Agios sur emprunts et frais d\'émission d\'emprunts',0,NULL,NULL,1,NULL,NULL),(554,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2019',552,'Amortissements sur agios sur emprunts et frais d\'émission d\'emprunts',0,NULL,NULL,1,NULL,NULL),(555,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','202',548,'Autres frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(556,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2020',555,'Autres frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(557,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2029',555,'Amortissements sur autres frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(558,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','203',548,'Intérêts intercalaires',0,NULL,NULL,1,NULL,NULL),(559,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2030',558,'Intérêts intercalaires',0,NULL,NULL,1,NULL,NULL),(560,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2039',558,'Amortissements sur intérêts intercalaires',0,NULL,NULL,1,NULL,NULL),(561,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','204',548,'Frais de restructuration',0,NULL,NULL,1,NULL,NULL),(562,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2040',561,'Coût des frais de restructuration',0,NULL,NULL,1,NULL,NULL),(563,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2049',561,'Amortissements sur frais de restructuration',0,NULL,NULL,1,NULL,NULL),(564,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','21',1352,'Immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(565,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','210',564,'Frais de recherche et de développement',0,NULL,NULL,1,NULL,NULL),(566,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2100',565,'Frais de recherche et de mise au point',0,NULL,NULL,1,NULL,NULL),(567,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2108',565,'Plus-values actées sur frais de recherche et de mise au point',0,NULL,NULL,1,NULL,NULL),(568,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2109',565,'Amortissements sur frais de recherche et de mise au point',0,NULL,NULL,1,NULL,NULL),(569,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','211',564,'Concessions, brevets, licences, savoir-faire, marque et droits similaires',0,NULL,NULL,1,NULL,NULL),(570,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2110',569,'Concessions, brevets, licences, marques, etc',0,NULL,NULL,1,NULL,NULL),(571,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2118',569,'Plus-values actées sur concessions, etc',0,NULL,NULL,1,NULL,NULL),(572,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2119',569,'Amortissements sur concessions, etc',0,NULL,NULL,1,NULL,NULL),(573,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','212',564,'Goodwill',0,NULL,NULL,1,NULL,NULL),(574,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2120',573,'Coût d\'acquisition',0,NULL,NULL,1,NULL,NULL),(575,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2128',573,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(576,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2129',573,'Amortissements sur goodwill',0,NULL,NULL,1,NULL,NULL),(577,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','213',564,'Acomptes versés',0,NULL,NULL,1,NULL,NULL),(578,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22',1352,'Terrains et constructions',0,NULL,NULL,1,NULL,NULL),(579,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','220',578,'Terrains',0,NULL,NULL,1,NULL,NULL),(580,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2200',579,'Terrains',0,NULL,NULL,1,NULL,NULL),(581,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2201',579,'Frais d\'acquisition sur terrains',0,NULL,NULL,1,NULL,NULL),(582,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2208',579,'Plus-values actées sur terrains',0,NULL,NULL,1,NULL,NULL),(583,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2209',579,'Amortissements et réductions de valeur',0,NULL,NULL,1,NULL,NULL),(584,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22090',583,'Amortissements sur frais d\'acquisition',0,NULL,NULL,1,NULL,NULL),(585,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22091',583,'Réductions de valeur sur terrains',0,NULL,NULL,1,NULL,NULL),(586,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','221',578,'Constructions',0,NULL,NULL,1,NULL,NULL),(587,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2210',586,'Bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(588,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2211',586,'Bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(589,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2212',586,'Autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(590,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2213',586,'Voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(591,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2215',586,'Constructions sur sol d\'autrui',0,NULL,NULL,1,NULL,NULL),(592,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2216',586,'Frais d\'acquisition sur constructions',0,NULL,NULL,1,NULL,NULL),(593,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2218',586,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(594,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22180',593,'Sur bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(595,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22181',593,'Sur bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(596,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22182',593,'Sur autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(597,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22184',593,'Sur voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(598,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2219',586,'Amortissements sur constructions',0,NULL,NULL,1,NULL,NULL),(599,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22190',598,'Sur bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(600,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22191',598,'Sur bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(601,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22192',598,'Sur autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(602,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22194',598,'Sur voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(603,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22195',598,'Sur constructions sur sol d\'autrui',0,NULL,NULL,1,NULL,NULL),(604,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22196',598,'Sur frais d\'acquisition sur constructions',0,NULL,NULL,1,NULL,NULL),(605,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','222',578,'Terrains bâtis',0,NULL,NULL,1,NULL,NULL),(606,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2220',605,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(607,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22200',606,'Bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(608,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22201',606,'Bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(609,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22202',606,'Autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(610,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22203',606,'Voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(611,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22204',606,'Frais d\'acquisition des terrains à bâtir',0,NULL,NULL,1,NULL,NULL),(612,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2228',605,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(613,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22280',612,'Sur bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(614,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22281',612,'Sur bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(615,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22282',612,'Sur autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(616,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22283',612,'Sur voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(617,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2229',605,'Amortissements sur terrains bâtis',0,NULL,NULL,1,NULL,NULL),(618,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22290',617,'Sur bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(619,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22291',617,'Sur bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(620,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22292',617,'Sur autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(621,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22293',617,'Sur voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(622,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','22294',617,'Sur frais d\'acquisition des terrains bâtis',0,NULL,NULL,1,NULL,NULL),(623,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','223',578,'Autres droits réels sur des immeubles',0,NULL,NULL,1,NULL,NULL),(624,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2230',623,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(625,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2238',623,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(626,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2239',623,'Amortissements',0,NULL,NULL,1,NULL,NULL),(627,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','23',1352,'Installations, machines et outillages',0,NULL,NULL,1,NULL,NULL),(628,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','230',627,'Installations',0,NULL,NULL,1,NULL,NULL),(629,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2300',628,'Installations bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(630,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2301',628,'Installations bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(631,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2302',628,'Installations bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(632,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2303',628,'Installations voies de transport et ouvrages d\'art',0,NULL,NULL,1,NULL,NULL),(637,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2304',628,'Installation de chauffage',0,NULL,NULL,1,NULL,NULL),(638,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2305',628,'Installation de conditionnement d\'air',0,NULL,NULL,1,NULL,NULL),(639,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2306',628,'Installation de chargement',0,NULL,NULL,1,NULL,NULL),(640,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','231',627,'Machines',0,NULL,NULL,1,NULL,NULL),(641,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2310',640,'Division A',0,NULL,NULL,1,NULL,NULL),(642,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2311',640,'Division B',0,NULL,NULL,1,NULL,NULL),(643,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2312',640,'Division C',0,NULL,NULL,1,NULL,NULL),(644,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','237',627,'Outillage',0,NULL,NULL,1,NULL,NULL),(645,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2370',644,'Division A',0,NULL,NULL,1,NULL,NULL),(646,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2371',644,'Division B',0,NULL,NULL,1,NULL,NULL),(647,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2372',644,'Division C',0,NULL,NULL,1,NULL,NULL),(648,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','238',627,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(649,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2380',648,'Sur installations',0,NULL,NULL,1,NULL,NULL),(650,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2381',648,'Sur machines',0,NULL,NULL,1,NULL,NULL),(651,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2382',648,'Sur outillage',0,NULL,NULL,1,NULL,NULL),(652,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','239',627,'Amortissements',0,NULL,NULL,1,NULL,NULL),(653,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2390',652,'Sur installations',0,NULL,NULL,1,NULL,NULL),(654,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2391',652,'Sur machines',0,NULL,NULL,1,NULL,NULL),(655,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2392',652,'Sur outillage',0,NULL,NULL,1,NULL,NULL),(656,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24',1352,'Mobilier et matériel roulant',0,NULL,NULL,1,NULL,NULL),(657,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','240',656,'Mobilier',0,NULL,NULL,1,NULL,NULL),(658,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2400',656,'Mobilier',0,NULL,NULL,1,NULL,NULL),(659,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24000',658,'Mobilier des bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(660,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24001',658,'Mobilier des bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(661,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24002',658,'Mobilier des autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(662,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24003',658,'Mobilier oeuvres sociales',0,NULL,NULL,1,NULL,NULL),(663,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2401',657,'Matériel de bureau et de service social',0,NULL,NULL,1,NULL,NULL),(664,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24010',663,'Des bâtiments industriels',0,NULL,NULL,1,NULL,NULL),(665,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24011',663,'Des bâtiments administratifs et commerciaux',0,NULL,NULL,1,NULL,NULL),(666,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24012',663,'Des autres bâtiments d\'exploitation',0,NULL,NULL,1,NULL,NULL),(667,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24013',663,'Des oeuvres sociales',0,NULL,NULL,1,NULL,NULL),(668,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2408',657,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(669,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24080',668,'Plus-values actées sur mobilier',0,NULL,NULL,1,NULL,NULL),(670,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24081',668,'Plus-values actées sur matériel de bureau et service social',0,NULL,NULL,1,NULL,NULL),(671,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2409',657,'Amortissements',0,NULL,NULL,1,NULL,NULL),(672,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24090',671,'Amortissements sur mobilier',0,NULL,NULL,1,NULL,NULL),(673,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24091',671,'Amortissements sur matériel de bureau et service social',0,NULL,NULL,1,NULL,NULL),(674,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','241',656,'Matériel roulant',0,NULL,NULL,1,NULL,NULL),(675,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2410',674,'Matériel automobile',0,NULL,NULL,1,NULL,NULL),(676,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24100',675,'Voitures',0,NULL,NULL,1,NULL,NULL),(677,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24105',675,'Camions',0,NULL,NULL,1,NULL,NULL),(678,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2411',674,'Matériel ferroviaire',0,NULL,NULL,1,NULL,NULL),(679,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2412',674,'Matériel fluvial',0,NULL,NULL,1,NULL,NULL),(680,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2413',674,'Matériel naval',0,NULL,NULL,1,NULL,NULL),(681,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2414',674,'Matériel aérien',0,NULL,NULL,1,NULL,NULL),(682,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2418',674,'Plus-values sur matériel roulant',0,NULL,NULL,1,NULL,NULL),(683,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24180',682,'Plus-values sur matériel automobile',0,NULL,NULL,1,NULL,NULL),(684,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24181',682,'Idem sur matériel ferroviaire',0,NULL,NULL,1,NULL,NULL),(685,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24182',682,'Idem sur matériel fluvial',0,NULL,NULL,1,NULL,NULL),(686,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24183',682,'Idem sur matériel naval',0,NULL,NULL,1,NULL,NULL),(687,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24184',682,'Idem sur matériel aérien',0,NULL,NULL,1,NULL,NULL),(688,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2419',674,'Amortissements sur matériel roulant',0,NULL,NULL,1,NULL,NULL),(689,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24190',688,'Amortissements sur matériel automobile',0,NULL,NULL,1,NULL,NULL),(690,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24191',688,'Idem sur matériel ferroviaire',0,NULL,NULL,1,NULL,NULL),(691,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24192',688,'Idem sur matériel fluvial',0,NULL,NULL,1,NULL,NULL),(692,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24193',688,'Idem sur matériel naval',0,NULL,NULL,1,NULL,NULL),(693,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','24194',688,'Idem sur matériel aérien',0,NULL,NULL,1,NULL,NULL),(694,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','25',1352,'Immobilisation détenues en location-financement et droits similaires',0,NULL,NULL,1,NULL,NULL),(695,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','250',694,'Terrains et constructions',0,NULL,NULL,1,NULL,NULL),(696,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2500',695,'Terrains',0,NULL,NULL,1,NULL,NULL),(697,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2501',695,'Constructions',0,NULL,NULL,1,NULL,NULL),(698,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2508',695,'Plus-values sur emphytéose, leasing et droits similaires : terrains et constructions',0,NULL,NULL,1,NULL,NULL),(699,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2509',695,'Amortissements et réductions de valeur sur terrains et constructions en leasing',0,NULL,NULL,1,NULL,NULL),(700,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','251',694,'Installations, machines et outillage',0,NULL,NULL,1,NULL,NULL),(701,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2510',700,'Installations',0,NULL,NULL,1,NULL,NULL),(702,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2511',700,'Machines',0,NULL,NULL,1,NULL,NULL),(703,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2512',700,'Outillage',0,NULL,NULL,1,NULL,NULL),(704,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2518',700,'Plus-values actées sur installations machines et outillage pris en leasing',0,NULL,NULL,1,NULL,NULL),(705,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2519',700,'Amortissements sur installations machines et outillage pris en leasing',0,NULL,NULL,1,NULL,NULL),(706,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','252',694,'Mobilier et matériel roulant',0,NULL,NULL,1,NULL,NULL),(707,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2520',706,'Mobilier',0,NULL,NULL,1,NULL,NULL),(708,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2521',706,'Matériel roulant',0,NULL,NULL,1,NULL,NULL),(709,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2528',706,'Plus-values actées sur mobilier et matériel roulant en leasing',0,NULL,NULL,1,NULL,NULL),(710,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2529',706,'Amortissements sur mobilier et matériel roulant en leasing',0,NULL,NULL,1,NULL,NULL),(711,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','26',1352,'Autres immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(712,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','260',711,'Frais d\'aménagements de locaux pris en location',0,NULL,NULL,1,NULL,NULL),(713,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','261',711,'Maison d\'habitation',0,NULL,NULL,1,NULL,NULL),(714,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','262',711,'Réserve immobilière',0,NULL,NULL,1,NULL,NULL),(715,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','263',711,'Matériel d\'emballage',0,NULL,NULL,1,NULL,NULL),(716,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','264',711,'Emballages récupérables',0,NULL,NULL,1,NULL,NULL),(717,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','268',711,'Plus-values actées sur autres immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(718,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','269',711,'Amortissements sur autres immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(719,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2690',718,'Amortissements sur frais d\'aménagement des locaux pris en location',0,NULL,NULL,1,NULL,NULL),(720,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2691',718,'Amortissements sur maison d\'habitation',0,NULL,NULL,1,NULL,NULL),(721,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2692',718,'Amortissements sur réserve immobilière',0,NULL,NULL,1,NULL,NULL),(722,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2693',718,'Amortissements sur matériel d\'emballage',0,NULL,NULL,1,NULL,NULL),(723,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2694',718,'Amortissements sur emballages récupérables',0,NULL,NULL,1,NULL,NULL),(724,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','27',1352,'Immobilisations corporelles en cours et acomptes versés',0,NULL,NULL,1,NULL,NULL),(725,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','270',724,'Immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(726,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2700',725,'Constructions',0,NULL,NULL,1,NULL,NULL),(727,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2701',725,'Installations machines et outillage',0,NULL,NULL,1,NULL,NULL),(728,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2702',725,'Mobilier et matériel roulant',0,NULL,NULL,1,NULL,NULL),(729,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2703',725,'Autres immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(730,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','271',724,'Avances et acomptes versés sur immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(731,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','28',1352,'Immobilisations financières',0,NULL,NULL,1,NULL,NULL),(732,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','280',731,'Participations dans des entreprises liées',0,NULL,NULL,1,NULL,NULL),(733,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2800',732,'Valeur d\'acquisition (peut être subdivisé par participation)',0,NULL,NULL,1,NULL,NULL),(734,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2801',732,'Montants non appelés (idem)',0,NULL,NULL,1,NULL,NULL),(735,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2808',732,'Plus-values actées (idem)',0,NULL,NULL,1,NULL,NULL),(736,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2809',732,'Réductions de valeurs actées (idem)',0,NULL,NULL,1,NULL,NULL),(737,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','281',731,'Créances sur des entreprises liées',0,NULL,NULL,1,NULL,NULL),(738,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2810',737,'Créances en compte',0,NULL,NULL,1,NULL,NULL),(739,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2811',737,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(740,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2812',737,'Titres à revenu fixes',0,NULL,NULL,1,NULL,NULL),(741,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2817',737,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(742,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2819',737,'Réductions de valeurs actées',0,NULL,NULL,1,NULL,NULL),(743,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','282',731,'Participations dans des entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(744,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2820',743,'Valeur d\'acquisition (peut être subdivisé par participation)',0,NULL,NULL,1,NULL,NULL),(745,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2821',743,'Montants non appelés (idem)',0,NULL,NULL,1,NULL,NULL),(746,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2828',743,'Plus-values actées (idem)',0,NULL,NULL,1,NULL,NULL),(747,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2829',743,'Réductions de valeurs actées (idem)',0,NULL,NULL,1,NULL,NULL),(748,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','283',731,'Créances sur des entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(749,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2830',748,'Créances en compte',0,NULL,NULL,1,NULL,NULL),(750,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2831',748,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(751,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2832',748,'Titres à revenu fixe',0,NULL,NULL,1,NULL,NULL),(752,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2837',748,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(753,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','2839',748,'Réductions de valeurs actées',0,NULL,NULL,1,NULL,NULL),(754,1,NULL,'2016-01-22 17:28:15','PCMN-BASE','IMMO','XXXXXX','284',731,'Autres actions et parts',0,NULL,NULL,1,NULL,NULL),(755,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2840',754,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(756,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2841',754,'Montants non appelés',0,NULL,NULL,1,NULL,NULL),(757,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2848',754,'Plus-values actées',0,NULL,NULL,1,NULL,NULL),(758,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2849',754,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(759,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','285',731,'Autres créances',0,NULL,NULL,1,NULL,NULL),(760,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2850',759,'Créances en compte',0,NULL,NULL,1,NULL,NULL),(761,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2851',759,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(762,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2852',759,'Titres à revenu fixe',0,NULL,NULL,1,NULL,NULL),(763,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2857',759,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(764,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2859',759,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(765,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','288',731,'Cautionnements versés en numéraires',0,NULL,NULL,1,NULL,NULL),(766,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2880',765,'Téléphone, téléfax, télex',0,NULL,NULL,1,NULL,NULL),(767,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2881',765,'Gaz',0,NULL,NULL,1,NULL,NULL),(768,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2882',765,'Eau',0,NULL,NULL,1,NULL,NULL),(769,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2883',765,'Electricité',0,NULL,NULL,1,NULL,NULL),(770,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2887',765,'Autres cautionnements versés en numéraires',0,NULL,NULL,1,NULL,NULL),(771,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29',1352,'Créances à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(772,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','290',771,'Créances commerciales',0,NULL,NULL,1,NULL,NULL),(773,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2900',772,'Clients',0,NULL,NULL,1,NULL,NULL),(774,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29000',773,'Créances en compte sur entreprises liées',0,NULL,NULL,1,NULL,NULL),(775,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29001',773,'Sur entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(776,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29002',773,'Sur clients Belgique',0,NULL,NULL,1,NULL,NULL),(777,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29003',773,'Sur clients C.E.E.',0,NULL,NULL,1,NULL,NULL),(778,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29004',773,'Sur clients exportation hors C.E.E.',0,NULL,NULL,1,NULL,NULL),(779,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29005',773,'Créances sur les coparticipants (associations momentanées)',0,NULL,NULL,1,NULL,NULL),(780,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2901',772,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(781,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29010',780,'Sur entreprises liées',0,NULL,NULL,1,NULL,NULL),(782,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29011',780,'Sur entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(783,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29012',780,'Sur clients Belgique',0,NULL,NULL,1,NULL,NULL),(784,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29013',780,'Sur clients C.E.E.',0,NULL,NULL,1,NULL,NULL),(785,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29014',780,'Sur clients exportation hors C.E.E.',0,NULL,NULL,1,NULL,NULL),(786,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2905',772,'Retenues sur garanties',0,NULL,NULL,1,NULL,NULL),(787,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2906',772,'Acomptes versés',0,NULL,NULL,1,NULL,NULL),(788,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2907',772,'Créances douteuses (à ventiler comme clients 2900)',0,NULL,NULL,1,NULL,NULL),(789,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2909',772,'Réductions de valeur actées (à ventiler comme clients 2900)',0,NULL,NULL,1,NULL,NULL),(790,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','291',771,'Autres créances',0,NULL,NULL,1,NULL,NULL),(791,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2910',790,'Créances en compte',0,NULL,NULL,1,NULL,NULL),(792,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29100',791,'Sur entreprises liées',0,NULL,NULL,1,NULL,NULL),(793,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29101',791,'Sur entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(794,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29102',791,'Sur autres débiteurs',0,NULL,NULL,1,NULL,NULL),(795,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2911',790,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(796,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29110',795,'Sur entreprises liées',0,NULL,NULL,1,NULL,NULL),(797,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29111',795,'Sur entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(798,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','29112',795,'Sur autres débiteurs',0,NULL,NULL,1,NULL,NULL),(799,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2912',790,'Créances résultant de la cession d\'immobilisations données en leasing',0,NULL,NULL,1,NULL,NULL),(800,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2917',790,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(801,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','IMMO','XXXXXX','2919',790,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(802,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','30',1353,'Approvisionnements - matières premières',0,NULL,NULL,1,NULL,NULL),(803,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','300',802,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(804,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','309',802,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(805,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','31',1353,'Approvsionnements et fournitures',0,NULL,NULL,1,NULL,NULL),(806,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','310',805,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(807,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3100',806,'Matières d\'approvisionnement',0,NULL,NULL,1,NULL,NULL),(808,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3101',806,'Energie, charbon, coke, mazout, essence, propane',0,NULL,NULL,1,NULL,NULL),(809,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3102',806,'Produits d\'entretien',0,NULL,NULL,1,NULL,NULL),(810,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3103',806,'Fournitures diverses et petit outillage',0,NULL,NULL,1,NULL,NULL),(811,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3104',806,'Imprimés et fournitures de bureau',0,NULL,NULL,1,NULL,NULL),(812,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3105',806,'Fournitures de services sociaux',0,NULL,NULL,1,NULL,NULL),(813,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3106',806,'Emballages commerciaux',0,NULL,NULL,1,NULL,NULL),(814,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','31060',813,'Emballages perdus',0,NULL,NULL,1,NULL,NULL),(815,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','31061',813,'Emballages récupérables',0,NULL,NULL,1,NULL,NULL),(816,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','319',805,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(817,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','32',1353,'En cours de fabrication',0,NULL,NULL,1,NULL,NULL),(818,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','320',817,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(819,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3200',818,'Produits semi-ouvrés',0,NULL,NULL,1,NULL,NULL),(820,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3201',818,'Produits en cours de fabrication',0,NULL,NULL,1,NULL,NULL),(821,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3202',818,'Travaux en cours',0,NULL,NULL,1,NULL,NULL),(822,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3205',818,'Déchets',0,NULL,NULL,1,NULL,NULL),(823,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3206',818,'Rebuts',0,NULL,NULL,1,NULL,NULL),(824,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3209',818,'Travaux en association momentanée',0,NULL,NULL,1,NULL,NULL),(825,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','329',817,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(826,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','33',1353,'Produits finis',0,NULL,NULL,1,NULL,NULL),(827,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','330',826,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(828,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3300',827,'Produits finis',0,NULL,NULL,1,NULL,NULL),(829,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','339',826,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(830,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','34',1353,'Marchandises',0,NULL,NULL,1,NULL,NULL),(831,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','340',830,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(832,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3400',831,'Groupe A',0,NULL,NULL,1,NULL,NULL),(833,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3401',831,'Groupe B',0,NULL,NULL,1,NULL,NULL),(834,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3402',831,'Groupe C',0,NULL,NULL,1,NULL,NULL),(835,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','349',830,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(836,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','35',1353,'Immeubles destinés à la vente',0,NULL,NULL,1,NULL,NULL),(837,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','350',836,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(838,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3500',837,'Immeuble A',0,NULL,NULL,1,NULL,NULL),(839,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3501',837,'Immeuble B',0,NULL,NULL,1,NULL,NULL),(840,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3502',837,'Immeuble C',0,NULL,NULL,1,NULL,NULL),(841,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','351',836,'Immeubles construits en vue de leur revente',0,NULL,NULL,1,NULL,NULL),(842,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3510',841,'Immeuble A',0,NULL,NULL,1,NULL,NULL),(843,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3511',841,'Immeuble B',0,NULL,NULL,1,NULL,NULL),(844,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','3512',841,'Immeuble C',0,NULL,NULL,1,NULL,NULL),(845,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','359',836,'Réductions de valeurs actées',0,NULL,NULL,1,NULL,NULL),(846,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','36',1353,'Acomptes versés sur achats pour stocks',0,NULL,NULL,1,NULL,NULL),(847,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','360',846,'Acomptes versés (à ventiler éventuellement par catégorie)',0,NULL,NULL,1,NULL,NULL),(848,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','369',846,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(849,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','37',1353,'Commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(850,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','370',849,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(851,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','371',849,'Bénéfice pris en compte',0,NULL,NULL,1,NULL,NULL),(852,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','STOCK','XXXXXX','379',849,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(853,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','40',1354,'Créances commerciales',0,NULL,NULL,1,NULL,NULL),(854,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','400',853,'Clients',0,NULL,NULL,1,NULL,NULL),(855,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4007',854,'Rabais, remises et ristournes à accorder et autres notes de crédit à établir',0,NULL,NULL,1,NULL,NULL),(856,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4008',854,'Créances résultant de livraisons de biens (associations momentanées)',0,NULL,NULL,1,NULL,NULL),(857,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','401',853,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(858,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4010',857,'Effets à recevoir',0,NULL,NULL,1,NULL,NULL),(859,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4013',857,'Effets à l\'encaissement',0,NULL,NULL,1,NULL,NULL),(860,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4015',857,'Effets à l\'escompte',0,NULL,NULL,1,NULL,NULL),(861,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','402',853,'Clients, créances courantes, entreprises apparentées, administrateurs et gérants',0,NULL,NULL,1,NULL,NULL),(862,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4020',861,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(863,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4021',861,'Autres entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(864,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4022',861,'Administrateurs et gérants d\'entreprise',0,NULL,NULL,1,NULL,NULL),(865,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','403',853,'Effets à recevoir sur entreprises apparentées et administrateurs et gérants',0,NULL,NULL,1,NULL,NULL),(866,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4030',865,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(867,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4031',865,'Autres entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(868,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4032',865,'Administrateurs et gérants de l\'entreprise',0,NULL,NULL,1,NULL,NULL),(869,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','404',853,'Produits à recevoir (factures à établir)',0,NULL,NULL,1,NULL,NULL),(870,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','405',853,'Clients : retenues sur garanties',0,NULL,NULL,1,NULL,NULL),(871,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','406',853,'Acomptes versés',0,NULL,NULL,1,NULL,NULL),(872,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','407',853,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(873,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','408',853,'Compensation clients',0,NULL,NULL,1,NULL,NULL),(874,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','409',853,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(875,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','41',1354,'Autres créances',0,NULL,NULL,1,NULL,NULL),(876,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','410',875,'Capital appelé, non versé',0,NULL,NULL,1,NULL,NULL),(877,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4100',876,'Appels de fonds',0,NULL,NULL,1,NULL,NULL),(878,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4101',876,'Actionnaires défaillants',0,NULL,NULL,1,NULL,NULL),(879,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','411',875,'T.V.A. à récupérer',0,NULL,NULL,1,NULL,NULL),(880,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4110',879,'T.V.A. due',0,NULL,NULL,1,NULL,NULL),(881,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4111',879,'T.V.A. déductible',0,NULL,NULL,1,NULL,NULL),(882,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4112',879,'Compte courant administration T.V.A.',0,NULL,NULL,1,NULL,NULL),(883,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4118',879,'Taxe d\'égalisation due',0,NULL,NULL,1,NULL,NULL),(884,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','412',875,'Impôts et versements fiscaux à récupérer',0,NULL,NULL,1,NULL,NULL),(885,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4120',884,'Impôts belges sur le résultat',0,NULL,NULL,1,NULL,NULL),(886,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4125',884,'Autres impôts belges',0,NULL,NULL,1,NULL,NULL),(887,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4128',884,'Impôts étrangers',0,NULL,NULL,1,NULL,NULL),(888,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','414',875,'Produits à recevoir',0,NULL,NULL,1,NULL,NULL),(889,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','416',875,'Créances diverses',0,NULL,NULL,1,NULL,NULL),(890,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4160',889,'Associés (compte d\'apport en société)',0,NULL,NULL,1,NULL,NULL),(891,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4161',889,'Avances et prêts au personnel',0,NULL,NULL,1,NULL,NULL),(892,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4162',889,'Compte courant des associés en S.P.R.L.',0,NULL,NULL,1,NULL,NULL),(893,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4163',889,'Compte courant des administrateurs et gérants',0,NULL,NULL,1,NULL,NULL),(894,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4164',889,'Créances sur sociétés apparentées',0,NULL,NULL,1,NULL,NULL),(895,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4166',889,'Emballages et matériel à rendre',0,NULL,NULL,1,NULL,NULL),(896,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4167',889,'Etat et établissements publics',0,NULL,NULL,1,NULL,NULL),(897,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','41670',896,'Subsides à recevoir',0,NULL,NULL,1,NULL,NULL),(898,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','41671',896,'Autres créances',0,NULL,NULL,1,NULL,NULL),(899,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4168',889,'Rabais, ristournes et remises à obtenir et autres avoirs non encore reçus',0,NULL,NULL,1,NULL,NULL),(900,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','417',875,'Créances douteuses',0,NULL,NULL,1,NULL,NULL),(901,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','418',875,'Cautionnements versés en numéraires',0,NULL,NULL,1,NULL,NULL),(902,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','419',875,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(903,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','42',1354,'Dettes à plus d\'un an échéant dans l\'année',0,NULL,NULL,1,NULL,NULL),(904,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','420',903,'Emprunts subordonnés',0,NULL,NULL,1,NULL,NULL),(905,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4200',904,'Convertibles',0,NULL,NULL,1,NULL,NULL),(906,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4201',904,'Non convertibles',0,NULL,NULL,1,NULL,NULL),(907,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','421',903,'Emprunts obligataires non subordonnés',0,NULL,NULL,1,NULL,NULL),(908,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4210',907,'Convertibles',0,NULL,NULL,1,NULL,NULL),(909,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4211',907,'Non convertibles',0,NULL,NULL,1,NULL,NULL),(910,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','422',903,'Dettes de location-financement et assimilées',0,NULL,NULL,1,NULL,NULL),(911,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4220',910,'Financement de biens immobiliers',0,NULL,NULL,1,NULL,NULL),(912,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4221',910,'Financement de biens mobiliers',0,NULL,NULL,1,NULL,NULL),(913,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','423',903,'Etablissements de crédit',0,NULL,NULL,1,NULL,NULL),(914,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4230',913,'Dettes en compte',0,NULL,NULL,1,NULL,NULL),(915,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4231',913,'Promesses',0,NULL,NULL,1,NULL,NULL),(916,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4232',913,'Crédits d\'acceptation',0,NULL,NULL,1,NULL,NULL),(917,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','424',903,'Autres emprunts',0,NULL,NULL,1,NULL,NULL),(918,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','425',903,'Dettes commerciales',0,NULL,NULL,1,NULL,NULL),(919,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4250',918,'Fournisseurs',0,NULL,NULL,1,NULL,NULL),(920,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4251',918,'Effets à payer',0,NULL,NULL,1,NULL,NULL),(921,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','426',903,'Cautionnements reçus en numéraires',0,NULL,NULL,1,NULL,NULL),(922,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','429',903,'Dettes diverses',0,NULL,NULL,1,NULL,NULL),(923,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4290',922,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(924,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4291',922,'Entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(925,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4292',922,'Administrateurs, gérants, associés',0,NULL,NULL,1,NULL,NULL),(926,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4299',922,'Autres dettes',0,NULL,NULL,1,NULL,NULL),(927,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','43',1354,'Dettes financières',0,NULL,NULL,1,NULL,NULL),(928,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','430',927,'Etablissements de crédit. Emprunts en compte à terme fixe',0,NULL,NULL,1,NULL,NULL),(929,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','431',927,'Etablissements de crédit. Promesses',0,NULL,NULL,1,NULL,NULL),(930,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','432',927,'Etablissements de crédit. Crédits d\'acceptation',0,NULL,NULL,1,NULL,NULL),(931,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','433',927,'Etablissements de crédit. Dettes en compte courant',0,NULL,NULL,1,NULL,NULL),(932,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','439',927,'Autres emprunts',0,NULL,NULL,1,NULL,NULL),(933,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44',1354,'Dettes commerciales',0,NULL,NULL,1,NULL,NULL),(934,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','440',933,'Fournisseurs',0,NULL,NULL,1,NULL,NULL),(935,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4400',934,'Entreprises apparentées',0,NULL,NULL,1,NULL,NULL),(936,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44000',935,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(937,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44001',935,'Entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(938,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4401',934,'Fournisseurs ordinaires',0,NULL,NULL,1,NULL,NULL),(939,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44010',938,'Fournisseurs belges',0,NULL,NULL,1,NULL,NULL),(940,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44011',938,'Fournisseurs CEE',0,NULL,NULL,1,NULL,NULL),(941,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44012',938,'Fournisseurs importation',0,NULL,NULL,1,NULL,NULL),(942,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4402',934,'Dettes envers les coparticipants (associations momentanées)',0,NULL,NULL,1,NULL,NULL),(943,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4403',934,'Fournisseurs - retenues de garanties',0,NULL,NULL,1,NULL,NULL),(944,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','441',933,'Effets à payer',0,NULL,NULL,1,NULL,NULL),(945,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4410',944,'Entreprises apparentées',0,NULL,NULL,1,NULL,NULL),(946,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44100',945,'Entreprises liées',0,NULL,NULL,1,NULL,NULL),(947,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44101',945,'Entreprises avec lesquelles il existe un lien de participation',0,NULL,NULL,1,NULL,NULL),(948,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4411',944,'Fournisseurs ordinaires',0,NULL,NULL,1,NULL,NULL),(949,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44110',948,'Fournisseurs belges',0,NULL,NULL,1,NULL,NULL),(950,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44111',948,'Fournisseurs CEE',0,NULL,NULL,1,NULL,NULL),(951,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','44112',948,'Fournisseurs importation',0,NULL,NULL,1,NULL,NULL),(952,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','444',933,'Factures à recevoir',0,NULL,NULL,1,NULL,NULL),(953,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','446',933,'Acomptes reçus',0,NULL,NULL,1,NULL,NULL),(954,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','448',933,'Compensations fournisseurs',0,NULL,NULL,1,NULL,NULL),(955,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45',1354,'Dettes fiscales, salariales et sociales',0,NULL,NULL,1,NULL,NULL),(956,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','450',955,'Dettes fiscales estimées',0,NULL,NULL,1,NULL,NULL),(957,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4501',956,'Impôts sur le résultat',0,NULL,NULL,1,NULL,NULL),(958,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4505',956,'Autres impôts en Belgique',0,NULL,NULL,1,NULL,NULL),(959,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4508',956,'Impôts à l\'étranger',0,NULL,NULL,1,NULL,NULL),(960,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','451',955,'T.V.A. à payer',0,NULL,NULL,1,NULL,NULL),(961,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4510',960,'T.V.A. due',0,NULL,NULL,1,NULL,NULL),(962,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4511',960,'T.V.A. déductible',0,NULL,NULL,1,NULL,NULL),(963,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4512',960,'Compte courant administration T.V.A.',0,NULL,NULL,1,NULL,NULL),(964,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4518',960,'Taxe d\'égalisation due',0,NULL,NULL,1,NULL,NULL),(965,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','452',955,'Impôts et taxes à payer',0,NULL,NULL,1,NULL,NULL),(966,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4520',965,'Autres impôts sur le résultat',0,NULL,NULL,1,NULL,NULL),(967,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4525',965,'Autres impôts et taxes en Belgique',0,NULL,NULL,1,NULL,NULL),(968,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45250',967,'Précompte immobilier',0,NULL,NULL,1,NULL,NULL),(969,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45251',967,'Impôts communaux à payer',0,NULL,NULL,1,NULL,NULL),(970,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45252',967,'Impôts provinciaux à payer',0,NULL,NULL,1,NULL,NULL),(971,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45253',967,'Autres impôts et taxes à payer',0,NULL,NULL,1,NULL,NULL),(972,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4528',965,'Impôts et taxes à l\'étranger',0,NULL,NULL,1,NULL,NULL),(973,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','453',955,'Précomptes retenus',0,NULL,NULL,1,NULL,NULL),(974,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4530',973,'Précompte professionnel retenu sur rémunérations',0,NULL,NULL,1,NULL,NULL),(975,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4531',973,'Précompte professionnel retenu sur tantièmes',0,NULL,NULL,1,NULL,NULL),(976,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4532',973,'Précompte mobilier retenu sur dividendes attribués',0,NULL,NULL,1,NULL,NULL),(977,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4533',973,'Précompte mobilier retenu sur intérêts payés',0,NULL,NULL,1,NULL,NULL),(978,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4538',973,'Autres précomptes retenus',0,NULL,NULL,1,NULL,NULL),(979,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','454',955,'Office National de la Sécurité Sociale',0,NULL,NULL,1,NULL,NULL),(980,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4540',979,'Arriérés',0,NULL,NULL,1,NULL,NULL),(981,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4541',979,'1er trimestre',0,NULL,NULL,1,NULL,NULL),(982,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4542',979,'2ème trimestre',0,NULL,NULL,1,NULL,NULL),(983,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4543',979,'3ème trimestre',0,NULL,NULL,1,NULL,NULL),(984,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4544',979,'4ème trimestre',0,NULL,NULL,1,NULL,NULL),(985,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','455',955,'Rémunérations',0,NULL,NULL,1,NULL,NULL),(986,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4550',985,'Administrateurs, gérants et commissaires (non réviseurs)',0,NULL,NULL,1,NULL,NULL),(987,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4551',985,'Direction',0,NULL,NULL,1,NULL,NULL),(988,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4552',985,'Employés',0,NULL,NULL,1,NULL,NULL),(989,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4553',985,'Ouvriers',0,NULL,NULL,1,NULL,NULL),(990,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','456',955,'Pécules de vacances',0,NULL,NULL,1,NULL,NULL),(991,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4560',990,'Direction',0,NULL,NULL,1,NULL,NULL),(992,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4561',990,'Employés',0,NULL,NULL,1,NULL,NULL),(993,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4562',990,'Ouvriers',0,NULL,NULL,1,NULL,NULL),(994,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','459',955,'Autres dettes sociales',0,NULL,NULL,1,NULL,NULL),(995,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4590',994,'Provision pour gratifications de fin d\'année',0,NULL,NULL,1,NULL,NULL),(996,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4591',994,'Départs de personnel',0,NULL,NULL,1,NULL,NULL),(997,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4592',994,'Oppositions sur rémunérations',0,NULL,NULL,1,NULL,NULL),(998,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4593',994,'Assurances relatives au personnel',0,NULL,NULL,1,NULL,NULL),(999,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45930',998,'Assurance loi',0,NULL,NULL,1,NULL,NULL),(1000,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45931',998,'Assurance salaire garanti',0,NULL,NULL,1,NULL,NULL),(1001,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45932',998,'Assurance groupe',0,NULL,NULL,1,NULL,NULL),(1002,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','45933',998,'Assurances individuelles',0,NULL,NULL,1,NULL,NULL),(1003,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4594',994,'Caisse d\'assurances sociales pour travailleurs indépendants',0,NULL,NULL,1,NULL,NULL),(1004,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4597',994,'Dettes et provisions sociales diverses',0,NULL,NULL,1,NULL,NULL),(1005,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','46',1354,'Acomptes reçus sur commande',0,NULL,NULL,1,NULL,NULL),(1006,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','47',1354,'Dettes découlant de l\'affectation des résultats',0,NULL,NULL,1,NULL,NULL),(1007,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','470',1006,'Dividendes et tantièmes d\'exercices antérieurs',0,NULL,NULL,1,NULL,NULL),(1008,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','471',1006,'Dividendes de l\'exercice',0,NULL,NULL,1,NULL,NULL),(1009,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','472',1006,'Tantièmes de l\'exercice',0,NULL,NULL,1,NULL,NULL),(1010,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','473',1006,'Autres allocataires',0,NULL,NULL,1,NULL,NULL),(1011,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','48',4,'Dettes diverses',0,NULL,NULL,1,NULL,NULL),(1012,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','480',1011,'Obligations et coupons échus',0,NULL,NULL,1,NULL,NULL),(1013,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','481',1011,'Actionnaires - capital à rembourser',0,NULL,NULL,1,NULL,NULL),(1014,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','482',1011,'Participation du personnel à payer',0,NULL,NULL,1,NULL,NULL),(1015,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','483',1011,'Acomptes reçus d\'autres tiers à moins d\'un an',0,NULL,NULL,1,NULL,NULL),(1016,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','486',1011,'Emballages et matériel consignés',0,NULL,NULL,1,NULL,NULL),(1017,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','488',1011,'Cautionnements reçus en numéraires',0,NULL,NULL,1,NULL,NULL),(1018,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','489',1011,'Autres dettes diverses',0,NULL,NULL,1,NULL,NULL),(1019,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49',1354,'Comptes de régularisation et compte d\'attente',0,NULL,NULL,1,NULL,NULL),(1020,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','490',1019,'Charges à reporter (à subdiviser par catégorie de charges)',0,NULL,NULL,1,NULL,NULL),(1021,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','491',1019,'Produits acquis',0,NULL,NULL,1,NULL,NULL),(1022,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4910',1021,'Produits d\'exploitation',0,NULL,NULL,1,NULL,NULL),(1023,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49100',1022,'Ristournes et rabais à obtenir',0,NULL,NULL,1,NULL,NULL),(1024,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49101',1022,'Commissions à obtenir',0,NULL,NULL,1,NULL,NULL),(1025,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49102',1022,'Autres produits d\'exploitation (redevances par exemple)',0,NULL,NULL,1,NULL,NULL),(1026,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4911',1021,'Produits financiers',0,NULL,NULL,1,NULL,NULL),(1027,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49110',1026,'Intérêts courus et non échus sur prêts et débits',0,NULL,NULL,1,NULL,NULL),(1028,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','49111',1026,'Autres produits financiers',0,NULL,NULL,1,NULL,NULL),(1029,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','492',1019,'Charges à imputer (à subdiviser par catégorie de charges)',0,NULL,NULL,1,NULL,NULL),(1030,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','493',1019,'Produits à reporter',0,NULL,NULL,1,NULL,NULL),(1031,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4930',1030,'Produits d\'exploitation à reporter',0,NULL,NULL,1,NULL,NULL),(1032,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4931',1030,'Produits financiers à reporter',0,NULL,NULL,1,NULL,NULL),(1033,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','499',1019,'Comptes d\'attente',0,NULL,NULL,1,NULL,NULL),(1034,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4990',1033,'Compte d\'attente',0,NULL,NULL,1,NULL,NULL),(1035,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4991',1033,'Compte de répartition périodique des charges',0,NULL,NULL,1,NULL,NULL),(1036,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','TIERS','XXXXXX','4999',1033,'Transferts d\'exercice',0,NULL,NULL,1,NULL,NULL),(1037,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','50',1355,'Actions propres',0,NULL,NULL,1,NULL,NULL),(1038,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','51',1355,'Actions et parts',0,NULL,NULL,1,NULL,NULL),(1039,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','510',1038,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(1040,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','511',1038,'Montants non appelés',0,NULL,NULL,1,NULL,NULL),(1041,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','519',1038,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(1042,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','52',1355,'Titres à revenus fixes',0,NULL,NULL,1,NULL,NULL),(1043,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','520',1042,'Valeur d\'acquisition',0,NULL,NULL,1,NULL,NULL),(1044,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','529',1042,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(1045,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','53',1355,'Dépots à terme',0,NULL,NULL,1,NULL,NULL),(1046,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','530',1045,'De plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1047,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','531',1045,'De plus d\'un mois et à un an au plus',0,NULL,NULL,1,NULL,NULL),(1048,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','532',1045,'d\'un mois au plus',0,NULL,NULL,1,NULL,NULL),(1049,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','539',1045,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(1050,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','54',1355,'Valeurs échues à l\'encaissement',0,NULL,NULL,1,NULL,NULL),(1051,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','540',1050,'Chèques à encaisser',0,NULL,NULL,1,NULL,NULL),(1052,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','541',1050,'Coupons à encaisser',0,NULL,NULL,1,NULL,NULL),(1053,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','55',1355,'Etablissements de crédit - Comptes ouverts auprès des divers établissements.',0,NULL,NULL,1,NULL,NULL),(1054,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','550',1053,'Comptes courants',0,NULL,NULL,1,NULL,NULL),(1055,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','551',1053,'Chèques émis',0,NULL,NULL,1,NULL,NULL),(1056,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','559',1053,'Réductions de valeur actées',0,NULL,NULL,1,NULL,NULL),(1057,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','56',1355,'Office des chèques postaux',0,NULL,NULL,1,NULL,NULL),(1058,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','560',1057,'Compte courant',0,NULL,NULL,1,NULL,NULL),(1059,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','561',1057,'Chèques émis',0,NULL,NULL,1,NULL,NULL),(1060,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','57',1355,'Caisses',0,NULL,NULL,1,NULL,NULL),(1061,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','570',1060,'à 577 Caisses - espèces ( 0 - centrale ; 7 - succursales et agences)',0,NULL,NULL,1,NULL,NULL),(1062,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','578',1060,'Caisses - timbres ( 0 - fiscaux ; 1 - postaux)',0,NULL,NULL,1,NULL,NULL),(1063,1,NULL,'2016-01-22 17:28:16','PCMN-BASE','FINAN','XXXXXX','58',1355,'Virements internes',0,NULL,NULL,1,NULL,NULL),(1064,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','60',1356,'Approvisionnements et marchandises',0,NULL,NULL,1,NULL,NULL),(1065,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','600',1064,'Achats de matières premières',0,NULL,NULL,1,NULL,NULL),(1066,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','601',1064,'Achats de fournitures',0,NULL,NULL,1,NULL,NULL),(1067,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','602',1064,'Achats de services, travaux et études',0,NULL,NULL,1,NULL,NULL),(1068,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','603',1064,'Sous-traitances générales',0,NULL,NULL,1,NULL,NULL),(1069,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','604',1064,'Achats de marchandises',0,NULL,NULL,1,NULL,NULL),(1070,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','605',1064,'Achats d\'immeubles destinés à la revente',0,NULL,NULL,1,NULL,NULL),(1071,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','608',1064,'Remises , ristournes et rabais obtenus sur achats',0,NULL,NULL,1,NULL,NULL),(1072,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','609',1064,'Variations de stocks',0,NULL,NULL,1,NULL,NULL),(1073,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6090',1072,'De matières premières',0,NULL,NULL,1,NULL,NULL),(1074,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6091',1072,'De fournitures',0,NULL,NULL,1,NULL,NULL),(1075,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6094',1072,'De marchandises',0,NULL,NULL,1,NULL,NULL),(1076,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6095',1072,'d\'immeubles destinés à la vente',0,NULL,NULL,1,NULL,NULL),(1077,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61',1356,'Services et biens divers',0,NULL,NULL,1,NULL,NULL),(1078,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','610',1077,'Loyers et charges locatives',0,NULL,NULL,1,NULL,NULL),(1079,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6100',1078,'Loyers divers',0,NULL,NULL,1,NULL,NULL),(1080,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6101',1078,'Charges locatives (assurances, frais de confort,etc)',0,NULL,NULL,1,NULL,NULL),(1081,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','611',1077,'Entretien et réparation (fournitures et prestations)',0,NULL,NULL,1,NULL,NULL),(1082,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','612',1077,'Fournitures faites à l\'entreprise',0,NULL,NULL,1,NULL,NULL),(1083,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6120',1082,'Eau, gaz, électricité, vapeur',0,NULL,NULL,1,NULL,NULL),(1084,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61200',1083,'Eau',0,NULL,NULL,1,NULL,NULL),(1085,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61201',1083,'Gaz',0,NULL,NULL,1,NULL,NULL),(1086,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61202',1083,'Electricité',0,NULL,NULL,1,NULL,NULL),(1087,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61203',1083,'Vapeur',0,NULL,NULL,1,NULL,NULL),(1088,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6121',1082,'Téléphone, télégrammes, télex, téléfax, frais postaux',0,NULL,NULL,1,NULL,NULL),(1089,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61210',1088,'Téléphone',0,NULL,NULL,1,NULL,NULL),(1090,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61211',1088,'Télégrammes',0,NULL,NULL,1,NULL,NULL),(1091,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61212',1088,'Télex et téléfax',0,NULL,NULL,1,NULL,NULL),(1092,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61213',1088,'Frais postaux',0,NULL,NULL,1,NULL,NULL),(1093,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6122',1082,'Livres, bibliothèque',0,NULL,NULL,1,NULL,NULL),(1094,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6123',1082,'Imprimés et fournitures de bureau (si non comptabilisé au 601)',0,NULL,NULL,1,NULL,NULL),(1095,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','613',1077,'Rétributions de tiers',0,NULL,NULL,1,NULL,NULL),(1096,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6130',1095,'Redevances et royalties',0,NULL,NULL,1,NULL,NULL),(1097,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61300',1096,'Redevances pour brevets, licences, marques et accessoires',0,NULL,NULL,1,NULL,NULL),(1098,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61301',1096,'Autres redevances (procédés de fabrication)',0,NULL,NULL,1,NULL,NULL),(1099,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6131',1095,'Assurances non relatives au personnel',0,NULL,NULL,1,NULL,NULL),(1100,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61310',1099,'Assurance incendie',0,NULL,NULL,1,NULL,NULL),(1101,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61311',1099,'Assurance vol',0,NULL,NULL,1,NULL,NULL),(1102,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61312',1099,'Assurance autos',0,NULL,NULL,1,NULL,NULL),(1103,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61313',1099,'Assurance crédit',0,NULL,NULL,1,NULL,NULL),(1104,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61314',1099,'Assurances frais généraux',0,NULL,NULL,1,NULL,NULL),(1105,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6132',1095,'Divers',0,NULL,NULL,1,NULL,NULL),(1106,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61320',1105,'Commissions aux tiers',0,NULL,NULL,1,NULL,NULL),(1107,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61321',1105,'Honoraires d\'avocats, d\'experts, etc',0,NULL,NULL,1,NULL,NULL),(1108,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61322',1105,'Cotisations aux groupements professionnels',0,NULL,NULL,1,NULL,NULL),(1109,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61323',1105,'Dons, libéralités, etc',0,NULL,NULL,1,NULL,NULL),(1110,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61324',1105,'Frais de contentieux',0,NULL,NULL,1,NULL,NULL),(1111,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61325',1105,'Publications légales',0,NULL,NULL,1,NULL,NULL),(1112,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6133',1095,'Transports et déplacements',0,NULL,NULL,1,NULL,NULL),(1113,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61330',1112,'Transports de personnel',0,NULL,NULL,1,NULL,NULL),(1114,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','61331',1112,'Voyages, déplacements et représentations',0,NULL,NULL,1,NULL,NULL),(1115,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6134',1095,'Personnel intérimaire',0,NULL,NULL,1,NULL,NULL),(1116,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','614',1077,'Annonces, publicité, propagande et documentation',0,NULL,NULL,1,NULL,NULL),(1117,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6140',1116,'Annonces et insertions',0,NULL,NULL,1,NULL,NULL),(1118,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6141',1116,'Catalogues et imprimés',0,NULL,NULL,1,NULL,NULL),(1119,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6142',1116,'Echantillons',0,NULL,NULL,1,NULL,NULL),(1120,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6143',1116,'Foires et expositions',0,NULL,NULL,1,NULL,NULL),(1121,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6144',1116,'Primes',0,NULL,NULL,1,NULL,NULL),(1122,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6145',1116,'Cadeaux à la clientèle',0,NULL,NULL,1,NULL,NULL),(1123,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6146',1116,'Missions et réceptions',0,NULL,NULL,1,NULL,NULL),(1124,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6147',1116,'Documentation',0,NULL,NULL,1,NULL,NULL),(1125,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','615',1077,'Sous-traitants',0,NULL,NULL,1,NULL,NULL),(1126,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6150',1125,'Sous-traitants pour activités propres',0,NULL,NULL,1,NULL,NULL),(1127,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6151',1125,'Sous-traitants d\'associations momentanées (coparticipants)',0,NULL,NULL,1,NULL,NULL),(1128,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6152',1125,'Quote-part bénéficiaire des coparticipants',0,NULL,NULL,1,NULL,NULL),(1129,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','617',1077,'Personnel intérimaire et personnes mises à la disposition de l\'entreprise',0,NULL,NULL,1,NULL,NULL),(1130,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','618',1077,'Rémunérations, primes pour assurances extralégales, pensions de retraite et de survie des administrateurs, gérants et associés actifs qui ne sont pas attribuées en vertu d\'un contrat de travail',0,NULL,NULL,1,NULL,NULL),(1131,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62',1356,'Rémunérations, charges sociales et pensions',0,NULL,NULL,1,NULL,NULL),(1132,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','620',1131,'Rémunérations et avantages sociaux directs',0,NULL,NULL,1,NULL,NULL),(1133,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6200',1132,'Administrateurs ou gérants',0,NULL,NULL,1,NULL,NULL),(1134,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6201',1132,'Personnel de direction',0,NULL,NULL,1,NULL,NULL),(1135,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6202',1132,'Employés',0,NULL,NULL,1,NULL,NULL),(1136,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6203',1132,'Ouvriers',0,NULL,NULL,1,NULL,NULL),(1137,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6204',1132,'Autres membres du personnel',0,NULL,NULL,1,NULL,NULL),(1138,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','621',1131,'Cotisations patronales d\'assurances sociales',0,NULL,NULL,1,NULL,NULL),(1139,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6210',1138,'Sur salaires',0,NULL,NULL,1,NULL,NULL),(1140,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6211',1138,'Sur appointements et commissions',0,NULL,NULL,1,NULL,NULL),(1141,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','622',1131,'Primes patronales pour assurances extralégales',0,NULL,NULL,1,NULL,NULL),(1142,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','623',1131,'Autres frais de personnel',0,NULL,NULL,1,NULL,NULL),(1143,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6230',1142,'Assurances du personnel',0,NULL,NULL,1,NULL,NULL),(1144,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62300',1143,'Assurances loi, responsabilité civile, chemin du travail',0,NULL,NULL,1,NULL,NULL),(1145,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62301',1143,'Assurance salaire garanti',0,NULL,NULL,1,NULL,NULL),(1146,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62302',1143,'Assurances individuelles',0,NULL,NULL,1,NULL,NULL),(1147,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6231',1142,'Charges sociales diverses',0,NULL,NULL,1,NULL,NULL),(1148,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62310',1147,'Jours fériés payés',0,NULL,NULL,1,NULL,NULL),(1149,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62311',1147,'Salaire hebdomadaire garanti',0,NULL,NULL,1,NULL,NULL),(1150,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62312',1147,'Allocations familiales complémentaires',0,NULL,NULL,1,NULL,NULL),(1151,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6232',1142,'Charges sociales des administrateurs, gérants et commissaires',0,NULL,NULL,1,NULL,NULL),(1152,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62320',1151,'Allocations familiales complémentaires pour non salariés',0,NULL,NULL,1,NULL,NULL),(1153,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62321',1151,'Lois sociales pour indépendants',0,NULL,NULL,1,NULL,NULL),(1154,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','62322',1151,'Divers',0,NULL,NULL,1,NULL,NULL),(1155,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','624',1131,'Pensions de retraite et de survie',0,NULL,NULL,1,NULL,NULL),(1156,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6240',1155,'Administrateurs et gérants',0,NULL,NULL,1,NULL,NULL),(1157,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6241',1155,'Personnel',0,NULL,NULL,1,NULL,NULL),(1158,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','625',1131,'Provision pour pécule de vacances',0,NULL,NULL,1,NULL,NULL),(1159,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6250',1158,'Dotations',0,NULL,NULL,1,NULL,NULL),(1160,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6251',1158,'Utilisations et reprises',0,NULL,NULL,1,NULL,NULL),(1161,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','63',1356,'Amortissements, réductions de valeur et provisions pour risques et charges',0,NULL,NULL,1,NULL,NULL),(1162,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','630',1161,'Dotations aux amortissements et aux réductions de valeur sur immobilisations',0,NULL,NULL,1,NULL,NULL),(1163,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6300',1162,'Dotations aux amortissements sur frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(1164,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6301',1162,'Dotations aux amortissements sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1165,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6302',1162,'Dotations aux amortissements sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1166,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6308',1162,'Dotations aux réductions de valeur sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1167,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6309',1162,'Dotations aux réductions de valeur sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1168,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','631',1161,'Réductions de valeur sur stocks',0,NULL,NULL,1,NULL,NULL),(1169,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6310',1168,'Dotations',0,NULL,NULL,1,NULL,NULL),(1170,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6311',1168,'Reprises',0,NULL,NULL,1,NULL,NULL),(1171,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','632',1161,'Réductions de valeur sur commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1172,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6320',1171,'Dotations',0,NULL,NULL,1,NULL,NULL),(1173,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6321',1171,'Reprises',0,NULL,NULL,1,NULL,NULL),(1174,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','633',1161,'Réductions de valeur sur créances commerciales à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1175,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6330',1174,'Dotations',0,NULL,NULL,1,NULL,NULL),(1176,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6331',1174,'Reprises',0,NULL,NULL,1,NULL,NULL),(1177,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','634',1161,'Réductions de valeur sur créances commerciales à un an au plus',0,NULL,NULL,1,NULL,NULL),(1178,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6340',1177,'Dotations',0,NULL,NULL,1,NULL,NULL),(1179,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6341',1177,'Reprises',0,NULL,NULL,1,NULL,NULL),(1180,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','635',1161,'Provisions pour pensions et obligations similaires',0,NULL,NULL,1,NULL,NULL),(1181,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6350',1180,'Dotations',0,NULL,NULL,1,NULL,NULL),(1182,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6351',1180,'Utilisations et reprises',0,NULL,NULL,1,NULL,NULL),(1183,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','636',11613,'Provisions pour grosses réparations et gros entretiens',0,NULL,NULL,1,NULL,NULL),(1184,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6360',1183,'Dotations',0,NULL,NULL,1,NULL,NULL),(1185,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6361',1183,'Utilisations et reprises',0,NULL,NULL,1,NULL,NULL),(1186,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','637',1161,'Provisions pour autres risques et charges',0,NULL,NULL,1,NULL,NULL),(1187,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6370',1186,'Dotations',0,NULL,NULL,1,NULL,NULL),(1188,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6371',1186,'Utilisations et reprises',0,NULL,NULL,1,NULL,NULL),(1189,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64',1356,'Autres charges d\'exploitation',0,NULL,NULL,1,NULL,NULL),(1190,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','640',1189,'Charges fiscales d\'exploitation',0,NULL,NULL,1,NULL,NULL),(1191,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6400',1190,'Taxes et impôts directs',0,NULL,NULL,1,NULL,NULL),(1192,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64000',1191,'Taxes sur autos et camions',0,NULL,NULL,1,NULL,NULL),(1193,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6401',1190,'Taxes et impôts indirects',0,NULL,NULL,1,NULL,NULL),(1194,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64010',1193,'Timbres fiscaux pris en charge par la firme',0,NULL,NULL,1,NULL,NULL),(1195,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64011',1193,'Droits d\'enregistrement',0,NULL,NULL,1,NULL,NULL),(1196,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64012',1193,'T.V.A. non déductible',0,NULL,NULL,1,NULL,NULL),(1197,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6402',1190,'Impôts provinciaux et communaux',0,NULL,NULL,1,NULL,NULL),(1198,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64020',1197,'Taxe sur la force motrice',0,NULL,NULL,1,NULL,NULL),(1199,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','64021',1197,'Taxe sur le personnel occupé',0,NULL,NULL,1,NULL,NULL),(1200,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6403',1190,'Taxes diverses',0,NULL,NULL,1,NULL,NULL),(1201,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','641',1189,'Moins-values sur réalisations courantes d\'immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1202,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','642',1189,'Moins-values sur réalisations de créances commerciales',0,NULL,NULL,1,NULL,NULL),(1203,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','643',1189,'à 648 Charges d\'exploitations diverses',0,NULL,NULL,1,NULL,NULL),(1204,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','649',1189,'Charges d\'exploitation portées à l\'actif au titre de restructuration',0,NULL,NULL,1,NULL,NULL),(1205,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','65',1356,'Charges financières',0,NULL,NULL,1,NULL,NULL),(1206,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','650',1205,'Charges des dettes',0,NULL,NULL,1,NULL,NULL),(1207,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6500',1206,'Intérêts, commissions et frais afférents aux dettes',0,NULL,NULL,1,NULL,NULL),(1208,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6501',1206,'Amortissements des agios et frais d\'émission d\'emprunts',0,NULL,NULL,1,NULL,NULL),(1209,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6502',1206,'Autres charges de dettes',0,NULL,NULL,1,NULL,NULL),(1210,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6503',1206,'Intérêts intercalaires portés à l\'actif',0,NULL,NULL,1,NULL,NULL),(1211,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','651',1205,'Réductions de valeur sur actifs circulants',0,NULL,NULL,1,NULL,NULL),(1212,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6510',1211,'Dotations',0,NULL,NULL,1,NULL,NULL),(1213,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6511',1211,'Reprises',0,NULL,NULL,1,NULL,NULL),(1214,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','652',1205,'Moins-values sur réalisation d\'actifs circulants',0,NULL,NULL,1,NULL,NULL),(1215,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','653',1205,'Charges d\'escompte de créances',0,NULL,NULL,1,NULL,NULL),(1216,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','654',1205,'Différences de change',0,NULL,NULL,1,NULL,NULL),(1217,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','655',1205,'Ecarts de conversion des devises',0,NULL,NULL,1,NULL,NULL),(1218,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','656',1205,'Frais de banques, de chèques postaux',0,NULL,NULL,1,NULL,NULL),(1219,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','657',1205,'Commissions sur ouvertures de crédit, cautions et avals',0,NULL,NULL,1,NULL,NULL),(1220,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','658',1205,'Frais de vente des titres',0,NULL,NULL,1,NULL,NULL),(1221,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','66',1356,'Charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(1222,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','660',1221,'Amortissements et réductions de valeur exceptionnels',0,NULL,NULL,1,NULL,NULL),(1223,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6600',1222,'Sur frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(1224,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6601',1222,'Sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1225,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6602',1222,'Sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1226,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','661',1221,'Réductions de valeur sur immobilisations financières',0,NULL,NULL,1,NULL,NULL),(1227,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','662',1221,'Provisions pour risques et charges exceptionnels',0,NULL,NULL,1,NULL,NULL),(1228,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','663',1221,'Moins-values sur réalisation d\'actifs immobilisés',0,NULL,NULL,1,NULL,NULL),(1229,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6630',1228,'Sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1230,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6631',1228,'Sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1231,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6632',1228,'Sur immobilisations détenues en location-financement et droits similaires',0,NULL,NULL,1,NULL,NULL),(1232,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6633',1228,'Sur immobilisations financières',0,NULL,NULL,1,NULL,NULL),(1233,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6634',1228,'Sur immeubles acquis ou construits en vue de la revente',0,NULL,NULL,1,NULL,NULL),(1234,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','664',1221,'à 668 Autres charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(1236,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','665',1221,'Différence de charge',0,NULL,NULL,1,NULL,NULL),(1237,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','669',1221,'Charges exceptionnelles transférées à l\'actif en frais de restructuration',0,NULL,NULL,1,NULL,NULL),(1238,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','67',1356,'Impôts sur le résultat',0,NULL,NULL,1,NULL,NULL),(1239,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','670',1238,'Impôts belges sur le résultat de l\'exercice',0,NULL,NULL,1,NULL,NULL),(1240,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6700',1239,'Impôts et précomptes dus ou versés',0,NULL,NULL,1,NULL,NULL),(1241,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6701',1239,'Excédent de versements d\'impôts et précomptes porté à l\'actif',0,NULL,NULL,1,NULL,NULL),(1242,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6702',1239,'Charges fiscales estimées',0,NULL,NULL,1,NULL,NULL),(1243,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','671',1238,'Impôts belges sur le résultat d\'exercices antérieurs',0,NULL,NULL,1,NULL,NULL),(1244,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6710',1243,'Suppléments d\'impôts dus ou versés',0,NULL,NULL,1,NULL,NULL),(1245,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6711',1243,'Suppléments d\'impôts estimés',0,NULL,NULL,1,NULL,NULL),(1246,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6712',1243,'Provisions fiscales constituées',0,NULL,NULL,1,NULL,NULL),(1247,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','672',1238,'Impôts étrangers sur le résultat de l\'exercice',0,NULL,NULL,1,NULL,NULL),(1248,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','673',1238,'Impôts étrangers sur le résultat d\'exercices antérieurs',0,NULL,NULL,1,NULL,NULL),(1249,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','68',1356,'Transferts aux réserves immunisées',0,NULL,NULL,1,NULL,NULL),(1250,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','69',1356,'Affectation des résultats',0,NULL,NULL,1,NULL,NULL),(1251,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','690',1250,'Perte reportée de l\'exercice précédent',0,NULL,NULL,1,NULL,NULL),(1252,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','691',1250,'Dotation à la réserve légale',0,NULL,NULL,1,NULL,NULL),(1253,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','692',1250,'Dotation aux autres réserves',0,NULL,NULL,1,NULL,NULL),(1254,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','693',1250,'Bénéfice à reporter',0,NULL,NULL,1,NULL,NULL),(1255,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','694',1250,'Rémunération du capital',0,NULL,NULL,1,NULL,NULL),(1256,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','695',1250,'Administrateurs ou gérants',0,NULL,NULL,1,NULL,NULL),(1257,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','696',1250,'Autres allocataires',0,NULL,NULL,1,NULL,NULL),(1258,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','70',1357,'Chiffre d\'affaires',0,NULL,NULL,1,NULL,NULL),(1260,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','700',1258,'Ventes de marchandises',0,NULL,NULL,1,NULL,NULL),(1261,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7000',1260,'Ventes en Belgique',0,NULL,NULL,1,NULL,NULL),(1262,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7001',1260,'Ventes dans les pays membres de la C.E.E.',0,NULL,NULL,1,NULL,NULL),(1263,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7002',1260,'Ventes à l\'exportation',0,NULL,NULL,1,NULL,NULL),(1264,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','701',1258,'Ventes de produits finis',0,NULL,NULL,1,NULL,NULL),(1265,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7010',1264,'Ventes en Belgique',0,NULL,NULL,1,NULL,NULL),(1266,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7011',1264,'Ventes dans les pays membres de la C.E.E.',0,NULL,NULL,1,NULL,NULL),(1267,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7012',1264,'Ventes à l\'exportation',0,NULL,NULL,1,NULL,NULL),(1268,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','702',1258,'Ventes de déchets et rebuts',0,NULL,NULL,1,NULL,NULL),(1269,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7020',1268,'Ventes en Belgique',0,NULL,NULL,1,NULL,NULL),(1270,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7021',1268,'Ventes dans les pays membres de la C.E.E.',0,NULL,NULL,1,NULL,NULL),(1271,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7022',1268,'Ventes à l\'exportation',0,NULL,NULL,1,NULL,NULL),(1272,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','703',1258,'Ventes d\'emballages récupérables',0,NULL,NULL,1,NULL,NULL),(1273,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','704',1258,'Facturations des travaux en cours (associations momentanées)',0,NULL,NULL,1,NULL,NULL),(1274,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','705',1258,'Prestations de services',0,NULL,NULL,1,NULL,NULL),(1275,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7050',1274,'Prestations de services en Belgique',0,NULL,NULL,1,NULL,NULL),(1276,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7051',1274,'Prestations de services dans les pays membres de la C.E.E.',0,NULL,NULL,1,NULL,NULL),(1277,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7052',1274,'Prestations de services en vue de l\'exportation',0,NULL,NULL,1,NULL,NULL),(1278,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','706',1258,'Pénalités et dédits obtenus par l\'entreprise',0,NULL,NULL,1,NULL,NULL),(1279,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','708',1258,'Remises, ristournes et rabais accordés',0,NULL,NULL,1,NULL,NULL),(1280,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7080',1279,'Sur ventes de marchandises',0,NULL,NULL,1,NULL,NULL),(1281,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7081',1279,'Sur ventes de produits finis',0,NULL,NULL,1,NULL,NULL),(1282,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7082',1279,'Sur ventes de déchets et rebuts',0,NULL,NULL,1,NULL,NULL),(1283,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7083',1279,'Sur prestations de services',0,NULL,NULL,1,NULL,NULL),(1284,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7084',1279,'Mali sur travaux facturés aux associations momentanées',0,NULL,NULL,1,NULL,NULL),(1285,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','71',1357,'Variation des stocks et des commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1286,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','712',1285,'Des en cours de fabrication',0,NULL,NULL,1,NULL,NULL),(1287,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','713',1285,'Des produits finis',0,NULL,NULL,1,NULL,NULL),(1288,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','715',1285,'Des immeubles construits destinés à la vente',0,NULL,NULL,1,NULL,NULL),(1289,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','717',1285,'Des commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1290,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7170',1289,'Commandes en cours - Coût de revient',0,NULL,NULL,1,NULL,NULL),(1291,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','71700',1290,'Coût des commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1292,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','71701',1290,'Coût des travaux en cours des associations momentanées',0,NULL,NULL,1,NULL,NULL),(1293,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7171',1289,'Bénéfices portés en compte sur commandes en cours',0,NULL,NULL,1,NULL,NULL),(1294,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','71710',1293,'Sur commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1295,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','71711',1293,'Sur travaux en cours des associations momentanées',0,NULL,NULL,1,NULL,NULL),(1296,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','72',1357,'Production immobilisée',0,NULL,NULL,1,NULL,NULL),(1297,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','720',1296,'En frais d\'établissement',0,NULL,NULL,1,NULL,NULL),(1298,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','721',1296,'En immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1299,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','722',1296,'En immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1300,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','723',1296,'En immobilisations en cours',0,NULL,NULL,1,NULL,NULL),(1301,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','74',1357,'Autres produits d\'exploitation',0,NULL,NULL,1,NULL,NULL),(1302,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','740',1301,'Subsides d\'exploitation et montants compensatoires',0,NULL,NULL,1,NULL,NULL),(1303,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','741',1301,'Plus-values sur réalisations courantes d\'immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1304,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','742',1301,'Plus-values sur réalisations de créances commerciales',0,NULL,NULL,1,NULL,NULL),(1305,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','743',1301,'à 749 Produits d\'exploitation divers',0,NULL,NULL,1,NULL,NULL),(1307,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','744',1301,'Commissions et courtages',0,NULL,NULL,1,NULL,NULL),(1308,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','745',1301,'Redevances pour brevets et licences',0,NULL,NULL,1,NULL,NULL),(1309,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','746',1301,'Prestations de services (transports, études, etc)',0,NULL,NULL,1,NULL,NULL),(1310,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','747',1301,'Revenus des immeubles affectés aux activités non professionnelles',0,NULL,NULL,1,NULL,NULL),(1311,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','748',1301,'Locations diverses à caractère professionnel',0,NULL,NULL,1,NULL,NULL),(1312,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','749',1301,'Produits divers',0,NULL,NULL,1,NULL,NULL),(1313,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7490',1312,'Bonis sur reprises d\'emballages consignés',0,NULL,NULL,1,NULL,NULL),(1314,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7491',1312,'Bonis sur travaux en associations momentanées',0,NULL,NULL,1,NULL,NULL),(1315,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','75',1357,'Produits financiers',0,NULL,NULL,1,NULL,NULL),(1316,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','750',1315,'Produits des immobilisations financières',0,NULL,NULL,1,NULL,NULL),(1317,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7500',1316,'Revenus des actions',0,NULL,NULL,1,NULL,NULL),(1318,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7501',1316,'Revenus des obligations',0,NULL,NULL,1,NULL,NULL),(1319,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7502',1316,'Revenus des créances à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1320,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','751',1315,'Produits des actifs circulants',0,NULL,NULL,1,NULL,NULL),(1321,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','752',1315,'Plus-values sur réalisations d\'actifs circulants',0,NULL,NULL,1,NULL,NULL),(1322,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','753',1315,'Subsides en capital et en intérêts',0,NULL,NULL,1,NULL,NULL),(1323,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','754',1315,'Différences de change',0,NULL,NULL,1,NULL,NULL),(1324,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','755',1315,'Ecarts de conversion des devises',0,NULL,NULL,1,NULL,NULL),(1325,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','756',1315,'à 759 Produits financiers divers',0,NULL,NULL,1,NULL,NULL),(1327,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','757',1315,'Escomptes obtenus',0,NULL,NULL,1,NULL,NULL),(1328,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','76',1357,'Produits exceptionnels',0,NULL,NULL,1,NULL,NULL),(1329,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','760',1328,'Reprises d\'amortissements et de réductions de valeur',0,NULL,NULL,1,NULL,NULL),(1330,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7600',1329,'Sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1331,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7601',1329,'Sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1332,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','761',1328,'Reprises de réductions de valeur sur immobilisations financières',0,NULL,NULL,1,NULL,NULL),(1333,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','762',1328,'Reprises de provisions pour risques et charges exceptionnelles',0,NULL,NULL,1,NULL,NULL),(1334,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','763',1328,'Plus-values sur réalisation d\'actifs immobilisés',0,NULL,NULL,1,NULL,NULL),(1335,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7630',1334,'Sur immobilisations incorporelles',0,NULL,NULL,1,NULL,NULL),(1336,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7631',1334,'Sur immobilisations corporelles',0,NULL,NULL,1,NULL,NULL),(1337,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7632',1334,'Sur immobilisations financières',0,NULL,NULL,1,NULL,NULL),(1338,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','764',1328,'Autres produits exceptionnels',0,NULL,NULL,1,NULL,NULL),(1339,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','77',1357,'Régularisations d\'impôts et reprises de provisions fiscales',0,NULL,NULL,1,NULL,NULL),(1340,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','771',1339,'Impôts belges sur le résultat',0,NULL,NULL,1,NULL,NULL),(1341,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7710',1340,'Régularisations d\'impôts dus ou versés',0,NULL,NULL,1,NULL,NULL),(1342,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7711',1340,'Régularisations d\'impôts estimés',0,NULL,NULL,1,NULL,NULL),(1343,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7712',1340,'Reprises de provisions fiscales',0,NULL,NULL,1,NULL,NULL),(1344,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','773',1339,'Impôts étrangers sur le résultat',0,NULL,NULL,1,NULL,NULL),(1345,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','79',1357,'Affectation aux résultats',0,NULL,NULL,1,NULL,NULL),(1346,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','790',1345,'Bénéfice reporté de l\'exercice précédent',0,NULL,NULL,1,NULL,NULL),(1347,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','791',1345,'Prélèvement sur le capital et les primes d\'émission',0,NULL,NULL,1,NULL,NULL),(1348,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','792',1345,'Prélèvement sur les réserves',0,NULL,NULL,1,NULL,NULL),(1349,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','793',1345,'Perte à reporter',0,NULL,NULL,1,NULL,NULL),(1350,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','794',1345,'Intervention d\'associés (ou du propriétaire) dans la perte',0,NULL,NULL,1,NULL,NULL),(1351,1,NULL,'2016-07-30 11:12:54','PCMN-BASE','CAPIT','XXXXXX','1',0,'Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1352,1,NULL,'2016-07-30 11:12:54','PCMN-BASE','IMMO','XXXXXX','2',0,'Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1353,1,NULL,'2016-07-30 11:12:54','PCMN-BASE','STOCK','XXXXXX','3',0,'Stock et commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1354,1,NULL,'2016-07-30 11:12:54','PCMN-BASE','TIERS','XXXXXX','4',0,'Créances et dettes à un an au plus',0,NULL,NULL,1,NULL,NULL),(1355,1,NULL,'2016-07-30 11:12:54','PCMN-BASE','FINAN','XXXXXX','5',0,'Placement de trésorerie et de valeurs disponibles',0,NULL,NULL,1,NULL,NULL),(1356,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','EXPENSE','XXXXXX','6',0,'Charges',0,NULL,NULL,1,NULL,NULL),(1357,1,NULL,'2018-01-19 11:17:49','PCMN-BASE','INCOME','XXXXXX','7',0,'Produits',0,NULL,NULL,1,NULL,NULL),(1401,1,NULL,'2016-07-30 11:12:54','PCG99-ABREGE','CAPIT','XXXXXX','1',0,'Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1402,1,NULL,'2016-07-30 11:12:54','PCG99-ABREGE','IMMO','XXXXXX','2',0,'Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1403,1,NULL,'2016-07-30 11:12:54','PCG99-ABREGE','STOCK','XXXXXX','3',0,'Stock et commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1404,1,NULL,'2016-07-30 11:12:54','PCG99-ABREGE','TIERS','XXXXXX','4',0,'Créances et dettes à un an au plus',0,NULL,NULL,1,NULL,NULL),(1405,1,NULL,'2016-07-30 11:12:54','PCG99-ABREGE','FINAN','XXXXXX','5',0,'Placement de trésorerie et de valeurs disponibles',0,NULL,NULL,1,NULL,NULL),(1406,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','EXPENSE','XXXXXX','6',0,'Charges',0,NULL,NULL,1,NULL,NULL),(1407,1,NULL,'2018-01-19 11:17:49','PCG99-ABREGE','INCOME','XXXXXX','7',0,'Produits',0,NULL,NULL,1,NULL,NULL),(1501,1,NULL,'2017-02-20 10:46:43','PCG99-BASE','CAPIT','XXXXXX','1',0,'Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1502,1,NULL,'2016-07-30 11:12:54','PCG99-BASE','IMMO','XXXXXX','2',0,'Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',0,NULL,NULL,1,NULL,NULL),(1503,1,NULL,'2016-07-30 11:12:54','PCG99-BASE','STOCK','XXXXXX','3',0,'Stock et commandes en cours d\'exécution',0,NULL,NULL,1,NULL,NULL),(1504,1,NULL,'2016-07-30 11:12:54','PCG99-BASE','TIERS','XXXXXX','4',0,'Créances et dettes à un an au plus',0,NULL,NULL,1,NULL,NULL),(1505,1,NULL,'2016-07-30 11:12:54','PCG99-BASE','FINAN','XXXXXX','5',0,'Placement de trésorerie et de valeurs disponibles',0,NULL,NULL,1,NULL,NULL),(1506,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','EXPENSE','XXXXXX','6',0,'Charges',0,NULL,NULL,1,NULL,NULL),(1507,1,NULL,'2018-01-19 11:17:49','PCG99-BASE','INCOME','XXXXXX','7',0,'Produits',0,NULL,NULL,1,NULL,NULL),(4001,1,NULL,'2016-07-30 11:12:54','PCG08-PYME','FINANCIACION','XXXXXX','1',0,'Financiación básica',0,NULL,NULL,1,NULL,NULL),(4002,1,NULL,'2016-07-30 11:12:54','PCG08-PYME','ACTIVO','XXXXXX','2',0,'Activo no corriente',0,NULL,NULL,1,NULL,NULL),(4003,1,NULL,'2016-07-30 11:12:54','PCG08-PYME','EXISTENCIAS','XXXXXX','3',0,'Existencias',0,NULL,NULL,1,NULL,NULL),(4004,1,NULL,'2016-07-30 11:12:54','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4',0,'Acreedores y deudores por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4005,1,NULL,'2016-07-30 11:12:54','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5',0,'Cuentas financieras',0,NULL,NULL,1,NULL,NULL),(4006,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6',0,'Compras y gastos',0,NULL,NULL,1,NULL,NULL),(4007,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7',0,'Ventas e ingresos',0,NULL,NULL,1,NULL,NULL),(4008,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','10',4001,'CAPITAL',0,NULL,NULL,1,NULL,NULL),(4009,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','100',4008,'Capital social',0,NULL,NULL,1,NULL,NULL),(4010,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','101',4008,'Fondo social',0,NULL,NULL,1,NULL,NULL),(4011,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','CAPITAL','102',4008,'Capital',0,NULL,NULL,1,NULL,NULL),(4012,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','103',4008,'Socios por desembolsos no exigidos',0,NULL,NULL,1,NULL,NULL),(4013,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1030',4012,'Socios por desembolsos no exigidos capital social',0,NULL,NULL,1,NULL,NULL),(4014,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1034',4012,'Socios por desembolsos no exigidos capital pendiente de inscripción',0,NULL,NULL,1,NULL,NULL),(4015,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','104',4008,'Socios por aportaciones no dineradas pendientes',0,NULL,NULL,1,NULL,NULL),(4016,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1040',4015,'Socios por aportaciones no dineradas pendientes capital social',0,NULL,NULL,1,NULL,NULL),(4017,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1044',4015,'Socios por aportaciones no dineradas pendientes capital pendiente de inscripción',0,NULL,NULL,1,NULL,NULL),(4018,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','108',4008,'Acciones o participaciones propias en situaciones especiales',0,NULL,NULL,1,NULL,NULL),(4019,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','109',4008,'Acciones o participaciones propias para reducción de capital',0,NULL,NULL,1,NULL,NULL),(4020,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','11',4001,'Reservas y otros instrumentos de patrimonio',0,NULL,NULL,1,NULL,NULL),(4021,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','110',4020,'Prima de emisión o asunción',0,NULL,NULL,1,NULL,NULL),(4022,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','111',4020,'Otros instrumentos de patrimonio neto',0,NULL,NULL,1,NULL,NULL),(4023,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1110',4022,'Patrimonio neto por emisión de instrumentos financieros compuestos',0,NULL,NULL,1,NULL,NULL),(4024,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1111',4022,'Resto de instrumentos de patrimoio neto',0,NULL,NULL,1,NULL,NULL),(4025,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','112',4020,'Reserva legal',0,NULL,NULL,1,NULL,NULL),(4026,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','113',4020,'Reservas voluntarias',0,NULL,NULL,1,NULL,NULL),(4027,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','114',4020,'Reservas especiales',0,NULL,NULL,1,NULL,NULL),(4028,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1140',4027,'Reservas para acciones o participaciones de la sociedad dominante',0,NULL,NULL,1,NULL,NULL),(4029,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1141',4027,'Reservas estatutarias',0,NULL,NULL,1,NULL,NULL),(4030,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1142',4027,'Reservas por capital amortizado',0,NULL,NULL,1,NULL,NULL),(4031,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1143',4027,'Reservas por fondo de comercio',0,NULL,NULL,1,NULL,NULL),(4032,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1144',4028,'Reservas por acciones propias aceptadas en garantía',0,NULL,NULL,1,NULL,NULL),(4033,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','115',4020,'Reservas por pérdidas y ganancias actuariales y otros ajustes',0,NULL,NULL,1,NULL,NULL),(4034,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','118',4020,'Aportaciones de socios o propietarios',0,NULL,NULL,1,NULL,NULL),(4035,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','119',4020,'Diferencias por ajuste del capital a euros',0,NULL,NULL,1,NULL,NULL),(4036,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','12',4001,'Resultados pendientes de aplicación',0,NULL,NULL,1,NULL,NULL),(4037,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','120',4036,'Remanente',0,NULL,NULL,1,NULL,NULL),(4038,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','121',4036,'Resultados negativos de ejercicios anteriores',0,NULL,NULL,1,NULL,NULL),(4039,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','129',4036,'Resultado del ejercicio',0,NULL,NULL,1,NULL,NULL),(4040,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','13',4001,'Subvenciones, donaciones y ajustes por cambio de valor',0,NULL,NULL,1,NULL,NULL),(4041,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','130',4040,'Subvenciones oficiales de capital',0,NULL,NULL,1,NULL,NULL),(4042,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','131',4040,'Donaciones y legados de capital',0,NULL,NULL,1,NULL,NULL),(4043,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','132',4040,'Otras subvenciones, donaciones y legados',0,NULL,NULL,1,NULL,NULL),(4044,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','133',4040,'Ajustes por valoración en activos financieros disponibles para la venta',0,NULL,NULL,1,NULL,NULL),(4045,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','134',4040,'Operaciones de cobertura',0,NULL,NULL,1,NULL,NULL),(4046,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1340',4045,'Cobertura de flujos de efectivo',0,NULL,NULL,1,NULL,NULL),(4047,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1341',4045,'Cobertura de una inversión neta en un negocio extranjero',0,NULL,NULL,1,NULL,NULL),(4048,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','135',4040,'Diferencias de conversión',0,NULL,NULL,1,NULL,NULL),(4049,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','136',4040,'Ajustes por valoración en activos no corrientes y grupos enajenables de elementos mantenidos para la venta',0,NULL,NULL,1,NULL,NULL),(4050,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','137',4040,'Ingresos fiscales a distribuir en varios ejercicios',0,NULL,NULL,1,NULL,NULL),(4051,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1370',4050,'Ingresos fiscales por diferencias permanentes a distribuir en varios ejercicios',0,NULL,NULL,1,NULL,NULL),(4052,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1371',4050,'Ingresos fiscales por deducciones y bonificaciones a distribuir en varios ejercicios',0,NULL,NULL,1,NULL,NULL),(4053,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','14',4001,'Provisiones',0,NULL,NULL,1,NULL,NULL),(4054,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','141',4053,'Provisión para impuestos',0,NULL,NULL,1,NULL,NULL),(4055,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','142',4053,'Provisión para otras responsabilidades',0,NULL,NULL,1,NULL,NULL),(4056,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','143',4053,'Provisión por desmantelamiento, retiro o rehabilitación del inmovilizado',0,NULL,NULL,1,NULL,NULL),(4057,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','145',4053,'Provisión para actuaciones medioambientales',0,NULL,NULL,1,NULL,NULL),(4058,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','15',4001,'Deudas a largo plazo con características especiales',0,NULL,NULL,1,NULL,NULL),(4059,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','150',4058,'Acciones o participaciones a largo plazo consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4060,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','153',4058,'Desembolsos no exigidos por acciones o participaciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4061,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1533',4060,'Desembolsos no exigidos empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4062,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1534',4060,'Desembolsos no exigidos empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4063,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1535',4060,'Desembolsos no exigidos otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4064,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1536',4060,'Otros desembolsos no exigidos',0,NULL,NULL,1,NULL,NULL),(4065,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','154',4058,'Aportaciones no dinerarias pendientes por acciones o participaciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4066,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1543',4065,'Aportaciones no dinerarias pendientes empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4067,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1544',4065,'Aportaciones no dinerarias pendientes empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4068,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1545',4065,'Aportaciones no dinerarias pendientes otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4069,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1546',4065,'Otras aportaciones no dinerarias pendientes',0,NULL,NULL,1,NULL,NULL),(4070,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','16',4001,'Deudas a largo plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4071,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','160',4070,'Deudas a largo plazo con entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4072,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1603',4071,'Deudas a largo plazo con entidades de crédito empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4073,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1604',4071,'Deudas a largo plazo con entidades de crédito empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4074,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1605',4071,'Deudas a largo plazo con otras entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4075,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','161',4070,'Proveedores de inmovilizado a largo plazo partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4076,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1613',4075,'Proveedores de inmovilizado a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4077,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1614',4075,'Proveedores de inmovilizado a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4078,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1615',4075,'Proveedores de inmovilizado a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4079,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','162',4070,'Acreedores por arrendamiento financiero a largo plazo partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4080,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1623',4079,'Acreedores por arrendamiento financiero a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4081,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1624',4080,'Acreedores por arrendamiento financiero a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4082,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1625',4080,'Acreedores por arrendamiento financiero a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4083,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','163',4070,'Otras deudas a largo plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4084,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1633',4083,'Otras deudas a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4085,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1634',4083,'Otras deudas a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4086,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','1635',4083,'Otras deudas a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4087,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','17',4001,'Deudas a largo plazo por préstamos recibidos empresitos y otros conceptos',0,NULL,NULL,1,NULL,NULL),(4088,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','170',4087,'Deudas a largo plazo con entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4089,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','171',4087,'Deudas a largo plazo',0,NULL,NULL,1,NULL,NULL),(4090,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','172',4087,'Deudas a largo plazo transformables en suvbenciones donaciones y legados',0,NULL,NULL,1,NULL,NULL),(4091,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','173',4087,'Proveedores de inmovilizado a largo plazo',0,NULL,NULL,1,NULL,NULL),(4092,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','174',4087,'Acreedores por arrendamiento financiero a largo plazo',0,NULL,NULL,1,NULL,NULL),(4093,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','175',4087,'Efectos a pagar a largo plazo',0,NULL,NULL,1,NULL,NULL),(4094,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','176',4087,'Pasivos por derivados financieros a largo plazo',0,NULL,NULL,1,NULL,NULL),(4095,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','177',4087,'Obligaciones y bonos',0,NULL,NULL,1,NULL,NULL),(4096,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','179',4087,'Deudas representadas en otros valores negociables',0,NULL,NULL,1,NULL,NULL),(4097,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','18',4001,'Pasivos por fianzas garantias y otros conceptos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4098,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','180',4097,'Fianzas recibidas a largo plazo',0,NULL,NULL,1,NULL,NULL),(4099,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','181',4097,'Anticipos recibidos por ventas o prestaciones de servicios a largo plazo',0,NULL,NULL,1,NULL,NULL),(4100,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','185',4097,'Depositos recibidos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4101,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','19',4001,'Situaciones transitorias de financiación',0,NULL,NULL,1,NULL,NULL),(4102,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','190',4101,'Acciones o participaciones emitidas',0,NULL,NULL,1,NULL,NULL),(4103,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','192',4101,'Suscriptores de acciones',0,NULL,NULL,1,NULL,NULL),(4104,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','194',4101,'Capital emitido pendiente de inscripción',0,NULL,NULL,1,NULL,NULL),(4105,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','195',4101,'Acciones o participaciones emitidas consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4106,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','197',4101,'Suscriptores de acciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4107,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','FINANCIACION','XXXXXX','199',4101,'Acciones o participaciones emitidas consideradas como pasivos financieros pendientes de inscripción',0,NULL,NULL,1,NULL,NULL),(4108,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','20',4002,'Inmovilizaciones intangibles',0,NULL,NULL,1,NULL,NULL),(4109,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','200',4108,'Investigación',0,NULL,NULL,1,NULL,NULL),(4110,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','201',4108,'Desarrollo',0,NULL,NULL,1,NULL,NULL),(4111,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','202',4108,'Concesiones administrativas',0,NULL,NULL,1,NULL,NULL),(4112,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','203',4108,'Propiedad industrial',0,NULL,NULL,1,NULL,NULL),(4113,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','205',4108,'Derechos de transpaso',0,NULL,NULL,1,NULL,NULL),(4114,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','206',4108,'Aplicaciones informáticas',0,NULL,NULL,1,NULL,NULL),(4115,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','209',4108,'Anticipos para inmovilizaciones intangibles',0,NULL,NULL,1,NULL,NULL),(4116,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','21',4002,'Inmovilizaciones materiales',0,NULL,NULL,1,NULL,NULL),(4117,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','210',4116,'Terrenos y bienes naturales',0,NULL,NULL,1,NULL,NULL),(4118,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','211',4116,'Construcciones',0,NULL,NULL,1,NULL,NULL),(4119,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','212',4116,'Instalaciones técnicas',0,NULL,NULL,1,NULL,NULL),(4120,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','213',4116,'Maquinaria',0,NULL,NULL,1,NULL,NULL),(4121,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','214',4116,'Utillaje',0,NULL,NULL,1,NULL,NULL),(4122,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','215',4116,'Otras instalaciones',0,NULL,NULL,1,NULL,NULL),(4123,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','216',4116,'Mobiliario',0,NULL,NULL,1,NULL,NULL),(4124,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','217',4116,'Equipos para procesos de información',0,NULL,NULL,1,NULL,NULL),(4125,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','218',4116,'Elementos de transporte',0,NULL,NULL,1,NULL,NULL),(4126,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','219',4116,'Otro inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4127,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','22',4002,'Inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4128,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','220',4127,'Inversiones en terreons y bienes naturales',0,NULL,NULL,1,NULL,NULL),(4129,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','221',4127,'Inversiones en construcciones',0,NULL,NULL,1,NULL,NULL),(4130,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','23',4002,'Inmovilizaciones materiales en curso',0,NULL,NULL,1,NULL,NULL),(4131,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','230',4130,'Adaptación de terrenos y bienes naturales',0,NULL,NULL,1,NULL,NULL),(4132,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','231',4130,'Construcciones en curso',0,NULL,NULL,1,NULL,NULL),(4133,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','232',4130,'Instalaciones técnicas en montaje',0,NULL,NULL,1,NULL,NULL),(4134,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','233',4130,'Maquinaria en montaje',0,NULL,NULL,1,NULL,NULL),(4135,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','237',4130,'Equipos para procesos de información en montaje',0,NULL,NULL,1,NULL,NULL),(4136,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','239',4130,'Anticipos para inmovilizaciones materiales',0,NULL,NULL,1,NULL,NULL),(4137,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','24',4002,'Inversiones financieras a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4138,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','240',4137,'Participaciones a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4139,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2403',4138,'Participaciones a largo plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4140,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2404',4138,'Participaciones a largo plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4141,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2405',4138,'Participaciones a largo plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4142,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','241',4137,'Valores representativos de deuda a largo plazo de partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4143,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2413',4142,'Valores representativos de deuda a largo plazo de empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4144,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2414',4142,'Valores representativos de deuda a largo plazo de empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4145,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2415',4142,'Valores representativos de deuda a largo plazo de otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4146,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','242',4137,'Créditos a largo plazo a partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4147,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2423',4146,'Créditos a largo plazo a empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4148,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2424',4146,'Créditos a largo plazo a empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4149,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2425',4146,'Créditos a largo plazo a otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4150,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','249',4137,'Desembolsos pendientes sobre participaciones a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4151,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2493',4150,'Desembolsos pendientes sobre participaciones a largo plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4152,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2494',4150,'Desembolsos pendientes sobre participaciones a largo plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4153,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2495',4150,'Desembolsos pendientes sobre participaciones a largo plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4154,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','25',4002,'Otras inversiones financieras a largo plazo',0,NULL,NULL,1,NULL,NULL),(4155,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','250',4154,'Inversiones financieras a largo plazo en instrumentos de patrimonio',0,NULL,NULL,1,NULL,NULL),(4156,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','251',4154,'Valores representativos de deuda a largo plazo',0,NULL,NULL,1,NULL,NULL),(4157,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','252',4154,'Créditos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4158,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','253',4154,'Créditos a largo plazo por enajenación de inmovilizado',0,NULL,NULL,1,NULL,NULL),(4159,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','254',4154,'Créditos a largo plazo al personal',0,NULL,NULL,1,NULL,NULL),(4160,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','255',4154,'Activos por derivados financieros a largo plazo',0,NULL,NULL,1,NULL,NULL),(4161,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','258',4154,'Imposiciones a largo plazo',0,NULL,NULL,1,NULL,NULL),(4162,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','259',4154,'Desembolsos pendientes sobre participaciones en el patrimonio neto a largo plazo',0,NULL,NULL,1,NULL,NULL),(4163,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','26',4002,'Fianzas y depósitos constituidos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4164,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','260',4163,'Fianzas constituidas a largo plazo',0,NULL,NULL,1,NULL,NULL),(4165,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','261',4163,'Depósitos constituidos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4166,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','28',4002,'Amortización acumulada del inmovilizado',0,NULL,NULL,1,NULL,NULL),(4167,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','280',4166,'Amortización acumulado del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4168,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2800',4167,'Amortización acumulada de investigación',0,NULL,NULL,1,NULL,NULL),(4169,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2801',4167,'Amortización acumulada de desarrollo',0,NULL,NULL,1,NULL,NULL),(4170,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2802',4167,'Amortización acumulada de concesiones administrativas',0,NULL,NULL,1,NULL,NULL),(4171,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2803',4167,'Amortización acumulada de propiedad industrial',0,NULL,NULL,1,NULL,NULL),(4172,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2805',4167,'Amortización acumulada de derechos de transpaso',0,NULL,NULL,1,NULL,NULL),(4173,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2806',4167,'Amortización acumulada de aplicaciones informáticas',0,NULL,NULL,1,NULL,NULL),(4174,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','281',4166,'Amortización acumulado del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4175,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2811',4174,'Amortización acumulada de construcciones',0,NULL,NULL,1,NULL,NULL),(4176,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2812',4174,'Amortización acumulada de instalaciones técnicas',0,NULL,NULL,1,NULL,NULL),(4177,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2813',4174,'Amortización acumulada de maquinaria',0,NULL,NULL,1,NULL,NULL),(4178,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2814',4174,'Amortización acumulada de utillaje',0,NULL,NULL,1,NULL,NULL),(4179,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2815',4174,'Amortización acumulada de otras instalaciones',0,NULL,NULL,1,NULL,NULL),(4180,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2816',4174,'Amortización acumulada de mobiliario',0,NULL,NULL,1,NULL,NULL),(4181,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2817',4174,'Amortización acumulada de equipos para proceso de información',0,NULL,NULL,1,NULL,NULL),(4182,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2818',4174,'Amortización acumulada de elementos de transporte',0,NULL,NULL,1,NULL,NULL),(4183,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2819',4175,'Amortización acumulada de otro inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4184,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','282',4166,'Amortización acumulada de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4185,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','29',4002,'Deterioro de valor de activos no corrientes',0,NULL,NULL,1,NULL,NULL),(4186,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','290',4185,'Deterioro de valor del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4187,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2900',4186,'Deterioro de valor de investigación',0,NULL,NULL,1,NULL,NULL),(4188,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2901',4186,'Deterioro de valor de desarrollo',0,NULL,NULL,1,NULL,NULL),(4189,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2902',4186,'Deterioro de valor de concesiones administrativas',0,NULL,NULL,1,NULL,NULL),(4190,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2903',4186,'Deterioro de valor de propiedad industrial',0,NULL,NULL,1,NULL,NULL),(4191,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2905',4186,'Deterioro de valor de derechos de transpaso',0,NULL,NULL,1,NULL,NULL),(4192,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2906',4186,'Deterioro de valor de aplicaciones informáticas',0,NULL,NULL,1,NULL,NULL),(4193,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','291',4185,'Deterioro de valor del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4194,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2910',4193,'Deterioro de valor de terrenos y bienes naturales',0,NULL,NULL,1,NULL,NULL),(4195,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2911',4193,'Deterioro de valor de construcciones',0,NULL,NULL,1,NULL,NULL),(4196,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2912',4193,'Deterioro de valor de instalaciones técnicas',0,NULL,NULL,1,NULL,NULL),(4197,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2913',4193,'Deterioro de valor de maquinaria',0,NULL,NULL,1,NULL,NULL),(4198,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2914',4193,'Deterioro de valor de utillajes',0,NULL,NULL,1,NULL,NULL),(4199,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2915',4194,'Deterioro de valor de otras instalaciones',0,NULL,NULL,1,NULL,NULL),(4200,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2916',4194,'Deterioro de valor de mobiliario',0,NULL,NULL,1,NULL,NULL),(4201,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2917',4194,'Deterioro de valor de equipos para proceso de información',0,NULL,NULL,1,NULL,NULL),(4202,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2918',4194,'Deterioro de valor de elementos de transporte',0,NULL,NULL,1,NULL,NULL),(4203,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2919',4194,'Deterioro de valor de otro inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4204,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','292',4185,'Deterioro de valor de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4205,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2920',4204,'Deterioro de valor de terrenos y bienes naturales',0,NULL,NULL,1,NULL,NULL),(4206,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2921',4204,'Deterioro de valor de construcciones',0,NULL,NULL,1,NULL,NULL),(4207,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','293',4185,'Deterioro de valor de participaciones a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4208,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2933',4207,'Deterioro de valor de participaciones a largo plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4209,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2934',4207,'Deterioro de valor de sobre participaciones a largo plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4210,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2935',4207,'Deterioro de valor de sobre participaciones a largo plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4211,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','294',4185,'Deterioro de valor de valores representativos de deuda a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4212,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2943',4211,'Deterioro de valor de valores representativos de deuda a largo plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4213,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2944',4211,'Deterioro de valor de valores representativos de deuda a largo plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4214,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2945',4211,'Deterioro de valor de valores representativos de deuda a largo plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4215,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','295',4185,'Deterioro de valor de créditos a largo plazo a partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4216,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2953',4215,'Deterioro de valor de créditos a largo plazo a empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4217,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2954',4215,'Deterioro de valor de créditos a largo plazo a empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4218,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','2955',4215,'Deterioro de valor de créditos a largo plazo a otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4219,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','296',4185,'Deterioro de valor de participaciones en el patrimonio netoa largo plazo',0,NULL,NULL,1,NULL,NULL),(4220,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','297',4185,'Deterioro de valor de valores representativos de deuda a largo plazo',0,NULL,NULL,1,NULL,NULL),(4221,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACTIVO','XXXXXX','298',4185,'Deterioro de valor de créditos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4222,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','30',4003,'Comerciales',0,NULL,NULL,1,NULL,NULL),(4223,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','300',4222,'Mercaderías A',0,NULL,NULL,1,NULL,NULL),(4224,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','301',4222,'Mercaderías B',0,NULL,NULL,1,NULL,NULL),(4225,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','31',4003,'Materias primas',0,NULL,NULL,1,NULL,NULL),(4226,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','310',4225,'Materias primas A',0,NULL,NULL,1,NULL,NULL),(4227,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','311',4225,'Materias primas B',0,NULL,NULL,1,NULL,NULL),(4228,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','32',4003,'Otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4229,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','320',4228,'Elementos y conjuntos incorporables',0,NULL,NULL,1,NULL,NULL),(4230,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','321',4228,'Combustibles',0,NULL,NULL,1,NULL,NULL),(4231,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','322',4228,'Repuestos',0,NULL,NULL,1,NULL,NULL),(4232,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','325',4228,'Materiales diversos',0,NULL,NULL,1,NULL,NULL),(4233,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','326',4228,'Embalajes',0,NULL,NULL,1,NULL,NULL),(4234,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','327',4228,'Envases',0,NULL,NULL,1,NULL,NULL),(4235,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','328',4229,'Material de oficina',0,NULL,NULL,1,NULL,NULL),(4236,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','33',4003,'Productos en curso',0,NULL,NULL,1,NULL,NULL),(4237,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','330',4236,'Productos en curos A',0,NULL,NULL,1,NULL,NULL),(4238,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','331',4236,'Productos en curso B',0,NULL,NULL,1,NULL,NULL),(4239,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','34',4003,'Productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4240,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','340',4239,'Productos semiterminados A',0,NULL,NULL,1,NULL,NULL),(4241,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','341',4239,'Productos semiterminados B',0,NULL,NULL,1,NULL,NULL),(4242,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','35',4003,'Productos terminados',0,NULL,NULL,1,NULL,NULL),(4243,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','350',4242,'Productos terminados A',0,NULL,NULL,1,NULL,NULL),(4244,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','351',4242,'Productos terminados B',0,NULL,NULL,1,NULL,NULL),(4245,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','36',4003,'Subproductos, residuos y materiales recuperados',0,NULL,NULL,1,NULL,NULL),(4246,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','360',4245,'Subproductos A',0,NULL,NULL,1,NULL,NULL),(4247,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','361',4245,'Subproductos B',0,NULL,NULL,1,NULL,NULL),(4248,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','365',4245,'Residuos A',0,NULL,NULL,1,NULL,NULL),(4249,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','366',4245,'Residuos B',0,NULL,NULL,1,NULL,NULL),(4250,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','368',4245,'Materiales recuperados A',0,NULL,NULL,1,NULL,NULL),(4251,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','369',4245,'Materiales recuperados B',0,NULL,NULL,1,NULL,NULL),(4252,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','39',4003,'Deterioro de valor de las existencias',0,NULL,NULL,1,NULL,NULL),(4253,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','390',4252,'Deterioro de valor de las mercaderías',0,NULL,NULL,1,NULL,NULL),(4254,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','391',4252,'Deterioro de valor de las materias primas',0,NULL,NULL,1,NULL,NULL),(4255,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','392',4252,'Deterioro de valor de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4256,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','393',4252,'Deterioro de valor de los productos en curso',0,NULL,NULL,1,NULL,NULL),(4257,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','394',4252,'Deterioro de valor de los productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4258,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','395',4252,'Deterioro de valor de los productos terminados',0,NULL,NULL,1,NULL,NULL),(4259,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','EXISTENCIAS','XXXXXX','396',4252,'Deterioro de valor de los subproductos, residuos y materiales recuperados',0,NULL,NULL,1,NULL,NULL),(4260,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','PROVEEDORES','40',4004,'Proveedores',0,NULL,NULL,1,NULL,NULL),(4261,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','PROVEEDORES','400',4260,'Proveedores',0,NULL,NULL,1,NULL,NULL),(4262,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4000',4261,'Proveedores euros',0,NULL,NULL,1,NULL,NULL),(4263,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4004',4261,'Proveedores moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4264,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4009',4261,'Proveedores facturas pendientes de recibir o formalizar',0,NULL,NULL,1,NULL,NULL),(4265,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','401',4260,'Proveedores efectos comerciales a pagar',0,NULL,NULL,1,NULL,NULL),(4266,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','403',4260,'Proveedores empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4267,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4030',4266,'Proveedores empresas del grupo euros',0,NULL,NULL,1,NULL,NULL),(4268,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4031',4266,'Efectos comerciales a pagar empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4269,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4034',4266,'Proveedores empresas del grupo moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4270,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4036',4266,'Envases y embalajes a devolver a proveedores empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4271,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4039',4266,'Proveedores empresas del grupo facturas pendientes de recibir o de formalizar',0,NULL,NULL,1,NULL,NULL),(4272,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','404',4260,'Proveedores empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4273,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','405',4260,'Proveedores otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4274,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','406',4260,'Envases y embalajes a devolver a proveedores',0,NULL,NULL,1,NULL,NULL),(4275,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','407',4260,'Anticipos a proveedores',0,NULL,NULL,1,NULL,NULL),(4276,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','41',4004,'Acreedores varios',0,NULL,NULL,1,NULL,NULL),(4277,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','410',4276,'Acreedores por prestaciones de servicios',0,NULL,NULL,1,NULL,NULL),(4278,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4100',4277,'Acreedores por prestaciones de servicios euros',0,NULL,NULL,1,NULL,NULL),(4279,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4104',4277,'Acreedores por prestaciones de servicios moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4280,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4109',4277,'Acreedores por prestaciones de servicios facturas pendientes de recibir o formalizar',0,NULL,NULL,1,NULL,NULL),(4281,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','411',4276,'Acreedores efectos comerciales a pagar',0,NULL,NULL,1,NULL,NULL),(4282,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','419',4276,'Acreedores por operaciones en común',0,NULL,NULL,1,NULL,NULL),(4283,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','CLIENTES','43',4004,'Clientes',0,NULL,NULL,1,NULL,NULL),(4284,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','CLIENTES','430',4283,'Clientes',0,NULL,NULL,1,NULL,NULL),(4285,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4300',4284,'Clientes euros',0,NULL,NULL,1,NULL,NULL),(4286,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4304',4284,'Clientes moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4287,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4309',4284,'Clientes facturas pendientes de formalizar',0,NULL,NULL,1,NULL,NULL),(4288,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','431',4283,'Clientes efectos comerciales a cobrar',0,NULL,NULL,1,NULL,NULL),(4289,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4310',4288,'Efectos comerciales en cartera',0,NULL,NULL,1,NULL,NULL),(4290,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4311',4288,'Efectos comerciales descontados',0,NULL,NULL,1,NULL,NULL),(4291,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4312',4288,'Efectos comerciales en gestión de cobro',0,NULL,NULL,1,NULL,NULL),(4292,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4315',4288,'Efectos comerciales impagados',0,NULL,NULL,1,NULL,NULL),(4293,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','432',4283,'Clientes operaciones de factoring',0,NULL,NULL,1,NULL,NULL),(4294,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','433',4283,'Clientes empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4295,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4330',4294,'Clientes empresas del grupo euros',0,NULL,NULL,1,NULL,NULL),(4296,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4331',4294,'Efectos comerciales a cobrar empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4297,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4332',4294,'Clientes empresas del grupo operaciones de factoring',0,NULL,NULL,1,NULL,NULL),(4298,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4334',4294,'Clientes empresas del grupo moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4299,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4336',4294,'Clientes empresas del grupo dudoso cobro',0,NULL,NULL,1,NULL,NULL),(4300,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4337',4294,'Envases y embalajes a devolver a clientes empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4301,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4339',4294,'Clientes empresas del grupo facturas pendientes de formalizar',0,NULL,NULL,1,NULL,NULL),(4302,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','434',4283,'Clientes empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4303,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','435',4283,'Clientes otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4304,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','436',4283,'Clientes de dudoso cobro',0,NULL,NULL,1,NULL,NULL),(4305,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','437',4283,'Envases y embalajes a devolver por clientes',0,NULL,NULL,1,NULL,NULL),(4306,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','438',4283,'Anticipos de clientes',0,NULL,NULL,1,NULL,NULL),(4307,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','44',4004,'Deudores varios',0,NULL,NULL,1,NULL,NULL),(4308,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','440',4307,'Deudores',0,NULL,NULL,1,NULL,NULL),(4309,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4400',4308,'Deudores euros',0,NULL,NULL,1,NULL,NULL),(4310,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4404',4308,'Deudores moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4311,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4409',4308,'Deudores facturas pendientes de formalizar',0,NULL,NULL,1,NULL,NULL),(4312,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','441',4307,'Deudores efectos comerciales a cobrar',0,NULL,NULL,1,NULL,NULL),(4313,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4410',4312,'Deudores efectos comerciales en cartera',0,NULL,NULL,1,NULL,NULL),(4314,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4411',4312,'Deudores efectos comerciales descontados',0,NULL,NULL,1,NULL,NULL),(4315,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4412',4312,'Deudores efectos comerciales en gestión de cobro',0,NULL,NULL,1,NULL,NULL),(4316,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4415',4312,'Deudores efectos comerciales impagados',0,NULL,NULL,1,NULL,NULL),(4317,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','446',4307,'Deudores de dusoso cobro',0,NULL,NULL,1,NULL,NULL),(4318,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','449',4307,'Deudores por operaciones en común',0,NULL,NULL,1,NULL,NULL),(4319,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','46',4004,'Personal',0,NULL,NULL,1,NULL,NULL),(4320,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','460',4319,'Anticipos de renumeraciones',0,NULL,NULL,1,NULL,NULL),(4321,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','465',4319,'Renumeraciones pendientes de pago',0,NULL,NULL,1,NULL,NULL),(4322,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','47',4004,'Administraciones Públicas',0,NULL,NULL,1,NULL,NULL),(4323,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','470',4322,'Hacienda Pública deudora por diversos conceptos',0,NULL,NULL,1,NULL,NULL),(4324,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4700',4323,'Hacienda Pública deudora por IVA',0,NULL,NULL,1,NULL,NULL),(4325,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4708',4323,'Hacienda Pública deudora por subvenciones concedidas',0,NULL,NULL,1,NULL,NULL),(4326,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4709',4323,'Hacienda Pública deudora por devolución de impuestos',0,NULL,NULL,1,NULL,NULL),(4327,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','471',4322,'Organismos de la Seguridad Social deudores',0,NULL,NULL,1,NULL,NULL),(4328,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','472',4322,'Hacienda Pública IVA soportado',0,NULL,NULL,1,NULL,NULL),(4329,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','473',4322,'Hacienda Pública retenciones y pagos a cuenta',0,NULL,NULL,1,NULL,NULL),(4330,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','474',4322,'Activos por impuesto diferido',0,NULL,NULL,1,NULL,NULL),(4331,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4740',4330,'Activos por diferencias temporarias deducibles',0,NULL,NULL,1,NULL,NULL),(4332,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4742',4330,'Derechos por deducciones y bonificaciones pendientes de aplicar',0,NULL,NULL,1,NULL,NULL),(4333,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4745',4330,'Crédito por pérdidasa compensar del ejercicio',0,NULL,NULL,1,NULL,NULL),(4334,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','475',4322,'Hacienda Pública acreedora por conceptos fiscales',0,NULL,NULL,1,NULL,NULL),(4335,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4750',4334,'Hacienda Pública acreedora por IVA',0,NULL,NULL,1,NULL,NULL),(4336,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4751',4334,'Hacienda Pública acreedora por retenciones practicadas',0,NULL,NULL,1,NULL,NULL),(4337,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4752',4334,'Hacienda Pública acreedora por impuesto sobre sociedades',0,NULL,NULL,1,NULL,NULL),(4338,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4758',4334,'Hacienda Pública acreedora por subvenciones a integrar',0,NULL,NULL,1,NULL,NULL),(4339,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','476',4322,'Organismos de la Seguridad Social acreedores',0,NULL,NULL,1,NULL,NULL),(4340,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','477',4322,'Hacienda Pública IVA repercutido',0,NULL,NULL,1,NULL,NULL),(4341,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','479',4322,'Pasivos por diferencias temporarias imponibles',0,NULL,NULL,1,NULL,NULL),(4342,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','48',4004,'Ajustes por periodificación',0,NULL,NULL,1,NULL,NULL),(4343,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','480',4342,'Gastos anticipados',0,NULL,NULL,1,NULL,NULL),(4344,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','485',4342,'Ingresos anticipados',0,NULL,NULL,1,NULL,NULL),(4345,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','49',4004,'Deterioro de valor de créditos comerciales y provisiones a corto plazo',0,NULL,NULL,1,NULL,NULL),(4346,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','490',4345,'Deterioro de valor de créditos por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4347,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','493',4345,'Deterioro de valor de créditos por operaciones comerciales con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4348,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4933',4347,'Deterioro de valor de créditos por operaciones comerciales con empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4349,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4934',4347,'Deterioro de valor de créditos por operaciones comerciales con empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4350,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4935',4347,'Deterioro de valor de créditos por operaciones comerciales con otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4351,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','499',4345,'Provisiones por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4352,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4994',4351,'Provisión para contratos anerosos',0,NULL,NULL,1,NULL,NULL),(4353,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4999',4351,'Provisión para otras operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4354,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','50',4005,'Emprésitos deudas con características especiales y otras emisiones análogas a corto plazo',0,NULL,NULL,1,NULL,NULL),(4355,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','500',4354,'Obligaciones y bonos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4356,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','502',4354,'Acciones o participaciones a corto plazo consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4357,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','505',4354,'Deudas representadas en otros valores negociables a corto plazo',0,NULL,NULL,1,NULL,NULL),(4358,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','506',4354,'Intereses a corto plazo de emprésitos y otras emisiones analógicas',0,NULL,NULL,1,NULL,NULL),(4359,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','507',4354,'Dividendos de acciones o participaciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4360,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','509',4354,'Valores negociables amortizados',0,NULL,NULL,1,NULL,NULL),(4361,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5090',4360,'Obligaciones y bonos amortizados',0,NULL,NULL,1,NULL,NULL),(4362,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5095',4360,'Otros valores negociables amortizados',0,NULL,NULL,1,NULL,NULL),(4363,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','51',4005,'Deudas a corto plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4364,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','510',4363,'Deudas a corto plazo con entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4365,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5103',4364,'Deudas a corto plazo con entidades de crédito empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4366,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5104',4364,'Deudas a corto plazo con entidades de crédito empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4367,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5105',4364,'Deudas a corto plazo con otras entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4368,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','511',4363,'Proveedores de inmovilizado a corto plazo partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4369,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5113',4368,'Proveedores de inmovilizado a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4370,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5114',4368,'Proveedores de inmovilizado a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4371,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5115',4368,'Proveedores de inmovilizado a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4372,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','512',4363,'Acreedores por arrendamiento financiero a corto plazo partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4373,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5123',4372,'Acreedores por arrendamiento financiero a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4374,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5124',4372,'Acreedores por arrendamiento financiero a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4375,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5125',4372,'Acreedores por arrendamiento financiero a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4376,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','513',4363,'Otras deudas a corto plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4377,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5133',4376,'Otras deudas a corto plazo con empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4378,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5134',4376,'Otras deudas a corto plazo con empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4379,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5135',4376,'Otras deudas a corto plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4380,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','514',4363,'Intereses a corto plazo con partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4381,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5143',4380,'Intereses a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4382,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5144',4380,'Intereses a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4383,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5145',4380,'Intereses deudas a corto plazo partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4384,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','52',4005,'Deudas a corto plazo por préstamos recibidos y otros conceptos',0,NULL,NULL,1,NULL,NULL),(4385,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','520',4384,'Deudas a corto plazo con entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4386,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5200',4385,'Préstamos a corto plazo de entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4387,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5201',4385,'Deudas a corto plazo por crédito dispuesto',0,NULL,NULL,1,NULL,NULL),(4388,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5208',4385,'Deudas por efectos descontados',0,NULL,NULL,1,NULL,NULL),(4389,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5209',4385,'Deudas por operaciones de factoring',0,NULL,NULL,1,NULL,NULL),(4390,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','521',4384,'Deudas a corto plazo',0,NULL,NULL,1,NULL,NULL),(4391,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','522',4384,'Deudas a corto plazo transformables en subvenciones donaciones y legados',0,NULL,NULL,1,NULL,NULL),(4392,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','523',4384,'Proveedores de inmovilizado a corto plazo',0,NULL,NULL,1,NULL,NULL),(4393,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','526',4384,'Dividendo activo a pagar',0,NULL,NULL,1,NULL,NULL),(4394,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','527',4384,'Intereses a corto plazo de deudas con entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4395,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','528',4384,'Intereses a corto plazo de deudas',0,NULL,NULL,1,NULL,NULL),(4396,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','529',4384,'Provisiones a corto plazo',0,NULL,NULL,1,NULL,NULL),(4397,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5291',4396,'Provisión a corto plazo para impuestos',0,NULL,NULL,1,NULL,NULL),(4398,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5292',4396,'Provisión a corto plazo para otras responsabilidades',0,NULL,NULL,1,NULL,NULL),(4399,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5293',4396,'Provisión a corto plazo por desmantelamiento retiro o rehabilitación del inmovilizado',0,NULL,NULL,1,NULL,NULL),(4400,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5295',4396,'Provisión a corto plazo para actuaciones medioambientales',0,NULL,NULL,1,NULL,NULL),(4401,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','53',4005,'Inversiones financieras a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4402,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','530',4401,'Participaciones a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4403,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5303',4402,'Participaciones a corto plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4404,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5304',4402,'Participaciones a corto plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4405,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5305',4402,'Participaciones a corto plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4406,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','531',4401,'Valores representativos de deuda a corto plazo de partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4407,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5313',4406,'Valores representativos de deuda a corto plazo de empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4408,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5314',4406,'Valores representativos de deuda a corto plazo de empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4409,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5315',4406,'Valores representativos de deuda a corto plazo de otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4410,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','532',4401,'Créditos a corto plazo a partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4411,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5323',4410,'Créditos a corto plazo a empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4412,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5324',4410,'Créditos a corto plazo a empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4413,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5325',4410,'Créditos a corto plazo a otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4414,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','533',4401,'Intereses a corto plazo de valores representativos de deuda de partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4415,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5333',4414,'Intereses a corto plazo de valores representativos de deuda en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4416,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5334',4414,'Intereses a corto plazo de valores representativos de deuda en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4417,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5335',4414,'Intereses a corto plazo de valores representativos de deuda en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4418,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','534',4401,'Intereses a corto plazo de créditos a partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4419,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5343',4418,'Intereses a corto plazo de créditos a empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4420,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5344',4418,'Intereses a corto plazo de créditos a empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4421,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5345',4418,'Intereses a corto plazo de créditos a otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4422,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','535',4401,'Dividendo a cobrar de inversiones financieras en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4423,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5353',4422,'Dividendo a cobrar de empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4424,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5354',4422,'Dividendo a cobrar de empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4425,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5355',4422,'Dividendo a cobrar de otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4426,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','539',4401,'Desembolsos pendientes sobre participaciones a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4427,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5393',4426,'Desembolsos pendientes sobre participaciones a corto plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4428,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5394',4426,'Desembolsos pendientes sobre participaciones a corto plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4429,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5395',4426,'Desembolsos pendientes sobre participaciones a corto plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4430,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','54',4005,'Otras inversiones financieras a corto plazo',0,NULL,NULL,1,NULL,NULL),(4431,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','540',4430,'Inversiones financieras a corto plazo en instrumentos de patrimonio',0,NULL,NULL,1,NULL,NULL),(4432,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','541',4430,'Valores representativos de deuda a corto plazo',0,NULL,NULL,1,NULL,NULL),(4433,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','542',4430,'Créditos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4434,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','543',4430,'Créditos a corto plazo por enejenación de inmovilizado',0,NULL,NULL,1,NULL,NULL),(4435,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','544',4430,'Créditos a corto plazo al personal',0,NULL,NULL,1,NULL,NULL),(4436,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','545',4430,'Dividendo a cobrar',0,NULL,NULL,1,NULL,NULL),(4437,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','546',4430,'Intereses a corto plazo de valores reprsentativos de deuda',0,NULL,NULL,1,NULL,NULL),(4438,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','547',4430,'Intereses a corto plazo de créditos',0,NULL,NULL,1,NULL,NULL),(4439,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','548',4430,'Imposiciones a corto plazo',0,NULL,NULL,1,NULL,NULL),(4440,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','549',4430,'Desembolsos pendientes sobre participaciones en el patrimonio neto a corto plazo',0,NULL,NULL,1,NULL,NULL),(4441,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','55',4005,'Otras cuentas no bancarias',0,NULL,NULL,1,NULL,NULL),(4442,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','550',4441,'Titular de la explotación',0,NULL,NULL,1,NULL,NULL),(4443,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','551',4441,'Cuenta corriente con socios y administradores',0,NULL,NULL,1,NULL,NULL),(4444,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','552',4441,'Cuenta corriente otras personas y entidades vinculadas',0,NULL,NULL,1,NULL,NULL),(4445,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5523',4444,'Cuenta corriente con empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4446,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5524',4444,'Cuenta corriente con empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4447,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5525',4444,'Cuenta corriente con otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4448,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','554',4441,'Cuenta corriente con uniones temporales de empresas y comunidades de bienes',0,NULL,NULL,1,NULL,NULL),(4449,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','555',4441,'Partidas pendientes de aplicación',0,NULL,NULL,1,NULL,NULL),(4450,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','556',4441,'Desembolsos exigidos sobre participaciones en el patrimonio neto',0,NULL,NULL,1,NULL,NULL),(4451,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5563',4450,'Desembolsos exigidos sobre participaciones empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4452,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5564',4450,'Desembolsos exigidos sobre participaciones empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4453,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5565',4450,'Desembolsos exigidos sobre participaciones otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4454,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5566',4450,'Desembolsos exigidos sobre participaciones otras empresas',0,NULL,NULL,1,NULL,NULL),(4455,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','557',4441,'Dividendo activo a cuenta',0,NULL,NULL,1,NULL,NULL),(4456,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','558',4441,'Socios por desembolsos exigidos',0,NULL,NULL,1,NULL,NULL),(4457,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5580',4456,'Socios por desembolsos exigidos sobre acciones o participaciones ordinarias',0,NULL,NULL,1,NULL,NULL),(4458,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5585',4456,'Socios por desembolsos exigidos sobre acciones o participaciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4459,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','559',4441,'Derivados financieros a corto plazo',0,NULL,NULL,1,NULL,NULL),(4460,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5590',4459,'Activos por derivados financieros a corto plazo',0,NULL,NULL,1,NULL,NULL),(4461,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5595',4459,'Pasivos por derivados financieros a corto plazo',0,NULL,NULL,1,NULL,NULL),(4462,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','56',4005,'Finanzas y depósitos recibidos y constituidos a corto plazo y ajustes por periodificación',0,NULL,NULL,1,NULL,NULL),(4463,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','560',4462,'Finanzas recibidas a corto plazo',0,NULL,NULL,1,NULL,NULL),(4464,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','561',4462,'Depósitos recibidos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4465,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','565',4462,'Finanzas constituidas a corto plazo',0,NULL,NULL,1,NULL,NULL),(4466,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','566',4462,'Depósitos constituidos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4467,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','567',4462,'Intereses pagados por anticipado',0,NULL,NULL,1,NULL,NULL),(4468,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','568',4462,'Intereses cobrados a corto plazo',0,NULL,NULL,1,NULL,NULL),(4469,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','57',4005,'Tesorería',0,NULL,NULL,1,NULL,NULL),(4470,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','CAJA','570',4469,'Caja euros',0,NULL,NULL,1,NULL,NULL),(4471,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','571',4469,'Caja moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4472,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','BANCOS','572',4469,'Bancos e instituciones de crédito cc vista euros',0,NULL,NULL,1,NULL,NULL),(4473,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','573',4469,'Bancos e instituciones de crédito cc vista moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4474,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','574',4469,'Bancos e instituciones de crédito cuentas de ahorro euros',0,NULL,NULL,1,NULL,NULL),(4475,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','575',4469,'Bancos e instituciones de crédito cuentas de ahorro moneda extranjera',0,NULL,NULL,1,NULL,NULL),(4476,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','576',4469,'Inversiones a corto plazo de gran liquidez',0,NULL,NULL,1,NULL,NULL),(4477,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','59',4005,'Deterioro del valor de las inversiones financieras a corto plazo',0,NULL,NULL,1,NULL,NULL),(4478,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','593',4477,'Deterioro del valor de participaciones a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4479,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5933',4478,'Deterioro del valor de participaciones a corto plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4480,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5934',4478,'Deterioro del valor de participaciones a corto plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4481,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5935',4478,'Deterioro del valor de participaciones a corto plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4482,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','594',4477,'Deterioro del valor de valores representativos de deuda a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4483,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5943',4482,'Deterioro del valor de valores representativos de deuda a corto plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4484,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5944',4482,'Deterioro del valor de valores representativos de deuda a corto plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4485,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5945',4482,'Deterioro del valor de valores representativos de deuda a corto plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4486,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','595',4477,'Deterioro del valor de créditos a corto plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4487,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5953',4486,'Deterioro del valor de créditos a corto plazo en empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4488,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5954',4486,'Deterioro del valor de créditos a corto plazo en empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4489,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5955',4486,'Deterioro del valor de créditos a corto plazo en otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4490,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','596',4477,'Deterioro del valor de participaciones a corto plazo',0,NULL,NULL,1,NULL,NULL),(4491,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','597',4477,'Deterioro del valor de valores representativos de deuda a corto plazo',0,NULL,NULL,1,NULL,NULL),(4492,1,NULL,'2016-01-22 17:28:16','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','598',4477,'Deterioro de valor de créditos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4493,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','60',4006,'Compras',0,NULL,NULL,1,NULL,NULL),(4494,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','COMPRAS','600',4493,'Compras de mercaderías',0,NULL,NULL,1,NULL,NULL),(4495,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','COMPRAS','601',4493,'Compras de materias primas',0,NULL,NULL,1,NULL,NULL),(4496,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','602',4493,'Compras de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4497,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','606',4493,'Descuentos sobre compras por pronto pago',0,NULL,NULL,1,NULL,NULL),(4498,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6060',4497,'Descuentos sobre compras por pronto pago de mercaderías',0,NULL,NULL,1,NULL,NULL),(4499,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6061',4497,'Descuentos sobre compras por pronto pago de materias primas',0,NULL,NULL,1,NULL,NULL),(4500,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6062',4497,'Descuentos sobre compras por pronto pago de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4501,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','COMPRAS','607',4493,'Trabajos realizados por otras empresas',0,NULL,NULL,1,NULL,NULL),(4502,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','608',4493,'Devoluciones de compras y operaciones similares',0,NULL,NULL,1,NULL,NULL),(4503,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6080',4502,'Devoluciones de compras de mercaderías',0,NULL,NULL,1,NULL,NULL),(4504,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6081',4502,'Devoluciones de compras de materias primas',0,NULL,NULL,1,NULL,NULL),(4505,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6082',4502,'Devoluciones de compras de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4506,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','609',4493,'Rappels por compras',0,NULL,NULL,1,NULL,NULL),(4507,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6090',4506,'Rappels por compras de mercaderías',0,NULL,NULL,1,NULL,NULL),(4508,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6091',4506,'Rappels por compras de materias primas',0,NULL,NULL,1,NULL,NULL),(4509,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6092',4506,'Rappels por compras de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4510,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','61',4006,'Variación de existencias',0,NULL,NULL,1,NULL,NULL),(4511,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','610',4510,'Variación de existencias de mercaderías',0,NULL,NULL,1,NULL,NULL),(4512,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','611',4510,'Variación de existencias de materias primas',0,NULL,NULL,1,NULL,NULL),(4513,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','612',4510,'Variación de existencias de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4514,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','62',4006,'Servicios exteriores',0,NULL,NULL,1,NULL,NULL),(4515,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','620',4514,'Gastos en investigación y desarrollo del ejercicio',0,NULL,NULL,1,NULL,NULL),(4516,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','621',4514,'Arrendamientos y cánones',0,NULL,NULL,1,NULL,NULL),(4517,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','622',4514,'Reparaciones y conservación',0,NULL,NULL,1,NULL,NULL),(4518,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','623',4514,'Servicios profesionales independientes',0,NULL,NULL,1,NULL,NULL),(4519,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','624',4514,'Transportes',0,NULL,NULL,1,NULL,NULL),(4520,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','625',4514,'Primas de seguros',0,NULL,NULL,1,NULL,NULL),(4521,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','626',4514,'Servicios bancarios y similares',0,NULL,NULL,1,NULL,NULL),(4522,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','627',4514,'Publicidad, propaganda y relaciones públicas',0,NULL,NULL,1,NULL,NULL),(4523,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','628',4514,'Suministros',0,NULL,NULL,1,NULL,NULL),(4524,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','629',4514,'Otros servicios',0,NULL,NULL,1,NULL,NULL),(4525,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','63',4006,'Tributos',0,NULL,NULL,1,NULL,NULL),(4526,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','630',4525,'Impuesto sobre benecifios',0,NULL,NULL,1,NULL,NULL),(4527,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6300',4526,'Impuesto corriente',0,NULL,NULL,1,NULL,NULL),(4528,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6301',4526,'Impuesto diferido',0,NULL,NULL,1,NULL,NULL),(4529,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','631',4525,'Otros tributos',0,NULL,NULL,1,NULL,NULL),(4530,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','633',4525,'Ajustes negativos en la imposición sobre beneficios',0,NULL,NULL,1,NULL,NULL),(4531,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','634',4525,'Ajustes negativos en la imposición indirecta',0,NULL,NULL,1,NULL,NULL),(4532,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6341',4531,'Ajustes negativos en IVA de activo corriente',0,NULL,NULL,1,NULL,NULL),(4533,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6342',4531,'Ajustes negativos en IVA de inversiones',0,NULL,NULL,1,NULL,NULL),(4534,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','636',4525,'Devolución de impuestos',0,NULL,NULL,1,NULL,NULL),(4535,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','638',4525,'Ajustes positivos en la imposición sobre beneficios',0,NULL,NULL,1,NULL,NULL),(4536,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','639',4525,'Ajustes positivos en la imposición directa',0,NULL,NULL,1,NULL,NULL),(4537,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6391',4536,'Ajustes positivos en IVA de activo corriente',0,NULL,NULL,1,NULL,NULL),(4538,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6392',4536,'Ajustes positivos en IVA de inversiones',0,NULL,NULL,1,NULL,NULL),(4539,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','64',4006,'Gastos de personal',0,NULL,NULL,1,NULL,NULL),(4540,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','640',4539,'Sueldos y salarios',0,NULL,NULL,1,NULL,NULL),(4541,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','641',4539,'Indemnizaciones',0,NULL,NULL,1,NULL,NULL),(4542,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','642',4539,'Seguridad social a cargo de la empresa',0,NULL,NULL,1,NULL,NULL),(4543,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','649',4539,'Otros gastos sociales',0,NULL,NULL,1,NULL,NULL),(4544,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','65',4006,'Otros gastos de gestión',0,NULL,NULL,1,NULL,NULL),(4545,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','650',4544,'Pérdidas de créditos comerciales incobrables',0,NULL,NULL,1,NULL,NULL),(4546,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','651',4544,'Resultados de operaciones en común',0,NULL,NULL,1,NULL,NULL),(4547,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6510',4546,'Beneficio transferido gestor',0,NULL,NULL,1,NULL,NULL),(4548,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6511',4546,'Pérdida soportada participe o asociado no gestor',0,NULL,NULL,1,NULL,NULL),(4549,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','659',4544,'Otras pérdidas en gestión corriente',0,NULL,NULL,1,NULL,NULL),(4550,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','66',4006,'Gastos financieros',0,NULL,NULL,1,NULL,NULL),(4551,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','660',4550,'Gastos financieros por actualización de provisiones',0,NULL,NULL,1,NULL,NULL),(4552,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','661',4550,'Intereses de obligaciones y bonos',0,NULL,NULL,1,NULL,NULL),(4553,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6610',4452,'Intereses de obligaciones y bonos a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4554,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6611',4452,'Intereses de obligaciones y bonos a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4555,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6612',4452,'Intereses de obligaciones y bonos a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4556,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6613',4452,'Intereses de obligaciones y bonos a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4557,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6615',4452,'Intereses de obligaciones y bonos a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4558,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6616',4452,'Intereses de obligaciones y bonos a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4559,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6617',4452,'Intereses de obligaciones y bonos a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4560,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6618',4452,'Intereses de obligaciones y bonos a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4561,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','662',4550,'Intereses de deudas',0,NULL,NULL,1,NULL,NULL),(4562,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6620',4561,'Intereses de deudas empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4563,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6621',4561,'Intereses de deudas empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4564,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6622',4561,'Intereses de deudas otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4565,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6623',4561,'Intereses de deudas con entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4566,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6624',4561,'Intereses de deudas otras empresas',0,NULL,NULL,1,NULL,NULL),(4567,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','663',4550,'Pérdidas por valorización de activos y pasivos financieros por su valor razonable',0,NULL,NULL,1,NULL,NULL),(4568,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','664',4550,'Gastos por dividendos de acciones o participaciones consideradas como pasivos financieros',0,NULL,NULL,1,NULL,NULL),(4569,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6640',4568,'Dividendos de pasivos empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4570,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6641',4568,'Dividendos de pasivos empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4571,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6642',4568,'Dividendos de pasivos otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4572,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6643',4568,'Dividendos de pasivos otras empresas',0,NULL,NULL,1,NULL,NULL),(4573,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','665',4550,'Intereses por descuento de efectos y operaciones de factoring',0,NULL,NULL,1,NULL,NULL),(4574,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6650',4573,'Intereses por descuento de efectos en entidades de crédito del grupo',0,NULL,NULL,1,NULL,NULL),(4575,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6651',4573,'Intereses por descuento de efectos en entidades de crédito asociadas',0,NULL,NULL,1,NULL,NULL),(4576,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6652',4573,'Intereses por descuento de efectos en entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4577,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6653',4573,'Intereses por descuento de efectos en otras entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4578,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6654',4573,'Intereses por operaciones de factoring con entidades de crédito del grupo',0,NULL,NULL,1,NULL,NULL),(4579,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6655',4573,'Intereses por operaciones de factoring con entidades de crédito asociadas',0,NULL,NULL,1,NULL,NULL),(4580,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6656',4573,'Intereses por operaciones de factoring con otras entidades de crédito vinculadas',0,NULL,NULL,1,NULL,NULL),(4581,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6657',4573,'Intereses por operaciones de factoring con otras entidades de crédito',0,NULL,NULL,1,NULL,NULL),(4582,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','666',4550,'Pérdidas en participaciones y valores representativos de deuda',0,NULL,NULL,1,NULL,NULL),(4583,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6660',4582,'Pérdidas en valores representativos de deuda a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4584,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6661',4582,'Pérdidas en valores representativos de deuda a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4585,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6662',4582,'Pérdidas en valores representativos de deuda a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4586,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6663',4582,'Pérdidas en participaciones y valores representativos de deuda a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4587,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6665',4582,'Pérdidas en participaciones y valores representativos de deuda a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4588,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6666',4582,'Pérdidas en participaciones y valores representativos de deuda a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4589,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6667',4582,'Pérdidas en valores representativos de deuda a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4590,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6668',4582,'Pérdidas en valores representativos de deuda a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4591,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','667',4550,'Pérdidas de créditos no comerciales',0,NULL,NULL,1,NULL,NULL),(4592,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6670',4591,'Pérdidas de créditos a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4593,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6671',4591,'Pérdidas de créditos a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4594,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6672',4591,'Pérdidas de créditos a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4595,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6673',4591,'Pérdidas de créditos a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4596,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6675',4591,'Pérdidas de créditos a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4597,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6676',4591,'Pérdidas de créditos a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4598,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6677',4591,'Pérdidas de créditos a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4599,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6678',4591,'Pérdidas de créditos a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4600,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','668',4550,'Diferencias negativas de cambio',0,NULL,NULL,1,NULL,NULL),(4601,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','669',4550,'Otros gastos financieros',0,NULL,NULL,1,NULL,NULL),(4602,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','67',4006,'Pérdidas procedentes de activos no corrientes y gastos excepcionales',0,NULL,NULL,1,NULL,NULL),(4603,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','670',4602,'Pérdidas procedentes del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4604,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','671',4602,'Pérdidas procedentes del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4605,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','672',4602,'Pérdidas procedentes de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4607,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','673',4602,'Pérdidas procedentes de participaciones a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4608,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6733',4607,'Pérdidas procedentes de participaciones a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4609,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6734',4607,'Pérdidas procedentes de participaciones a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4610,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6735',4607,'Pérdidas procedentes de participaciones a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4611,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','675',4602,'Pérdidas por operaciones con obligaciones propias',0,NULL,NULL,1,NULL,NULL),(4612,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','678',4602,'Gastos excepcionales',0,NULL,NULL,1,NULL,NULL),(4613,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','68',4006,'Dotaciones para amortizaciones',0,NULL,NULL,1,NULL,NULL),(4614,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','680',4613,'Amortización del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4615,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','681',4613,'Amortización del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4616,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','682',4613,'Amortización de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4617,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','69',4006,'Pérdidas por deterioro y otras dotaciones',0,NULL,NULL,1,NULL,NULL),(4618,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','690',4617,'Pérdidas por deterioro del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4619,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','691',4617,'Pérdidas por deterioro del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4620,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','692',4617,'Pérdidas por deterioro de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4621,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','693',4617,'Pérdidas por deterioro de existencias',0,NULL,NULL,1,NULL,NULL),(4622,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6930',4621,'Pérdidas por deterioro de productos terminados y en curso de fabricación',0,NULL,NULL,1,NULL,NULL),(4623,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6931',4621,'Pérdidas por deterioro de mercaderías',0,NULL,NULL,1,NULL,NULL),(4624,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6932',4621,'Pérdidas por deterioro de materias primas',0,NULL,NULL,1,NULL,NULL),(4625,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6933',4621,'Pérdidas por deterioro de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4626,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','694',4617,'Pérdidas por deterioro de créditos por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4627,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','695',4617,'Dotación a la provisión por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4628,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6954',4627,'Dotación a la provisión por contratos onerosos',0,NULL,NULL,1,NULL,NULL),(4629,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6959',4628,'Dotación a la provisión para otras operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4630,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','696',4617,'Pérdidas por deterioro de participaciones y valores representativos de deuda a largo plazo',0,NULL,NULL,1,NULL,NULL),(4631,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6960',4630,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4632,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6961',4630,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4633,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6962',4630,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4634,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6963',4630,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4635,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6965',4630,'Pérdidas por deterioro en valores representativos de deuda a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4636,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6966',4630,'Pérdidas por deterioro en valores representativos de deuda a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4637,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6967',4630,'Pérdidas por deterioro en valores representativos de deuda a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4638,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6968',4630,'Pérdidas por deterioro en valores representativos de deuda a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4639,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','697',4617,'Pérdidas por deterioro de créditos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4640,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6970',4639,'Pérdidas por deterioro de créditos a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4641,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6971',4639,'Pérdidas por deterioro de créditos a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4642,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6972',4639,'Pérdidas por deterioro de créditos a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4643,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6973',4639,'Pérdidas por deterioro de créditos a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4644,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','698',4617,'Pérdidas por deterioro de participaciones y valores representativos de deuda a corto plazo',0,NULL,NULL,1,NULL,NULL),(4645,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6980',4644,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4646,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6981',4644,'Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4647,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6985',4644,'Pérdidas por deterioro en valores representativos de deuda a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4648,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6986',4644,'Pérdidas por deterioro en valores representativos de deuda a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4649,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6988',4644,'Pérdidas por deterioro en valores representativos de deuda a corto plazo de otras empresas',0,NULL,NULL,1,NULL,NULL),(4650,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','699',4617,'Pérdidas por deterioro de crédito a corto plazo',0,NULL,NULL,1,NULL,NULL),(4651,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6990',4650,'Pérdidas por deterioro de crédito a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4652,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6991',4650,'Pérdidas por deterioro de crédito a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4653,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6992',4650,'Pérdidas por deterioro de crédito a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4654,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','EXPENSE','XXXXXX','6993',4650,'Pérdidas por deterioro de crédito a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4655,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','70',4007,'Ventas',0,NULL,NULL,1,NULL,NULL),(4656,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','VENTAS','700',4655,'Ventas de mercaderías',0,NULL,NULL,1,NULL,NULL),(4657,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','VENTAS','701',4655,'Ventas de productos terminados',0,NULL,NULL,1,NULL,NULL),(4658,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','702',4655,'Ventas de productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4659,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','703',4655,'Ventas de subproductos y residuos',0,NULL,NULL,1,NULL,NULL),(4660,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','704',4655,'Ventas de envases y embalajes',0,NULL,NULL,1,NULL,NULL),(4661,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','VENTAS','705',4655,'Prestaciones de servicios',0,NULL,NULL,1,NULL,NULL),(4662,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','706',4655,'Descuentos sobre ventas por pronto pago',0,NULL,NULL,1,NULL,NULL),(4663,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7060',4662,'Descuentos sobre ventas por pronto pago de mercaderías',0,NULL,NULL,1,NULL,NULL),(4664,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7061',4662,'Descuentos sobre ventas por pronto pago de productos terminados',0,NULL,NULL,1,NULL,NULL),(4665,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7062',4662,'Descuentos sobre ventas por pronto pago de productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4666,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7063',4662,'Descuentos sobre ventas por pronto pago de subproductos y residuos',0,NULL,NULL,1,NULL,NULL),(4667,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','708',4655,'Devoluciones de ventas y operacioes similares',0,NULL,NULL,1,NULL,NULL),(4668,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7080',4667,'Devoluciones de ventas de mercaderías',0,NULL,NULL,1,NULL,NULL),(4669,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7081',4667,'Devoluciones de ventas de productos terminados',0,NULL,NULL,1,NULL,NULL),(4670,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7082',4667,'Devoluciones de ventas de productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4671,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7083',4667,'Devoluciones de ventas de subproductos y residuos',0,NULL,NULL,1,NULL,NULL),(4672,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7084',4667,'Devoluciones de ventas de envases y embalajes',0,NULL,NULL,1,NULL,NULL),(4673,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','71',4007,'Variación de existencias',0,NULL,NULL,1,NULL,NULL),(4674,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','710',4673,'Variación de existencias de productos en curso',0,NULL,NULL,1,NULL,NULL),(4675,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','711',4673,'Variación de existencias de productos semiterminados',0,NULL,NULL,1,NULL,NULL),(4676,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','712',4673,'Variación de existencias de productos terminados',0,NULL,NULL,1,NULL,NULL),(4677,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','713',4673,'Variación de existencias de subproductos, residuos y materiales recuperados',0,NULL,NULL,1,NULL,NULL),(4678,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','73',4007,'Trabajos realizados para la empresa',0,NULL,NULL,1,NULL,NULL),(4679,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','730',4678,'Trabajos realizados para el inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4680,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','731',4678,'Trabajos realizados para el inmovilizado tangible',0,NULL,NULL,1,NULL,NULL),(4681,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','732',4678,'Trabajos realizados en inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4682,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','733',4678,'Trabajos realizados para el inmovilizado material en curso',0,NULL,NULL,1,NULL,NULL),(4683,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','74',4007,'Subvenciones, donaciones y legados',0,NULL,NULL,1,NULL,NULL),(4684,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','740',4683,'Subvenciones, donaciones y legados a la explotación',0,NULL,NULL,1,NULL,NULL),(4685,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','746',4683,'Subvenciones, donaciones y legados de capital transferidos al resultado del ejercicio',0,NULL,NULL,1,NULL,NULL),(4686,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','747',4683,'Otras subvenciones, donaciones y legados transferidos al resultado del ejercicio',0,NULL,NULL,1,NULL,NULL),(4687,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','75',4007,'Otros ingresos de gestión',0,NULL,NULL,1,NULL,NULL),(4688,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','751',4687,'Resultados de operaciones en común',0,NULL,NULL,1,NULL,NULL),(4689,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7510',4688,'Pérdida transferida gestor',0,NULL,NULL,1,NULL,NULL),(4690,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7511',4688,'Beneficio atribuido participe o asociado no gestor',0,NULL,NULL,1,NULL,NULL),(4691,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','752',4687,'Ingreso por arrendamiento',0,NULL,NULL,1,NULL,NULL),(4692,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','753',4687,'Ingresos de propiedad industrial cedida en explotación',0,NULL,NULL,1,NULL,NULL),(4693,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','754',4687,'Ingresos por comisiones',0,NULL,NULL,1,NULL,NULL),(4694,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','755',4687,'Ingresos por servicios al personal',0,NULL,NULL,1,NULL,NULL),(4695,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','759',4687,'Ingresos por servicios diversos',0,NULL,NULL,1,NULL,NULL),(4696,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76',4007,'Ingresos financieros',0,NULL,NULL,1,NULL,NULL),(4697,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','760',4696,'Ingresos de participaciones en instrumentos de patrimonio',0,NULL,NULL,1,NULL,NULL),(4698,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7600',4697,'Ingresos de participaciones en instrumentos de patrimonio empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4699,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7601',4697,'Ingresos de participaciones en instrumentos de patrimonio empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4700,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7602',4697,'Ingresos de participaciones en instrumentos de patrimonio otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4701,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7603',4697,'Ingresos de participaciones en instrumentos de patrimonio otras empresas',0,NULL,NULL,1,NULL,NULL),(4702,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','761',4696,'Ingresos de valores representativos de deuda',0,NULL,NULL,1,NULL,NULL),(4703,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7610',4702,'Ingresos de valores representativos de deuda empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4704,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7611',4702,'Ingresos de valores representativos de deuda empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4705,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7612',4702,'Ingresos de valores representativos de deuda otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4706,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7613',4702,'Ingresos de valores representativos de deuda otras empresas',0,NULL,NULL,1,NULL,NULL),(4707,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','762',4696,'Ingresos de créditos',0,NULL,NULL,1,NULL,NULL),(4708,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7620',4707,'Ingresos de créditos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4709,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76200',4708,'Ingresos de crédito a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4710,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76201',4708,'Ingresos de crédito a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4711,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76202',4708,'Ingresos de crédito a largo plazo otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4712,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76203',4708,'Ingresos de crédito a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4713,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7621',4707,'Ingresos de créditos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4714,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76210',4713,'Ingresos de crédito a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4715,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76211',4713,'Ingresos de crédito a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4716,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76212',4713,'Ingresos de crédito a corto plazo otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4717,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','76213',4713,'Ingresos de crédito a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4718,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','763',4696,'Beneficios por valorización de activos y pasivos financieros por su valor razonable',0,NULL,NULL,1,NULL,NULL),(4719,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','766',4696,'Beneficios en participaciones y valores representativos de deuda',0,NULL,NULL,1,NULL,NULL),(4720,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7660',4719,'Beneficios en participaciones y valores representativos de deuda a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4721,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7661',4719,'Beneficios en participaciones y valores representativos de deuda a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4722,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7662',4719,'Beneficios en participaciones y valores representativos de deuda a largo plazo otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4723,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7663',4719,'Beneficios en participaciones y valores representativos de deuda a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4724,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7665',4719,'Beneficios en participaciones y valores representativos de deuda a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4725,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7666',4719,'Beneficios en participaciones y valores representativos de deuda a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4726,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7667',4719,'Beneficios en participaciones y valores representativos de deuda a corto plazo otras partes asociadas',0,NULL,NULL,1,NULL,NULL),(4727,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7668',4719,'Beneficios en participaciones y valores representativos de deuda a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4728,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','768',4696,'Diferencias positivas de cambio',0,NULL,NULL,1,NULL,NULL),(4729,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','769',4696,'Otros ingresos financieros',0,NULL,NULL,1,NULL,NULL),(4730,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','77',4007,'Beneficios procedentes de activos no corrientes e ingresos excepcionales',0,NULL,NULL,1,NULL,NULL),(4731,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','770',4730,'Beneficios procedentes del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4732,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','771',4730,'Beneficios procedentes del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4733,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','772',4730,'Beneficios procedentes de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4734,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','773',4730,'Beneficios procedentes de participaciones a largo plazo en partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4735,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7733',4734,'Beneficios procedentes de participaciones a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4736,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7734',4734,'Beneficios procedentes de participaciones a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4737,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7735',4734,'Beneficios procedentes de participaciones a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4738,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','775',4730,'Beneficios por operaciones con obligaciones propias',0,NULL,NULL,1,NULL,NULL),(4739,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','778',4730,'Ingresos excepcionales',0,NULL,NULL,1,NULL,NULL),(4741,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','79',4007,'Excesos y aplicaciones de provisiones y pérdidas por deterioro',0,NULL,NULL,1,NULL,NULL),(4742,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','790',4741,'Revisión del deterioro del inmovilizado intangible',0,NULL,NULL,1,NULL,NULL),(4743,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','791',4741,'Revisión del deterioro del inmovilizado material',0,NULL,NULL,1,NULL,NULL),(4744,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','792',4741,'Revisión del deterioro de las inversiones inmobiliarias',0,NULL,NULL,1,NULL,NULL),(4745,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','793',4741,'Revisión del deterioro de las existencias',0,NULL,NULL,1,NULL,NULL),(4746,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7930',4745,'Revisión del deterioro de productos terminados y en curso de fabricación',0,NULL,NULL,1,NULL,NULL),(4747,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7931',4745,'Revisión del deterioro de mercaderías',0,NULL,NULL,1,NULL,NULL),(4748,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7932',4745,'Revisión del deterioro de materias primas',0,NULL,NULL,1,NULL,NULL),(4749,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7933',4745,'Revisión del deterioro de otros aprovisionamientos',0,NULL,NULL,1,NULL,NULL),(4750,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','794',4741,'Revisión del deterioro de créditos por operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4751,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','795',4741,'Exceso de provisiones',0,NULL,NULL,1,NULL,NULL),(4752,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7951',4751,'Exceso de provisión para impuestos',0,NULL,NULL,1,NULL,NULL),(4753,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7952',4751,'Exceso de provisión para otras responsabilidades',0,NULL,NULL,1,NULL,NULL),(4755,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7954',4751,'Exceso de provisión para operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4756,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','79544',4755,'Exceso de provisión por contratos onerosos',0,NULL,NULL,1,NULL,NULL),(4757,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','79549',4755,'Exceso de provisión para otras operaciones comerciales',0,NULL,NULL,1,NULL,NULL),(4758,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7955',4751,'Exceso de provisión para actuaciones medioambienteales',0,NULL,NULL,1,NULL,NULL),(4759,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','796',4741,'Revisión del deterioro de participaciones y valores representativos de deuda a largo plazo',0,NULL,NULL,1,NULL,NULL),(4760,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7960',4759,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4761,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7961',4759,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4762,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7962',4759,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4763,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7963',4759,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4764,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7965',4759,'Revisión del deterioro de valores representativos a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4765,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7966',4759,'Revisión del deterioro de valores representativos a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4766,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7967',4759,'Revisión del deterioro de valores representativos a largo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4767,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7968',4759,'Revisión del deterioro de valores representativos a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4768,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','797',4741,'Revisión del deterioro de créditos a largo plazo',0,NULL,NULL,1,NULL,NULL),(4769,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7970',4768,'Revisión del deterioro de créditos a largo plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4770,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7971',4768,'Revisión del deterioro de créditos a largo plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4771,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7972',4768,'Revisión del deterioro de créditos a largo plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4772,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7973',4768,'Revisión del deterioro de créditos a largo plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4773,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','798',4741,'Revisión del deterioro de participaciones y valores representativos de deuda a corto plazo',0,NULL,NULL,1,NULL,NULL),(4774,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7980',4773,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4775,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7981',4773,'Revisión del deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4776,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7985',4773,'Revisión del deterioro de valores representativos de deuda a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4777,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7986',4773,'Revisión del deterioro de valores representativos de deuda a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4778,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7987',4773,'Revisión del deterioro de valores representativos de deuda a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4779,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7988',4773,'Revisión del deterioro de valores representativos de deuda a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL),(4780,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','799',4741,'Revisión del deterioro de créditos a corto plazo',0,NULL,NULL,1,NULL,NULL),(4781,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7990',4780,'Revisión del deterioro de créditos a corto plazo empresas del grupo',0,NULL,NULL,1,NULL,NULL),(4782,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7991',4780,'Revisión del deterioro de créditos a corto plazo empresas asociadas',0,NULL,NULL,1,NULL,NULL),(4783,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7992',4780,'Revisión del deterioro de créditos a corto plazo otras partes vinculadas',0,NULL,NULL,1,NULL,NULL),(4784,1,NULL,'2018-01-19 11:17:49','PCG08-PYME','INCOME','XXXXXX','7993',4780,'Revisión del deterioro de créditos a corto plazo otras empresas',0,NULL,NULL,1,NULL,NULL); +/*!40000 ALTER TABLE `llx_accounting_account` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accounting_bookkeeping` +-- + +DROP TABLE IF EXISTS `llx_accounting_bookkeeping`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_bookkeeping` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `doc_date` date NOT NULL, + `doc_type` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `doc_ref` varchar(300) COLLATE utf8_unicode_ci NOT NULL, + `fk_doc` int(11) NOT NULL, + `fk_docdet` int(11) NOT NULL, + `thirdparty_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `numero_compte` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `label_compte` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `label_operation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `debit` double(24,8) DEFAULT NULL, + `credit` double(24,8) DEFAULT NULL, + `montant` double(24,8) DEFAULT NULL, + `sens` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_amount` double(24,8) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `lettering_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_lettering` datetime DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_journal` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `journal_label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `piece_num` int(11) NOT NULL, + `validated` tinyint(4) NOT NULL DEFAULT '0', + `date_validated` datetime DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user_modif` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `subledger_account` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `subledger_label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_lim_reglement` datetime DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_accounting_bookkeeping_fk_doc` (`fk_doc`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_bookkeeping` +-- + +LOCK TABLES `llx_accounting_bookkeeping` WRITE; +/*!40000 ALTER TABLE `llx_accounting_bookkeeping` DISABLE KEYS */; +INSERT INTO `llx_accounting_bookkeeping` VALUES (2,'2017-02-19','','',0,0,NULL,'1','ttt',NULL,5.00000000,0.00000000,5.00000000,'D',NULL,NULL,NULL,NULL,12,NULL,'VTE',NULL,1,0,NULL,1,NULL,'2017-08-27 15:29:05','2018-11-23 11:56:09','1',NULL,NULL,NULL,NULL),(4,'2017-02-19','','',0,0,NULL,'10','',NULL,0.00000000,5.00000000,5.00000000,'C',NULL,NULL,NULL,NULL,12,NULL,'VTE',NULL,1,0,NULL,1,NULL,'2017-08-27 15:29:05','2018-11-23 11:56:09','10',NULL,NULL,NULL,NULL),(6,'2017-02-19','','',0,0,NULL,'NotDefined','',NULL,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL,NULL,12,NULL,'VTE',NULL,2,0,NULL,1,NULL,'2017-08-27 15:29:05','2018-11-23 11:56:09','NotDefined',NULL,NULL,NULL,NULL),(9,'2017-02-19','','',0,0,NULL,'NotDefined','',NULL,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL,NULL,12,NULL,'VTE',NULL,3,0,NULL,1,NULL,'2017-08-27 15:29:05','2018-11-23 11:56:09','NotDefined',NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_accounting_bookkeeping` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accounting_bookkeeping_tmp` +-- + +DROP TABLE IF EXISTS `llx_accounting_bookkeeping_tmp`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_bookkeeping_tmp` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `doc_date` date NOT NULL, + `doc_type` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `doc_ref` varchar(300) COLLATE utf8_unicode_ci NOT NULL, + `fk_doc` int(11) NOT NULL, + `fk_docdet` int(11) NOT NULL, + `thirdparty_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `subledger_account` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `subledger_label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `numero_compte` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `label_compte` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `label_operation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `debit` double(24,8) NOT NULL, + `credit` double(24,8) NOT NULL, + `montant` double(24,8) NOT NULL, + `sens` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_amount` double(24,8) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `lettering_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_lettering` datetime DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_journal` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `journal_label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `piece_num` int(11) NOT NULL, + `validated` tinyint(4) NOT NULL DEFAULT '0', + `date_validated` datetime DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_lim_reglement` datetime DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_accounting_bookkeeping_doc_date` (`doc_date`), + KEY `idx_accounting_bookkeeping_fk_docdet` (`fk_docdet`), + KEY `idx_accounting_bookkeeping_numero_compte` (`numero_compte`), + KEY `idx_accounting_bookkeeping_code_journal` (`code_journal`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_bookkeeping_tmp` +-- + +LOCK TABLES `llx_accounting_bookkeeping_tmp` WRITE; +/*!40000 ALTER TABLE `llx_accounting_bookkeeping_tmp` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_accounting_bookkeeping_tmp` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accounting_fiscalyear` +-- + +DROP TABLE IF EXISTS `llx_accounting_fiscalyear`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_fiscalyear` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `date_start` date DEFAULT NULL, + `date_end` date DEFAULT NULL, + `statut` tinyint(4) NOT NULL DEFAULT '0', + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_fiscalyear` +-- + +LOCK TABLES `llx_accounting_fiscalyear` WRITE; +/*!40000 ALTER TABLE `llx_accounting_fiscalyear` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_accounting_fiscalyear` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accounting_journal` +-- + +DROP TABLE IF EXISTS `llx_accounting_journal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_journal` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `nature` smallint(6) NOT NULL DEFAULT '0', + `active` smallint(6) DEFAULT '0', + `entity` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_accounting_journal_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_journal` +-- + +LOCK TABLES `llx_accounting_journal` WRITE; +/*!40000 ALTER TABLE `llx_accounting_journal` DISABLE KEYS */; +INSERT INTO `llx_accounting_journal` VALUES (1,'VT','Sale journal',2,1,1),(2,'AC','Purchase journal',3,1,1),(3,'BQ','Bank journal',4,1,1),(4,'OD','Other journal',1,1,1),(5,'AN','Has new journal',9,1,1),(6,'ER','Expense report journal',5,1,1),(7,'INV','Inventory journal',8,1,1); +/*!40000 ALTER TABLE `llx_accounting_journal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accounting_system` +-- + +DROP TABLE IF EXISTS `llx_accounting_system`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accounting_system` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `pcg_version` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `active` smallint(6) DEFAULT '0', + `fk_country` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_accounting_system_pcg_version` (`pcg_version`) +) ENGINE=InnoDB AUTO_INCREMENT=65 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accounting_system` +-- + +LOCK TABLES `llx_accounting_system` WRITE; +/*!40000 ALTER TABLE `llx_accounting_system` DISABLE KEYS */; +INSERT INTO `llx_accounting_system` VALUES (1,'PCG99-ABREGE','The simple accountancy french plan',1,1),(2,'PCG99-BASE','The base accountancy french plan',1,1),(3,'PCMN-BASE','The base accountancy belgium plan',1,2),(4,'PCG08-PYME','The PYME accountancy spanish plan',1,4),(5,'PC-MIPYME','The PYME accountancy Chile plan',1,67),(6,'ENG-BASE','England plan',1,7),(7,'SYSCOHADA','Plan comptable Ouest-Africain',1,49),(39,'PCG14-DEV','The developed accountancy french plan 2014',1,1),(40,'PCG_SUISSE','Switzerland plan',1,6),(41,'PCN-LUXEMBURG','Plan comptable normalisé Luxembourgeois',1,140),(42,'DK-STD','Standardkontoplan fra SKAT',1,80),(43,'PCT','The Tunisia plan',1,10),(44,'PCG','The Moroccan chart of accounts',1,12),(47,'SYSCOHADA-BJ','Plan comptable Ouest-Africain',1,49),(48,'SYSCOHADA-BF','Plan comptable Ouest-Africain',1,60),(49,'SYSCOHADA-CM','Plan comptable Ouest-Africain',1,24),(50,'SYSCOHADA-CF','Plan comptable Ouest-Africain',1,65),(51,'SYSCOHADA-KM','Plan comptable Ouest-Africain',1,71),(52,'SYSCOHADA-CG','Plan comptable Ouest-Africain',1,72),(53,'SYSCOHADA-CI','Plan comptable Ouest-Africain',1,21),(54,'SYSCOHADA-GA','Plan comptable Ouest-Africain',1,16),(55,'SYSCOHADA-GQ','Plan comptable Ouest-Africain',1,87),(56,'SYSCOHADA-ML','Plan comptable Ouest-Africain',1,147),(57,'SYSCOHADA-NE','Plan comptable Ouest-Africain',1,168),(58,'SYSCOHADA-CD','Plan comptable Ouest-Africain',1,73),(59,'SYSCOHADA-SN','Plan comptable Ouest-Africain',1,22),(60,'SYSCOHADA-TD','Plan comptable Ouest-Africain',1,66),(61,'SYSCOHADA-TG','Plan comptable Ouest-Africain',1,15),(62,'RO-BASE','Plan de conturi romanesc',1,188),(63,'SKR03','Standardkontenrahmen SKR 03',1,5),(64,'SKR04','Standardkontenrahmen SKR 04',1,5); +/*!40000 ALTER TABLE `llx_accounting_system` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_accountingaccount` +-- + +DROP TABLE IF EXISTS `llx_accountingaccount`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_accountingaccount` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_pcg_version` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `pcg_type` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `pcg_subtype` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `account_number` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `account_parent` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + KEY `idx_accountingaccount_fk_pcg_version` (`fk_pcg_version`) +) ENGINE=InnoDB AUTO_INCREMENT=4785 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_accountingaccount` +-- + +LOCK TABLES `llx_accountingaccount` WRITE; +/*!40000 ALTER TABLE `llx_accountingaccount` DISABLE KEYS */; +INSERT INTO `llx_accountingaccount` VALUES (1,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','CAPITAL','101','1401','Capital',NULL,NULL,1),(2,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','105','1401','Ecarts de réévaluation',NULL,NULL,1),(3,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','1061','1401','Réserve légale',NULL,NULL,1),(4,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','1063','1401','Réserves statutaires ou contractuelles',NULL,NULL,1),(5,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','1064','1401','Réserves réglementées',NULL,NULL,1),(6,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','1068','1401','Autres réserves',NULL,NULL,1),(7,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','108','1401','Compte de l\'exploitant',NULL,NULL,1),(8,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','12','1401','Résultat de l\'exercice',NULL,NULL,1),(9,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','145','1401','Amortissements dérogatoires',NULL,NULL,1),(10,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','146','1401','Provision spéciale de réévaluation',NULL,NULL,1),(11,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','147','1401','Plus-values réinvesties',NULL,NULL,1),(12,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','148','1401','Autres provisions réglementées',NULL,NULL,1),(13,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','15','1401','Provisions pour risques et charges',NULL,NULL,1),(14,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','16','1401','Emprunts et dettes assimilees',NULL,NULL,1),(15,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','20','1402','Immobilisations incorporelles',NULL,NULL,1),(16,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','201','15','Frais d\'établissement',NULL,NULL,1),(17,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','206','15','Droit au bail',NULL,NULL,1),(18,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','207','15','Fonds commercial',NULL,NULL,1),(19,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','208','15','Autres immobilisations incorporelles',NULL,NULL,1),(20,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','21','1402','Immobilisations corporelles',NULL,NULL,1),(21,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','23','1402','Immobilisations en cours',NULL,NULL,1),(22,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','27','1402','Autres immobilisations financieres',NULL,NULL,1),(23,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','280','1402','Amortissements des immobilisations incorporelles',NULL,NULL,1),(24,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','281','1402','Amortissements des immobilisations corporelles',NULL,NULL,1),(25,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','290','1402','Provisions pour dépréciation des immobilisations incorporelles',NULL,NULL,1),(26,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','291','1402','Provisions pour dépréciation des immobilisations corporelles',NULL,NULL,1),(27,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','297','1402','Provisions pour dépréciation des autres immobilisations financières',NULL,NULL,1),(28,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','31','1403','Matieres premières',NULL,NULL,1),(29,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','32','1403','Autres approvisionnements',NULL,NULL,1),(30,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','33','1403','En-cours de production de biens',NULL,NULL,1),(31,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','34','1403','En-cours de production de services',NULL,NULL,1),(32,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','35','1403','Stocks de produits',NULL,NULL,1),(33,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','37','1403','Stocks de marchandises',NULL,NULL,1),(34,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','391','1403','Provisions pour dépréciation des matières premières',NULL,NULL,1),(35,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','392','1403','Provisions pour dépréciation des autres approvisionnements',NULL,NULL,1),(36,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','393','1403','Provisions pour dépréciation des en-cours de production de biens',NULL,NULL,1),(37,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','394','1403','Provisions pour dépréciation des en-cours de production de services',NULL,NULL,1),(38,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','395','1403','Provisions pour dépréciation des stocks de produits',NULL,NULL,1),(39,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','397','1403','Provisions pour dépréciation des stocks de marchandises',NULL,NULL,1),(40,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','SUPPLIER','400','1404','Fournisseurs et Comptes rattachés',NULL,NULL,1),(41,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','409','1404','Fournisseurs débiteurs',NULL,NULL,1),(42,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','CUSTOMER','410','1404','Clients et Comptes rattachés',NULL,NULL,1),(43,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','419','1404','Clients créditeurs',NULL,NULL,1),(44,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','421','1404','Personnel',NULL,NULL,1),(45,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','428','1404','Personnel',NULL,NULL,1),(46,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','43','1404','Sécurité sociale et autres organismes sociaux',NULL,NULL,1),(47,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','444','1404','Etat - impôts sur bénéfice',NULL,NULL,1),(48,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','445','1404','Etat - Taxes sur chiffre affaires',NULL,NULL,1),(49,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','447','1404','Autres impôts, taxes et versements assimilés',NULL,NULL,1),(50,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','45','1404','Groupe et associes',NULL,NULL,1),(51,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','455','50','Associés',NULL,NULL,1),(52,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','46','1404','Débiteurs divers et créditeurs divers',NULL,NULL,1),(53,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','47','1404','Comptes transitoires ou d\'attente',NULL,NULL,1),(54,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','481','1404','Charges à répartir sur plusieurs exercices',NULL,NULL,1),(55,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','486','1404','Charges constatées d\'avance',NULL,NULL,1),(56,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','487','1404','Produits constatés d\'avance',NULL,NULL,1),(57,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','491','1404','Provisions pour dépréciation des comptes de clients',NULL,NULL,1),(58,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','496','1404','Provisions pour dépréciation des comptes de débiteurs divers',NULL,NULL,1),(59,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','XXXXXX','50','1405','Valeurs mobilières de placement',NULL,NULL,1),(60,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','BANK','51','1405','Banques, établissements financiers et assimilés',NULL,NULL,1),(61,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','CASH','53','1405','Caisse',NULL,NULL,1),(62,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','XXXXXX','54','1405','Régies d\'avance et accréditifs',NULL,NULL,1),(63,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','XXXXXX','58','1405','Virements internes',NULL,NULL,1),(64,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','XXXXXX','590','1405','Provisions pour dépréciation des valeurs mobilières de placement',NULL,NULL,1),(65,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','PRODUCT','60','1406','Achats',NULL,NULL,1),(66,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','603','65','Variations des stocks',NULL,NULL,1),(67,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','SERVICE','61','1406','Services extérieurs',NULL,NULL,1),(68,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','62','1406','Autres services extérieurs',NULL,NULL,1),(69,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','63','1406','Impôts, taxes et versements assimiles',NULL,NULL,1),(70,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','641','1406','Rémunérations du personnel',NULL,NULL,1),(71,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','644','1406','Rémunération du travail de l\'exploitant',NULL,NULL,1),(72,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','SOCIAL','645','1406','Charges de sécurité sociale et de prévoyance',NULL,NULL,1),(73,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','646','1406','Cotisations sociales personnelles de l\'exploitant',NULL,NULL,1),(74,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','65','1406','Autres charges de gestion courante',NULL,NULL,1),(75,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','66','1406','Charges financières',NULL,NULL,1),(76,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','67','1406','Charges exceptionnelles',NULL,NULL,1),(77,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','681','1406','Dotations aux amortissements et aux provisions',NULL,NULL,1),(78,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','686','1406','Dotations aux amortissements et aux provisions',NULL,NULL,1),(79,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','687','1406','Dotations aux amortissements et aux provisions',NULL,NULL,1),(80,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','691','1406','Participation des salariés aux résultats',NULL,NULL,1),(81,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','695','1406','Impôts sur les bénéfices',NULL,NULL,1),(82,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','697','1406','Imposition forfaitaire annuelle des sociétés',NULL,NULL,1),(83,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','699','1406','Produits',NULL,NULL,1),(84,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','PRODUCT','701','1407','Ventes de produits finis',NULL,NULL,1),(85,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','SERVICE','706','1407','Prestations de services',NULL,NULL,1),(86,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','PRODUCT','707','1407','Ventes de marchandises',NULL,NULL,1),(87,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','PRODUCT','708','1407','Produits des activités annexes',NULL,NULL,1),(88,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','709','1407','Rabais, remises et ristournes accordés par l\'entreprise',NULL,NULL,1),(89,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','713','1407','Variation des stocks',NULL,NULL,1),(90,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','72','1407','Production immobilisée',NULL,NULL,1),(91,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','73','1407','Produits nets partiels sur opérations à long terme',NULL,NULL,1),(92,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','74','1407','Subventions d\'exploitation',NULL,NULL,1),(93,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','75','1407','Autres produits de gestion courante',NULL,NULL,1),(94,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','753','93','Jetons de présence et rémunérations d\'administrateurs, gérants,...',NULL,NULL,1),(95,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','754','93','Ristournes perçues des coopératives',NULL,NULL,1),(96,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','755','93','Quotes-parts de résultat sur opérations faites en commun',NULL,NULL,1),(97,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','76','1407','Produits financiers',NULL,NULL,1),(98,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','77','1407','Produits exceptionnels',NULL,NULL,1),(99,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','781','1407','Reprises sur amortissements et provisions',NULL,NULL,1),(100,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','786','1407','Reprises sur provisions pour risques',NULL,NULL,1),(101,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','787','1407','Reprises sur provisions',NULL,NULL,1),(102,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','79','1407','Transferts de charges',NULL,NULL,1),(103,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','10','1501','Capital et réserves',NULL,NULL,1),(104,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','CAPITAL','101','103','Capital',NULL,NULL,1),(105,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','104','103','Primes liées au capital social',NULL,NULL,1),(106,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','105','103','Ecarts de réévaluation',NULL,NULL,1),(107,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','106','103','Réserves',NULL,NULL,1),(108,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','107','103','Ecart d\'equivalence',NULL,NULL,1),(109,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','108','103','Compte de l\'exploitant',NULL,NULL,1),(110,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','109','103','Actionnaires : capital souscrit - non appelé',NULL,NULL,1),(111,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','11','1501','Report à nouveau (solde créditeur ou débiteur)',NULL,NULL,1),(112,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','110','111','Report à nouveau (solde créditeur)',NULL,NULL,1),(113,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','119','111','Report à nouveau (solde débiteur)',NULL,NULL,1),(114,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','12','1501','Résultat de l\'exercice (bénéfice ou perte)',NULL,NULL,1),(115,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','120','114','Résultat de l\'exercice (bénéfice)',NULL,NULL,1),(116,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','129','114','Résultat de l\'exercice (perte)',NULL,NULL,1),(117,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','13','1501','Subventions d\'investissement',NULL,NULL,1),(118,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','131','117','Subventions d\'équipement',NULL,NULL,1),(119,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','138','117','Autres subventions d\'investissement',NULL,NULL,1),(120,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','139','117','Subventions d\'investissement inscrites au compte de résultat',NULL,NULL,1),(121,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','14','1501','Provisions réglementées',NULL,NULL,1),(122,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','142','121','Provisions réglementées relatives aux immobilisations',NULL,NULL,1),(123,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','143','121','Provisions réglementées relatives aux stocks',NULL,NULL,1),(124,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','144','121','Provisions réglementées relatives aux autres éléments de l\'actif',NULL,NULL,1),(125,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','145','121','Amortissements dérogatoires',NULL,NULL,1),(126,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','146','121','Provision spéciale de réévaluation',NULL,NULL,1),(127,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','147','121','Plus-values réinvesties',NULL,NULL,1),(128,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','148','121','Autres provisions réglementées',NULL,NULL,1),(129,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','15','1501','Provisions pour risques et charges',NULL,NULL,1),(130,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','151','129','Provisions pour risques',NULL,NULL,1),(131,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','153','129','Provisions pour pensions et obligations similaires',NULL,NULL,1),(132,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','154','129','Provisions pour restructurations',NULL,NULL,1),(133,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','155','129','Provisions pour impôts',NULL,NULL,1),(134,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','156','129','Provisions pour renouvellement des immobilisations (entreprises concessionnaires)',NULL,NULL,1),(135,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','157','129','Provisions pour charges à répartir sur plusieurs exercices',NULL,NULL,1),(136,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','158','129','Autres provisions pour charges',NULL,NULL,1),(137,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','16','1501','Emprunts et dettes assimilees',NULL,NULL,1),(138,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','161','137','Emprunts obligataires convertibles',NULL,NULL,1),(139,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','163','137','Autres emprunts obligataires',NULL,NULL,1),(140,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','164','137','Emprunts auprès des établissements de crédit',NULL,NULL,1),(141,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','165','137','Dépôts et cautionnements reçus',NULL,NULL,1),(142,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','166','137','Participation des salariés aux résultats',NULL,NULL,1),(143,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','167','137','Emprunts et dettes assortis de conditions particulières',NULL,NULL,1),(144,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','168','137','Autres emprunts et dettes assimilées',NULL,NULL,1),(145,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','169','137','Primes de remboursement des obligations',NULL,NULL,1),(146,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','17','1501','Dettes rattachées à des participations',NULL,NULL,1),(147,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','171','146','Dettes rattachées à des participations (groupe)',NULL,NULL,1),(148,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','174','146','Dettes rattachées à des participations (hors groupe)',NULL,NULL,1),(149,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','178','146','Dettes rattachées à des sociétés en participation',NULL,NULL,1),(150,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','18','1501','Comptes de liaison des établissements et sociétés en participation',NULL,NULL,1),(151,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','181','150','Comptes de liaison des établissements',NULL,NULL,1),(152,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','186','150','Biens et prestations de services échangés entre établissements (charges)',NULL,NULL,1),(153,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','187','150','Biens et prestations de services échangés entre établissements (produits)',NULL,NULL,1),(154,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','188','150','Comptes de liaison des sociétés en participation',NULL,NULL,1),(155,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','20','1502','Immobilisations incorporelles',NULL,NULL,1),(156,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','201','155','Frais d\'établissement',NULL,NULL,1),(157,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','203','155','Frais de recherche et de développement',NULL,NULL,1),(158,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','205','155','Concessions et droits similaires, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',NULL,NULL,1),(159,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','206','155','Droit au bail',NULL,NULL,1),(160,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','207','155','Fonds commercial',NULL,NULL,1),(161,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','208','155','Autres immobilisations incorporelles',NULL,NULL,1),(162,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','21','1502','Immobilisations corporelles',NULL,NULL,1),(163,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','211','162','Terrains',NULL,NULL,1),(164,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','212','162','Agencements et aménagements de terrains',NULL,NULL,1),(165,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','213','162','Constructions',NULL,NULL,1),(166,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','214','162','Constructions sur sol d\'autrui',NULL,NULL,1),(167,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','215','162','Installations techniques, matériels et outillage industriels',NULL,NULL,1),(168,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','218','162','Autres immobilisations corporelles',NULL,NULL,1),(169,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','22','1502','Immobilisations mises en concession',NULL,NULL,1),(170,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','23','1502','Immobilisations en cours',NULL,NULL,1),(171,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','231','170','Immobilisations corporelles en cours',NULL,NULL,1),(172,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','232','170','Immobilisations incorporelles en cours',NULL,NULL,1),(173,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','237','170','Avances et acomptes versés sur immobilisations incorporelles',NULL,NULL,1),(174,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','238','170','Avances et acomptes versés sur commandes d\'immobilisations corporelles',NULL,NULL,1),(175,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','25','1502','Parts dans des entreprises liées et créances sur des entreprises liées',NULL,NULL,1),(176,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','26','1502','Participations et créances rattachées à des participations',NULL,NULL,1),(177,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','261','176','Titres de participation',NULL,NULL,1),(178,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','266','176','Autres formes de participation',NULL,NULL,1),(179,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','267','176','Créances rattachées à des participations',NULL,NULL,1),(180,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','268','176','Créances rattachées à des sociétés en participation',NULL,NULL,1),(181,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','269','176','Versements restant à effectuer sur titres de participation non libérés',NULL,NULL,1),(182,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','27','1502','Autres immobilisations financieres',NULL,NULL,1),(183,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','271','183','Titres immobilisés autres que les titres immobilisés de l\'activité de portefeuille (droit de propriété)',NULL,NULL,1),(184,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','272','183','Titres immobilisés (droit de créance)',NULL,NULL,1),(185,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','273','183','Titres immobilisés de l\'activité de portefeuille',NULL,NULL,1),(186,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','274','183','Prêts',NULL,NULL,1),(187,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','275','183','Dépôts et cautionnements versés',NULL,NULL,1),(188,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','276','183','Autres créances immobilisées',NULL,NULL,1),(189,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','277','183','(Actions propres ou parts propres)',NULL,NULL,1),(190,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','279','183','Versements restant à effectuer sur titres immobilisés non libérés',NULL,NULL,1),(191,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','28','1502','Amortissements des immobilisations',NULL,NULL,1),(192,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','280','191','Amortissements des immobilisations incorporelles',NULL,NULL,1),(193,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','281','191','Amortissements des immobilisations corporelles',NULL,NULL,1),(194,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','282','191','Amortissements des immobilisations mises en concession',NULL,NULL,1),(195,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','29','1502','Dépréciations des immobilisations',NULL,NULL,1),(196,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','290','195','Dépréciations des immobilisations incorporelles',NULL,NULL,1),(197,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','291','195','Dépréciations des immobilisations corporelles',NULL,NULL,1),(198,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','292','195','Dépréciations des immobilisations mises en concession',NULL,NULL,1),(199,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','293','195','Dépréciations des immobilisations en cours',NULL,NULL,1),(200,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','296','195','Provisions pour dépréciation des participations et créances rattachées à des participations',NULL,NULL,1),(201,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','297','195','Provisions pour dépréciation des autres immobilisations financières',NULL,NULL,1),(202,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','31','1503','Matières premières (et fournitures)',NULL,NULL,1),(203,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','311','202','Matières (ou groupe) A',NULL,NULL,1),(204,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','312','202','Matières (ou groupe) B',NULL,NULL,1),(205,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','317','202','Fournitures A, B, C,',NULL,NULL,1),(206,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','32','1503','Autres approvisionnements',NULL,NULL,1),(207,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','321','206','Matières consommables',NULL,NULL,1),(208,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','322','206','Fournitures consommables',NULL,NULL,1),(209,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','326','206','Emballages',NULL,NULL,1),(210,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','33','1503','En-cours de production de biens',NULL,NULL,1),(211,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','331','210','Produits en cours',NULL,NULL,1),(212,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','335','210','Travaux en cours',NULL,NULL,1),(213,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','34','1503','En-cours de production de services',NULL,NULL,1),(214,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','341','213','Etudes en cours',NULL,NULL,1),(215,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','345','213','Prestations de services en cours',NULL,NULL,1),(216,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','35','1503','Stocks de produits',NULL,NULL,1),(217,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','351','216','Produits intermédiaires',NULL,NULL,1),(218,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','355','216','Produits finis',NULL,NULL,1),(219,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','358','216','Produits résiduels (ou matières de récupération)',NULL,NULL,1),(220,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','37','1503','Stocks de marchandises',NULL,NULL,1),(221,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','371','220','Marchandises (ou groupe) A',NULL,NULL,1),(222,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','372','220','Marchandises (ou groupe) B',NULL,NULL,1),(223,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','39','1503','Provisions pour dépréciation des stocks et en-cours',NULL,NULL,1),(224,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','391','223','Provisions pour dépréciation des matières premières',NULL,NULL,1),(225,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','392','223','Provisions pour dépréciation des autres approvisionnements',NULL,NULL,1),(226,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','393','223','Provisions pour dépréciation des en-cours de production de biens',NULL,NULL,1),(227,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','394','223','Provisions pour dépréciation des en-cours de production de services',NULL,NULL,1),(228,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','395','223','Provisions pour dépréciation des stocks de produits',NULL,NULL,1),(229,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','397','223','Provisions pour dépréciation des stocks de marchandises',NULL,NULL,1),(230,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','40','1504','Fournisseurs et Comptes rattachés',NULL,NULL,1),(231,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','400','230','Fournisseurs et Comptes rattachés',NULL,NULL,1),(232,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','SUPPLIER','401','230','Fournisseurs',NULL,NULL,1),(233,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','403','230','Fournisseurs - Effets à payer',NULL,NULL,1),(234,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','404','230','Fournisseurs d\'immobilisations',NULL,NULL,1),(235,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','405','230','Fournisseurs d\'immobilisations - Effets à payer',NULL,NULL,1),(236,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','408','230','Fournisseurs - Factures non parvenues',NULL,NULL,1),(237,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','409','230','Fournisseurs débiteurs',NULL,NULL,1),(238,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','41','1504','Clients et comptes rattachés',NULL,NULL,1),(239,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','410','238','Clients et Comptes rattachés',NULL,NULL,1),(240,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','CUSTOMER','411','238','Clients',NULL,NULL,1),(241,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','413','238','Clients - Effets à recevoir',NULL,NULL,1),(242,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','416','238','Clients douteux ou litigieux',NULL,NULL,1),(243,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','418','238','Clients - Produits non encore facturés',NULL,NULL,1),(244,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','419','238','Clients créditeurs',NULL,NULL,1),(245,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','42','1504','Personnel et comptes rattachés',NULL,NULL,1),(246,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','421','245','Personnel - Rémunérations dues',NULL,NULL,1),(247,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','422','245','Comités d\'entreprises, d\'établissement, ...',NULL,NULL,1),(248,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','424','245','Participation des salariés aux résultats',NULL,NULL,1),(249,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','425','245','Personnel - Avances et acomptes',NULL,NULL,1),(250,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','426','245','Personnel - Dépôts',NULL,NULL,1),(251,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','427','245','Personnel - Oppositions',NULL,NULL,1),(252,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','428','245','Personnel - Charges à payer et produits à recevoir',NULL,NULL,1),(253,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','43','1504','Sécurité sociale et autres organismes sociaux',NULL,NULL,1),(254,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','431','253','Sécurité sociale',NULL,NULL,1),(255,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','437','253','Autres organismes sociaux',NULL,NULL,1),(256,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','438','253','Organismes sociaux - Charges à payer et produits à recevoir',NULL,NULL,1),(257,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','44','1504','État et autres collectivités publiques',NULL,NULL,1),(258,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','441','257','État - Subventions à recevoir',NULL,NULL,1),(259,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','442','257','Etat - Impôts et taxes recouvrables sur des tiers',NULL,NULL,1),(260,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','443','257','Opérations particulières avec l\'Etat, les collectivités publiques, les organismes internationaux',NULL,NULL,1),(261,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','444','257','Etat - Impôts sur les bénéfices',NULL,NULL,1),(262,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','445','257','Etat - Taxes sur le chiffre d\'affaires',NULL,NULL,1),(263,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','446','257','Obligations cautionnées',NULL,NULL,1),(264,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','447','257','Autres impôts, taxes et versements assimilés',NULL,NULL,1),(265,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','448','257','Etat - Charges à payer et produits à recevoir',NULL,NULL,1),(266,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','449','257','Quotas d\'émission à restituer à l\'Etat',NULL,NULL,1),(267,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','45','1504','Groupe et associes',NULL,NULL,1),(268,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','451','267','Groupe',NULL,NULL,1),(269,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','455','267','Associés - Comptes courants',NULL,NULL,1),(270,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','456','267','Associés - Opérations sur le capital',NULL,NULL,1),(271,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','457','267','Associés - Dividendes à payer',NULL,NULL,1),(272,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','458','267','Associés - Opérations faites en commun et en G.I.E.',NULL,NULL,1),(273,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','46','1504','Débiteurs divers et créditeurs divers',NULL,NULL,1),(274,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','462','273','Créances sur cessions d\'immobilisations',NULL,NULL,1),(275,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','464','273','Dettes sur acquisitions de valeurs mobilières de placement',NULL,NULL,1),(276,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','465','273','Créances sur cessions de valeurs mobilières de placement',NULL,NULL,1),(277,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','467','273','Autres comptes débiteurs ou créditeurs',NULL,NULL,1),(278,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','468','273','Divers - Charges à payer et produits à recevoir',NULL,NULL,1),(279,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','47','1504','Comptes transitoires ou d\'attente',NULL,NULL,1),(280,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','471','279','Comptes d\'attente',NULL,NULL,1),(281,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','476','279','Différence de conversion - Actif',NULL,NULL,1),(282,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','477','279','Différences de conversion - Passif',NULL,NULL,1),(283,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','478','279','Autres comptes transitoires',NULL,NULL,1),(284,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','48','1504','Comptes de régularisation',NULL,NULL,1),(285,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','481','284','Charges à répartir sur plusieurs exercices',NULL,NULL,1),(286,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','486','284','Charges constatées d\'avance',NULL,NULL,1),(287,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','487','284','Produits constatés d\'avance',NULL,NULL,1),(288,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','488','284','Comptes de répartition périodique des charges et des produits',NULL,NULL,1),(289,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','489','284','Quotas d\'émission alloués par l\'Etat',NULL,NULL,1),(290,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','49','1504','Provisions pour dépréciation des comptes de tiers',NULL,NULL,1),(291,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','491','290','Provisions pour dépréciation des comptes de clients',NULL,NULL,1),(292,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','495','290','Provisions pour dépréciation des comptes du groupe et des associés',NULL,NULL,1),(293,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','496','290','Provisions pour dépréciation des comptes de débiteurs divers',NULL,NULL,1),(294,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','50','1505','Valeurs mobilières de placement',NULL,NULL,1),(295,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','501','294','Parts dans des entreprises liées',NULL,NULL,1),(296,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','502','294','Actions propres',NULL,NULL,1),(297,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','503','294','Actions',NULL,NULL,1),(298,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','504','294','Autres titres conférant un droit de propriété',NULL,NULL,1),(299,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','505','294','Obligations et bons émis par la société et rachetés par elle',NULL,NULL,1),(300,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','506','294','Obligations',NULL,NULL,1),(301,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','507','294','Bons du Trésor et bons de caisse à court terme',NULL,NULL,1),(302,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','508','294','Autres valeurs mobilières de placement et autres créances assimilées',NULL,NULL,1),(303,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','509','294','Versements restant à effectuer sur valeurs mobilières de placement non libérées',NULL,NULL,1),(304,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','51','1505','Banques, établissements financiers et assimilés',NULL,NULL,1),(305,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','511','304','Valeurs à l\'encaissement',NULL,NULL,1),(306,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','BANK','512','304','Banques',NULL,NULL,1),(307,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','514','304','Chèques postaux',NULL,NULL,1),(308,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','515','304','Caisses du Trésor et des établissements publics',NULL,NULL,1),(309,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','516','304','Sociétés de bourse',NULL,NULL,1),(310,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','517','304','Autres organismes financiers',NULL,NULL,1),(311,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','518','304','Intérêts courus',NULL,NULL,1),(312,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','519','304','Concours bancaires courants',NULL,NULL,1),(313,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','52','1505','Instruments de trésorerie',NULL,NULL,1),(314,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','CASH','53','1505','Caisse',NULL,NULL,1),(315,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','531','314','Caisse siège social',NULL,NULL,1),(316,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','532','314','Caisse succursale (ou usine) A',NULL,NULL,1),(317,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','533','314','Caisse succursale (ou usine) B',NULL,NULL,1),(318,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','54','1505','Régies d\'avance et accréditifs',NULL,NULL,1),(319,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','58','1505','Virements internes',NULL,NULL,1),(320,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','59','1505','Provisions pour dépréciation des comptes financiers',NULL,NULL,1),(321,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','590','320','Provisions pour dépréciation des valeurs mobilières de placement',NULL,NULL,1),(322,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','PRODUCT','60','1506','Achats',NULL,NULL,1),(323,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','601','322','Achats stockés - Matières premières (et fournitures)',NULL,NULL,1),(324,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','602','322','Achats stockés - Autres approvisionnements',NULL,NULL,1),(325,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','603','322','Variations des stocks (approvisionnements et marchandises)',NULL,NULL,1),(326,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','604','322','Achats stockés - Matières premières (et fournitures)',NULL,NULL,1),(327,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','605','322','Achats de matériel, équipements et travaux',NULL,NULL,1),(328,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','606','322','Achats non stockés de matière et fournitures',NULL,NULL,1),(329,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','607','322','Achats de marchandises',NULL,NULL,1),(330,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','608','322','(Compte réservé, le cas échéant, à la récapitulation des frais accessoires incorporés aux achats)',NULL,NULL,1),(331,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','609','322','Rabais, remises et ristournes obtenus sur achats',NULL,NULL,1),(332,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','SERVICE','61','1506','Services extérieurs',NULL,NULL,1),(333,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','611','332','Sous-traitance générale',NULL,NULL,1),(334,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','612','332','Redevances de crédit-bail',NULL,NULL,1),(335,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','613','332','Locations',NULL,NULL,1),(336,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','614','332','Charges locatives et de copropriété',NULL,NULL,1),(337,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','615','332','Entretien et réparations',NULL,NULL,1),(338,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','616','332','Primes d\'assurances',NULL,NULL,1),(339,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','617','332','Etudes et recherches',NULL,NULL,1),(340,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','618','332','Divers',NULL,NULL,1),(341,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','619','332','Rabais, remises et ristournes obtenus sur services extérieurs',NULL,NULL,1),(342,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','62','1506','Autres services extérieurs',NULL,NULL,1),(343,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','621','342','Personnel extérieur à l\'entreprise',NULL,NULL,1),(344,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','622','342','Rémunérations d\'intermédiaires et honoraires',NULL,NULL,1),(345,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','623','342','Publicité, publications, relations publiques',NULL,NULL,1),(346,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','624','342','Transports de biens et transports collectifs du personnel',NULL,NULL,1),(347,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','625','342','Déplacements, missions et réceptions',NULL,NULL,1),(348,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','626','342','Frais postaux et de télécommunications',NULL,NULL,1),(349,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','627','342','Services bancaires et assimilés',NULL,NULL,1),(350,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','628','342','Divers',NULL,NULL,1),(351,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','629','342','Rabais, remises et ristournes obtenus sur autres services extérieurs',NULL,NULL,1),(352,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','63','1506','Impôts, taxes et versements assimilés',NULL,NULL,1),(353,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','631','352','Impôts, taxes et versements assimilés sur rémunérations (administrations des impôts)',NULL,NULL,1),(354,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','633','352','Impôts, taxes et versements assimilés sur rémunérations (autres organismes)',NULL,NULL,1),(355,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','635','352','Autres impôts, taxes et versements assimilés (administrations des impôts)',NULL,NULL,1),(356,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','637','352','Autres impôts, taxes et versements assimilés (autres organismes)',NULL,NULL,1),(357,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','64','1506','Charges de personnel',NULL,NULL,1),(358,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','641','357','Rémunérations du personnel',NULL,NULL,1),(359,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','644','357','Rémunération du travail de l\'exploitant',NULL,NULL,1),(360,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','SOCIAL','645','357','Charges de sécurité sociale et de prévoyance',NULL,NULL,1),(361,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','646','357','Cotisations sociales personnelles de l\'exploitant',NULL,NULL,1),(362,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','647','357','Autres charges sociales',NULL,NULL,1),(363,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','648','357','Autres charges de personnel',NULL,NULL,1),(364,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','65','1506','Autres charges de gestion courante',NULL,NULL,1),(365,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','651','364','Redevances pour concessions, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',NULL,NULL,1),(366,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','653','364','Jetons de présence',NULL,NULL,1),(367,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','654','364','Pertes sur créances irrécouvrables',NULL,NULL,1),(368,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','655','364','Quote-part de résultat sur opérations faites en commun',NULL,NULL,1),(369,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','658','364','Charges diverses de gestion courante',NULL,NULL,1),(370,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','66','1506','Charges financières',NULL,NULL,1),(371,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','661','370','Charges d\'intérêts',NULL,NULL,1),(372,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','664','370','Pertes sur créances liées à des participations',NULL,NULL,1),(373,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','665','370','Escomptes accordés',NULL,NULL,1),(374,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','666','370','Pertes de change',NULL,NULL,1),(375,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','667','370','Charges nettes sur cessions de valeurs mobilières de placement',NULL,NULL,1),(376,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','668','370','Autres charges financières',NULL,NULL,1),(377,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','67','1506','Charges exceptionnelles',NULL,NULL,1),(378,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','671','377','Charges exceptionnelles sur opérations de gestion',NULL,NULL,1),(379,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','672','377','(Compte à la disposition des entités pour enregistrer, en cours d\'exercice, les charges sur exercices antérieurs)',NULL,NULL,1),(380,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','675','377','Valeurs comptables des éléments d\'actif cédés',NULL,NULL,1),(381,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','678','377','Autres charges exceptionnelles',NULL,NULL,1),(382,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','68','1506','Dotations aux amortissements et aux provisions',NULL,NULL,1),(383,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','681','382','Dotations aux amortissements et aux provisions - Charges d\'exploitation',NULL,NULL,1),(384,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','686','382','Dotations aux amortissements et aux provisions - Charges financières',NULL,NULL,1),(385,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','687','382','Dotations aux amortissements et aux provisions - Charges exceptionnelles',NULL,NULL,1),(386,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','69','1506','Participation des salariés - impôts sur les bénéfices et assimiles',NULL,NULL,1),(387,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','691','386','Participation des salariés aux résultats',NULL,NULL,1),(388,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','695','386','Impôts sur les bénéfices',NULL,NULL,1),(389,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','696','386','Suppléments d\'impôt sur les sociétés liés aux distributions',NULL,NULL,1),(390,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','697','386','Imposition forfaitaire annuelle des sociétés',NULL,NULL,1),(391,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','698','386','Intégration fiscale',NULL,NULL,1),(392,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','699','386','Produits - Reports en arrière des déficits',NULL,NULL,1),(393,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','70','1507','Ventes de produits fabriqués, prestations de services, marchandises',NULL,NULL,1),(394,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','PRODUCT','701','393','Ventes de produits finis',NULL,NULL,1),(395,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','702','393','Ventes de produits intermédiaires',NULL,NULL,1),(396,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','703','393','Ventes de produits résiduels',NULL,NULL,1),(397,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','704','393','Travaux',NULL,NULL,1),(398,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','705','393','Etudes',NULL,NULL,1),(399,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','SERVICE','706','393','Prestations de services',NULL,NULL,1),(400,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','PRODUCT','707','393','Ventes de marchandises',NULL,NULL,1),(401,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','PRODUCT','708','393','Produits des activités annexes',NULL,NULL,1),(402,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','709','393','Rabais, remises et ristournes accordés par l\'entreprise',NULL,NULL,1),(403,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','71','1507','Production stockée (ou déstockage)',NULL,NULL,1),(404,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','713','403','Variation des stocks (en-cours de production, produits)',NULL,NULL,1),(405,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','72','1507','Production immobilisée',NULL,NULL,1),(406,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','721','405','Immobilisations incorporelles',NULL,NULL,1),(407,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','722','405','Immobilisations corporelles',NULL,NULL,1),(408,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','74','1507','Subventions d\'exploitation',NULL,NULL,1),(409,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','75','1507','Autres produits de gestion courante',NULL,NULL,1),(410,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','751','409','Redevances pour concessions, brevets, licences, marques, procédés, logiciels, droits et valeurs similaires',NULL,NULL,1),(411,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','752','409','Revenus des immeubles non affectés à des activités professionnelles',NULL,NULL,1),(412,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','753','409','Jetons de présence et rémunérations d\'administrateurs, gérants,...',NULL,NULL,1),(413,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','754','409','Ristournes perçues des coopératives (provenant des excédents)',NULL,NULL,1),(414,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','755','409','Quotes-parts de résultat sur opérations faites en commun',NULL,NULL,1),(415,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','758','409','Produits divers de gestion courante',NULL,NULL,1),(416,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','76','1507','Produits financiers',NULL,NULL,1),(417,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','761','416','Produits de participations',NULL,NULL,1),(418,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','762','416','Produits des autres immobilisations financières',NULL,NULL,1),(419,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','763','416','Revenus des autres créances',NULL,NULL,1),(420,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','764','416','Revenus des valeurs mobilières de placement',NULL,NULL,1),(421,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','765','416','Escomptes obtenus',NULL,NULL,1),(422,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','766','416','Gains de change',NULL,NULL,1),(423,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','767','416','Produits nets sur cessions de valeurs mobilières de placement',NULL,NULL,1),(424,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','768','416','Autres produits financiers',NULL,NULL,1),(425,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','77','1507','Produits exceptionnels',NULL,NULL,1),(426,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','771','425','Produits exceptionnels sur opérations de gestion',NULL,NULL,1),(427,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','772','425','(Compte à la disposition des entités pour enregistrer, en cours d\'exercice, les produits sur exercices antérieurs)',NULL,NULL,1),(428,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','775','425','Produits des cessions d\'éléments d\'actif',NULL,NULL,1),(429,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','777','425','Quote-part des subventions d\'investissement virée au résultat de l\'exercice',NULL,NULL,1),(430,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','778','425','Autres produits exceptionnels',NULL,NULL,1),(431,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','78','1507','Reprises sur amortissements et provisions',NULL,NULL,1),(432,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','781','431','Reprises sur amortissements et provisions (à inscrire dans les produits d\'exploitation)',NULL,NULL,1),(433,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','786','431','Reprises sur provisions pour risques (à inscrire dans les produits financiers)',NULL,NULL,1),(434,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','787','431','Reprises sur provisions (à inscrire dans les produits exceptionnels)',NULL,NULL,1),(435,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','79','1507','Transferts de charges',NULL,NULL,1),(436,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','791','435','Transferts de charges d\'exploitation ',NULL,NULL,1),(437,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','796','435','Transferts de charges financières',NULL,NULL,1),(438,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','797','435','Transferts de charges exceptionnelles',NULL,NULL,1),(439,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','10','1351','Capital',NULL,NULL,1),(440,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','100','439','Capital souscrit ou capital personnel',NULL,NULL,1),(441,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1000','440','Capital non amorti',NULL,NULL,1),(442,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1001','440','Capital amorti',NULL,NULL,1),(443,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','101','439','Capital non appelé',NULL,NULL,1),(444,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','109','439','Compte de l\'exploitant',NULL,NULL,1),(445,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1090','444','Opérations courantes',NULL,NULL,1),(446,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1091','444','Impôts personnels',NULL,NULL,1),(447,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1092','444','Rémunérations et autres avantages',NULL,NULL,1),(448,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','11','1351','Primes d\'émission',NULL,NULL,1),(449,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','12','1351','Plus-values de réévaluation',NULL,NULL,1),(450,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','120','449','Plus-values de réévaluation sur immobilisations incorporelles',NULL,NULL,1),(451,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1200','450','Plus-values de réévaluation',NULL,NULL,1),(452,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1201','450','Reprises de réductions de valeur',NULL,NULL,1),(453,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','121','449','Plus-values de réévaluation sur immobilisations corporelles',NULL,NULL,1),(454,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1210','453','Plus-values de réévaluation',NULL,NULL,1),(455,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1211','453','Reprises de réductions de valeur',NULL,NULL,1),(456,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','122','449','Plus-values de réévaluation sur immobilisations financières',NULL,NULL,1),(457,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1220','456','Plus-values de réévaluation',NULL,NULL,1),(458,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1221','456','Reprises de réductions de valeur',NULL,NULL,1),(459,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','123','449','Plus-values de réévaluation sur stocks',NULL,NULL,1),(460,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','124','449','Reprises de réductions de valeur sur placements de trésorerie',NULL,NULL,1),(461,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','13','1351','Réserve',NULL,NULL,1),(462,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','130','461','Réserve légale',NULL,NULL,1),(463,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','131','461','Réserves indisponibles',NULL,NULL,1),(464,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1310','463','Réserve pour actions propres',NULL,NULL,1),(465,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1311','463','Autres réserves indisponibles',NULL,NULL,1),(466,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','132','461','Réserves immunisées',NULL,NULL,1),(467,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','133','461','Réserves disponibles',NULL,NULL,1),(468,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1330','467','Réserve pour régularisation de dividendes',NULL,NULL,1),(469,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1331','467','Réserve pour renouvellement des immobilisations',NULL,NULL,1),(470,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1332','467','Réserve pour installations en faveur du personnel 1333 Réserves libres',NULL,NULL,1),(471,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','14','1351','Bénéfice reporté (ou perte reportée)',NULL,NULL,1),(472,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','15','1351','Subsides en capital',NULL,NULL,1),(473,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','150','472','Montants obtenus',NULL,NULL,1),(474,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','151','472','Montants transférés aux résultats',NULL,NULL,1),(475,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','16','1351','Provisions pour risques et charges',NULL,NULL,1),(476,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','160','475','Provisions pour pensions et obligations similaires',NULL,NULL,1),(477,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','161','475','Provisions pour charges fiscales',NULL,NULL,1),(478,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','162','475','Provisions pour grosses réparations et gros entretiens',NULL,NULL,1),(479,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','163','475','à 169 Provisions pour autres risques et charges',NULL,NULL,1),(480,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','164','475','Provisions pour sûretés personnelles ou réelles constituées à l\'appui de dettes et d\'engagements de tiers',NULL,NULL,1),(481,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','165','475','Provisions pour engagements relatifs à l\'acquisition ou à la cession d\'immobilisations',NULL,NULL,1),(482,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','166','475','Provisions pour exécution de commandes passées ou reçues',NULL,NULL,1),(483,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','167','475','Provisions pour positions et marchés à terme en devises ou positions et marchés à terme en marchandises',NULL,NULL,1),(484,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','168','475','Provisions pour garanties techniques attachées aux ventes et prestations déjà effectuées par l\'entreprise',NULL,NULL,1),(485,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','169','475','Provisions pour autres risques et charges',NULL,NULL,1),(486,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1690','485','Pour litiges en cours',NULL,NULL,1),(487,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1691','485','Pour amendes, doubles droits et pénalités',NULL,NULL,1),(488,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1692','485','Pour propre assureur',NULL,NULL,1),(489,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1693','485','Pour risques inhérents aux opérations de crédits à moyen ou long terme',NULL,NULL,1),(490,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1695','485','Provision pour charge de liquidation',NULL,NULL,1),(491,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1696','485','Provision pour départ de personnel',NULL,NULL,1),(492,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1699','485','Pour risques divers',NULL,NULL,1),(493,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17','1351','Dettes à plus d\'un an',NULL,NULL,1),(494,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','170','493','Emprunts subordonnés',NULL,NULL,1),(495,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1700','494','Convertibles',NULL,NULL,1),(496,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1701','494','Non convertibles',NULL,NULL,1),(497,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','171','493','Emprunts obligataires non subordonnés',NULL,NULL,1),(498,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1710','498','Convertibles',NULL,NULL,1),(499,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1711','498','Non convertibles',NULL,NULL,1),(500,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','172','493','Dettes de location-financement et assimilés',NULL,NULL,1),(501,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1720','500','Dettes de location-financement de biens immobiliers',NULL,NULL,1),(502,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1721','500','Dettes de location-financement de biens mobiliers',NULL,NULL,1),(503,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1722','500','Dettes sur droits réels sur immeubles',NULL,NULL,1),(504,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','173','493','Etablissements de crédit',NULL,NULL,1),(505,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1730','504','Dettes en compte',NULL,NULL,1),(506,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17300','505','Banque A',NULL,NULL,1),(507,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17301','505','Banque B',NULL,NULL,1),(508,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17302','505','Banque C',NULL,NULL,1),(509,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17303','505','Banque D',NULL,NULL,1),(510,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1731','504','Promesses',NULL,NULL,1),(511,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17310','510','Banque A',NULL,NULL,1),(512,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17311','510','Banque B',NULL,NULL,1),(513,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17312','510','Banque C',NULL,NULL,1),(514,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17313','510','Banque D',NULL,NULL,1),(515,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1732','504','Crédits d\'acceptation',NULL,NULL,1),(516,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17320','515','Banque A',NULL,NULL,1),(517,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17321','515','Banque B',NULL,NULL,1),(518,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17322','515','Banque C',NULL,NULL,1),(519,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17323','515','Banque D',NULL,NULL,1),(520,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','174','493','Autres emprunts',NULL,NULL,1),(521,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175','493','Dettes commerciales',NULL,NULL,1),(522,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1750','521','Fournisseurs : dettes en compte',NULL,NULL,1),(523,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17500','522','Entreprises apparentées',NULL,NULL,1),(524,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175000','523','Entreprises liées',NULL,NULL,1),(525,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175001','523','Entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(526,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17501','522','Fournisseurs ordinaires',NULL,NULL,1),(527,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175010','526','Fournisseurs belges',NULL,NULL,1),(528,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175011','526','Fournisseurs C.E.E.',NULL,NULL,1),(529,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175012','526','Fournisseurs importation',NULL,NULL,1),(530,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1751','521','Effets à payer',NULL,NULL,1),(531,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17510','530','Entreprises apparentées',NULL,NULL,1),(532,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175100','531','Entreprises liées',NULL,NULL,1),(533,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175101','531','Entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(534,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','17511','530','Fournisseurs ordinaires',NULL,NULL,1),(535,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175110','534','Fournisseurs belges',NULL,NULL,1),(536,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175111','534','Fournisseurs C.E.E.',NULL,NULL,1),(537,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','175112','534','Fournisseurs importation',NULL,NULL,1),(538,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','176','493','Acomptes reçus sur commandes',NULL,NULL,1),(539,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','178','493','Cautionnements reçus en numéraires',NULL,NULL,1),(540,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','179','493','Dettes diverses',NULL,NULL,1),(541,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1790','540','Entreprises liées',NULL,NULL,1),(542,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1791','540','Autres entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(543,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1792','540','Administrateurs, gérants et associés',NULL,NULL,1),(544,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1794','540','Rentes viagères capitalisées',NULL,NULL,1),(545,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1798','540','Dettes envers les coparticipants des associations momentanées et en participation',NULL,NULL,1),(546,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1799','540','Autres dettes diverses',NULL,NULL,1),(547,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','18','1351','Comptes de liaison des établissements et succursales',NULL,NULL,1),(548,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','20','1352','Frais d\'établissement',NULL,NULL,1),(549,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','200','548','Frais de constitution et d\'augmentation de capital',NULL,NULL,1),(550,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2000','549','Frais de constitution et d\'augmentation de capital',NULL,NULL,1),(551,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2009','549','Amortissements sur frais de constitution et d\'augmentation de capital',NULL,NULL,1),(552,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','201','548','Frais d\'émission d\'emprunts et primes de remboursement',NULL,NULL,1),(553,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2010','552','Agios sur emprunts et frais d\'émission d\'emprunts',NULL,NULL,1),(554,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2019','552','Amortissements sur agios sur emprunts et frais d\'émission d\'emprunts',NULL,NULL,1),(555,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','202','548','Autres frais d\'établissement',NULL,NULL,1),(556,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2020','555','Autres frais d\'établissement',NULL,NULL,1),(557,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2029','555','Amortissements sur autres frais d\'établissement',NULL,NULL,1),(558,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','203','548','Intérêts intercalaires',NULL,NULL,1),(559,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2030','558','Intérêts intercalaires',NULL,NULL,1),(560,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2039','558','Amortissements sur intérêts intercalaires',NULL,NULL,1),(561,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','204','548','Frais de restructuration',NULL,NULL,1),(562,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2040','561','Coût des frais de restructuration',NULL,NULL,1),(563,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2049','561','Amortissements sur frais de restructuration',NULL,NULL,1),(564,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','21','1352','Immobilisations incorporelles',NULL,NULL,1),(565,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','210','564','Frais de recherche et de développement',NULL,NULL,1),(566,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2100','565','Frais de recherche et de mise au point',NULL,NULL,1),(567,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2108','565','Plus-values actées sur frais de recherche et de mise au point',NULL,NULL,1),(568,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2109','565','Amortissements sur frais de recherche et de mise au point',NULL,NULL,1),(569,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','211','564','Concessions, brevets, licences, savoir-faire, marque et droits similaires',NULL,NULL,1),(570,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2110','569','Concessions, brevets, licences, marques, etc',NULL,NULL,1),(571,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2118','569','Plus-values actées sur concessions, etc',NULL,NULL,1),(572,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2119','569','Amortissements sur concessions, etc',NULL,NULL,1),(573,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','212','564','Goodwill',NULL,NULL,1),(574,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2120','573','Coût d\'acquisition',NULL,NULL,1),(575,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2128','573','Plus-values actées',NULL,NULL,1),(576,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2129','573','Amortissements sur goodwill',NULL,NULL,1),(577,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','213','564','Acomptes versés',NULL,NULL,1),(578,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22','1352','Terrains et constructions',NULL,NULL,1),(579,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','220','578','Terrains',NULL,NULL,1),(580,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2200','579','Terrains',NULL,NULL,1),(581,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2201','579','Frais d\'acquisition sur terrains',NULL,NULL,1),(582,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2208','579','Plus-values actées sur terrains',NULL,NULL,1),(583,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2209','579','Amortissements et réductions de valeur',NULL,NULL,1),(584,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22090','583','Amortissements sur frais d\'acquisition',NULL,NULL,1),(585,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22091','583','Réductions de valeur sur terrains',NULL,NULL,1),(586,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','221','578','Constructions',NULL,NULL,1),(587,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2210','586','Bâtiments industriels',NULL,NULL,1),(588,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2211','586','Bâtiments administratifs et commerciaux',NULL,NULL,1),(589,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2212','586','Autres bâtiments d\'exploitation',NULL,NULL,1),(590,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2213','586','Voies de transport et ouvrages d\'art',NULL,NULL,1),(591,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2215','586','Constructions sur sol d\'autrui',NULL,NULL,1),(592,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2216','586','Frais d\'acquisition sur constructions',NULL,NULL,1),(593,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2218','586','Plus-values actées',NULL,NULL,1),(594,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22180','593','Sur bâtiments industriels',NULL,NULL,1),(595,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22181','593','Sur bâtiments administratifs et commerciaux',NULL,NULL,1),(596,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22182','593','Sur autres bâtiments d\'exploitation',NULL,NULL,1),(597,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22184','593','Sur voies de transport et ouvrages d\'art',NULL,NULL,1),(598,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2219','586','Amortissements sur constructions',NULL,NULL,1),(599,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22190','598','Sur bâtiments industriels',NULL,NULL,1),(600,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22191','598','Sur bâtiments administratifs et commerciaux',NULL,NULL,1),(601,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22192','598','Sur autres bâtiments d\'exploitation',NULL,NULL,1),(602,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22194','598','Sur voies de transport et ouvrages d\'art',NULL,NULL,1),(603,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22195','598','Sur constructions sur sol d\'autrui',NULL,NULL,1),(604,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22196','598','Sur frais d\'acquisition sur constructions',NULL,NULL,1),(605,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','222','578','Terrains bâtis',NULL,NULL,1),(606,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2220','605','Valeur d\'acquisition',NULL,NULL,1),(607,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22200','606','Bâtiments industriels',NULL,NULL,1),(608,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22201','606','Bâtiments administratifs et commerciaux',NULL,NULL,1),(609,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22202','606','Autres bâtiments d\'exploitation',NULL,NULL,1),(610,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22203','606','Voies de transport et ouvrages d\'art',NULL,NULL,1),(611,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22204','606','Frais d\'acquisition des terrains à bâtir',NULL,NULL,1),(612,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2228','605','Plus-values actées',NULL,NULL,1),(613,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22280','612','Sur bâtiments industriels',NULL,NULL,1),(614,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22281','612','Sur bâtiments administratifs et commerciaux',NULL,NULL,1),(615,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22282','612','Sur autres bâtiments d\'exploitation',NULL,NULL,1),(616,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22283','612','Sur voies de transport et ouvrages d\'art',NULL,NULL,1),(617,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2229','605','Amortissements sur terrains bâtis',NULL,NULL,1),(618,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22290','617','Sur bâtiments industriels',NULL,NULL,1),(619,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22291','617','Sur bâtiments administratifs et commerciaux',NULL,NULL,1),(620,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22292','617','Sur autres bâtiments d\'exploitation',NULL,NULL,1),(621,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22293','617','Sur voies de transport et ouvrages d\'art',NULL,NULL,1),(622,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','22294','617','Sur frais d\'acquisition des terrains bâtis',NULL,NULL,1),(623,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','223','578','Autres droits réels sur des immeubles',NULL,NULL,1),(624,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2230','623','Valeur d\'acquisition',NULL,NULL,1),(625,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2238','623','Plus-values actées',NULL,NULL,1),(626,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2239','623','Amortissements',NULL,NULL,1),(627,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','23','1352','Installations, machines et outillages',NULL,NULL,1),(628,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','230','627','Installations',NULL,NULL,1),(629,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2300','628','Installations bâtiments industriels',NULL,NULL,1),(630,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2301','628','Installations bâtiments administratifs et commerciaux',NULL,NULL,1),(631,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2302','628','Installations bâtiments d\'exploitation',NULL,NULL,1),(632,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2303','628','Installations voies de transport et ouvrages d\'art',NULL,NULL,1),(633,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2300','628','Installation d\'eau',NULL,NULL,1),(634,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2301','628','Installation d\'électricité',NULL,NULL,1),(635,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2302','628','Installation de vapeur',NULL,NULL,1),(636,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2303','628','Installation de gaz',NULL,NULL,1),(637,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2304','628','Installation de chauffage',NULL,NULL,1),(638,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2305','628','Installation de conditionnement d\'air',NULL,NULL,1),(639,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2306','628','Installation de chargement',NULL,NULL,1),(640,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','231','627','Machines',NULL,NULL,1),(641,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2310','640','Division A',NULL,NULL,1),(642,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2311','640','Division B',NULL,NULL,1),(643,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2312','640','Division C',NULL,NULL,1),(644,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','237','627','Outillage',NULL,NULL,1),(645,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2370','644','Division A',NULL,NULL,1),(646,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2371','644','Division B',NULL,NULL,1),(647,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2372','644','Division C',NULL,NULL,1),(648,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','238','627','Plus-values actées',NULL,NULL,1),(649,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2380','648','Sur installations',NULL,NULL,1),(650,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2381','648','Sur machines',NULL,NULL,1),(651,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2382','648','Sur outillage',NULL,NULL,1),(652,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','239','627','Amortissements',NULL,NULL,1),(653,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2390','652','Sur installations',NULL,NULL,1),(654,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2391','652','Sur machines',NULL,NULL,1),(655,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2392','652','Sur outillage',NULL,NULL,1),(656,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24','1352','Mobilier et matériel roulant',NULL,NULL,1),(657,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','240','656','Mobilier',NULL,NULL,1),(658,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2400','656','Mobilier',NULL,NULL,1),(659,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24000','658','Mobilier des bâtiments industriels',NULL,NULL,1),(660,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24001','658','Mobilier des bâtiments administratifs et commerciaux',NULL,NULL,1),(661,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24002','658','Mobilier des autres bâtiments d\'exploitation',NULL,NULL,1),(662,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24003','658','Mobilier oeuvres sociales',NULL,NULL,1),(663,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2401','657','Matériel de bureau et de service social',NULL,NULL,1),(664,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24010','663','Des bâtiments industriels',NULL,NULL,1),(665,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24011','663','Des bâtiments administratifs et commerciaux',NULL,NULL,1),(666,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24012','663','Des autres bâtiments d\'exploitation',NULL,NULL,1),(667,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24013','663','Des oeuvres sociales',NULL,NULL,1),(668,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2408','657','Plus-values actées',NULL,NULL,1),(669,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24080','668','Plus-values actées sur mobilier',NULL,NULL,1),(670,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24081','668','Plus-values actées sur matériel de bureau et service social',NULL,NULL,1),(671,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2409','657','Amortissements',NULL,NULL,1),(672,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24090','671','Amortissements sur mobilier',NULL,NULL,1),(673,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24091','671','Amortissements sur matériel de bureau et service social',NULL,NULL,1),(674,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','241','656','Matériel roulant',NULL,NULL,1),(675,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2410','674','Matériel automobile',NULL,NULL,1),(676,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24100','675','Voitures',NULL,NULL,1),(677,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24105','675','Camions',NULL,NULL,1),(678,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2411','674','Matériel ferroviaire',NULL,NULL,1),(679,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2412','674','Matériel fluvial',NULL,NULL,1),(680,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2413','674','Matériel naval',NULL,NULL,1),(681,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2414','674','Matériel aérien',NULL,NULL,1),(682,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2418','674','Plus-values sur matériel roulant',NULL,NULL,1),(683,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24180','682','Plus-values sur matériel automobile',NULL,NULL,1),(684,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24181','682','Idem sur matériel ferroviaire',NULL,NULL,1),(685,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24182','682','Idem sur matériel fluvial',NULL,NULL,1),(686,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24183','682','Idem sur matériel naval',NULL,NULL,1),(687,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24184','682','Idem sur matériel aérien',NULL,NULL,1),(688,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2419','674','Amortissements sur matériel roulant',NULL,NULL,1),(689,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24190','688','Amortissements sur matériel automobile',NULL,NULL,1),(690,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24191','688','Idem sur matériel ferroviaire',NULL,NULL,1),(691,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24192','688','Idem sur matériel fluvial',NULL,NULL,1),(692,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24193','688','Idem sur matériel naval',NULL,NULL,1),(693,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','24194','688','Idem sur matériel aérien',NULL,NULL,1),(694,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','25','1352','Immobilisation détenues en location-financement et droits similaires',NULL,NULL,1),(695,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','250','694','Terrains et constructions',NULL,NULL,1),(696,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2500','695','Terrains',NULL,NULL,1),(697,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2501','695','Constructions',NULL,NULL,1),(698,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2508','695','Plus-values sur emphytéose, leasing et droits similaires : terrains et constructions',NULL,NULL,1),(699,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2509','695','Amortissements et réductions de valeur sur terrains et constructions en leasing',NULL,NULL,1),(700,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','251','694','Installations, machines et outillage',NULL,NULL,1),(701,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2510','700','Installations',NULL,NULL,1),(702,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2511','700','Machines',NULL,NULL,1),(703,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2512','700','Outillage',NULL,NULL,1),(704,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2518','700','Plus-values actées sur installations machines et outillage pris en leasing',NULL,NULL,1),(705,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2519','700','Amortissements sur installations machines et outillage pris en leasing',NULL,NULL,1),(706,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','252','694','Mobilier et matériel roulant',NULL,NULL,1),(707,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2520','706','Mobilier',NULL,NULL,1),(708,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2521','706','Matériel roulant',NULL,NULL,1),(709,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2528','706','Plus-values actées sur mobilier et matériel roulant en leasing',NULL,NULL,1),(710,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2529','706','Amortissements sur mobilier et matériel roulant en leasing',NULL,NULL,1),(711,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','26','1352','Autres immobilisations corporelles',NULL,NULL,1),(712,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','260','711','Frais d\'aménagements de locaux pris en location',NULL,NULL,1),(713,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','261','711','Maison d\'habitation',NULL,NULL,1),(714,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','262','711','Réserve immobilière',NULL,NULL,1),(715,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','263','711','Matériel d\'emballage',NULL,NULL,1),(716,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','264','711','Emballages récupérables',NULL,NULL,1),(717,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','268','711','Plus-values actées sur autres immobilisations corporelles',NULL,NULL,1),(718,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','269','711','Amortissements sur autres immobilisations corporelles',NULL,NULL,1),(719,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2690','718','Amortissements sur frais d\'aménagement des locaux pris en location',NULL,NULL,1),(720,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2691','718','Amortissements sur maison d\'habitation',NULL,NULL,1),(721,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2692','718','Amortissements sur réserve immobilière',NULL,NULL,1),(722,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2693','718','Amortissements sur matériel d\'emballage',NULL,NULL,1),(723,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2694','718','Amortissements sur emballages récupérables',NULL,NULL,1),(724,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','27','1352','Immobilisations corporelles en cours et acomptes versés',NULL,NULL,1),(725,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','270','724','Immobilisations en cours',NULL,NULL,1),(726,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2700','725','Constructions',NULL,NULL,1),(727,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2701','725','Installations machines et outillage',NULL,NULL,1),(728,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2702','725','Mobilier et matériel roulant',NULL,NULL,1),(729,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2703','725','Autres immobilisations corporelles',NULL,NULL,1),(730,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','271','724','Avances et acomptes versés sur immobilisations en cours',NULL,NULL,1),(731,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','28','1352','Immobilisations financières',NULL,NULL,1),(732,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','280','731','Participations dans des entreprises liées',NULL,NULL,1),(733,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2800','732','Valeur d\'acquisition (peut être subdivisé par participation)',NULL,NULL,1),(734,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2801','732','Montants non appelés (idem)',NULL,NULL,1),(735,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2808','732','Plus-values actées (idem)',NULL,NULL,1),(736,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2809','732','Réductions de valeurs actées (idem)',NULL,NULL,1),(737,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','281','731','Créances sur des entreprises liées',NULL,NULL,1),(738,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2810','737','Créances en compte',NULL,NULL,1),(739,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2811','737','Effets à recevoir',NULL,NULL,1),(740,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2812','737','Titres à revenu fixes',NULL,NULL,1),(741,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2817','737','Créances douteuses',NULL,NULL,1),(742,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2819','737','Réductions de valeurs actées',NULL,NULL,1),(743,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','282','731','Participations dans des entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(744,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2820','743','Valeur d\'acquisition (peut être subdivisé par participation)',NULL,NULL,1),(745,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2821','743','Montants non appelés (idem)',NULL,NULL,1),(746,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2828','743','Plus-values actées (idem)',NULL,NULL,1),(747,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2829','743','Réductions de valeurs actées (idem)',NULL,NULL,1),(748,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','283','731','Créances sur des entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(749,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2830','748','Créances en compte',NULL,NULL,1),(750,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2831','748','Effets à recevoir',NULL,NULL,1),(751,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2832','748','Titres à revenu fixe',NULL,NULL,1),(752,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2837','748','Créances douteuses',NULL,NULL,1),(753,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2839','748','Réductions de valeurs actées',NULL,NULL,1),(754,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','284','731','Autres actions et parts',NULL,NULL,1),(755,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2840','754','Valeur d\'acquisition',NULL,NULL,1),(756,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2841','754','Montants non appelés',NULL,NULL,1),(757,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2848','754','Plus-values actées',NULL,NULL,1),(758,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2849','754','Réductions de valeur actées',NULL,NULL,1),(759,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','285','731','Autres créances',NULL,NULL,1),(760,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2850','759','Créances en compte',NULL,NULL,1),(761,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2851','759','Effets à recevoir',NULL,NULL,1),(762,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2852','759','Titres à revenu fixe',NULL,NULL,1),(763,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2857','759','Créances douteuses',NULL,NULL,1),(764,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2859','759','Réductions de valeur actées',NULL,NULL,1),(765,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','288','731','Cautionnements versés en numéraires',NULL,NULL,1),(766,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2880','765','Téléphone, téléfax, télex',NULL,NULL,1),(767,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2881','765','Gaz',NULL,NULL,1),(768,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2882','765','Eau',NULL,NULL,1),(769,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2883','765','Electricité',NULL,NULL,1),(770,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2887','765','Autres cautionnements versés en numéraires',NULL,NULL,1),(771,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29','1352','Créances à plus d\'un an',NULL,NULL,1),(772,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','290','771','Créances commerciales',NULL,NULL,1),(773,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2900','772','Clients',NULL,NULL,1),(774,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29000','773','Créances en compte sur entreprises liées',NULL,NULL,1),(775,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29001','773','Sur entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(776,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29002','773','Sur clients Belgique',NULL,NULL,1),(777,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29003','773','Sur clients C.E.E.',NULL,NULL,1),(778,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29004','773','Sur clients exportation hors C.E.E.',NULL,NULL,1),(779,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29005','773','Créances sur les coparticipants (associations momentanées)',NULL,NULL,1),(780,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2901','772','Effets à recevoir',NULL,NULL,1),(781,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29010','780','Sur entreprises liées',NULL,NULL,1),(782,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29011','780','Sur entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(783,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29012','780','Sur clients Belgique',NULL,NULL,1),(784,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29013','780','Sur clients C.E.E.',NULL,NULL,1),(785,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29014','780','Sur clients exportation hors C.E.E.',NULL,NULL,1),(786,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2905','772','Retenues sur garanties',NULL,NULL,1),(787,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2906','772','Acomptes versés',NULL,NULL,1),(788,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2907','772','Créances douteuses (à ventiler comme clients 2900)',NULL,NULL,1),(789,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2909','772','Réductions de valeur actées (à ventiler comme clients 2900)',NULL,NULL,1),(790,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','291','771','Autres créances',NULL,NULL,1),(791,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2910','790','Créances en compte',NULL,NULL,1),(792,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29100','791','Sur entreprises liées',NULL,NULL,1),(793,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29101','791','Sur entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(794,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29102','791','Sur autres débiteurs',NULL,NULL,1),(795,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2911','790','Effets à recevoir',NULL,NULL,1),(796,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29110','795','Sur entreprises liées',NULL,NULL,1),(797,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29111','795','Sur entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(798,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','29112','795','Sur autres débiteurs',NULL,NULL,1),(799,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2912','790','Créances résultant de la cession d\'immobilisations données en leasing',NULL,NULL,1),(800,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2917','790','Créances douteuses',NULL,NULL,1),(801,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2919','790','Réductions de valeur actées',NULL,NULL,1),(802,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','30','1353','Approvisionnements - matières premières',NULL,NULL,1),(803,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','300','802','Valeur d\'acquisition',NULL,NULL,1),(804,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','309','802','Réductions de valeur actées',NULL,NULL,1),(805,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','31','1353','Approvsionnements et fournitures',NULL,NULL,1),(806,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','310','805','Valeur d\'acquisition',NULL,NULL,1),(807,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3100','806','Matières d\'approvisionnement',NULL,NULL,1),(808,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3101','806','Energie, charbon, coke, mazout, essence, propane',NULL,NULL,1),(809,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3102','806','Produits d\'entretien',NULL,NULL,1),(810,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3103','806','Fournitures diverses et petit outillage',NULL,NULL,1),(811,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3104','806','Imprimés et fournitures de bureau',NULL,NULL,1),(812,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3105','806','Fournitures de services sociaux',NULL,NULL,1),(813,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3106','806','Emballages commerciaux',NULL,NULL,1),(814,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','31060','813','Emballages perdus',NULL,NULL,1),(815,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','31061','813','Emballages récupérables',NULL,NULL,1),(816,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','319','805','Réductions de valeur actées',NULL,NULL,1),(817,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','32','1353','En cours de fabrication',NULL,NULL,1),(818,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','320','817','Valeur d\'acquisition',NULL,NULL,1),(819,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3200','818','Produits semi-ouvrés',NULL,NULL,1),(820,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3201','818','Produits en cours de fabrication',NULL,NULL,1),(821,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3202','818','Travaux en cours',NULL,NULL,1),(822,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3205','818','Déchets',NULL,NULL,1),(823,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3206','818','Rebuts',NULL,NULL,1),(824,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3209','818','Travaux en association momentanée',NULL,NULL,1),(825,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','329','817','Réductions de valeur actées',NULL,NULL,1),(826,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','33','1353','Produits finis',NULL,NULL,1),(827,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','330','826','Valeur d\'acquisition',NULL,NULL,1),(828,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3300','827','Produits finis',NULL,NULL,1),(829,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','339','826','Réductions de valeur actées',NULL,NULL,1),(830,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','34','1353','Marchandises',NULL,NULL,1),(831,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','340','830','Valeur d\'acquisition',NULL,NULL,1),(832,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3400','831','Groupe A',NULL,NULL,1),(833,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3401','831','Groupe B',NULL,NULL,1),(834,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3402','831','Groupe C',NULL,NULL,1),(835,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','349','830','Réductions de valeur actées',NULL,NULL,1),(836,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','35','1353','Immeubles destinés à la vente',NULL,NULL,1),(837,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','350','836','Valeur d\'acquisition',NULL,NULL,1),(838,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3500','837','Immeuble A',NULL,NULL,1),(839,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3501','837','Immeuble B',NULL,NULL,1),(840,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3502','837','Immeuble C',NULL,NULL,1),(841,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','351','836','Immeubles construits en vue de leur revente',NULL,NULL,1),(842,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3510','841','Immeuble A',NULL,NULL,1),(843,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3511','841','Immeuble B',NULL,NULL,1),(844,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3512','841','Immeuble C',NULL,NULL,1),(845,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','359','836','Réductions de valeurs actées',NULL,NULL,1),(846,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','36','1353','Acomptes versés sur achats pour stocks',NULL,NULL,1),(847,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','360','846','Acomptes versés (à ventiler éventuellement par catégorie)',NULL,NULL,1),(848,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','369','846','Réductions de valeur actées',NULL,NULL,1),(849,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','37','1353','Commandes en cours d\'exécution',NULL,NULL,1),(850,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','370','849','Valeur d\'acquisition',NULL,NULL,1),(851,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','371','849','Bénéfice pris en compte',NULL,NULL,1),(852,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','379','849','Réductions de valeur actées',NULL,NULL,1),(853,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','40','1354','Créances commerciales',NULL,NULL,1),(854,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','400','853','Clients',NULL,NULL,1),(855,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4007','854','Rabais, remises et ristournes à accorder et autres notes de crédit à établir',NULL,NULL,1),(856,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4008','854','Créances résultant de livraisons de biens (associations momentanées)',NULL,NULL,1),(857,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','401','853','Effets à recevoir',NULL,NULL,1),(858,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4010','857','Effets à recevoir',NULL,NULL,1),(859,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4013','857','Effets à l\'encaissement',NULL,NULL,1),(860,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4015','857','Effets à l\'escompte',NULL,NULL,1),(861,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','402','853','Clients, créances courantes, entreprises apparentées, administrateurs et gérants',NULL,NULL,1),(862,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4020','861','Entreprises liées',NULL,NULL,1),(863,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4021','861','Autres entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(864,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4022','861','Administrateurs et gérants d\'entreprise',NULL,NULL,1),(865,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','403','853','Effets à recevoir sur entreprises apparentées et administrateurs et gérants',NULL,NULL,1),(866,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4030','865','Entreprises liées',NULL,NULL,1),(867,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4031','865','Autres entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(868,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4032','865','Administrateurs et gérants de l\'entreprise',NULL,NULL,1),(869,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','404','853','Produits à recevoir (factures à établir)',NULL,NULL,1),(870,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','405','853','Clients : retenues sur garanties',NULL,NULL,1),(871,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','406','853','Acomptes versés',NULL,NULL,1),(872,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','407','853','Créances douteuses',NULL,NULL,1),(873,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','408','853','Compensation clients',NULL,NULL,1),(874,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','409','853','Réductions de valeur actées',NULL,NULL,1),(875,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','41','1354','Autres créances',NULL,NULL,1),(876,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','410','875','Capital appelé, non versé',NULL,NULL,1),(877,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4100','876','Appels de fonds',NULL,NULL,1),(878,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4101','876','Actionnaires défaillants',NULL,NULL,1),(879,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','411','875','T.V.A. à récupérer',NULL,NULL,1),(880,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4110','879','T.V.A. due',NULL,NULL,1),(881,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4111','879','T.V.A. déductible',NULL,NULL,1),(882,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4112','879','Compte courant administration T.V.A.',NULL,NULL,1),(883,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4118','879','Taxe d\'égalisation due',NULL,NULL,1),(884,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','412','875','Impôts et versements fiscaux à récupérer',NULL,NULL,1),(885,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4120','884','Impôts belges sur le résultat',NULL,NULL,1),(886,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4125','884','Autres impôts belges',NULL,NULL,1),(887,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4128','884','Impôts étrangers',NULL,NULL,1),(888,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','414','875','Produits à recevoir',NULL,NULL,1),(889,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','416','875','Créances diverses',NULL,NULL,1),(890,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4160','889','Associés (compte d\'apport en société)',NULL,NULL,1),(891,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4161','889','Avances et prêts au personnel',NULL,NULL,1),(892,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4162','889','Compte courant des associés en S.P.R.L.',NULL,NULL,1),(893,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4163','889','Compte courant des administrateurs et gérants',NULL,NULL,1),(894,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4164','889','Créances sur sociétés apparentées',NULL,NULL,1),(895,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4166','889','Emballages et matériel à rendre',NULL,NULL,1),(896,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4167','889','Etat et établissements publics',NULL,NULL,1),(897,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','41670','896','Subsides à recevoir',NULL,NULL,1),(898,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','41671','896','Autres créances',NULL,NULL,1),(899,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4168','889','Rabais, ristournes et remises à obtenir et autres avoirs non encore reçus',NULL,NULL,1),(900,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','417','875','Créances douteuses',NULL,NULL,1),(901,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','418','875','Cautionnements versés en numéraires',NULL,NULL,1),(902,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','419','875','Réductions de valeur actées',NULL,NULL,1),(903,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','42','1354','Dettes à plus d\'un an échéant dans l\'année',NULL,NULL,1),(904,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','420','903','Emprunts subordonnés',NULL,NULL,1),(905,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4200','904','Convertibles',NULL,NULL,1),(906,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4201','904','Non convertibles',NULL,NULL,1),(907,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','421','903','Emprunts obligataires non subordonnés',NULL,NULL,1),(908,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4210','907','Convertibles',NULL,NULL,1),(909,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4211','907','Non convertibles',NULL,NULL,1),(910,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','422','903','Dettes de location-financement et assimilées',NULL,NULL,1),(911,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4220','910','Financement de biens immobiliers',NULL,NULL,1),(912,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4221','910','Financement de biens mobiliers',NULL,NULL,1),(913,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','423','903','Etablissements de crédit',NULL,NULL,1),(914,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4230','913','Dettes en compte',NULL,NULL,1),(915,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4231','913','Promesses',NULL,NULL,1),(916,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4232','913','Crédits d\'acceptation',NULL,NULL,1),(917,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','424','903','Autres emprunts',NULL,NULL,1),(918,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','425','903','Dettes commerciales',NULL,NULL,1),(919,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4250','918','Fournisseurs',NULL,NULL,1),(920,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4251','918','Effets à payer',NULL,NULL,1),(921,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','426','903','Cautionnements reçus en numéraires',NULL,NULL,1),(922,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','429','903','Dettes diverses',NULL,NULL,1),(923,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4290','922','Entreprises liées',NULL,NULL,1),(924,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4291','922','Entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(925,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4292','922','Administrateurs, gérants, associés',NULL,NULL,1),(926,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4299','922','Autres dettes',NULL,NULL,1),(927,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','43','1354','Dettes financières',NULL,NULL,1),(928,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','430','927','Etablissements de crédit. Emprunts en compte à terme fixe',NULL,NULL,1),(929,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','431','927','Etablissements de crédit. Promesses',NULL,NULL,1),(930,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','432','927','Etablissements de crédit. Crédits d\'acceptation',NULL,NULL,1),(931,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','433','927','Etablissements de crédit. Dettes en compte courant',NULL,NULL,1),(932,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','439','927','Autres emprunts',NULL,NULL,1),(933,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44','1354','Dettes commerciales',NULL,NULL,1),(934,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','440','933','Fournisseurs',NULL,NULL,1),(935,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4400','934','Entreprises apparentées',NULL,NULL,1),(936,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44000','935','Entreprises liées',NULL,NULL,1),(937,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44001','935','Entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(938,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4401','934','Fournisseurs ordinaires',NULL,NULL,1),(939,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44010','938','Fournisseurs belges',NULL,NULL,1),(940,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44011','938','Fournisseurs CEE',NULL,NULL,1),(941,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44012','938','Fournisseurs importation',NULL,NULL,1),(942,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4402','934','Dettes envers les coparticipants (associations momentanées)',NULL,NULL,1),(943,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4403','934','Fournisseurs - retenues de garanties',NULL,NULL,1),(944,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','441','933','Effets à payer',NULL,NULL,1),(945,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4410','944','Entreprises apparentées',NULL,NULL,1),(946,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44100','945','Entreprises liées',NULL,NULL,1),(947,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44101','945','Entreprises avec lesquelles il existe un lien de participation',NULL,NULL,1),(948,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4411','944','Fournisseurs ordinaires',NULL,NULL,1),(949,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44110','948','Fournisseurs belges',NULL,NULL,1),(950,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44111','948','Fournisseurs CEE',NULL,NULL,1),(951,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','44112','948','Fournisseurs importation',NULL,NULL,1),(952,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','444','933','Factures à recevoir',NULL,NULL,1),(953,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','446','933','Acomptes reçus',NULL,NULL,1),(954,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','448','933','Compensations fournisseurs',NULL,NULL,1),(955,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45','1354','Dettes fiscales, salariales et sociales',NULL,NULL,1),(956,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','450','955','Dettes fiscales estimées',NULL,NULL,1),(957,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4501','956','Impôts sur le résultat',NULL,NULL,1),(958,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4505','956','Autres impôts en Belgique',NULL,NULL,1),(959,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4508','956','Impôts à l\'étranger',NULL,NULL,1),(960,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','451','955','T.V.A. à payer',NULL,NULL,1),(961,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4510','960','T.V.A. due',NULL,NULL,1),(962,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4511','960','T.V.A. déductible',NULL,NULL,1),(963,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4512','960','Compte courant administration T.V.A.',NULL,NULL,1),(964,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4518','960','Taxe d\'égalisation due',NULL,NULL,1),(965,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','452','955','Impôts et taxes à payer',NULL,NULL,1),(966,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4520','965','Autres impôts sur le résultat',NULL,NULL,1),(967,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4525','965','Autres impôts et taxes en Belgique',NULL,NULL,1),(968,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45250','967','Précompte immobilier',NULL,NULL,1),(969,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45251','967','Impôts communaux à payer',NULL,NULL,1),(970,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45252','967','Impôts provinciaux à payer',NULL,NULL,1),(971,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45253','967','Autres impôts et taxes à payer',NULL,NULL,1),(972,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4528','965','Impôts et taxes à l\'étranger',NULL,NULL,1),(973,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','453','955','Précomptes retenus',NULL,NULL,1),(974,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4530','973','Précompte professionnel retenu sur rémunérations',NULL,NULL,1),(975,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4531','973','Précompte professionnel retenu sur tantièmes',NULL,NULL,1),(976,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4532','973','Précompte mobilier retenu sur dividendes attribués',NULL,NULL,1),(977,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4533','973','Précompte mobilier retenu sur intérêts payés',NULL,NULL,1),(978,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4538','973','Autres précomptes retenus',NULL,NULL,1),(979,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','454','955','Office National de la Sécurité Sociale',NULL,NULL,1),(980,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4540','979','Arriérés',NULL,NULL,1),(981,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4541','979','1er trimestre',NULL,NULL,1),(982,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4542','979','2ème trimestre',NULL,NULL,1),(983,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4543','979','3ème trimestre',NULL,NULL,1),(984,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4544','979','4ème trimestre',NULL,NULL,1),(985,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','455','955','Rémunérations',NULL,NULL,1),(986,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4550','985','Administrateurs, gérants et commissaires (non réviseurs)',NULL,NULL,1),(987,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4551','985','Direction',NULL,NULL,1),(988,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4552','985','Employés',NULL,NULL,1),(989,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4553','985','Ouvriers',NULL,NULL,1),(990,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','456','955','Pécules de vacances',NULL,NULL,1),(991,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4560','990','Direction',NULL,NULL,1),(992,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4561','990','Employés',NULL,NULL,1),(993,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4562','990','Ouvriers',NULL,NULL,1),(994,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','459','955','Autres dettes sociales',NULL,NULL,1),(995,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4590','994','Provision pour gratifications de fin d\'année',NULL,NULL,1),(996,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4591','994','Départs de personnel',NULL,NULL,1),(997,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4592','994','Oppositions sur rémunérations',NULL,NULL,1),(998,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4593','994','Assurances relatives au personnel',NULL,NULL,1),(999,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45930','998','Assurance loi',NULL,NULL,1),(1000,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45931','998','Assurance salaire garanti',NULL,NULL,1),(1001,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45932','998','Assurance groupe',NULL,NULL,1),(1002,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','45933','998','Assurances individuelles',NULL,NULL,1),(1003,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4594','994','Caisse d\'assurances sociales pour travailleurs indépendants',NULL,NULL,1),(1004,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4597','994','Dettes et provisions sociales diverses',NULL,NULL,1),(1005,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','46','1354','Acomptes reçus sur commande',NULL,NULL,1),(1006,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','47','1354','Dettes découlant de l\'affectation des résultats',NULL,NULL,1),(1007,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','470','1006','Dividendes et tantièmes d\'exercices antérieurs',NULL,NULL,1),(1008,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','471','1006','Dividendes de l\'exercice',NULL,NULL,1),(1009,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','472','1006','Tantièmes de l\'exercice',NULL,NULL,1),(1010,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','473','1006','Autres allocataires',NULL,NULL,1),(1011,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','48','4','Dettes diverses',NULL,NULL,1),(1012,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','480','1011','Obligations et coupons échus',NULL,NULL,1),(1013,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','481','1011','Actionnaires - capital à rembourser',NULL,NULL,1),(1014,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','482','1011','Participation du personnel à payer',NULL,NULL,1),(1015,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','483','1011','Acomptes reçus d\'autres tiers à moins d\'un an',NULL,NULL,1),(1016,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','486','1011','Emballages et matériel consignés',NULL,NULL,1),(1017,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','488','1011','Cautionnements reçus en numéraires',NULL,NULL,1),(1018,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','489','1011','Autres dettes diverses',NULL,NULL,1),(1019,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49','1354','Comptes de régularisation et compte d\'attente',NULL,NULL,1),(1020,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','490','1019','Charges à reporter (à subdiviser par catégorie de charges)',NULL,NULL,1),(1021,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','491','1019','Produits acquis',NULL,NULL,1),(1022,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4910','1021','Produits d\'exploitation',NULL,NULL,1),(1023,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49100','1022','Ristournes et rabais à obtenir',NULL,NULL,1),(1024,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49101','1022','Commissions à obtenir',NULL,NULL,1),(1025,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49102','1022','Autres produits d\'exploitation (redevances par exemple)',NULL,NULL,1),(1026,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4911','1021','Produits financiers',NULL,NULL,1),(1027,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49110','1026','Intérêts courus et non échus sur prêts et débits',NULL,NULL,1),(1028,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','49111','1026','Autres produits financiers',NULL,NULL,1),(1029,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','492','1019','Charges à imputer (à subdiviser par catégorie de charges)',NULL,NULL,1),(1030,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','493','1019','Produits à reporter',NULL,NULL,1),(1031,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4930','1030','Produits d\'exploitation à reporter',NULL,NULL,1),(1032,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4931','1030','Produits financiers à reporter',NULL,NULL,1),(1033,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','499','1019','Comptes d\'attente',NULL,NULL,1),(1034,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4990','1033','Compte d\'attente',NULL,NULL,1),(1035,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4991','1033','Compte de répartition périodique des charges',NULL,NULL,1),(1036,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4999','1033','Transferts d\'exercice',NULL,NULL,1),(1037,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','50','1355','Actions propres',NULL,NULL,1),(1038,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','51','1355','Actions et parts',NULL,NULL,1),(1039,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','510','1038','Valeur d\'acquisition',NULL,NULL,1),(1040,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','511','1038','Montants non appelés',NULL,NULL,1),(1041,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','519','1038','Réductions de valeur actées',NULL,NULL,1),(1042,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','52','1355','Titres à revenus fixes',NULL,NULL,1),(1043,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','520','1042','Valeur d\'acquisition',NULL,NULL,1),(1044,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','529','1042','Réductions de valeur actées',NULL,NULL,1),(1045,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','53','1355','Dépots à terme',NULL,NULL,1),(1046,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','530','1045','De plus d\'un an',NULL,NULL,1),(1047,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','531','1045','De plus d\'un mois et à un an au plus',NULL,NULL,1),(1048,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','532','1045','d\'un mois au plus',NULL,NULL,1),(1049,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','539','1045','Réductions de valeur actées',NULL,NULL,1),(1050,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','54','1355','Valeurs échues à l\'encaissement',NULL,NULL,1),(1051,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','540','1050','Chèques à encaisser',NULL,NULL,1),(1052,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','541','1050','Coupons à encaisser',NULL,NULL,1),(1053,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','55','1355','Etablissements de crédit - Comptes ouverts auprès des divers établissements.',NULL,NULL,1),(1054,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','550','1053','Comptes courants',NULL,NULL,1),(1055,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','551','1053','Chèques émis',NULL,NULL,1),(1056,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','559','1053','Réductions de valeur actées',NULL,NULL,1),(1057,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','56','1355','Office des chèques postaux',NULL,NULL,1),(1058,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','560','1057','Compte courant',NULL,NULL,1),(1059,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','561','1057','Chèques émis',NULL,NULL,1),(1060,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','57','1355','Caisses',NULL,NULL,1),(1061,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','570','1060','à 577 Caisses - espèces ( 0 - centrale ; 7 - succursales et agences)',NULL,NULL,1),(1062,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','578','1060','Caisses - timbres ( 0 - fiscaux ; 1 - postaux)',NULL,NULL,1),(1063,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','58','1355','Virements internes',NULL,NULL,1),(1064,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','60','1356','Approvisionnements et marchandises',NULL,NULL,1),(1065,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','600','1064','Achats de matières premières',NULL,NULL,1),(1066,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','601','1064','Achats de fournitures',NULL,NULL,1),(1067,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','602','1064','Achats de services, travaux et études',NULL,NULL,1),(1068,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','603','1064','Sous-traitances générales',NULL,NULL,1),(1069,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','604','1064','Achats de marchandises',NULL,NULL,1),(1070,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','605','1064','Achats d\'immeubles destinés à la revente',NULL,NULL,1),(1071,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','608','1064','Remises , ristournes et rabais obtenus sur achats',NULL,NULL,1),(1072,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','609','1064','Variations de stocks',NULL,NULL,1),(1073,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6090','1072','De matières premières',NULL,NULL,1),(1074,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6091','1072','De fournitures',NULL,NULL,1),(1075,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6094','1072','De marchandises',NULL,NULL,1),(1076,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6095','1072','d\'immeubles destinés à la vente',NULL,NULL,1),(1077,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61','1356','Services et biens divers',NULL,NULL,1),(1078,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','610','1077','Loyers et charges locatives',NULL,NULL,1),(1079,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6100','1078','Loyers divers',NULL,NULL,1),(1080,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6101','1078','Charges locatives (assurances, frais de confort,etc)',NULL,NULL,1),(1081,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','611','1077','Entretien et réparation (fournitures et prestations)',NULL,NULL,1),(1082,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','612','1077','Fournitures faites à l\'entreprise',NULL,NULL,1),(1083,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6120','1082','Eau, gaz, électricité, vapeur',NULL,NULL,1),(1084,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61200','1083','Eau',NULL,NULL,1),(1085,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61201','1083','Gaz',NULL,NULL,1),(1086,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61202','1083','Electricité',NULL,NULL,1),(1087,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61203','1083','Vapeur',NULL,NULL,1),(1088,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6121','1082','Téléphone, télégrammes, télex, téléfax, frais postaux',NULL,NULL,1),(1089,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61210','1088','Téléphone',NULL,NULL,1),(1090,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61211','1088','Télégrammes',NULL,NULL,1),(1091,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61212','1088','Télex et téléfax',NULL,NULL,1),(1092,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61213','1088','Frais postaux',NULL,NULL,1),(1093,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6122','1082','Livres, bibliothèque',NULL,NULL,1),(1094,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6123','1082','Imprimés et fournitures de bureau (si non comptabilisé au 601)',NULL,NULL,1),(1095,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','613','1077','Rétributions de tiers',NULL,NULL,1),(1096,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6130','1095','Redevances et royalties',NULL,NULL,1),(1097,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61300','1096','Redevances pour brevets, licences, marques et accessoires',NULL,NULL,1),(1098,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61301','1096','Autres redevances (procédés de fabrication)',NULL,NULL,1),(1099,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6131','1095','Assurances non relatives au personnel',NULL,NULL,1),(1100,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61310','1099','Assurance incendie',NULL,NULL,1),(1101,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61311','1099','Assurance vol',NULL,NULL,1),(1102,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61312','1099','Assurance autos',NULL,NULL,1),(1103,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61313','1099','Assurance crédit',NULL,NULL,1),(1104,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61314','1099','Assurances frais généraux',NULL,NULL,1),(1105,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6132','1095','Divers',NULL,NULL,1),(1106,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61320','1105','Commissions aux tiers',NULL,NULL,1),(1107,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61321','1105','Honoraires d\'avocats, d\'experts, etc',NULL,NULL,1),(1108,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61322','1105','Cotisations aux groupements professionnels',NULL,NULL,1),(1109,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61323','1105','Dons, libéralités, etc',NULL,NULL,1),(1110,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61324','1105','Frais de contentieux',NULL,NULL,1),(1111,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61325','1105','Publications légales',NULL,NULL,1),(1112,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6133','1095','Transports et déplacements',NULL,NULL,1),(1113,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61330','1112','Transports de personnel',NULL,NULL,1),(1114,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','61331','1112','Voyages, déplacements et représentations',NULL,NULL,1),(1115,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6134','1095','Personnel intérimaire',NULL,NULL,1),(1116,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','614','1077','Annonces, publicité, propagande et documentation',NULL,NULL,1),(1117,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6140','1116','Annonces et insertions',NULL,NULL,1),(1118,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6141','1116','Catalogues et imprimés',NULL,NULL,1),(1119,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6142','1116','Echantillons',NULL,NULL,1),(1120,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6143','1116','Foires et expositions',NULL,NULL,1),(1121,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6144','1116','Primes',NULL,NULL,1),(1122,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6145','1116','Cadeaux à la clientèle',NULL,NULL,1),(1123,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6146','1116','Missions et réceptions',NULL,NULL,1),(1124,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6147','1116','Documentation',NULL,NULL,1),(1125,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','615','1077','Sous-traitants',NULL,NULL,1),(1126,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6150','1125','Sous-traitants pour activités propres',NULL,NULL,1),(1127,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6151','1125','Sous-traitants d\'associations momentanées (coparticipants)',NULL,NULL,1),(1128,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6152','1125','Quote-part bénéficiaire des coparticipants',NULL,NULL,1),(1129,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','617','1077','Personnel intérimaire et personnes mises à la disposition de l\'entreprise',NULL,NULL,1),(1130,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','618','1077','Rémunérations, primes pour assurances extralégales, pensions de retraite et de survie des administrateurs, gérants et associés actifs qui ne sont pas attribuées en vertu d\'un contrat de travail',NULL,NULL,1),(1131,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62','1356','Rémunérations, charges sociales et pensions',NULL,NULL,1),(1132,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','620','1131','Rémunérations et avantages sociaux directs',NULL,NULL,1),(1133,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6200','1132','Administrateurs ou gérants',NULL,NULL,1),(1134,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6201','1132','Personnel de direction',NULL,NULL,1),(1135,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6202','1132','Employés',NULL,NULL,1),(1136,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6203','1132','Ouvriers',NULL,NULL,1),(1137,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6204','1132','Autres membres du personnel',NULL,NULL,1),(1138,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','621','1131','Cotisations patronales d\'assurances sociales',NULL,NULL,1),(1139,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6210','1138','Sur salaires',NULL,NULL,1),(1140,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6211','1138','Sur appointements et commissions',NULL,NULL,1),(1141,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','622','1131','Primes patronales pour assurances extralégales',NULL,NULL,1),(1142,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','623','1131','Autres frais de personnel',NULL,NULL,1),(1143,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6230','1142','Assurances du personnel',NULL,NULL,1),(1144,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62300','1143','Assurances loi, responsabilité civile, chemin du travail',NULL,NULL,1),(1145,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62301','1143','Assurance salaire garanti',NULL,NULL,1),(1146,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62302','1143','Assurances individuelles',NULL,NULL,1),(1147,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6231','1142','Charges sociales diverses',NULL,NULL,1),(1148,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62310','1147','Jours fériés payés',NULL,NULL,1),(1149,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62311','1147','Salaire hebdomadaire garanti',NULL,NULL,1),(1150,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62312','1147','Allocations familiales complémentaires',NULL,NULL,1),(1151,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6232','1142','Charges sociales des administrateurs, gérants et commissaires',NULL,NULL,1),(1152,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62320','1151','Allocations familiales complémentaires pour non salariés',NULL,NULL,1),(1153,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62321','1151','Lois sociales pour indépendants',NULL,NULL,1),(1154,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','62322','1151','Divers',NULL,NULL,1),(1155,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','624','1131','Pensions de retraite et de survie',NULL,NULL,1),(1156,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6240','1155','Administrateurs et gérants',NULL,NULL,1),(1157,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6241','1155','Personnel',NULL,NULL,1),(1158,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','625','1131','Provision pour pécule de vacances',NULL,NULL,1),(1159,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6250','1158','Dotations',NULL,NULL,1),(1160,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6251','1158','Utilisations et reprises',NULL,NULL,1),(1161,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','63','1356','Amortissements, réductions de valeur et provisions pour risques et charges',NULL,NULL,1),(1162,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','630','1161','Dotations aux amortissements et aux réductions de valeur sur immobilisations',NULL,NULL,1),(1163,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6300','1162','Dotations aux amortissements sur frais d\'établissement',NULL,NULL,1),(1164,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6301','1162','Dotations aux amortissements sur immobilisations incorporelles',NULL,NULL,1),(1165,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6302','1162','Dotations aux amortissements sur immobilisations corporelles',NULL,NULL,1),(1166,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6308','1162','Dotations aux réductions de valeur sur immobilisations incorporelles',NULL,NULL,1),(1167,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6309','1162','Dotations aux réductions de valeur sur immobilisations corporelles',NULL,NULL,1),(1168,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','631','1161','Réductions de valeur sur stocks',NULL,NULL,1),(1169,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6310','1168','Dotations',NULL,NULL,1),(1170,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6311','1168','Reprises',NULL,NULL,1),(1171,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','632','1161','Réductions de valeur sur commandes en cours d\'exécution',NULL,NULL,1),(1172,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6320','1171','Dotations',NULL,NULL,1),(1173,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6321','1171','Reprises',NULL,NULL,1),(1174,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','633','1161','Réductions de valeur sur créances commerciales à plus d\'un an',NULL,NULL,1),(1175,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6330','1174','Dotations',NULL,NULL,1),(1176,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6331','1174','Reprises',NULL,NULL,1),(1177,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','634','1161','Réductions de valeur sur créances commerciales à un an au plus',NULL,NULL,1),(1178,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6340','1177','Dotations',NULL,NULL,1),(1179,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6341','1177','Reprises',NULL,NULL,1),(1180,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','635','1161','Provisions pour pensions et obligations similaires',NULL,NULL,1),(1181,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6350','1180','Dotations',NULL,NULL,1),(1182,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6351','1180','Utilisations et reprises',NULL,NULL,1),(1183,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','636','11613','Provisions pour grosses réparations et gros entretiens',NULL,NULL,1),(1184,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6360','1183','Dotations',NULL,NULL,1),(1185,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6361','1183','Utilisations et reprises',NULL,NULL,1),(1186,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','637','1161','Provisions pour autres risques et charges',NULL,NULL,1),(1187,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6370','1186','Dotations',NULL,NULL,1),(1188,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6371','1186','Utilisations et reprises',NULL,NULL,1),(1189,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64','1356','Autres charges d\'exploitation',NULL,NULL,1),(1190,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','640','1189','Charges fiscales d\'exploitation',NULL,NULL,1),(1191,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6400','1190','Taxes et impôts directs',NULL,NULL,1),(1192,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64000','1191','Taxes sur autos et camions',NULL,NULL,1),(1193,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6401','1190','Taxes et impôts indirects',NULL,NULL,1),(1194,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64010','1193','Timbres fiscaux pris en charge par la firme',NULL,NULL,1),(1195,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64011','1193','Droits d\'enregistrement',NULL,NULL,1),(1196,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64012','1193','T.V.A. non déductible',NULL,NULL,1),(1197,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6402','1190','Impôts provinciaux et communaux',NULL,NULL,1),(1198,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64020','1197','Taxe sur la force motrice',NULL,NULL,1),(1199,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','64021','1197','Taxe sur le personnel occupé',NULL,NULL,1),(1200,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6403','1190','Taxes diverses',NULL,NULL,1),(1201,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','641','1189','Moins-values sur réalisations courantes d\'immobilisations corporelles',NULL,NULL,1),(1202,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','642','1189','Moins-values sur réalisations de créances commerciales',NULL,NULL,1),(1203,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','643','1189','à 648 Charges d\'exploitations diverses',NULL,NULL,1),(1204,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','649','1189','Charges d\'exploitation portées à l\'actif au titre de restructuration',NULL,NULL,1),(1205,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','65','1356','Charges financières',NULL,NULL,1),(1206,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','650','1205','Charges des dettes',NULL,NULL,1),(1207,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6500','1206','Intérêts, commissions et frais afférents aux dettes',NULL,NULL,1),(1208,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6501','1206','Amortissements des agios et frais d\'émission d\'emprunts',NULL,NULL,1),(1209,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6502','1206','Autres charges de dettes',NULL,NULL,1),(1210,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6503','1206','Intérêts intercalaires portés à l\'actif',NULL,NULL,1),(1211,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','651','1205','Réductions de valeur sur actifs circulants',NULL,NULL,1),(1212,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6510','1211','Dotations',NULL,NULL,1),(1213,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6511','1211','Reprises',NULL,NULL,1),(1214,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','652','1205','Moins-values sur réalisation d\'actifs circulants',NULL,NULL,1),(1215,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','653','1205','Charges d\'escompte de créances',NULL,NULL,1),(1216,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','654','1205','Différences de change',NULL,NULL,1),(1217,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','655','1205','Ecarts de conversion des devises',NULL,NULL,1),(1218,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','656','1205','Frais de banques, de chèques postaux',NULL,NULL,1),(1219,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','657','1205','Commissions sur ouvertures de crédit, cautions et avals',NULL,NULL,1),(1220,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','658','1205','Frais de vente des titres',NULL,NULL,1),(1221,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','66','1356','Charges exceptionnelles',NULL,NULL,1),(1222,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','660','1221','Amortissements et réductions de valeur exceptionnels',NULL,NULL,1),(1223,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6600','1222','Sur frais d\'établissement',NULL,NULL,1),(1224,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6601','1222','Sur immobilisations incorporelles',NULL,NULL,1),(1225,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6602','1222','Sur immobilisations corporelles',NULL,NULL,1),(1226,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','661','1221','Réductions de valeur sur immobilisations financières',NULL,NULL,1),(1227,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','662','1221','Provisions pour risques et charges exceptionnels',NULL,NULL,1),(1228,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','663','1221','Moins-values sur réalisation d\'actifs immobilisés',NULL,NULL,1),(1229,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6630','1228','Sur immobilisations incorporelles',NULL,NULL,1),(1230,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6631','1228','Sur immobilisations corporelles',NULL,NULL,1),(1231,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6632','1228','Sur immobilisations détenues en location-financement et droits similaires',NULL,NULL,1),(1232,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6633','1228','Sur immobilisations financières',NULL,NULL,1),(1233,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6634','1228','Sur immeubles acquis ou construits en vue de la revente',NULL,NULL,1),(1234,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','664','1221','à 668 Autres charges exceptionnelles',NULL,NULL,1),(1235,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','664','1221','Pénalités et amendes diverses',NULL,NULL,1),(1236,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','665','1221','Différence de charge',NULL,NULL,1),(1237,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','669','1221','Charges exceptionnelles transférées à l\'actif en frais de restructuration',NULL,NULL,1),(1238,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','67','1356','Impôts sur le résultat',NULL,NULL,1),(1239,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','670','1238','Impôts belges sur le résultat de l\'exercice',NULL,NULL,1),(1240,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6700','1239','Impôts et précomptes dus ou versés',NULL,NULL,1),(1241,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6701','1239','Excédent de versements d\'impôts et précomptes porté à l\'actif',NULL,NULL,1),(1242,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6702','1239','Charges fiscales estimées',NULL,NULL,1),(1243,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','671','1238','Impôts belges sur le résultat d\'exercices antérieurs',NULL,NULL,1),(1244,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6710','1243','Suppléments d\'impôts dus ou versés',NULL,NULL,1),(1245,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6711','1243','Suppléments d\'impôts estimés',NULL,NULL,1),(1246,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6712','1243','Provisions fiscales constituées',NULL,NULL,1),(1247,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','672','1238','Impôts étrangers sur le résultat de l\'exercice',NULL,NULL,1),(1248,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','673','1238','Impôts étrangers sur le résultat d\'exercices antérieurs',NULL,NULL,1),(1249,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','68','1356','Transferts aux réserves immunisées',NULL,NULL,1),(1250,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','69','1356','Affectation des résultats',NULL,NULL,1),(1251,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','690','1250','Perte reportée de l\'exercice précédent',NULL,NULL,1),(1252,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','691','1250','Dotation à la réserve légale',NULL,NULL,1),(1253,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','692','1250','Dotation aux autres réserves',NULL,NULL,1),(1254,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','693','1250','Bénéfice à reporter',NULL,NULL,1),(1255,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','694','1250','Rémunération du capital',NULL,NULL,1),(1256,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','695','1250','Administrateurs ou gérants',NULL,NULL,1),(1257,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','696','1250','Autres allocataires',NULL,NULL,1),(1258,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','70','1357','Chiffre d\'affaires',NULL,NULL,1),(1260,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','700','1258','Ventes de marchandises',NULL,NULL,1),(1261,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7000','1260','Ventes en Belgique',NULL,NULL,1),(1262,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7001','1260','Ventes dans les pays membres de la C.E.E.',NULL,NULL,1),(1263,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7002','1260','Ventes à l\'exportation',NULL,NULL,1),(1264,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','701','1258','Ventes de produits finis',NULL,NULL,1),(1265,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7010','1264','Ventes en Belgique',NULL,NULL,1),(1266,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7011','1264','Ventes dans les pays membres de la C.E.E.',NULL,NULL,1),(1267,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7012','1264','Ventes à l\'exportation',NULL,NULL,1),(1268,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','702','1258','Ventes de déchets et rebuts',NULL,NULL,1),(1269,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7020','1268','Ventes en Belgique',NULL,NULL,1),(1270,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7021','1268','Ventes dans les pays membres de la C.E.E.',NULL,NULL,1),(1271,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7022','1268','Ventes à l\'exportation',NULL,NULL,1),(1272,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','703','1258','Ventes d\'emballages récupérables',NULL,NULL,1),(1273,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','704','1258','Facturations des travaux en cours (associations momentanées)',NULL,NULL,1),(1274,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','705','1258','Prestations de services',NULL,NULL,1),(1275,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7050','1274','Prestations de services en Belgique',NULL,NULL,1),(1276,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7051','1274','Prestations de services dans les pays membres de la C.E.E.',NULL,NULL,1),(1277,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7052','1274','Prestations de services en vue de l\'exportation',NULL,NULL,1),(1278,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','706','1258','Pénalités et dédits obtenus par l\'entreprise',NULL,NULL,1),(1279,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','708','1258','Remises, ristournes et rabais accordés',NULL,NULL,1),(1280,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7080','1279','Sur ventes de marchandises',NULL,NULL,1),(1281,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7081','1279','Sur ventes de produits finis',NULL,NULL,1),(1282,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7082','1279','Sur ventes de déchets et rebuts',NULL,NULL,1),(1283,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7083','1279','Sur prestations de services',NULL,NULL,1),(1284,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7084','1279','Mali sur travaux facturés aux associations momentanées',NULL,NULL,1),(1285,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','71','1357','Variation des stocks et des commandes en cours d\'exécution',NULL,NULL,1),(1286,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','712','1285','Des en cours de fabrication',NULL,NULL,1),(1287,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','713','1285','Des produits finis',NULL,NULL,1),(1288,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','715','1285','Des immeubles construits destinés à la vente',NULL,NULL,1),(1289,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','717','1285','Des commandes en cours d\'exécution',NULL,NULL,1),(1290,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7170','1289','Commandes en cours - Coût de revient',NULL,NULL,1),(1291,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','71700','1290','Coût des commandes en cours d\'exécution',NULL,NULL,1),(1292,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','71701','1290','Coût des travaux en cours des associations momentanées',NULL,NULL,1),(1293,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7171','1289','Bénéfices portés en compte sur commandes en cours',NULL,NULL,1),(1294,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','71710','1293','Sur commandes en cours d\'exécution',NULL,NULL,1),(1295,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','71711','1293','Sur travaux en cours des associations momentanées',NULL,NULL,1),(1296,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','72','1357','Production immobilisée',NULL,NULL,1),(1297,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','720','1296','En frais d\'établissement',NULL,NULL,1),(1298,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','721','1296','En immobilisations incorporelles',NULL,NULL,1),(1299,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','722','1296','En immobilisations corporelles',NULL,NULL,1),(1300,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','723','1296','En immobilisations en cours',NULL,NULL,1),(1301,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','74','1357','Autres produits d\'exploitation',NULL,NULL,1),(1302,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','740','1301','Subsides d\'exploitation et montants compensatoires',NULL,NULL,1),(1303,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','741','1301','Plus-values sur réalisations courantes d\'immobilisations corporelles',NULL,NULL,1),(1304,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','742','1301','Plus-values sur réalisations de créances commerciales',NULL,NULL,1),(1305,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','743','1301','à 749 Produits d\'exploitation divers',NULL,NULL,1),(1306,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','743','1301','Produits de services exploités dans l\'intérêt du personnel',NULL,NULL,1),(1307,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','744','1301','Commissions et courtages',NULL,NULL,1),(1308,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','745','1301','Redevances pour brevets et licences',NULL,NULL,1),(1309,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','746','1301','Prestations de services (transports, études, etc)',NULL,NULL,1),(1310,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','747','1301','Revenus des immeubles affectés aux activités non professionnelles',NULL,NULL,1),(1311,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','748','1301','Locations diverses à caractère professionnel',NULL,NULL,1),(1312,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','749','1301','Produits divers',NULL,NULL,1),(1313,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7490','1312','Bonis sur reprises d\'emballages consignés',NULL,NULL,1),(1314,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7491','1312','Bonis sur travaux en associations momentanées',NULL,NULL,1),(1315,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','75','1357','Produits financiers',NULL,NULL,1),(1316,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','750','1315','Produits des immobilisations financières',NULL,NULL,1),(1317,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7500','1316','Revenus des actions',NULL,NULL,1),(1318,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7501','1316','Revenus des obligations',NULL,NULL,1),(1319,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7502','1316','Revenus des créances à plus d\'un an',NULL,NULL,1),(1320,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','751','1315','Produits des actifs circulants',NULL,NULL,1),(1321,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','752','1315','Plus-values sur réalisations d\'actifs circulants',NULL,NULL,1),(1322,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','753','1315','Subsides en capital et en intérêts',NULL,NULL,1),(1323,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','754','1315','Différences de change',NULL,NULL,1),(1324,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','755','1315','Ecarts de conversion des devises',NULL,NULL,1),(1325,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','756','1315','à 759 Produits financiers divers',NULL,NULL,1),(1326,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','756','1315','Produits des autres créances',NULL,NULL,1),(1327,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','757','1315','Escomptes obtenus',NULL,NULL,1),(1328,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','76','1357','Produits exceptionnels',NULL,NULL,1),(1329,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','760','1328','Reprises d\'amortissements et de réductions de valeur',NULL,NULL,1),(1330,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7600','1329','Sur immobilisations incorporelles',NULL,NULL,1),(1331,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7601','1329','Sur immobilisations corporelles',NULL,NULL,1),(1332,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','761','1328','Reprises de réductions de valeur sur immobilisations financières',NULL,NULL,1),(1333,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','762','1328','Reprises de provisions pour risques et charges exceptionnelles',NULL,NULL,1),(1334,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','763','1328','Plus-values sur réalisation d\'actifs immobilisés',NULL,NULL,1),(1335,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7630','1334','Sur immobilisations incorporelles',NULL,NULL,1),(1336,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7631','1334','Sur immobilisations corporelles',NULL,NULL,1),(1337,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7632','1334','Sur immobilisations financières',NULL,NULL,1),(1338,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','764','1328','Autres produits exceptionnels',NULL,NULL,1),(1339,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','77','1357','Régularisations d\'impôts et reprises de provisions fiscales',NULL,NULL,1),(1340,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','771','1339','Impôts belges sur le résultat',NULL,NULL,1),(1341,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7710','1340','Régularisations d\'impôts dus ou versés',NULL,NULL,1),(1342,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7711','1340','Régularisations d\'impôts estimés',NULL,NULL,1),(1343,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7712','1340','Reprises de provisions fiscales',NULL,NULL,1),(1344,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','773','1339','Impôts étrangers sur le résultat',NULL,NULL,1),(1345,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','79','1357','Affectation aux résultats',NULL,NULL,1),(1346,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','790','1345','Bénéfice reporté de l\'exercice précédent',NULL,NULL,1),(1347,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','791','1345','Prélèvement sur le capital et les primes d\'émission',NULL,NULL,1),(1348,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','792','1345','Prélèvement sur les réserves',NULL,NULL,1),(1349,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','793','1345','Perte à reporter',NULL,NULL,1),(1350,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','794','1345','Intervention d\'associés (ou du propriétaire) dans la perte',NULL,NULL,1),(1351,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CAPIT','XXXXXX','1','','Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',NULL,NULL,1),(1352,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','IMMO','XXXXXX','2','','Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',NULL,NULL,1),(1353,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','STOCK','XXXXXX','3','','Stock et commandes en cours d\'exécution',NULL,NULL,1),(1354,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','TIERS','XXXXXX','4','','Créances et dettes à un an au plus',NULL,NULL,1),(1355,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','FINAN','XXXXXX','5','','Placement de trésorerie et de valeurs disponibles',NULL,NULL,1),(1356,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','CHARGE','XXXXXX','6','','Charges',NULL,NULL,1),(1357,1,NULL,'0000-00-00 00:00:00','PCMN-BASE','PROD','XXXXXX','7','','Produits',NULL,NULL,1),(1401,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CAPIT','XXXXXX','1','','Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',NULL,NULL,1),(1402,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','IMMO','XXXXXX','2','','Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',NULL,NULL,1),(1403,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','STOCK','XXXXXX','3','','Stock et commandes en cours d\'exécution',NULL,NULL,1),(1404,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','TIERS','XXXXXX','4','','Créances et dettes à un an au plus',NULL,NULL,1),(1405,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','FINAN','XXXXXX','5','','Placement de trésorerie et de valeurs disponibles',NULL,NULL,1),(1406,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','CHARGE','XXXXXX','6','','Charges',NULL,NULL,1),(1407,1,NULL,'0000-00-00 00:00:00','PCG99-ABREGE','PROD','XXXXXX','7','','Produits',NULL,NULL,1),(1501,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CAPIT','XXXXXX','1','','Fonds propres, provisions pour risques et charges et dettes à plus d\'un an',NULL,NULL,1),(1502,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','IMMO','XXXXXX','2','','Frais d\'établissement. Actifs immobilisés et créances à plus d\'un an',NULL,NULL,1),(1503,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','STOCK','XXXXXX','3','','Stock et commandes en cours d\'exécution',NULL,NULL,1),(1504,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','TIERS','XXXXXX','4','','Créances et dettes à un an au plus',NULL,NULL,1),(1505,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','FINAN','XXXXXX','5','','Placement de trésorerie et de valeurs disponibles',NULL,NULL,1),(1506,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','CHARGE','XXXXXX','6','','Charges',NULL,NULL,1),(1507,1,NULL,'0000-00-00 00:00:00','PCG99-BASE','PROD','XXXXXX','7','','Produits',NULL,NULL,1),(4001,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1','','Financiación básica',NULL,NULL,1),(4002,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','ACTIVO','XXXXXX','2','','Activo no corriente',NULL,NULL,1),(4003,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','EXISTENCIAS','XXXXXX','3','','Existencias',NULL,NULL,1),(4004,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4','','Acreedores y deudores por operaciones comerciales',NULL,NULL,1),(4005,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5','','Cuentas financieras',NULL,NULL,1),(4006,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6','','Compras y gastos',NULL,NULL,1),(4007,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7','','Ventas e ingresos',NULL,NULL,1),(4008,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','10','4001','CAPITAL',NULL,NULL,1),(4009,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','100','4008','Capital social',NULL,NULL,1),(4010,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','101','4008','Fondo social',NULL,NULL,1),(4011,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','CAPITAL','102','4008','Capital',NULL,NULL,1),(4012,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','103','4008','Socios por desembolsos no exigidos',NULL,NULL,1),(4013,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1030','4012','Socios por desembolsos no exigidos capital social',NULL,NULL,1),(4014,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1034','4012','Socios por desembolsos no exigidos capital pendiente de inscripción',NULL,NULL,1),(4015,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','104','4008','Socios por aportaciones no dineradas pendientes',NULL,NULL,1),(4016,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1040','4015','Socios por aportaciones no dineradas pendientes capital social',NULL,NULL,1),(4017,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1044','4015','Socios por aportaciones no dineradas pendientes capital pendiente de inscripción',NULL,NULL,1),(4018,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','108','4008','Acciones o participaciones propias en situaciones especiales',NULL,NULL,1),(4019,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','109','4008','Acciones o participaciones propias para reducción de capital',NULL,NULL,1),(4020,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','11','4001','Reservas y otros instrumentos de patrimonio',NULL,NULL,1),(4021,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','110','4020','Prima de emisión o asunción',NULL,NULL,1),(4022,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','111','4020','Otros instrumentos de patrimonio neto',NULL,NULL,1),(4023,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1110','4022','Patrimonio neto por emisión de instrumentos financieros compuestos',NULL,NULL,1),(4024,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1111','4022','Resto de instrumentos de patrimoio neto',NULL,NULL,1),(4025,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','112','4020','Reserva legal',NULL,NULL,1),(4026,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','113','4020','Reservas voluntarias',NULL,NULL,1),(4027,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','114','4020','Reservas especiales',NULL,NULL,1),(4028,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1140','4027','Reservas para acciones o participaciones de la sociedad dominante',NULL,NULL,1),(4029,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1141','4027','Reservas estatutarias',NULL,NULL,1),(4030,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1142','4027','Reservas por capital amortizado',NULL,NULL,1),(4031,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1143','4027','Reservas por fondo de comercio',NULL,NULL,1),(4032,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1144','4028','Reservas por acciones propias aceptadas en garantía',NULL,NULL,1),(4033,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','115','4020','Reservas por pérdidas y ganancias actuariales y otros ajustes',NULL,NULL,1),(4034,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','118','4020','Aportaciones de socios o propietarios',NULL,NULL,1),(4035,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','119','4020','Diferencias por ajuste del capital a euros',NULL,NULL,1),(4036,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','12','4001','Resultados pendientes de aplicación',NULL,NULL,1),(4037,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','120','4036','Remanente',NULL,NULL,1),(4038,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','121','4036','Resultados negativos de ejercicios anteriores',NULL,NULL,1),(4039,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','129','4036','Resultado del ejercicio',NULL,NULL,1),(4040,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','13','4001','Subvenciones, donaciones y ajustes por cambio de valor',NULL,NULL,1),(4041,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','130','4040','Subvenciones oficiales de capital',NULL,NULL,1),(4042,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','131','4040','Donaciones y legados de capital',NULL,NULL,1),(4043,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','132','4040','Otras subvenciones, donaciones y legados',NULL,NULL,1),(4044,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','133','4040','Ajustes por valoración en activos financieros disponibles para la venta',NULL,NULL,1),(4045,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','134','4040','Operaciones de cobertura',NULL,NULL,1),(4046,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1340','4045','Cobertura de flujos de efectivo',NULL,NULL,1),(4047,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1341','4045','Cobertura de una inversión neta en un negocio extranjero',NULL,NULL,1),(4048,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','135','4040','Diferencias de conversión',NULL,NULL,1),(4049,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','136','4040','Ajustes por valoración en activos no corrientes y grupos enajenables de elementos mantenidos para la venta',NULL,NULL,1),(4050,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','137','4040','Ingresos fiscales a distribuir en varios ejercicios',NULL,NULL,1),(4051,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1370','4050','Ingresos fiscales por diferencias permanentes a distribuir en varios ejercicios',NULL,NULL,1),(4052,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1371','4050','Ingresos fiscales por deducciones y bonificaciones a distribuir en varios ejercicios',NULL,NULL,1),(4053,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','14','4001','Provisiones',NULL,NULL,1),(4054,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','141','4053','Provisión para impuestos',NULL,NULL,1),(4055,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','142','4053','Provisión para otras responsabilidades',NULL,NULL,1),(4056,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','143','4053','Provisión por desmantelamiento, retiro o rehabilitación del inmovilizado',NULL,NULL,1),(4057,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','145','4053','Provisión para actuaciones medioambientales',NULL,NULL,1),(4058,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','15','4001','Deudas a largo plazo con características especiales',NULL,NULL,1),(4059,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','150','4058','Acciones o participaciones a largo plazo consideradas como pasivos financieros',NULL,NULL,1),(4060,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','153','4058','Desembolsos no exigidos por acciones o participaciones consideradas como pasivos financieros',NULL,NULL,1),(4061,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1533','4060','Desembolsos no exigidos empresas del grupo',NULL,NULL,1),(4062,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1534','4060','Desembolsos no exigidos empresas asociadas',NULL,NULL,1),(4063,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1535','4060','Desembolsos no exigidos otras partes vinculadas',NULL,NULL,1),(4064,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1536','4060','Otros desembolsos no exigidos',NULL,NULL,1),(4065,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','154','4058','Aportaciones no dinerarias pendientes por acciones o participaciones consideradas como pasivos financieros',NULL,NULL,1),(4066,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1543','4065','Aportaciones no dinerarias pendientes empresas del grupo',NULL,NULL,1),(4067,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1544','4065','Aportaciones no dinerarias pendientes empresas asociadas',NULL,NULL,1),(4068,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1545','4065','Aportaciones no dinerarias pendientes otras partes vinculadas',NULL,NULL,1),(4069,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1546','4065','Otras aportaciones no dinerarias pendientes',NULL,NULL,1),(4070,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','16','4001','Deudas a largo plazo con partes vinculadas',NULL,NULL,1),(4071,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','160','4070','Deudas a largo plazo con entidades de crédito vinculadas',NULL,NULL,1),(4072,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1603','4071','Deudas a largo plazo con entidades de crédito empresas del grupo',NULL,NULL,1),(4073,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1604','4071','Deudas a largo plazo con entidades de crédito empresas asociadas',NULL,NULL,1),(4074,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1605','4071','Deudas a largo plazo con otras entidades de crédito vinculadas',NULL,NULL,1),(4075,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','161','4070','Proveedores de inmovilizado a largo plazo partes vinculadas',NULL,NULL,1),(4076,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1613','4075','Proveedores de inmovilizado a largo plazo empresas del grupo',NULL,NULL,1),(4077,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1614','4075','Proveedores de inmovilizado a largo plazo empresas asociadas',NULL,NULL,1),(4078,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1615','4075','Proveedores de inmovilizado a largo plazo otras partes vinculadas',NULL,NULL,1),(4079,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','162','4070','Acreedores por arrendamiento financiero a largo plazo partes vinculadas',NULL,NULL,1),(4080,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1623','4079','Acreedores por arrendamiento financiero a largo plazo empresas del grupo',NULL,NULL,1),(4081,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1624','4080','Acreedores por arrendamiento financiero a largo plazo empresas asociadas',NULL,NULL,1),(4082,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1625','4080','Acreedores por arrendamiento financiero a largo plazo otras partes vinculadas',NULL,NULL,1),(4083,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','163','4070','Otras deudas a largo plazo con partes vinculadas',NULL,NULL,1),(4084,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1633','4083','Otras deudas a largo plazo empresas del grupo',NULL,NULL,1),(4085,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1634','4083','Otras deudas a largo plazo empresas asociadas',NULL,NULL,1),(4086,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','1635','4083','Otras deudas a largo plazo otras partes vinculadas',NULL,NULL,1),(4087,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','17','4001','Deudas a largo plazo por préstamos recibidos empresitos y otros conceptos',NULL,NULL,1),(4088,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','170','4087','Deudas a largo plazo con entidades de crédito',NULL,NULL,1),(4089,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','171','4087','Deudas a largo plazo',NULL,NULL,1),(4090,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','172','4087','Deudas a largo plazo transformables en suvbenciones donaciones y legados',NULL,NULL,1),(4091,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','173','4087','Proveedores de inmovilizado a largo plazo',NULL,NULL,1),(4092,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','174','4087','Acreedores por arrendamiento financiero a largo plazo',NULL,NULL,1),(4093,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','175','4087','Efectos a pagar a largo plazo',NULL,NULL,1),(4094,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','176','4087','Pasivos por derivados financieros a largo plazo',NULL,NULL,1),(4095,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','177','4087','Obligaciones y bonos',NULL,NULL,1),(4096,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','179','4087','Deudas representadas en otros valores negociables',NULL,NULL,1),(4097,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','18','4001','Pasivos por fianzas garantias y otros conceptos a largo plazo',NULL,NULL,1),(4098,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','180','4097','Fianzas recibidas a largo plazo',NULL,NULL,1),(4099,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','181','4097','Anticipos recibidos por ventas o prestaciones de servicios a largo plazo',NULL,NULL,1),(4100,1,NULL,'2017-08-26 22:04:45','PCG08-PYME','FINANCIACION','XXXXXX','185','4097','Depositos recibidos a largo plazo',NULL,NULL,1),(4101,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','19','4001','Situaciones transitorias de financiación',NULL,NULL,1),(4102,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','190','4101','Acciones o participaciones emitidas',NULL,NULL,1),(4103,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','192','4101','Suscriptores de acciones',NULL,NULL,1),(4104,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','194','4101','Capital emitido pendiente de inscripción',NULL,NULL,1),(4105,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','195','4101','Acciones o participaciones emitidas consideradas como pasivos financieros',NULL,NULL,1),(4106,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','197','4101','Suscriptores de acciones consideradas como pasivos financieros',NULL,NULL,1),(4107,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','FINANCIACION','XXXXXX','199','4101','Acciones o participaciones emitidas consideradas como pasivos financieros pendientes de inscripción',NULL,NULL,1),(4108,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','20','4002','Inmovilizaciones intangibles',NULL,NULL,1),(4109,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','200','4108','Investigación',NULL,NULL,1),(4110,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','201','4108','Desarrollo',NULL,NULL,1),(4111,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','202','4108','Concesiones administrativas',NULL,NULL,1),(4112,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','203','4108','Propiedad industrial',NULL,NULL,1),(4113,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','205','4108','Derechos de transpaso',NULL,NULL,1),(4114,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','206','4108','Aplicaciones informáticas',NULL,NULL,1),(4115,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','209','4108','Anticipos para inmovilizaciones intangibles',NULL,NULL,1),(4116,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','21','4002','Inmovilizaciones materiales',NULL,NULL,1),(4117,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','210','4116','Terrenos y bienes naturales',NULL,NULL,1),(4118,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','211','4116','Construcciones',NULL,NULL,1),(4119,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','212','4116','Instalaciones técnicas',NULL,NULL,1),(4120,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','213','4116','Maquinaria',NULL,NULL,1),(4121,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','214','4116','Utillaje',NULL,NULL,1),(4122,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','215','4116','Otras instalaciones',NULL,NULL,1),(4123,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','216','4116','Mobiliario',NULL,NULL,1),(4124,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','217','4116','Equipos para procesos de información',NULL,NULL,1),(4125,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','218','4116','Elementos de transporte',NULL,NULL,1),(4126,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','219','4116','Otro inmovilizado material',NULL,NULL,1),(4127,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','22','4002','Inversiones inmobiliarias',NULL,NULL,1),(4128,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','220','4127','Inversiones en terreons y bienes naturales',NULL,NULL,1),(4129,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','221','4127','Inversiones en construcciones',NULL,NULL,1),(4130,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','23','4002','Inmovilizaciones materiales en curso',NULL,NULL,1),(4131,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','230','4130','Adaptación de terrenos y bienes naturales',NULL,NULL,1),(4132,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','231','4130','Construcciones en curso',NULL,NULL,1),(4133,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','232','4130','Instalaciones técnicas en montaje',NULL,NULL,1),(4134,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','233','4130','Maquinaria en montaje',NULL,NULL,1),(4135,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','237','4130','Equipos para procesos de información en montaje',NULL,NULL,1),(4136,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','239','4130','Anticipos para inmovilizaciones materiales',NULL,NULL,1),(4137,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','24','4002','Inversiones financieras a largo plazo en partes vinculadas',NULL,NULL,1),(4138,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','240','4137','Participaciones a largo plazo en partes vinculadas',NULL,NULL,1),(4139,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2403','4138','Participaciones a largo plazo en empresas del grupo',NULL,NULL,1),(4140,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2404','4138','Participaciones a largo plazo en empresas asociadas',NULL,NULL,1),(4141,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2405','4138','Participaciones a largo plazo en otras partes vinculadas',NULL,NULL,1),(4142,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','241','4137','Valores representativos de deuda a largo plazo de partes vinculadas',NULL,NULL,1),(4143,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2413','4142','Valores representativos de deuda a largo plazo de empresas del grupo',NULL,NULL,1),(4144,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2414','4142','Valores representativos de deuda a largo plazo de empresas asociadas',NULL,NULL,1),(4145,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2415','4142','Valores representativos de deuda a largo plazo de otras partes vinculadas',NULL,NULL,1),(4146,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','242','4137','Créditos a largo plazo a partes vinculadas',NULL,NULL,1),(4147,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2423','4146','Créditos a largo plazo a empresas del grupo',NULL,NULL,1),(4148,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2424','4146','Créditos a largo plazo a empresas asociadas',NULL,NULL,1),(4149,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2425','4146','Créditos a largo plazo a otras partes vinculadas',NULL,NULL,1),(4150,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','249','4137','Desembolsos pendientes sobre participaciones a largo plazo en partes vinculadas',NULL,NULL,1),(4151,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2493','4150','Desembolsos pendientes sobre participaciones a largo plazo en empresas del grupo',NULL,NULL,1),(4152,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2494','4150','Desembolsos pendientes sobre participaciones a largo plazo en empresas asociadas',NULL,NULL,1),(4153,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2495','4150','Desembolsos pendientes sobre participaciones a largo plazo en otras partes vinculadas',NULL,NULL,1),(4154,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','25','4002','Otras inversiones financieras a largo plazo',NULL,NULL,1),(4155,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','250','4154','Inversiones financieras a largo plazo en instrumentos de patrimonio',NULL,NULL,1),(4156,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','251','4154','Valores representativos de deuda a largo plazo',NULL,NULL,1),(4157,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','252','4154','Créditos a largo plazo',NULL,NULL,1),(4158,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','253','4154','Créditos a largo plazo por enajenación de inmovilizado',NULL,NULL,1),(4159,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','254','4154','Créditos a largo plazo al personal',NULL,NULL,1),(4160,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','255','4154','Activos por derivados financieros a largo plazo',NULL,NULL,1),(4161,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','258','4154','Imposiciones a largo plazo',NULL,NULL,1),(4162,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','259','4154','Desembolsos pendientes sobre participaciones en el patrimonio neto a largo plazo',NULL,NULL,1),(4163,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','26','4002','Fianzas y depósitos constituidos a largo plazo',NULL,NULL,1),(4164,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','260','4163','Fianzas constituidas a largo plazo',NULL,NULL,1),(4165,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','261','4163','Depósitos constituidos a largo plazo',NULL,NULL,1),(4166,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','28','4002','Amortización acumulada del inmovilizado',NULL,NULL,1),(4167,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','280','4166','Amortización acumulado del inmovilizado intangible',NULL,NULL,1),(4168,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2800','4167','Amortización acumulada de investigación',NULL,NULL,1),(4169,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2801','4167','Amortización acumulada de desarrollo',NULL,NULL,1),(4170,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2802','4167','Amortización acumulada de concesiones administrativas',NULL,NULL,1),(4171,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2803','4167','Amortización acumulada de propiedad industrial',NULL,NULL,1),(4172,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2805','4167','Amortización acumulada de derechos de transpaso',NULL,NULL,1),(4173,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2806','4167','Amortización acumulada de aplicaciones informáticas',NULL,NULL,1),(4174,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','281','4166','Amortización acumulado del inmovilizado material',NULL,NULL,1),(4175,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2811','4174','Amortización acumulada de construcciones',NULL,NULL,1),(4176,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2812','4174','Amortización acumulada de instalaciones técnicas',NULL,NULL,1),(4177,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2813','4174','Amortización acumulada de maquinaria',NULL,NULL,1),(4178,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2814','4174','Amortización acumulada de utillaje',NULL,NULL,1),(4179,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2815','4174','Amortización acumulada de otras instalaciones',NULL,NULL,1),(4180,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2816','4174','Amortización acumulada de mobiliario',NULL,NULL,1),(4181,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2817','4174','Amortización acumulada de equipos para proceso de información',NULL,NULL,1),(4182,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2818','4174','Amortización acumulada de elementos de transporte',NULL,NULL,1),(4183,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2819','4175','Amortización acumulada de otro inmovilizado material',NULL,NULL,1),(4184,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','282','4166','Amortización acumulada de las inversiones inmobiliarias',NULL,NULL,1),(4185,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','29','4002','Deterioro de valor de activos no corrientes',NULL,NULL,1),(4186,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','290','4185','Deterioro de valor del inmovilizado intangible',NULL,NULL,1),(4187,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2900','4186','Deterioro de valor de investigación',NULL,NULL,1),(4188,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2901','4186','Deterioro de valor de desarrollo',NULL,NULL,1),(4189,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2902','4186','Deterioro de valor de concesiones administrativas',NULL,NULL,1),(4190,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2903','4186','Deterioro de valor de propiedad industrial',NULL,NULL,1),(4191,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2905','4186','Deterioro de valor de derechos de transpaso',NULL,NULL,1),(4192,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2906','4186','Deterioro de valor de aplicaciones informáticas',NULL,NULL,1),(4193,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','291','4185','Deterioro de valor del inmovilizado material',NULL,NULL,1),(4194,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2910','4193','Deterioro de valor de terrenos y bienes naturales',NULL,NULL,1),(4195,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2911','4193','Deterioro de valor de construcciones',NULL,NULL,1),(4196,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2912','4193','Deterioro de valor de instalaciones técnicas',NULL,NULL,1),(4197,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2913','4193','Deterioro de valor de maquinaria',NULL,NULL,1),(4198,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2914','4193','Deterioro de valor de utillajes',NULL,NULL,1),(4199,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2915','4194','Deterioro de valor de otras instalaciones',NULL,NULL,1),(4200,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2916','4194','Deterioro de valor de mobiliario',NULL,NULL,1),(4201,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2917','4194','Deterioro de valor de equipos para proceso de información',NULL,NULL,1),(4202,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2918','4194','Deterioro de valor de elementos de transporte',NULL,NULL,1),(4203,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2919','4194','Deterioro de valor de otro inmovilizado material',NULL,NULL,1),(4204,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','292','4185','Deterioro de valor de las inversiones inmobiliarias',NULL,NULL,1),(4205,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2920','4204','Deterioro de valor de terrenos y bienes naturales',NULL,NULL,1),(4206,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2921','4204','Deterioro de valor de construcciones',NULL,NULL,1),(4207,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','293','4185','Deterioro de valor de participaciones a largo plazo en partes vinculadas',NULL,NULL,1),(4208,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2933','4207','Deterioro de valor de participaciones a largo plazo en empresas del grupo',NULL,NULL,1),(4209,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2934','4207','Deterioro de valor de sobre participaciones a largo plazo en empresas asociadas',NULL,NULL,1),(4210,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2935','4207','Deterioro de valor de sobre participaciones a largo plazo en otras partes vinculadas',NULL,NULL,1),(4211,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','294','4185','Deterioro de valor de valores representativos de deuda a largo plazo en partes vinculadas',NULL,NULL,1),(4212,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2943','4211','Deterioro de valor de valores representativos de deuda a largo plazo en empresas del grupo',NULL,NULL,1),(4213,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2944','4211','Deterioro de valor de valores representativos de deuda a largo plazo en empresas asociadas',NULL,NULL,1),(4214,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2945','4211','Deterioro de valor de valores representativos de deuda a largo plazo en otras partes vinculadas',NULL,NULL,1),(4215,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','295','4185','Deterioro de valor de créditos a largo plazo a partes vinculadas',NULL,NULL,1),(4216,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2953','4215','Deterioro de valor de créditos a largo plazo a empresas del grupo',NULL,NULL,1),(4217,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2954','4215','Deterioro de valor de créditos a largo plazo a empresas asociadas',NULL,NULL,1),(4218,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','2955','4215','Deterioro de valor de créditos a largo plazo a otras partes vinculadas',NULL,NULL,1),(4219,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','296','4185','Deterioro de valor de participaciones en el patrimonio netoa largo plazo',NULL,NULL,1),(4220,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','297','4185','Deterioro de valor de valores representativos de deuda a largo plazo',NULL,NULL,1),(4221,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACTIVO','XXXXXX','298','4185','Deterioro de valor de créditos a largo plazo',NULL,NULL,1),(4222,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','30','4003','Comerciales',NULL,NULL,1),(4223,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','300','4222','Mercaderías A',NULL,NULL,1),(4224,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','301','4222','Mercaderías B',NULL,NULL,1),(4225,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','31','4003','Materias primas',NULL,NULL,1),(4226,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','310','4225','Materias primas A',NULL,NULL,1),(4227,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','311','4225','Materias primas B',NULL,NULL,1),(4228,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','32','4003','Otros aprovisionamientos',NULL,NULL,1),(4229,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','320','4228','Elementos y conjuntos incorporables',NULL,NULL,1),(4230,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','321','4228','Combustibles',NULL,NULL,1),(4231,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','322','4228','Repuestos',NULL,NULL,1),(4232,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','325','4228','Materiales diversos',NULL,NULL,1),(4233,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','326','4228','Embalajes',NULL,NULL,1),(4234,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','327','4228','Envases',NULL,NULL,1),(4235,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','328','4229','Material de oficina',NULL,NULL,1),(4236,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','33','4003','Productos en curso',NULL,NULL,1),(4237,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','330','4236','Productos en curos A',NULL,NULL,1),(4238,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','331','4236','Productos en curso B',NULL,NULL,1),(4239,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','34','4003','Productos semiterminados',NULL,NULL,1),(4240,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','340','4239','Productos semiterminados A',NULL,NULL,1),(4241,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','341','4239','Productos semiterminados B',NULL,NULL,1),(4242,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','35','4003','Productos terminados',NULL,NULL,1),(4243,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','350','4242','Productos terminados A',NULL,NULL,1),(4244,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','351','4242','Productos terminados B',NULL,NULL,1),(4245,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','36','4003','Subproductos, residuos y materiales recuperados',NULL,NULL,1),(4246,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','360','4245','Subproductos A',NULL,NULL,1),(4247,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','361','4245','Subproductos B',NULL,NULL,1),(4248,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','365','4245','Residuos A',NULL,NULL,1),(4249,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','366','4245','Residuos B',NULL,NULL,1),(4250,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','368','4245','Materiales recuperados A',NULL,NULL,1),(4251,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','369','4245','Materiales recuperados B',NULL,NULL,1),(4252,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','39','4003','Deterioro de valor de las existencias',NULL,NULL,1),(4253,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','390','4252','Deterioro de valor de las mercaderías',NULL,NULL,1),(4254,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','391','4252','Deterioro de valor de las materias primas',NULL,NULL,1),(4255,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','392','4252','Deterioro de valor de otros aprovisionamientos',NULL,NULL,1),(4256,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','393','4252','Deterioro de valor de los productos en curso',NULL,NULL,1),(4257,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','394','4252','Deterioro de valor de los productos semiterminados',NULL,NULL,1),(4258,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','395','4252','Deterioro de valor de los productos terminados',NULL,NULL,1),(4259,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','EXISTENCIAS','XXXXXX','396','4252','Deterioro de valor de los subproductos, residuos y materiales recuperados',NULL,NULL,1),(4260,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','PROVEEDORES','40','4004','Proveedores',NULL,NULL,1),(4261,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','PROVEEDORES','400','4260','Proveedores',NULL,NULL,1),(4262,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4000','4261','Proveedores euros',NULL,NULL,1),(4263,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4004','4261','Proveedores moneda extranjera',NULL,NULL,1),(4264,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4009','4261','Proveedores facturas pendientes de recibir o formalizar',NULL,NULL,1),(4265,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','401','4260','Proveedores efectos comerciales a pagar',NULL,NULL,1),(4266,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','403','4260','Proveedores empresas del grupo',NULL,NULL,1),(4267,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4030','4266','Proveedores empresas del grupo euros',NULL,NULL,1),(4268,1,NULL,'2017-08-26 22:04:46','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4031','4266','Efectos comerciales a pagar empresas del grupo',NULL,NULL,1),(4269,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4034','4266','Proveedores empresas del grupo moneda extranjera',NULL,NULL,1),(4270,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4036','4266','Envases y embalajes a devolver a proveedores empresas del grupo',NULL,NULL,1),(4271,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4039','4266','Proveedores empresas del grupo facturas pendientes de recibir o de formalizar',NULL,NULL,1),(4272,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','404','4260','Proveedores empresas asociadas',NULL,NULL,1),(4273,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','405','4260','Proveedores otras partes vinculadas',NULL,NULL,1),(4274,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','406','4260','Envases y embalajes a devolver a proveedores',NULL,NULL,1),(4275,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','407','4260','Anticipos a proveedores',NULL,NULL,1),(4276,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','41','4004','Acreedores varios',NULL,NULL,1),(4277,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','410','4276','Acreedores por prestaciones de servicios',NULL,NULL,1),(4278,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4100','4277','Acreedores por prestaciones de servicios euros',NULL,NULL,1),(4279,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4104','4277','Acreedores por prestaciones de servicios moneda extranjera',NULL,NULL,1),(4280,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4109','4277','Acreedores por prestaciones de servicios facturas pendientes de recibir o formalizar',NULL,NULL,1),(4281,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','411','4276','Acreedores efectos comerciales a pagar',NULL,NULL,1),(4282,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','419','4276','Acreedores por operaciones en común',NULL,NULL,1),(4283,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','CLIENTES','43','4004','Clientes',NULL,NULL,1),(4284,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','CLIENTES','430','4283','Clientes',NULL,NULL,1),(4285,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4300','4284','Clientes euros',NULL,NULL,1),(4286,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4304','4284','Clientes moneda extranjera',NULL,NULL,1),(4287,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4309','4284','Clientes facturas pendientes de formalizar',NULL,NULL,1),(4288,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','431','4283','Clientes efectos comerciales a cobrar',NULL,NULL,1),(4289,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4310','4288','Efectos comerciales en cartera',NULL,NULL,1),(4290,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4311','4288','Efectos comerciales descontados',NULL,NULL,1),(4291,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4312','4288','Efectos comerciales en gestión de cobro',NULL,NULL,1),(4292,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4315','4288','Efectos comerciales impagados',NULL,NULL,1),(4293,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','432','4283','Clientes operaciones de factoring',NULL,NULL,1),(4294,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','433','4283','Clientes empresas del grupo',NULL,NULL,1),(4295,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4330','4294','Clientes empresas del grupo euros',NULL,NULL,1),(4296,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4331','4294','Efectos comerciales a cobrar empresas del grupo',NULL,NULL,1),(4297,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4332','4294','Clientes empresas del grupo operaciones de factoring',NULL,NULL,1),(4298,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4334','4294','Clientes empresas del grupo moneda extranjera',NULL,NULL,1),(4299,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4336','4294','Clientes empresas del grupo dudoso cobro',NULL,NULL,1),(4300,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4337','4294','Envases y embalajes a devolver a clientes empresas del grupo',NULL,NULL,1),(4301,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4339','4294','Clientes empresas del grupo facturas pendientes de formalizar',NULL,NULL,1),(4302,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','434','4283','Clientes empresas asociadas',NULL,NULL,1),(4303,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','435','4283','Clientes otras partes vinculadas',NULL,NULL,1),(4304,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','436','4283','Clientes de dudoso cobro',NULL,NULL,1),(4305,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','437','4283','Envases y embalajes a devolver por clientes',NULL,NULL,1),(4306,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','438','4283','Anticipos de clientes',NULL,NULL,1),(4307,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','44','4004','Deudores varios',NULL,NULL,1),(4308,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','440','4307','Deudores',NULL,NULL,1),(4309,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4400','4308','Deudores euros',NULL,NULL,1),(4310,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4404','4308','Deudores moneda extranjera',NULL,NULL,1),(4311,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4409','4308','Deudores facturas pendientes de formalizar',NULL,NULL,1),(4312,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','441','4307','Deudores efectos comerciales a cobrar',NULL,NULL,1),(4313,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4410','4312','Deudores efectos comerciales en cartera',NULL,NULL,1),(4314,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4411','4312','Deudores efectos comerciales descontados',NULL,NULL,1),(4315,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4412','4312','Deudores efectos comerciales en gestión de cobro',NULL,NULL,1),(4316,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4415','4312','Deudores efectos comerciales impagados',NULL,NULL,1),(4317,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','446','4307','Deudores de dusoso cobro',NULL,NULL,1),(4318,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','449','4307','Deudores por operaciones en común',NULL,NULL,1),(4319,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','46','4004','Personal',NULL,NULL,1),(4320,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','460','4319','Anticipos de renumeraciones',NULL,NULL,1),(4321,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','465','4319','Renumeraciones pendientes de pago',NULL,NULL,1),(4322,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','47','4004','Administraciones Públicas',NULL,NULL,1),(4323,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','470','4322','Hacienda Pública deudora por diversos conceptos',NULL,NULL,1),(4324,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4700','4323','Hacienda Pública deudora por IVA',NULL,NULL,1),(4325,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4708','4323','Hacienda Pública deudora por subvenciones concedidas',NULL,NULL,1),(4326,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4709','4323','Hacienda Pública deudora por devolución de impuestos',NULL,NULL,1),(4327,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','471','4322','Organismos de la Seguridad Social deudores',NULL,NULL,1),(4328,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','472','4322','Hacienda Pública IVA soportado',NULL,NULL,1),(4329,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','473','4322','Hacienda Pública retenciones y pagos a cuenta',NULL,NULL,1),(4330,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','474','4322','Activos por impuesto diferido',NULL,NULL,1),(4331,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4740','4330','Activos por diferencias temporarias deducibles',NULL,NULL,1),(4332,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4742','4330','Derechos por deducciones y bonificaciones pendientes de aplicar',NULL,NULL,1),(4333,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4745','4330','Crédito por pérdidasa compensar del ejercicio',NULL,NULL,1),(4334,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','475','4322','Hacienda Pública acreedora por conceptos fiscales',NULL,NULL,1),(4335,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4750','4334','Hacienda Pública acreedora por IVA',NULL,NULL,1),(4336,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4751','4334','Hacienda Pública acreedora por retenciones practicadas',NULL,NULL,1),(4337,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4752','4334','Hacienda Pública acreedora por impuesto sobre sociedades',NULL,NULL,1),(4338,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4758','4334','Hacienda Pública acreedora por subvenciones a integrar',NULL,NULL,1),(4339,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','476','4322','Organismos de la Seguridad Social acreedores',NULL,NULL,1),(4340,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','477','4322','Hacienda Pública IVA repercutido',NULL,NULL,1),(4341,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','479','4322','Pasivos por diferencias temporarias imponibles',NULL,NULL,1),(4342,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','48','4004','Ajustes por periodificación',NULL,NULL,1),(4343,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','480','4342','Gastos anticipados',NULL,NULL,1),(4344,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','485','4342','Ingresos anticipados',NULL,NULL,1),(4345,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','49','4004','Deterioro de valor de créditos comerciales y provisiones a corto plazo',NULL,NULL,1),(4346,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','490','4345','Deterioro de valor de créditos por operaciones comerciales',NULL,NULL,1),(4347,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','493','4345','Deterioro de valor de créditos por operaciones comerciales con partes vinculadas',NULL,NULL,1),(4348,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4933','4347','Deterioro de valor de créditos por operaciones comerciales con empresas del grupo',NULL,NULL,1),(4349,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4934','4347','Deterioro de valor de créditos por operaciones comerciales con empresas asociadas',NULL,NULL,1),(4350,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4935','4347','Deterioro de valor de créditos por operaciones comerciales con otras partes vinculadas',NULL,NULL,1),(4351,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','499','4345','Provisiones por operaciones comerciales',NULL,NULL,1),(4352,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4994','4351','Provisión para contratos anerosos',NULL,NULL,1),(4353,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','ACREEDORES_DEUDORES','XXXXXX','4999','4351','Provisión para otras operaciones comerciales',NULL,NULL,1),(4354,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','50','4005','Emprésitos deudas con características especiales y otras emisiones análogas a corto plazo',NULL,NULL,1),(4355,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','500','4354','Obligaciones y bonos a corto plazo',NULL,NULL,1),(4356,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','502','4354','Acciones o participaciones a corto plazo consideradas como pasivos financieros',NULL,NULL,1),(4357,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','505','4354','Deudas representadas en otros valores negociables a corto plazo',NULL,NULL,1),(4358,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','506','4354','Intereses a corto plazo de emprésitos y otras emisiones analógicas',NULL,NULL,1),(4359,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','507','4354','Dividendos de acciones o participaciones consideradas como pasivos financieros',NULL,NULL,1),(4360,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','509','4354','Valores negociables amortizados',NULL,NULL,1),(4361,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5090','4360','Obligaciones y bonos amortizados',NULL,NULL,1),(4362,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5095','4360','Otros valores negociables amortizados',NULL,NULL,1),(4363,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','51','4005','Deudas a corto plazo con partes vinculadas',NULL,NULL,1),(4364,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','510','4363','Deudas a corto plazo con entidades de crédito vinculadas',NULL,NULL,1),(4365,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5103','4364','Deudas a corto plazo con entidades de crédito empresas del grupo',NULL,NULL,1),(4366,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5104','4364','Deudas a corto plazo con entidades de crédito empresas asociadas',NULL,NULL,1),(4367,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5105','4364','Deudas a corto plazo con otras entidades de crédito vinculadas',NULL,NULL,1),(4368,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','511','4363','Proveedores de inmovilizado a corto plazo partes vinculadas',NULL,NULL,1),(4369,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5113','4368','Proveedores de inmovilizado a corto plazo empresas del grupo',NULL,NULL,1),(4370,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5114','4368','Proveedores de inmovilizado a corto plazo empresas asociadas',NULL,NULL,1),(4371,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5115','4368','Proveedores de inmovilizado a corto plazo otras partes vinculadas',NULL,NULL,1),(4372,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','512','4363','Acreedores por arrendamiento financiero a corto plazo partes vinculadas',NULL,NULL,1),(4373,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5123','4372','Acreedores por arrendamiento financiero a corto plazo empresas del grupo',NULL,NULL,1),(4374,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5124','4372','Acreedores por arrendamiento financiero a corto plazo empresas asociadas',NULL,NULL,1),(4375,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5125','4372','Acreedores por arrendamiento financiero a corto plazo otras partes vinculadas',NULL,NULL,1),(4376,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','513','4363','Otras deudas a corto plazo con partes vinculadas',NULL,NULL,1),(4377,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5133','4376','Otras deudas a corto plazo con empresas del grupo',NULL,NULL,1),(4378,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5134','4376','Otras deudas a corto plazo con empresas asociadas',NULL,NULL,1),(4379,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5135','4376','Otras deudas a corto plazo con partes vinculadas',NULL,NULL,1),(4380,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','514','4363','Intereses a corto plazo con partes vinculadas',NULL,NULL,1),(4381,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5143','4380','Intereses a corto plazo empresas del grupo',NULL,NULL,1),(4382,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5144','4380','Intereses a corto plazo empresas asociadas',NULL,NULL,1),(4383,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5145','4380','Intereses deudas a corto plazo partes vinculadas',NULL,NULL,1),(4384,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','52','4005','Deudas a corto plazo por préstamos recibidos y otros conceptos',NULL,NULL,1),(4385,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','520','4384','Deudas a corto plazo con entidades de crédito',NULL,NULL,1),(4386,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5200','4385','Préstamos a corto plazo de entidades de crédito',NULL,NULL,1),(4387,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5201','4385','Deudas a corto plazo por crédito dispuesto',NULL,NULL,1),(4388,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5208','4385','Deudas por efectos descontados',NULL,NULL,1),(4389,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5209','4385','Deudas por operaciones de factoring',NULL,NULL,1),(4390,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','521','4384','Deudas a corto plazo',NULL,NULL,1),(4391,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','522','4384','Deudas a corto plazo transformables en subvenciones donaciones y legados',NULL,NULL,1),(4392,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','523','4384','Proveedores de inmovilizado a corto plazo',NULL,NULL,1),(4393,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','526','4384','Dividendo activo a pagar',NULL,NULL,1),(4394,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','527','4384','Intereses a corto plazo de deudas con entidades de crédito',NULL,NULL,1),(4395,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','528','4384','Intereses a corto plazo de deudas',NULL,NULL,1),(4396,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','529','4384','Provisiones a corto plazo',NULL,NULL,1),(4397,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5291','4396','Provisión a corto plazo para impuestos',NULL,NULL,1),(4398,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5292','4396','Provisión a corto plazo para otras responsabilidades',NULL,NULL,1),(4399,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5293','4396','Provisión a corto plazo por desmantelamiento retiro o rehabilitación del inmovilizado',NULL,NULL,1),(4400,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5295','4396','Provisión a corto plazo para actuaciones medioambientales',NULL,NULL,1),(4401,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','53','4005','Inversiones financieras a corto plazo en partes vinculadas',NULL,NULL,1),(4402,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','530','4401','Participaciones a corto plazo en partes vinculadas',NULL,NULL,1),(4403,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5303','4402','Participaciones a corto plazo en empresas del grupo',NULL,NULL,1),(4404,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5304','4402','Participaciones a corto plazo en empresas asociadas',NULL,NULL,1),(4405,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5305','4402','Participaciones a corto plazo en otras partes vinculadas',NULL,NULL,1),(4406,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','531','4401','Valores representativos de deuda a corto plazo de partes vinculadas',NULL,NULL,1),(4407,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5313','4406','Valores representativos de deuda a corto plazo de empresas del grupo',NULL,NULL,1),(4408,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5314','4406','Valores representativos de deuda a corto plazo de empresas asociadas',NULL,NULL,1),(4409,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5315','4406','Valores representativos de deuda a corto plazo de otras partes vinculadas',NULL,NULL,1),(4410,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','532','4401','Créditos a corto plazo a partes vinculadas',NULL,NULL,1),(4411,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5323','4410','Créditos a corto plazo a empresas del grupo',NULL,NULL,1),(4412,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5324','4410','Créditos a corto plazo a empresas asociadas',NULL,NULL,1),(4413,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5325','4410','Créditos a corto plazo a otras partes vinculadas',NULL,NULL,1),(4414,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','533','4401','Intereses a corto plazo de valores representativos de deuda de partes vinculadas',NULL,NULL,1),(4415,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5333','4414','Intereses a corto plazo de valores representativos de deuda en empresas del grupo',NULL,NULL,1),(4416,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5334','4414','Intereses a corto plazo de valores representativos de deuda en empresas asociadas',NULL,NULL,1),(4417,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5335','4414','Intereses a corto plazo de valores representativos de deuda en otras partes vinculadas',NULL,NULL,1),(4418,1,NULL,'2017-08-26 22:04:47','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','534','4401','Intereses a corto plazo de créditos a partes vinculadas',NULL,NULL,1),(4419,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5343','4418','Intereses a corto plazo de créditos a empresas del grupo',NULL,NULL,1),(4420,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5344','4418','Intereses a corto plazo de créditos a empresas asociadas',NULL,NULL,1),(4421,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5345','4418','Intereses a corto plazo de créditos a otras partes vinculadas',NULL,NULL,1),(4422,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','535','4401','Dividendo a cobrar de inversiones financieras en partes vinculadas',NULL,NULL,1),(4423,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5353','4422','Dividendo a cobrar de empresas del grupo',NULL,NULL,1),(4424,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5354','4422','Dividendo a cobrar de empresas asociadas',NULL,NULL,1),(4425,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5355','4422','Dividendo a cobrar de otras partes vinculadas',NULL,NULL,1),(4426,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','539','4401','Desembolsos pendientes sobre participaciones a corto plazo en partes vinculadas',NULL,NULL,1),(4427,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5393','4426','Desembolsos pendientes sobre participaciones a corto plazo en empresas del grupo',NULL,NULL,1),(4428,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5394','4426','Desembolsos pendientes sobre participaciones a corto plazo en empresas asociadas',NULL,NULL,1),(4429,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5395','4426','Desembolsos pendientes sobre participaciones a corto plazo en otras partes vinculadas',NULL,NULL,1),(4430,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','54','4005','Otras inversiones financieras a corto plazo',NULL,NULL,1),(4431,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','540','4430','Inversiones financieras a corto plazo en instrumentos de patrimonio',NULL,NULL,1),(4432,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','541','4430','Valores representativos de deuda a corto plazo',NULL,NULL,1),(4433,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','542','4430','Créditos a corto plazo',NULL,NULL,1),(4434,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','543','4430','Créditos a corto plazo por enejenación de inmovilizado',NULL,NULL,1),(4435,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','544','4430','Créditos a corto plazo al personal',NULL,NULL,1),(4436,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','545','4430','Dividendo a cobrar',NULL,NULL,1),(4437,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','546','4430','Intereses a corto plazo de valores reprsentativos de deuda',NULL,NULL,1),(4438,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','547','4430','Intereses a corto plazo de créditos',NULL,NULL,1),(4439,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','548','4430','Imposiciones a corto plazo',NULL,NULL,1),(4440,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','549','4430','Desembolsos pendientes sobre participaciones en el patrimonio neto a corto plazo',NULL,NULL,1),(4441,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','55','4005','Otras cuentas no bancarias',NULL,NULL,1),(4442,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','550','4441','Titular de la explotación',NULL,NULL,1),(4443,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','551','4441','Cuenta corriente con socios y administradores',NULL,NULL,1),(4444,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','552','4441','Cuenta corriente otras personas y entidades vinculadas',NULL,NULL,1),(4445,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5523','4444','Cuenta corriente con empresas del grupo',NULL,NULL,1),(4446,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5524','4444','Cuenta corriente con empresas asociadas',NULL,NULL,1),(4447,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5525','4444','Cuenta corriente con otras partes vinculadas',NULL,NULL,1),(4448,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','554','4441','Cuenta corriente con uniones temporales de empresas y comunidades de bienes',NULL,NULL,1),(4449,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','555','4441','Partidas pendientes de aplicación',NULL,NULL,1),(4450,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','556','4441','Desembolsos exigidos sobre participaciones en el patrimonio neto',NULL,NULL,1),(4451,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5563','4450','Desembolsos exigidos sobre participaciones empresas del grupo',NULL,NULL,1),(4452,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5564','4450','Desembolsos exigidos sobre participaciones empresas asociadas',NULL,NULL,1),(4453,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5565','4450','Desembolsos exigidos sobre participaciones otras partes vinculadas',NULL,NULL,1),(4454,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5566','4450','Desembolsos exigidos sobre participaciones otras empresas',NULL,NULL,1),(4455,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','557','4441','Dividendo activo a cuenta',NULL,NULL,1),(4456,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','558','4441','Socios por desembolsos exigidos',NULL,NULL,1),(4457,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5580','4456','Socios por desembolsos exigidos sobre acciones o participaciones ordinarias',NULL,NULL,1),(4458,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5585','4456','Socios por desembolsos exigidos sobre acciones o participaciones consideradas como pasivos financieros',NULL,NULL,1),(4459,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','559','4441','Derivados financieros a corto plazo',NULL,NULL,1),(4460,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5590','4459','Activos por derivados financieros a corto plazo',NULL,NULL,1),(4461,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5595','4459','Pasivos por derivados financieros a corto plazo',NULL,NULL,1),(4462,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','56','4005','Finanzas y depósitos recibidos y constituidos a corto plazo y ajustes por periodificación',NULL,NULL,1),(4463,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','560','4462','Finanzas recibidas a corto plazo',NULL,NULL,1),(4464,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','561','4462','Depósitos recibidos a corto plazo',NULL,NULL,1),(4465,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','565','4462','Finanzas constituidas a corto plazo',NULL,NULL,1),(4466,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','566','4462','Depósitos constituidos a corto plazo',NULL,NULL,1),(4467,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','567','4462','Intereses pagados por anticipado',NULL,NULL,1),(4468,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','568','4462','Intereses cobrados a corto plazo',NULL,NULL,1),(4469,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','57','4005','Tesorería',NULL,NULL,1),(4470,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','CAJA','570','4469','Caja euros',NULL,NULL,1),(4471,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','571','4469','Caja moneda extranjera',NULL,NULL,1),(4472,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','BANCOS','572','4469','Bancos e instituciones de crédito cc vista euros',NULL,NULL,1),(4473,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','573','4469','Bancos e instituciones de crédito cc vista moneda extranjera',NULL,NULL,1),(4474,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','574','4469','Bancos e instituciones de crédito cuentas de ahorro euros',NULL,NULL,1),(4475,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','575','4469','Bancos e instituciones de crédito cuentas de ahorro moneda extranjera',NULL,NULL,1),(4476,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','576','4469','Inversiones a corto plazo de gran liquidez',NULL,NULL,1),(4477,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','59','4005','Deterioro del valor de las inversiones financieras a corto plazo',NULL,NULL,1),(4478,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','593','4477','Deterioro del valor de participaciones a corto plazo en partes vinculadas',NULL,NULL,1),(4479,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5933','4478','Deterioro del valor de participaciones a corto plazo en empresas del grupo',NULL,NULL,1),(4480,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5934','4478','Deterioro del valor de participaciones a corto plazo en empresas asociadas',NULL,NULL,1),(4481,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5935','4478','Deterioro del valor de participaciones a corto plazo en otras partes vinculadas',NULL,NULL,1),(4482,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','594','4477','Deterioro del valor de valores representativos de deuda a corto plazo en partes vinculadas',NULL,NULL,1),(4483,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5943','4482','Deterioro del valor de valores representativos de deuda a corto plazo en empresas del grupo',NULL,NULL,1),(4484,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5944','4482','Deterioro del valor de valores representativos de deuda a corto plazo en empresas asociadas',NULL,NULL,1),(4485,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5945','4482','Deterioro del valor de valores representativos de deuda a corto plazo en otras partes vinculadas',NULL,NULL,1),(4486,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','595','4477','Deterioro del valor de créditos a corto plazo en partes vinculadas',NULL,NULL,1),(4487,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5953','4486','Deterioro del valor de créditos a corto plazo en empresas del grupo',NULL,NULL,1),(4488,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5954','4486','Deterioro del valor de créditos a corto plazo en empresas asociadas',NULL,NULL,1),(4489,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','5955','4486','Deterioro del valor de créditos a corto plazo en otras partes vinculadas',NULL,NULL,1),(4490,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','596','4477','Deterioro del valor de participaciones a corto plazo',NULL,NULL,1),(4491,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','597','4477','Deterioro del valor de valores representativos de deuda a corto plazo',NULL,NULL,1),(4492,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','CUENTAS_FINANCIERAS','XXXXXX','598','4477','Deterioro de valor de créditos a corto plazo',NULL,NULL,1),(4493,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','60','4006','Compras',NULL,NULL,1),(4494,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','COMPRAS','600','4493','Compras de mercaderías',NULL,NULL,1),(4495,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','COMPRAS','601','4493','Compras de materias primas',NULL,NULL,1),(4496,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','602','4493','Compras de otros aprovisionamientos',NULL,NULL,1),(4497,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','606','4493','Descuentos sobre compras por pronto pago',NULL,NULL,1),(4498,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6060','4497','Descuentos sobre compras por pronto pago de mercaderías',NULL,NULL,1),(4499,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6061','4497','Descuentos sobre compras por pronto pago de materias primas',NULL,NULL,1),(4500,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6062','4497','Descuentos sobre compras por pronto pago de otros aprovisionamientos',NULL,NULL,1),(4501,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','COMPRAS','607','4493','Trabajos realizados por otras empresas',NULL,NULL,1),(4502,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','608','4493','Devoluciones de compras y operaciones similares',NULL,NULL,1),(4503,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6080','4502','Devoluciones de compras de mercaderías',NULL,NULL,1),(4504,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6081','4502','Devoluciones de compras de materias primas',NULL,NULL,1),(4505,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6082','4502','Devoluciones de compras de otros aprovisionamientos',NULL,NULL,1),(4506,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','609','4493','Rappels por compras',NULL,NULL,1),(4507,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6090','4506','Rappels por compras de mercaderías',NULL,NULL,1),(4508,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6091','4506','Rappels por compras de materias primas',NULL,NULL,1),(4509,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6092','4506','Rappels por compras de otros aprovisionamientos',NULL,NULL,1),(4510,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','61','4006','Variación de existencias',NULL,NULL,1),(4511,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','610','4510','Variación de existencias de mercaderías',NULL,NULL,1),(4512,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','611','4510','Variación de existencias de materias primas',NULL,NULL,1),(4513,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','612','4510','Variación de existencias de otros aprovisionamientos',NULL,NULL,1),(4514,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','62','4006','Servicios exteriores',NULL,NULL,1),(4515,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','620','4514','Gastos en investigación y desarrollo del ejercicio',NULL,NULL,1),(4516,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','621','4514','Arrendamientos y cánones',NULL,NULL,1),(4517,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','622','4514','Reparaciones y conservación',NULL,NULL,1),(4518,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','623','4514','Servicios profesionales independientes',NULL,NULL,1),(4519,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','624','4514','Transportes',NULL,NULL,1),(4520,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','625','4514','Primas de seguros',NULL,NULL,1),(4521,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','626','4514','Servicios bancarios y similares',NULL,NULL,1),(4522,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','627','4514','Publicidad, propaganda y relaciones públicas',NULL,NULL,1),(4523,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','628','4514','Suministros',NULL,NULL,1),(4524,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','629','4514','Otros servicios',NULL,NULL,1),(4525,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','63','4006','Tributos',NULL,NULL,1),(4526,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','630','4525','Impuesto sobre benecifios',NULL,NULL,1),(4527,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6300','4526','Impuesto corriente',NULL,NULL,1),(4528,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6301','4526','Impuesto diferido',NULL,NULL,1),(4529,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','631','4525','Otros tributos',NULL,NULL,1),(4530,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','633','4525','Ajustes negativos en la imposición sobre beneficios',NULL,NULL,1),(4531,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','634','4525','Ajustes negativos en la imposición indirecta',NULL,NULL,1),(4532,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6341','4531','Ajustes negativos en IVA de activo corriente',NULL,NULL,1),(4533,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6342','4531','Ajustes negativos en IVA de inversiones',NULL,NULL,1),(4534,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','636','4525','Devolución de impuestos',NULL,NULL,1),(4535,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','638','4525','Ajustes positivos en la imposición sobre beneficios',NULL,NULL,1),(4536,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','639','4525','Ajustes positivos en la imposición directa',NULL,NULL,1),(4537,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6391','4536','Ajustes positivos en IVA de activo corriente',NULL,NULL,1),(4538,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6392','4536','Ajustes positivos en IVA de inversiones',NULL,NULL,1),(4539,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','64','4006','Gastos de personal',NULL,NULL,1),(4540,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','640','4539','Sueldos y salarios',NULL,NULL,1),(4541,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','641','4539','Indemnizaciones',NULL,NULL,1),(4542,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','642','4539','Seguridad social a cargo de la empresa',NULL,NULL,1),(4543,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','649','4539','Otros gastos sociales',NULL,NULL,1),(4544,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','65','4006','Otros gastos de gestión',NULL,NULL,1),(4545,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','650','4544','Pérdidas de créditos comerciales incobrables',NULL,NULL,1),(4546,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','651','4544','Resultados de operaciones en común',NULL,NULL,1),(4547,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6510','4546','Beneficio transferido gestor',NULL,NULL,1),(4548,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6511','4546','Pérdida soportada participe o asociado no gestor',NULL,NULL,1),(4549,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','659','4544','Otras pérdidas en gestión corriente',NULL,NULL,1),(4550,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','66','4006','Gastos financieros',NULL,NULL,1),(4551,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','660','4550','Gastos financieros por actualización de provisiones',NULL,NULL,1),(4552,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','661','4550','Intereses de obligaciones y bonos',NULL,NULL,1),(4553,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6610','4452','Intereses de obligaciones y bonos a largo plazo empresas del grupo',NULL,NULL,1),(4554,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6611','4452','Intereses de obligaciones y bonos a largo plazo empresas asociadas',NULL,NULL,1),(4555,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6612','4452','Intereses de obligaciones y bonos a largo plazo otras partes vinculadas',NULL,NULL,1),(4556,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6613','4452','Intereses de obligaciones y bonos a largo plazo otras empresas',NULL,NULL,1),(4557,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6615','4452','Intereses de obligaciones y bonos a corto plazo empresas del grupo',NULL,NULL,1),(4558,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6616','4452','Intereses de obligaciones y bonos a corto plazo empresas asociadas',NULL,NULL,1),(4559,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6617','4452','Intereses de obligaciones y bonos a corto plazo otras partes vinculadas',NULL,NULL,1),(4560,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6618','4452','Intereses de obligaciones y bonos a corto plazo otras empresas',NULL,NULL,1),(4561,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','662','4550','Intereses de deudas',NULL,NULL,1),(4562,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6620','4561','Intereses de deudas empresas del grupo',NULL,NULL,1),(4563,1,NULL,'2017-08-26 22:04:48','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6621','4561','Intereses de deudas empresas asociadas',NULL,NULL,1),(4564,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6622','4561','Intereses de deudas otras partes vinculadas',NULL,NULL,1),(4565,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6623','4561','Intereses de deudas con entidades de crédito',NULL,NULL,1),(4566,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6624','4561','Intereses de deudas otras empresas',NULL,NULL,1),(4567,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','663','4550','Pérdidas por valorización de activos y pasivos financieros por su valor razonable',NULL,NULL,1),(4568,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','664','4550','Gastos por dividendos de acciones o participaciones consideradas como pasivos financieros',NULL,NULL,1),(4569,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6640','4568','Dividendos de pasivos empresas del grupo',NULL,NULL,1),(4570,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6641','4568','Dividendos de pasivos empresas asociadas',NULL,NULL,1),(4571,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6642','4568','Dividendos de pasivos otras partes vinculadas',NULL,NULL,1),(4572,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6643','4568','Dividendos de pasivos otras empresas',NULL,NULL,1),(4573,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','665','4550','Intereses por descuento de efectos y operaciones de factoring',NULL,NULL,1),(4574,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6650','4573','Intereses por descuento de efectos en entidades de crédito del grupo',NULL,NULL,1),(4575,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6651','4573','Intereses por descuento de efectos en entidades de crédito asociadas',NULL,NULL,1),(4576,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6652','4573','Intereses por descuento de efectos en entidades de crédito vinculadas',NULL,NULL,1),(4577,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6653','4573','Intereses por descuento de efectos en otras entidades de crédito',NULL,NULL,1),(4578,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6654','4573','Intereses por operaciones de factoring con entidades de crédito del grupo',NULL,NULL,1),(4579,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6655','4573','Intereses por operaciones de factoring con entidades de crédito asociadas',NULL,NULL,1),(4580,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6656','4573','Intereses por operaciones de factoring con otras entidades de crédito vinculadas',NULL,NULL,1),(4581,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6657','4573','Intereses por operaciones de factoring con otras entidades de crédito',NULL,NULL,1),(4582,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','666','4550','Pérdidas en participaciones y valores representativos de deuda',NULL,NULL,1),(4583,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6660','4582','Pérdidas en valores representativos de deuda a largo plazo empresas del grupo',NULL,NULL,1),(4584,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6661','4582','Pérdidas en valores representativos de deuda a largo plazo empresas asociadas',NULL,NULL,1),(4585,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6662','4582','Pérdidas en valores representativos de deuda a largo plazo otras partes vinculadas',NULL,NULL,1),(4586,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6663','4582','Pérdidas en participaciones y valores representativos de deuda a largo plazo otras empresas',NULL,NULL,1),(4587,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6665','4582','Pérdidas en participaciones y valores representativos de deuda a corto plazo empresas del grupo',NULL,NULL,1),(4588,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6666','4582','Pérdidas en participaciones y valores representativos de deuda a corto plazo empresas asociadas',NULL,NULL,1),(4589,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6667','4582','Pérdidas en valores representativos de deuda a corto plazo otras partes vinculadas',NULL,NULL,1),(4590,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6668','4582','Pérdidas en valores representativos de deuda a corto plazo otras empresas',NULL,NULL,1),(4591,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','667','4550','Pérdidas de créditos no comerciales',NULL,NULL,1),(4592,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6670','4591','Pérdidas de créditos a largo plazo empresas del grupo',NULL,NULL,1),(4593,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6671','4591','Pérdidas de créditos a largo plazo empresas asociadas',NULL,NULL,1),(4594,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6672','4591','Pérdidas de créditos a largo plazo otras partes vinculadas',NULL,NULL,1),(4595,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6673','4591','Pérdidas de créditos a largo plazo otras empresas',NULL,NULL,1),(4596,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6675','4591','Pérdidas de créditos a corto plazo empresas del grupo',NULL,NULL,1),(4597,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6676','4591','Pérdidas de créditos a corto plazo empresas asociadas',NULL,NULL,1),(4598,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6677','4591','Pérdidas de créditos a corto plazo otras partes vinculadas',NULL,NULL,1),(4599,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6678','4591','Pérdidas de créditos a corto plazo otras empresas',NULL,NULL,1),(4600,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','668','4550','Diferencias negativas de cambio',NULL,NULL,1),(4601,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','669','4550','Otros gastos financieros',NULL,NULL,1),(4602,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','67','4006','Pérdidas procedentes de activos no corrientes y gastos excepcionales',NULL,NULL,1),(4603,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','670','4602','Pérdidas procedentes del inmovilizado intangible',NULL,NULL,1),(4604,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','671','4602','Pérdidas procedentes del inmovilizado material',NULL,NULL,1),(4605,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','672','4602','Pérdidas procedentes de las inversiones inmobiliarias',NULL,NULL,1),(4607,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','673','4602','Pérdidas procedentes de participaciones a largo plazo en partes vinculadas',NULL,NULL,1),(4608,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6733','4607','Pérdidas procedentes de participaciones a largo plazo empresas del grupo',NULL,NULL,1),(4609,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6734','4607','Pérdidas procedentes de participaciones a largo plazo empresas asociadas',NULL,NULL,1),(4610,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6735','4607','Pérdidas procedentes de participaciones a largo plazo otras partes vinculadas',NULL,NULL,1),(4611,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','675','4602','Pérdidas por operaciones con obligaciones propias',NULL,NULL,1),(4612,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','678','4602','Gastos excepcionales',NULL,NULL,1),(4613,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','68','4006','Dotaciones para amortizaciones',NULL,NULL,1),(4614,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','680','4613','Amortización del inmovilizado intangible',NULL,NULL,1),(4615,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','681','4613','Amortización del inmovilizado material',NULL,NULL,1),(4616,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','682','4613','Amortización de las inversiones inmobiliarias',NULL,NULL,1),(4617,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','69','4006','Pérdidas por deterioro y otras dotaciones',NULL,NULL,1),(4618,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','690','4617','Pérdidas por deterioro del inmovilizado intangible',NULL,NULL,1),(4619,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','691','4617','Pérdidas por deterioro del inmovilizado material',NULL,NULL,1),(4620,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','692','4617','Pérdidas por deterioro de las inversiones inmobiliarias',NULL,NULL,1),(4621,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','693','4617','Pérdidas por deterioro de existencias',NULL,NULL,1),(4622,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6930','4621','Pérdidas por deterioro de productos terminados y en curso de fabricación',NULL,NULL,1),(4623,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6931','4621','Pérdidas por deterioro de mercaderías',NULL,NULL,1),(4624,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6932','4621','Pérdidas por deterioro de materias primas',NULL,NULL,1),(4625,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6933','4621','Pérdidas por deterioro de otros aprovisionamientos',NULL,NULL,1),(4626,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','694','4617','Pérdidas por deterioro de créditos por operaciones comerciales',NULL,NULL,1),(4627,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','695','4617','Dotación a la provisión por operaciones comerciales',NULL,NULL,1),(4628,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6954','4627','Dotación a la provisión por contratos onerosos',NULL,NULL,1),(4629,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6959','4628','Dotación a la provisión para otras operaciones comerciales',NULL,NULL,1),(4630,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','696','4617','Pérdidas por deterioro de participaciones y valores representativos de deuda a largo plazo',NULL,NULL,1),(4631,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6960','4630','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas del grupo',NULL,NULL,1),(4632,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6961','4630','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas asociadas',NULL,NULL,1),(4633,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6962','4630','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras partes vinculadas',NULL,NULL,1),(4634,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6963','4630','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras empresas',NULL,NULL,1),(4635,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6965','4630','Pérdidas por deterioro en valores representativos de deuda a largo plazo empresas del grupo',NULL,NULL,1),(4636,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6966','4630','Pérdidas por deterioro en valores representativos de deuda a largo plazo empresas asociadas',NULL,NULL,1),(4637,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6967','4630','Pérdidas por deterioro en valores representativos de deuda a largo plazo otras partes vinculadas',NULL,NULL,1),(4638,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6968','4630','Pérdidas por deterioro en valores representativos de deuda a largo plazo otras empresas',NULL,NULL,1),(4639,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','697','4617','Pérdidas por deterioro de créditos a largo plazo',NULL,NULL,1),(4640,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6970','4639','Pérdidas por deterioro de créditos a largo plazo empresas del grupo',NULL,NULL,1),(4641,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6971','4639','Pérdidas por deterioro de créditos a largo plazo empresas asociadas',NULL,NULL,1),(4642,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6972','4639','Pérdidas por deterioro de créditos a largo plazo otras partes vinculadas',NULL,NULL,1),(4643,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6973','4639','Pérdidas por deterioro de créditos a largo plazo otras empresas',NULL,NULL,1),(4644,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','698','4617','Pérdidas por deterioro de participaciones y valores representativos de deuda a corto plazo',NULL,NULL,1),(4645,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6980','4644','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas del grupo',NULL,NULL,1),(4646,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6981','4644','Pérdidas por deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas asociadas',NULL,NULL,1),(4647,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6985','4644','Pérdidas por deterioro en valores representativos de deuda a corto plazo empresas del grupo',NULL,NULL,1),(4648,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6986','4644','Pérdidas por deterioro en valores representativos de deuda a corto plazo empresas asociadas',NULL,NULL,1),(4649,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6988','4644','Pérdidas por deterioro en valores representativos de deuda a corto plazo de otras empresas',NULL,NULL,1),(4650,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','699','4617','Pérdidas por deterioro de crédito a corto plazo',NULL,NULL,1),(4651,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6990','4650','Pérdidas por deterioro de crédito a corto plazo empresas del grupo',NULL,NULL,1),(4652,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6991','4650','Pérdidas por deterioro de crédito a corto plazo empresas asociadas',NULL,NULL,1),(4653,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6992','4650','Pérdidas por deterioro de crédito a corto plazo otras partes vinculadas',NULL,NULL,1),(4654,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','COMPRAS_Y_GASTOS','XXXXXX','6993','4650','Pérdidas por deterioro de crédito a corto plazo otras empresas',NULL,NULL,1),(4655,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','70','4007','Ventas',NULL,NULL,1),(4656,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','VENTAS','700','4655','Ventas de mercaderías',NULL,NULL,1),(4657,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','VENTAS','701','4655','Ventas de productos terminados',NULL,NULL,1),(4658,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','702','4655','Ventas de productos semiterminados',NULL,NULL,1),(4659,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','703','4655','Ventas de subproductos y residuos',NULL,NULL,1),(4660,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','704','4655','Ventas de envases y embalajes',NULL,NULL,1),(4661,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','VENTAS','705','4655','Prestaciones de servicios',NULL,NULL,1),(4662,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','706','4655','Descuentos sobre ventas por pronto pago',NULL,NULL,1),(4663,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7060','4662','Descuentos sobre ventas por pronto pago de mercaderías',NULL,NULL,1),(4664,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7061','4662','Descuentos sobre ventas por pronto pago de productos terminados',NULL,NULL,1),(4665,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7062','4662','Descuentos sobre ventas por pronto pago de productos semiterminados',NULL,NULL,1),(4666,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7063','4662','Descuentos sobre ventas por pronto pago de subproductos y residuos',NULL,NULL,1),(4667,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','708','4655','Devoluciones de ventas y operacioes similares',NULL,NULL,1),(4668,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7080','4667','Devoluciones de ventas de mercaderías',NULL,NULL,1),(4669,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7081','4667','Devoluciones de ventas de productos terminados',NULL,NULL,1),(4670,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7082','4667','Devoluciones de ventas de productos semiterminados',NULL,NULL,1),(4671,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7083','4667','Devoluciones de ventas de subproductos y residuos',NULL,NULL,1),(4672,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7084','4667','Devoluciones de ventas de envases y embalajes',NULL,NULL,1),(4673,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','71','4007','Variación de existencias',NULL,NULL,1),(4674,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','710','4673','Variación de existencias de productos en curso',NULL,NULL,1),(4675,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','711','4673','Variación de existencias de productos semiterminados',NULL,NULL,1),(4676,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','712','4673','Variación de existencias de productos terminados',NULL,NULL,1),(4677,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','713','4673','Variación de existencias de subproductos, residuos y materiales recuperados',NULL,NULL,1),(4678,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','73','4007','Trabajos realizados para la empresa',NULL,NULL,1),(4679,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','730','4678','Trabajos realizados para el inmovilizado intangible',NULL,NULL,1),(4680,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','731','4678','Trabajos realizados para el inmovilizado tangible',NULL,NULL,1),(4681,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','732','4678','Trabajos realizados en inversiones inmobiliarias',NULL,NULL,1),(4682,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','733','4678','Trabajos realizados para el inmovilizado material en curso',NULL,NULL,1),(4683,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','74','4007','Subvenciones, donaciones y legados',NULL,NULL,1),(4684,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','740','4683','Subvenciones, donaciones y legados a la explotación',NULL,NULL,1),(4685,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','746','4683','Subvenciones, donaciones y legados de capital transferidos al resultado del ejercicio',NULL,NULL,1),(4686,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','747','4683','Otras subvenciones, donaciones y legados transferidos al resultado del ejercicio',NULL,NULL,1),(4687,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','75','4007','Otros ingresos de gestión',NULL,NULL,1),(4688,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','751','4687','Resultados de operaciones en común',NULL,NULL,1),(4689,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7510','4688','Pérdida transferida gestor',NULL,NULL,1),(4690,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7511','4688','Beneficio atribuido participe o asociado no gestor',NULL,NULL,1),(4691,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','752','4687','Ingreso por arrendamiento',NULL,NULL,1),(4692,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','753','4687','Ingresos de propiedad industrial cedida en explotación',NULL,NULL,1),(4693,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','754','4687','Ingresos por comisiones',NULL,NULL,1),(4694,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','755','4687','Ingresos por servicios al personal',NULL,NULL,1),(4695,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','759','4687','Ingresos por servicios diversos',NULL,NULL,1),(4696,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76','4007','Ingresos financieros',NULL,NULL,1),(4697,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','760','4696','Ingresos de participaciones en instrumentos de patrimonio',NULL,NULL,1),(4698,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7600','4697','Ingresos de participaciones en instrumentos de patrimonio empresas del grupo',NULL,NULL,1),(4699,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7601','4697','Ingresos de participaciones en instrumentos de patrimonio empresas asociadas',NULL,NULL,1),(4700,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7602','4697','Ingresos de participaciones en instrumentos de patrimonio otras partes asociadas',NULL,NULL,1),(4701,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7603','4697','Ingresos de participaciones en instrumentos de patrimonio otras empresas',NULL,NULL,1),(4702,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','761','4696','Ingresos de valores representativos de deuda',NULL,NULL,1),(4703,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7610','4702','Ingresos de valores representativos de deuda empresas del grupo',NULL,NULL,1),(4704,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7611','4702','Ingresos de valores representativos de deuda empresas asociadas',NULL,NULL,1),(4705,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7612','4702','Ingresos de valores representativos de deuda otras partes asociadas',NULL,NULL,1),(4706,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7613','4702','Ingresos de valores representativos de deuda otras empresas',NULL,NULL,1),(4707,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','762','4696','Ingresos de créditos',NULL,NULL,1),(4708,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7620','4707','Ingresos de créditos a largo plazo',NULL,NULL,1),(4709,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76200','4708','Ingresos de crédito a largo plazo empresas del grupo',NULL,NULL,1),(4710,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76201','4708','Ingresos de crédito a largo plazo empresas asociadas',NULL,NULL,1),(4711,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76202','4708','Ingresos de crédito a largo plazo otras partes asociadas',NULL,NULL,1),(4712,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76203','4708','Ingresos de crédito a largo plazo otras empresas',NULL,NULL,1),(4713,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7621','4707','Ingresos de créditos a corto plazo',NULL,NULL,1),(4714,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76210','4713','Ingresos de crédito a corto plazo empresas del grupo',NULL,NULL,1),(4715,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76211','4713','Ingresos de crédito a corto plazo empresas asociadas',NULL,NULL,1),(4716,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76212','4713','Ingresos de crédito a corto plazo otras partes asociadas',NULL,NULL,1),(4717,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','76213','4713','Ingresos de crédito a corto plazo otras empresas',NULL,NULL,1),(4718,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','763','4696','Beneficios por valorización de activos y pasivos financieros por su valor razonable',NULL,NULL,1),(4719,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','766','4696','Beneficios en participaciones y valores representativos de deuda',NULL,NULL,1),(4720,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7660','4719','Beneficios en participaciones y valores representativos de deuda a largo plazo empresas del grupo',NULL,NULL,1),(4721,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7661','4719','Beneficios en participaciones y valores representativos de deuda a largo plazo empresas asociadas',NULL,NULL,1),(4722,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7662','4719','Beneficios en participaciones y valores representativos de deuda a largo plazo otras partes asociadas',NULL,NULL,1),(4723,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7663','4719','Beneficios en participaciones y valores representativos de deuda a largo plazo otras empresas',NULL,NULL,1),(4724,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7665','4719','Beneficios en participaciones y valores representativos de deuda a corto plazo empresas del grupo',NULL,NULL,1),(4725,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7666','4719','Beneficios en participaciones y valores representativos de deuda a corto plazo empresas asociadas',NULL,NULL,1),(4726,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7667','4719','Beneficios en participaciones y valores representativos de deuda a corto plazo otras partes asociadas',NULL,NULL,1),(4727,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7668','4719','Beneficios en participaciones y valores representativos de deuda a corto plazo otras empresas',NULL,NULL,1),(4728,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','768','4696','Diferencias positivas de cambio',NULL,NULL,1),(4729,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','769','4696','Otros ingresos financieros',NULL,NULL,1),(4730,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','77','4007','Beneficios procedentes de activos no corrientes e ingresos excepcionales',NULL,NULL,1),(4731,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','770','4730','Beneficios procedentes del inmovilizado intangible',NULL,NULL,1),(4732,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','771','4730','Beneficios procedentes del inmovilizado material',NULL,NULL,1),(4733,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','772','4730','Beneficios procedentes de las inversiones inmobiliarias',NULL,NULL,1),(4734,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','773','4730','Beneficios procedentes de participaciones a largo plazo en partes vinculadas',NULL,NULL,1),(4735,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7733','4734','Beneficios procedentes de participaciones a largo plazo empresas del grupo',NULL,NULL,1),(4736,1,NULL,'2017-08-26 22:04:49','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7734','4734','Beneficios procedentes de participaciones a largo plazo empresas asociadas',NULL,NULL,1),(4737,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7735','4734','Beneficios procedentes de participaciones a largo plazo otras partes vinculadas',NULL,NULL,1),(4738,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','775','4730','Beneficios por operaciones con obligaciones propias',NULL,NULL,1),(4739,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','778','4730','Ingresos excepcionales',NULL,NULL,1),(4741,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','79','4007','Excesos y aplicaciones de provisiones y pérdidas por deterioro',NULL,NULL,1),(4742,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','790','4741','Revisión del deterioro del inmovilizado intangible',NULL,NULL,1),(4743,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','791','4741','Revisión del deterioro del inmovilizado material',NULL,NULL,1),(4744,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','792','4741','Revisión del deterioro de las inversiones inmobiliarias',NULL,NULL,1),(4745,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','793','4741','Revisión del deterioro de las existencias',NULL,NULL,1),(4746,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7930','4745','Revisión del deterioro de productos terminados y en curso de fabricación',NULL,NULL,1),(4747,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7931','4745','Revisión del deterioro de mercaderías',NULL,NULL,1),(4748,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7932','4745','Revisión del deterioro de materias primas',NULL,NULL,1),(4749,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7933','4745','Revisión del deterioro de otros aprovisionamientos',NULL,NULL,1),(4750,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','794','4741','Revisión del deterioro de créditos por operaciones comerciales',NULL,NULL,1),(4751,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','795','4741','Exceso de provisiones',NULL,NULL,1),(4752,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7951','4751','Exceso de provisión para impuestos',NULL,NULL,1),(4753,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7952','4751','Exceso de provisión para otras responsabilidades',NULL,NULL,1),(4755,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7954','4751','Exceso de provisión para operaciones comerciales',NULL,NULL,1),(4756,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','79544','4755','Exceso de provisión por contratos onerosos',NULL,NULL,1),(4757,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','79549','4755','Exceso de provisión para otras operaciones comerciales',NULL,NULL,1),(4758,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7955','4751','Exceso de provisión para actuaciones medioambienteales',NULL,NULL,1),(4759,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','796','4741','Revisión del deterioro de participaciones y valores representativos de deuda a largo plazo',NULL,NULL,1),(4760,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7960','4759','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas del grupo',NULL,NULL,1),(4761,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7961','4759','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo empresas asociadas',NULL,NULL,1),(4762,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7962','4759','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras partes vinculadas',NULL,NULL,1),(4763,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7963','4759','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo otras empresas',NULL,NULL,1),(4764,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7965','4759','Revisión del deterioro de valores representativos a largo plazo empresas del grupo',NULL,NULL,1),(4765,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7966','4759','Revisión del deterioro de valores representativos a largo plazo empresas asociadas',NULL,NULL,1),(4766,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7967','4759','Revisión del deterioro de valores representativos a largo otras partes vinculadas',NULL,NULL,1),(4767,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7968','4759','Revisión del deterioro de valores representativos a largo plazo otras empresas',NULL,NULL,1),(4768,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','797','4741','Revisión del deterioro de créditos a largo plazo',NULL,NULL,1),(4769,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7970','4768','Revisión del deterioro de créditos a largo plazo empresas del grupo',NULL,NULL,1),(4770,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7971','4768','Revisión del deterioro de créditos a largo plazo empresas asociadas',NULL,NULL,1),(4771,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7972','4768','Revisión del deterioro de créditos a largo plazo otras partes vinculadas',NULL,NULL,1),(4772,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7973','4768','Revisión del deterioro de créditos a largo plazo otras empresas',NULL,NULL,1),(4773,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','798','4741','Revisión del deterioro de participaciones y valores representativos de deuda a corto plazo',NULL,NULL,1),(4774,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7980','4773','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas del grupo',NULL,NULL,1),(4775,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7981','4773','Revisión del deterioro de participaciones en instrumentos de patrimonio neto a corto plazo empresas asociadas',NULL,NULL,1),(4776,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7985','4773','Revisión del deterioro de valores representativos de deuda a corto plazo empresas del grupo',NULL,NULL,1),(4777,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7986','4773','Revisión del deterioro de valores representativos de deuda a corto plazo empresas asociadas',NULL,NULL,1),(4778,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7987','4773','Revisión del deterioro de valores representativos de deuda a corto plazo otras partes vinculadas',NULL,NULL,1),(4779,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7988','4773','Revisión del deterioro de valores representativos de deuda a corto plazo otras empresas',NULL,NULL,1),(4780,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','799','4741','Revisión del deterioro de créditos a corto plazo',NULL,NULL,1),(4781,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7990','4780','Revisión del deterioro de créditos a corto plazo empresas del grupo',NULL,NULL,1),(4782,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7991','4780','Revisión del deterioro de créditos a corto plazo empresas asociadas',NULL,NULL,1),(4783,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7992','4780','Revisión del deterioro de créditos a corto plazo otras partes vinculadas',NULL,NULL,1),(4784,1,NULL,'2017-08-26 22:04:50','PCG08-PYME','VENTAS_E_INGRESOS','XXXXXX','7993','4780','Revisión del deterioro de créditos a corto plazo otras empresas',NULL,NULL,1); +/*!40000 ALTER TABLE `llx_accountingaccount` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_actioncomm` +-- + +DROP TABLE IF EXISTS `llx_actioncomm`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_actioncomm` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datep` datetime DEFAULT NULL, + `datep2` datetime DEFAULT NULL, + `fk_action` int(11) DEFAULT NULL, + `code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) DEFAULT NULL, + `fk_project` int(11) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_parent` int(11) NOT NULL DEFAULT '0', + `fk_user_action` int(11) DEFAULT NULL, + `transparency` int(11) DEFAULT NULL, + `fk_user_done` int(11) DEFAULT NULL, + `priority` smallint(6) DEFAULT NULL, + `fulldayevent` smallint(6) NOT NULL DEFAULT '0', + `punctual` smallint(6) NOT NULL DEFAULT '1', + `percent` smallint(6) NOT NULL DEFAULT '0', + `location` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `durationp` double DEFAULT NULL, + `durationa` double DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_element` int(11) DEFAULT NULL, + `elementtype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_msgid` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_subject` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_from` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_sender` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_to` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_tocc` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_tobcc` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `errors_to` varchar(256) COLLATE utf8_unicode_ci DEFAULT NULL, + `recurid` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `recurrule` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `recurdateend` datetime DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `idx_actioncomm_fk_soc` (`fk_soc`), + KEY `idx_actioncomm_fk_contact` (`fk_contact`), + KEY `idx_actioncomm_fk_element` (`fk_element`), + KEY `idx_actioncomm_code` (`code`), + KEY `idx_actioncomm_fk_user_action` (`fk_user_action`), + KEY `idx_actioncomm_fk_project` (`fk_project`), + KEY `idx_actioncomm_datep` (`datep`), + KEY `idx_actioncomm_datep2` (`datep2`), + KEY `idx_actioncomm_recurid` (`recurid`), + KEY `idx_actioncomm_ref_ext` (`ref_ext`) +) ENGINE=InnoDB AUTO_INCREMENT=329 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_actioncomm` +-- + +LOCK TABLES `llx_actioncomm` WRITE; +/*!40000 ALTER TABLE `llx_actioncomm` DISABLE KEYS */; +INSERT INTO `llx_actioncomm` VALUES (1,NULL,1,'2010-07-08 14:21:44','2010-07-08 14:21:44',50,NULL,'Company AAA and Co added into Dolibarr','2010-07-08 14:21:44','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company AAA and Co added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,NULL,1,'2010-07-08 14:23:48','2010-07-08 14:23:48',50,NULL,'Company Belin SARL added into Dolibarr','2010-07-08 14:23:48','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company Belin SARL added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,NULL,1,'2010-07-08 22:42:12','2010-07-08 22:42:12',50,NULL,'Company Spanish Comp added into Dolibarr','2010-07-08 22:42:12','2014-12-21 12:50:33',1,NULL,NULL,3,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company Spanish Comp added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,NULL,1,'2010-07-08 22:48:18','2010-07-08 22:48:18',50,NULL,'Company Prospector Vaalen added into Dolibarr','2010-07-08 22:48:18','2014-12-21 12:50:33',1,NULL,NULL,4,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company Prospector Vaalen added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,NULL,1,'2010-07-08 23:22:57','2010-07-08 23:22:57',50,NULL,'Company NoCountry Co added into Dolibarr','2010-07-08 23:22:57','2014-12-21 12:50:33',1,NULL,NULL,5,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company NoCountry Co added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(6,NULL,1,'2010-07-09 00:15:09','2010-07-09 00:15:09',50,NULL,'Company Swiss customer added into Dolibarr','2010-07-09 00:15:09','2014-12-21 12:50:33',1,NULL,NULL,6,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company Swiss customer added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(7,NULL,1,'2010-07-09 01:24:26','2010-07-09 01:24:26',50,NULL,'Company Generic customer added into Dolibarr','2010-07-09 01:24:26','2014-12-21 12:50:33',1,NULL,NULL,7,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Company Generic customer added into Dolibarr\nAuthor: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(8,NULL,1,'2010-07-10 14:54:27','2010-07-10 14:54:27',50,NULL,'Société Client salon ajoutée dans Dolibarr','2010-07-10 14:54:27','2014-12-21 12:50:33',1,NULL,NULL,8,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Client salon ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(9,NULL,1,'2010-07-10 14:54:44','2010-07-10 14:54:44',50,NULL,'Société Client salon invidivdu ajoutée dans Doliba','2010-07-10 14:54:44','2014-12-21 12:50:33',1,NULL,NULL,9,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Client salon invidivdu ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(10,NULL,1,'2010-07-10 14:56:10','2010-07-10 14:56:10',50,NULL,'Facture FA1007-0001 validée dans Dolibarr','2010-07-10 14:56:10','2014-12-21 12:50:33',1,NULL,NULL,9,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Facture FA1007-0001 validée dans Dolibarr\nAuteur: admin',1,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,NULL,1,'2010-07-10 14:58:53','2010-07-10 14:58:53',50,NULL,'Facture FA1007-0001 validée dans Dolibarr','2010-07-10 14:58:53','2014-12-21 12:50:33',1,NULL,NULL,9,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Facture FA1007-0001 validée dans Dolibarr\nAuteur: admin',1,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,NULL,1,'2010-07-10 15:00:55','2010-07-10 15:00:55',50,NULL,'Facture FA1007-0001 passée à payée dans Dolibarr','2010-07-10 15:00:55','2014-12-21 12:50:33',1,NULL,NULL,9,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Facture FA1007-0001 passée à payée dans Dolibarr\nAuteur: admin',1,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(13,NULL,1,'2010-07-10 15:13:08','2010-07-10 15:13:08',50,NULL,'Société Smith Vick ajoutée dans Dolibarr','2010-07-10 15:13:08','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Smith Vick ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(14,NULL,1,'2010-07-10 15:21:00','2010-07-10 16:21:00',5,NULL,'RDV avec mon chef','2010-07-10 15:21:48','2010-07-10 13:21:48',1,NULL,NULL,NULL,NULL,0,1,NULL,NULL,0,0,1,0,'',3600,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(15,NULL,1,'2010-07-10 18:18:16','2010-07-10 18:18:16',50,NULL,'Contrat CONTRAT1 validé dans Dolibarr','2010-07-10 18:18:16','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Contrat CONTRAT1 validé dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(16,NULL,1,'2010-07-10 18:35:57','2010-07-10 18:35:57',50,NULL,'Société Mon client ajoutée dans Dolibarr','2010-07-10 18:35:57','2014-12-21 12:50:33',1,NULL,NULL,11,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Mon client ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(17,NULL,1,'2010-07-11 16:18:08','2010-07-11 16:18:08',50,NULL,'Société Dupont Alain ajoutée dans Dolibarr','2010-07-11 16:18:08','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Dupont Alain ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(18,NULL,1,'2010-07-11 17:11:00','2010-07-11 17:17:00',5,NULL,'Rendez-vous','2010-07-11 17:11:22','2010-07-11 15:11:22',1,NULL,NULL,NULL,NULL,0,1,NULL,NULL,0,0,1,0,'gfgdfgdf',360,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(19,NULL,1,'2010-07-11 17:13:20','2010-07-11 17:13:20',50,NULL,'Société Vendeur de chips ajoutée dans Dolibarr','2010-07-11 17:13:20','2014-12-21 12:50:33',1,NULL,NULL,13,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Société Vendeur de chips ajoutée dans Dolibarr\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(20,NULL,1,'2010-07-11 17:15:42','2010-07-11 17:15:42',50,NULL,'Commande CF1007-0001 validée','2010-07-11 17:15:42','2014-12-21 12:50:33',1,NULL,NULL,13,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Commande CF1007-0001 validée\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(21,NULL,1,'2010-07-11 18:47:33','2010-07-11 18:47:33',50,NULL,'Commande CF1007-0002 validée','2010-07-11 18:47:33','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Commande CF1007-0002 validée\nAuteur: admin',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(22,NULL,1,'2010-07-18 11:36:18','2010-07-18 11:36:18',50,NULL,'Proposition PR1007-0003 validée','2010-07-18 11:36:18','2014-12-21 12:50:33',1,NULL,NULL,4,NULL,0,1,NULL,1,0,0,1,100,'',NULL,NULL,'Proposition PR1007-0003 validée\nAuteur: admin',3,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(23,NULL,1,'2011-07-18 20:49:58','2011-07-18 20:49:58',50,NULL,'Invoice FA1007-0002 validated in Dolibarr','2011-07-18 20:49:58','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1007-0002 validated in Dolibarr\nAuthor: admin',2,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(24,NULL,1,'2011-07-28 01:37:00',NULL,1,NULL,'Phone call','2011-07-28 01:37:48','2011-07-27 23:37:48',1,NULL,NULL,NULL,2,0,1,NULL,NULL,0,0,1,-1,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(25,NULL,1,'2011-08-01 02:31:24','2011-08-01 02:31:24',50,NULL,'Company mmm added into Dolibarr','2011-08-01 02:31:24','2014-12-21 12:50:33',1,NULL,NULL,15,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Company mmm added into Dolibarr\nAuthor: admin',15,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(26,NULL,1,'2011-08-01 02:31:43','2011-08-01 02:31:43',50,NULL,'Company ppp added into Dolibarr','2011-08-01 02:31:43','2014-12-21 12:50:33',1,NULL,NULL,16,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Company ppp added into Dolibarr\nAuthor: admin',16,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(27,NULL,1,'2011-08-01 02:41:26','2011-08-01 02:41:26',50,NULL,'Company aaa added into Dolibarr','2011-08-01 02:41:26','2014-12-21 12:50:33',1,NULL,NULL,17,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Company aaa added into Dolibarr\nAuthor: admin',17,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(28,NULL,1,'2011-08-01 03:34:11','2011-08-01 03:34:11',50,NULL,'Invoice FA1108-0003 validated in Dolibarr','2011-08-01 03:34:11','2014-12-21 12:50:33',1,NULL,NULL,7,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0003 validated in Dolibarr\nAuthor: admin',5,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(29,NULL,1,'2011-08-01 03:34:11','2011-08-01 03:34:11',50,NULL,'Invoice FA1108-0003 validated in Dolibarr','2011-08-01 03:34:11','2014-12-21 12:50:33',1,NULL,NULL,7,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0003 changed to paid in Dolibarr\nAuthor: admin',5,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(30,NULL,1,'2011-08-06 20:33:54','2011-08-06 20:33:54',50,NULL,'Invoice FA1108-0004 validated in Dolibarr','2011-08-06 20:33:54','2014-12-21 12:50:33',1,NULL,NULL,7,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0004 validated in Dolibarr\nAuthor: admin',6,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(31,NULL,1,'2011-08-06 20:33:54','2011-08-06 20:33:54',50,NULL,'Invoice FA1108-0004 validated in Dolibarr','2011-08-06 20:33:54','2014-12-21 12:50:33',1,NULL,NULL,7,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0004 changed to paid in Dolibarr\nAuthor: admin',6,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(38,NULL,1,'2011-08-08 02:41:55','2011-08-08 02:41:55',50,NULL,'Invoice FA1108-0005 validated in Dolibarr','2011-08-08 02:41:55','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0005 validated in Dolibarr\nAuthor: admin',8,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(40,NULL,1,'2011-08-08 02:53:40','2011-08-08 02:53:40',50,NULL,'Invoice FA1108-0005 changed to paid in Dolibarr','2011-08-08 02:53:40','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0005 changed to paid in Dolibarr\nAuthor: admin',8,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(41,NULL,1,'2011-08-08 02:54:05','2011-08-08 02:54:05',50,NULL,'Invoice FA1007-0002 changed to paid in Dolibarr','2011-08-08 02:54:05','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1007-0002 changed to paid in Dolibarr\nAuthor: admin',2,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(42,NULL,1,'2011-08-08 02:55:04','2011-08-08 02:55:04',50,NULL,'Invoice FA1107-0006 validated in Dolibarr','2011-08-08 02:55:04','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1107-0006 validated in Dolibarr\nAuthor: admin',3,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(43,NULL,1,'2011-08-08 02:55:26','2011-08-08 02:55:26',50,NULL,'Invoice FA1108-0007 validated in Dolibarr','2011-08-08 02:55:26','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1108-0007 validated in Dolibarr\nAuthor: admin',9,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(44,NULL,1,'2011-08-08 02:55:58','2011-08-08 02:55:58',50,NULL,'Invoice FA1107-0006 changed to paid in Dolibarr','2011-08-08 02:55:58','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1107-0006 changed to paid in Dolibarr\nAuthor: admin',3,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(45,NULL,1,'2011-08-08 03:04:22','2011-08-08 03:04:22',50,NULL,'Order CO1108-0001 validated','2011-08-08 03:04:22','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Order CO1108-0001 validated\nAuthor: admin',5,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(46,NULL,1,'2011-08-08 13:59:09','2011-08-08 13:59:09',50,NULL,'Order CO1107-0002 validated','2011-08-08 13:59:10','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Order CO1107-0002 validated\nAuthor: admin',1,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(47,NULL,1,'2011-08-08 14:24:18','2011-08-08 14:24:18',50,NULL,'Proposal PR1007-0001 validated','2011-08-08 14:24:18','2014-12-21 12:50:33',1,NULL,NULL,2,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Proposal PR1007-0001 validated\nAuthor: admin',1,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(48,NULL,1,'2011-08-08 14:24:24','2011-08-08 14:24:24',50,NULL,'Proposal PR1108-0004 validated','2011-08-08 14:24:24','2014-12-21 12:50:33',1,NULL,NULL,17,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Proposal PR1108-0004 validated\nAuthor: admin',4,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(49,NULL,1,'2011-08-08 15:04:37','2011-08-08 15:04:37',50,NULL,'Order CF1108-0003 validated','2011-08-08 15:04:37','2014-12-21 12:50:33',1,NULL,NULL,17,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Order CF1108-0003 validated\nAuthor: admin',6,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(50,NULL,1,'2012-12-08 17:56:47','2012-12-08 17:56:47',40,NULL,'Facture AV1212-0001 validée dans Dolibarr','2012-12-08 17:56:47','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture AV1212-0001 validée dans Dolibarr\nAuteur: admin',10,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(51,NULL,1,'2012-12-08 17:57:11','2012-12-08 17:57:11',40,NULL,'Facture AV1212-0001 validée dans Dolibarr','2012-12-08 17:57:11','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture AV1212-0001 validée dans Dolibarr\nAuteur: admin',10,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(52,NULL,1,'2012-12-08 17:58:27','2012-12-08 17:58:27',40,NULL,'Facture FA1212-0008 validée dans Dolibarr','2012-12-08 17:58:27','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1212-0008 validée dans Dolibarr\nAuteur: admin',11,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(53,NULL,1,'2012-12-08 18:20:49','2012-12-08 18:20:49',40,NULL,'Facture AV1212-0002 validée dans Dolibarr','2012-12-08 18:20:49','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture AV1212-0002 validée dans Dolibarr\nAuteur: admin',12,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(54,NULL,1,'2012-12-09 18:35:07','2012-12-09 18:35:07',40,NULL,'Facture AV1212-0002 passée à payée dans Dolibarr','2012-12-09 18:35:07','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture AV1212-0002 passée à payée dans Dolibarr\nAuteur: admin',12,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(55,NULL,1,'2012-12-09 20:14:42','2012-12-09 20:14:42',40,NULL,'Société doe john ajoutée dans Dolibarr','2012-12-09 20:14:42','2014-12-21 12:50:33',1,NULL,NULL,18,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Société doe john ajoutée dans Dolibarr\nAuteur: admin',18,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(56,NULL,1,'2012-12-12 18:54:19','2012-12-12 18:54:19',40,NULL,'Facture FA1212-0009 validée dans Dolibarr','2012-12-12 18:54:19','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1212-0009 validée dans Dolibarr\nAuteur: admin',55,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(121,NULL,1,'2012-12-06 10:00:00',NULL,50,NULL,'aaab','2012-12-21 17:48:08','2012-12-21 16:54:07',3,1,NULL,NULL,NULL,0,3,NULL,NULL,1,0,1,-1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(122,NULL,1,'2012-12-21 18:09:52','2012-12-21 18:09:52',40,NULL,'Facture client FA1007-0001 envoyée par EMail','2012-12-21 18:09:52','2014-12-21 12:50:33',1,NULL,NULL,9,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Mail envoyé par Firstname SuperAdminName à laurent@destailleur.fr.\nSujet du mail: Envoi facture FA1007-0001\nCorps du mail:\nVeuillez trouver ci-joint la facture FA1007-0001\r\n\r\nVous pouvez cliquer sur le lien sécurisé ci-dessous pour effectuer votre paiement via Paypal\r\n\r\nhttp://localhost/dolibarrnew/public/paypal/newpayment.php?source=invoice&ref=FA1007-0001&securekey=50c82fab36bb3b6aa83e2a50691803b2\r\n\r\nCordialement',1,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(123,NULL,1,'2013-01-06 13:13:57','2013-01-06 13:13:57',40,NULL,'Facture 16 validée dans Dolibarr','2013-01-06 13:13:57','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture 16 validée dans Dolibarr\nAuteur: admin',16,'invoice_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(124,NULL,1,'2013-01-12 12:23:05','2013-01-12 12:23:05',40,NULL,'Patient aaa ajouté','2013-01-12 12:23:05','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Patient aaa ajouté\nAuteur: admin',19,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(125,NULL,1,'2013-01-12 12:52:20','2013-01-12 12:52:20',40,NULL,'Patient pppoo ajouté','2013-01-12 12:52:20','2014-12-21 12:50:33',1,NULL,NULL,20,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Patient pppoo ajouté\nAuteur: admin',20,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(127,NULL,1,'2013-01-19 18:22:48','2013-01-19 18:22:48',40,NULL,'Facture FS1301-0001 validée dans Dolibarr','2013-01-19 18:22:48','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FS1301-0001 validée dans Dolibarr\nAuteur: admin',148,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(128,NULL,1,'2013-01-19 18:31:10','2013-01-19 18:31:10',40,NULL,'Facture FA6801-0010 validée dans Dolibarr','2013-01-19 18:31:10','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA6801-0010 validée dans Dolibarr\nAuteur: admin',150,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(129,NULL,1,'2013-01-19 18:31:10','2013-01-19 18:31:10',40,NULL,'Facture FA6801-0010 passée à payée dans Dolibarr','2013-01-19 18:31:10','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA6801-0010 passée à payée dans Dolibarr\nAuteur: admin',150,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(130,NULL,1,'2013-01-19 18:31:58','2013-01-19 18:31:58',40,NULL,'Facture FS1301-0002 validée dans Dolibarr','2013-01-19 18:31:58','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FS1301-0002 validée dans Dolibarr\nAuteur: admin',151,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(131,NULL,1,'2013-01-19 18:31:58','2013-01-19 18:31:58',40,NULL,'Facture FS1301-0002 passée à payée dans Dolibarr','2013-01-19 18:31:58','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FS1301-0002 passée à payée dans Dolibarr\nAuteur: admin',151,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(132,NULL,1,'2013-01-23 15:07:54','2013-01-23 15:07:54',50,NULL,'Consultation 24 saisie (aaa)','2013-01-23 15:07:54','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Consultation 24 saisie (aaa)\nAuteur: admin',24,'cabinetmed_cons',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(133,NULL,1,'2013-01-23 16:56:58','2013-01-23 16:56:58',40,NULL,'Patient pa ajouté','2013-01-23 16:56:58','2014-12-21 12:50:33',1,NULL,NULL,21,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Patient pa ajouté\nAuteur: admin',21,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(134,NULL,1,'2013-01-23 17:34:00',NULL,50,NULL,'bbcv','2013-01-23 17:35:21','2013-01-23 16:35:21',1,NULL,1,2,NULL,0,1,NULL,NULL,0,0,1,-1,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(135,NULL,1,'2013-02-12 15:54:00','2013-02-12 15:54:00',40,NULL,'Facture FA1212-0011 validée dans Dolibarr','2013-02-12 15:54:37','2014-12-21 12:50:33',1,1,NULL,7,NULL,0,1,NULL,1,0,0,1,50,NULL,NULL,NULL,'Facture FA1212-0011 validée dans Dolibarr
\r\nAuteur: admin',13,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(136,NULL,1,'2013-02-12 17:06:51','2013-02-12 17:06:51',40,NULL,'Commande CO1107-0003 validée','2013-02-12 17:06:51','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Commande CO1107-0003 validée\nAuteur: admin',2,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(137,NULL,1,'2013-02-17 16:22:10','2013-02-17 16:22:10',40,NULL,'Proposition PR1302-0009 validée','2013-02-17 16:22:10','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Proposition PR1302-0009 validée\nAuteur: admin',9,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(138,NULL,1,'2013-02-17 16:27:00','2013-02-17 16:27:00',40,NULL,'Facture FA1302-0012 validée dans Dolibarr','2013-02-17 16:27:00','2014-12-21 12:50:33',1,NULL,NULL,18,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1302-0012 validée dans Dolibarr\nAuteur: admin',152,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(139,NULL,1,'2013-02-17 16:27:29','2013-02-17 16:27:29',40,NULL,'Proposition PR1302-0010 validée','2013-02-17 16:27:29','2014-12-21 12:50:33',1,NULL,NULL,18,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Proposition PR1302-0010 validée\nAuteur: admin',11,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(140,NULL,1,'2013-02-17 18:27:56','2013-02-17 18:27:56',40,NULL,'Commande CO1107-0004 validée','2013-02-17 18:27:56','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Commande CO1107-0004 validée\nAuteur: admin',3,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(141,NULL,1,'2013-02-17 18:38:14','2013-02-17 18:38:14',40,NULL,'Commande CO1302-0005 validée','2013-02-17 18:38:14','2014-12-21 12:50:33',1,NULL,NULL,18,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Commande CO1302-0005 validée\nAuteur: admin',7,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(142,NULL,1,'2013-02-26 22:57:50','2013-02-26 22:57:50',40,NULL,'Company pppp added into Dolibarr','2013-02-26 22:57:50','2014-12-21 12:50:33',1,NULL,NULL,22,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Company pppp added into Dolibarr\nAuthor: admin',22,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(143,NULL,1,'2013-02-26 22:58:13','2013-02-26 22:58:13',40,NULL,'Company ttttt added into Dolibarr','2013-02-26 22:58:13','2014-12-21 12:50:33',1,NULL,NULL,23,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Company ttttt added into Dolibarr\nAuthor: admin',23,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(144,NULL,1,'2013-02-27 10:00:00','2013-02-27 19:20:00',5,NULL,'Rendez-vous','2013-02-27 19:20:53','2013-02-27 18:20:53',1,NULL,NULL,NULL,NULL,0,1,NULL,1,0,0,1,-1,'',33600,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(145,NULL,1,'2013-02-27 19:28:00',NULL,2,NULL,'fdsfsd','2013-02-27 19:28:48','2013-02-27 18:29:53',1,1,NULL,NULL,NULL,0,1,NULL,1,0,0,1,-1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(146,NULL,1,'2013-03-06 10:05:07','2013-03-06 10:05:07',40,NULL,'Contrat (PROV3) validé dans Dolibarr','2013-03-06 10:05:07','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Contrat (PROV3) validé dans Dolibarr\nAuteur: admin',3,'contract',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(147,NULL,1,'2013-03-06 16:43:37','2013-03-06 16:43:37',40,NULL,'Facture FA1307-0013 validée dans Dolibarr','2013-03-06 16:43:37','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1307-0013 validée dans Dolibarr\nAuteur: admin',158,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(148,NULL,1,'2013-03-06 16:44:12','2013-03-06 16:44:12',40,NULL,'Facture FA1407-0014 validée dans Dolibarr','2013-03-06 16:44:12','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1407-0014 validée dans Dolibarr\nAuteur: admin',159,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(149,NULL,1,'2013-03-06 16:47:48','2013-03-06 16:47:48',40,NULL,'Facture FA1507-0015 validée dans Dolibarr','2013-03-06 16:47:48','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1507-0015 validée dans Dolibarr\nAuteur: admin',160,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(150,NULL,1,'2013-03-06 16:48:16','2013-03-06 16:48:16',40,NULL,'Facture FA1607-0016 validée dans Dolibarr','2013-03-06 16:48:16','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1607-0016 validée dans Dolibarr\nAuteur: admin',161,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(151,NULL,1,'2013-03-06 17:13:59','2013-03-06 17:13:59',40,NULL,'Société smith smith ajoutée dans Dolibarr','2013-03-06 17:13:59','2014-12-21 12:50:33',1,NULL,NULL,24,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Société smith smith ajoutée dans Dolibarr\nAuteur: admin',24,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(152,NULL,1,'2013-03-08 10:02:22','2013-03-08 10:02:22',40,NULL,'Proposition (PROV12) validée dans Dolibarr','2013-03-08 10:02:22','2014-12-21 12:50:33',1,NULL,NULL,23,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Proposition (PROV12) validée dans Dolibarr\nAuteur: admin',12,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(203,NULL,1,'2013-03-09 19:39:27','2013-03-09 19:39:27',40,'AC_ORDER_SUPPLIER_VALIDATE','Commande CF1303-0004 validée','2013-03-09 19:39:27','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Commande CF1303-0004 validée\nAuteur: admin',13,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(204,NULL,1,'2013-03-10 15:47:37','2013-03-10 15:47:37',40,'AC_COMPANY_CREATE','Patient créé','2013-03-10 15:47:37','2014-12-21 12:50:33',1,NULL,NULL,25,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Patient créé\nAuteur: admin',25,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(205,NULL,1,'2013-03-10 15:57:32','2013-03-10 15:57:32',40,'AC_COMPANY_CREATE','Tiers créé','2013-03-10 15:57:32','2014-12-21 12:50:33',1,NULL,NULL,26,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Tiers créé\nAuteur: admin',26,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(206,NULL,1,'2013-03-10 15:58:28','2013-03-10 15:58:28',40,'AC_BILL_VALIDATE','Facture FA1303-0017 validée','2013-03-10 15:58:28','2014-12-21 12:50:33',1,NULL,NULL,26,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1303-0017 validée\nAuteur: admin',208,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(207,NULL,1,'2013-03-19 09:38:10','2013-03-19 09:38:10',40,'AC_BILL_VALIDATE','Facture FA1303-0018 validée','2013-03-19 09:38:10','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1303-0018 validée\nAuteur: admin',209,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(208,NULL,1,'2013-03-20 14:30:11','2013-03-20 14:30:11',40,'AC_BILL_VALIDATE','Facture FA1107-0019 validée','2013-03-20 14:30:11','2014-12-21 12:50:33',1,NULL,NULL,10,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1107-0019 validée\nAuteur: admin',210,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(209,NULL,1,'2013-03-22 09:40:25','2013-03-22 09:40:25',40,'AC_BILL_VALIDATE','Facture FA1303-0020 validée','2013-03-22 09:40:25','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1303-0020 validée\nAuteur: admin',211,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(210,NULL,1,'2013-03-23 17:16:25','2013-03-23 17:16:25',40,'AC_BILL_VALIDATE','Facture FA1303-0020 validée','2013-03-23 17:16:25','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1303-0020 validée\nAuteur: admin',211,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(211,NULL,1,'2013-03-23 18:08:27','2013-03-23 18:08:27',40,'AC_BILL_VALIDATE','Facture FA1307-0013 validée','2013-03-23 18:08:27','2014-12-21 12:50:33',1,NULL,NULL,12,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1307-0013 validée\nAuteur: admin',158,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(212,NULL,1,'2013-03-24 15:54:00','2013-03-24 15:54:00',40,'AC_BILL_VALIDATE','Facture FA1212-0021 validée','2013-03-24 15:54:00','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,NULL,1,0,0,1,-1,'',NULL,NULL,'Facture FA1212-0021 validée\nAuteur: admin',32,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(213,NULL,1,'2013-11-07 01:02:39','2013-11-07 01:02:39',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:02:39','2014-12-21 12:50:33',1,NULL,NULL,27,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',27,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(214,NULL,1,'2013-11-07 01:05:22','2013-11-07 01:05:22',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:05:22','2014-12-21 12:50:33',1,NULL,NULL,28,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',28,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(215,NULL,1,'2013-11-07 01:07:07','2013-11-07 01:07:07',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:07:07','2014-12-21 12:50:33',1,NULL,NULL,29,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',29,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(216,NULL,1,'2013-11-07 01:07:58','2013-11-07 01:07:58',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:07:58','2014-12-21 12:50:33',1,NULL,NULL,30,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',30,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(217,NULL,1,'2013-11-07 01:10:09','2013-11-07 01:10:09',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:10:09','2014-12-21 12:50:33',1,NULL,NULL,31,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',31,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(218,NULL,1,'2013-11-07 01:15:57','2013-11-07 01:15:57',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:15:57','2014-12-21 12:50:33',1,NULL,NULL,32,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',32,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(219,NULL,1,'2013-11-07 01:16:51','2013-11-07 01:16:51',40,'AC_COMPANY_CREATE','Third party created','2013-11-07 01:16:51','2014-12-21 12:50:33',1,NULL,NULL,33,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Third party created\nAuthor: admin',33,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(220,NULL,1,'2014-03-02 17:24:04','2014-03-02 17:24:04',40,'AC_BILL_VALIDATE','Invoice FA1302-0022 validated','2014-03-02 17:24:04','2014-12-21 12:50:33',1,NULL,NULL,18,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1302-0022 validated\nAuthor: admin',157,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(221,NULL,1,'2014-03-02 17:24:28','2014-03-02 17:24:28',40,'AC_BILL_VALIDATE','Invoice FA1303-0020 validated','2014-03-02 17:24:28','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1303-0020 validated\nAuthor: admin',211,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(222,NULL,1,'2014-03-05 10:00:00','2014-03-05 10:00:00',5,NULL,'RDV John','2014-03-02 19:54:48','2014-03-02 18:55:29',1,1,NULL,NULL,NULL,0,1,0,NULL,0,0,1,-1,NULL,NULL,NULL,'gfdgdfgdf',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(223,NULL,1,'2014-03-13 10:00:00','2014-03-17 00:00:00',50,NULL,'Congress','2014-03-02 19:55:11','2014-03-02 18:55:11',1,NULL,NULL,NULL,NULL,0,1,0,NULL,0,0,1,-1,'',309600,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(224,NULL,1,'2014-03-14 10:00:00',NULL,1,NULL,'Call john','2014-03-02 19:55:56','2014-03-02 18:55:56',1,NULL,NULL,NULL,NULL,0,1,0,NULL,0,0,1,0,'',NULL,NULL,'tttt',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(225,NULL,1,'2014-03-02 20:11:31','2014-03-02 20:11:31',40,'AC_BILL_UNVALIDATE','Invoice FA1303-0020 go back to draft status','2014-03-02 20:11:31','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1303-0020 go back to draft status\nAuthor: admin',211,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(226,NULL,1,'2014-03-02 20:13:39','2014-03-02 20:13:39',40,'AC_BILL_VALIDATE','Invoice FA1303-0020 validated','2014-03-02 20:13:39','2014-12-21 12:50:33',1,NULL,NULL,19,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1303-0020 validated\nAuthor: admin',211,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(227,NULL,1,'2014-03-03 19:20:10','2014-03-03 19:20:10',40,'AC_BILL_VALIDATE','Invoice FA1212-0023 validated','2014-03-03 19:20:10','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1212-0023 validated\nAuthor: admin',33,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(228,NULL,1,'2014-03-03 19:20:25','2014-03-03 19:20:25',40,'AC_BILL_CANCEL','Invoice FA1212-0023 canceled in Dolibarr','2014-03-03 19:20:25','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice FA1212-0023 canceled in Dolibarr\nAuthor: admin',33,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(229,NULL,1,'2014-03-03 19:20:56','2014-03-03 19:20:56',40,'AC_BILL_VALIDATE','Invoice AV1403-0003 validated','2014-03-03 19:20:56','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice AV1403-0003 validated\nAuthor: admin',212,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(230,NULL,1,'2014-03-03 19:21:29','2014-03-03 19:21:29',40,'AC_BILL_UNVALIDATE','Invoice AV1403-0003 go back to draft status','2014-03-03 19:21:29','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice AV1403-0003 go back to draft status\nAuthor: admin',212,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(231,NULL,1,'2014-03-03 19:22:16','2014-03-03 19:22:16',40,'AC_BILL_VALIDATE','Invoice AV1303-0003 validated','2014-03-03 19:22:16','2014-12-21 12:50:33',1,NULL,NULL,1,NULL,0,1,0,1,0,0,1,-1,'',NULL,NULL,'Invoice AV1303-0003 validated\nAuthor: admin',213,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(232,NULL,1,'2016-01-22 18:54:39','2016-01-22 18:54:39',40,'AC_OTH_AUTO','Invoice 16 validated','2016-01-22 18:54:39','2016-01-22 17:54:39',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Invoice 16 validated\nAuthor: admin',16,'invoice_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(233,NULL,1,'2016-01-22 18:54:46','2016-01-22 18:54:46',40,'AC_OTH_AUTO','Invoice 16 validated','2016-01-22 18:54:46','2016-01-22 17:54:46',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Invoice 16 validated\nAuthor: admin',16,'invoice_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(234,NULL,1,'2016-07-05 10:00:00','2016-07-05 11:19:00',5,'AC_RDV','Meeting with my boss','2016-07-31 18:19:48','2016-07-31 14:19:48',12,NULL,NULL,NULL,NULL,0,12,1,NULL,0,0,1,-1,'',4740,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(235,NULL,1,'2016-07-13 00:00:00','2016-07-14 23:59:59',50,'AC_OTH','Trip at Las Vegas','2016-07-31 18:20:36','2016-07-31 14:20:36',12,NULL,4,NULL,2,0,12,1,NULL,0,1,1,-1,'',172799,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(236,NULL,1,'2016-07-29 10:00:00',NULL,4,'AC_EMAIL','Remind to send an email','2016-07-31 18:21:04','2016-07-31 14:21:04',12,NULL,NULL,NULL,NULL,0,4,0,NULL,0,0,1,-1,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(237,NULL,1,'2016-07-01 10:00:00',NULL,1,'AC_TEL','Phone call with Mr Vaalen','2016-07-31 18:22:04','2016-07-31 14:22:04',12,NULL,6,4,NULL,0,13,0,NULL,0,0,1,-1,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(238,NULL,1,'2016-08-02 10:00:00','2016-08-02 12:00:00',5,'AC_RDV','Meeting on radium','2016-08-01 01:15:50','2016-07-31 21:15:50',12,NULL,8,10,10,0,12,1,NULL,0,0,1,-1,'',7200,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(239,NULL,1,'2017-01-29 21:49:33','2017-01-29 21:49:33',40,'AC_OTH_AUTO','Proposal PR1302-0007 validated','2017-01-29 21:49:33','2017-01-29 17:49:33',12,NULL,NULL,19,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1302-0007 validated\nAuthor: admin',7,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(240,NULL,1,'2017-01-31 20:52:00',NULL,1,'AC_TEL','Call the boss','2017-01-31 20:52:10','2017-01-31 16:52:25',12,12,6,NULL,NULL,0,12,1,NULL,0,0,1,-1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(242,NULL,1,'2017-02-01 18:52:04','2017-02-01 18:52:04',40,'AC_OTH_AUTO','Order CF1007-0001 validated','2017-02-01 18:52:04','2017-02-01 14:52:04',12,NULL,NULL,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CF1007-0001 validated\nAuthor: admin',1,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(243,NULL,1,'2017-02-01 18:52:04','2017-02-01 18:52:04',40,'AC_OTH_AUTO','Order CF1007-0001 approved','2017-02-01 18:52:04','2017-02-01 14:52:04',12,NULL,NULL,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CF1007-0001 approved\nAuthor: admin',1,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(245,NULL,1,'2017-02-01 18:52:32','2017-02-01 18:52:32',40,'AC_OTH_AUTO','Supplier order CF1007-0001 submited','2017-02-01 18:52:32','2017-02-01 14:52:32',12,NULL,NULL,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Supplier order CF1007-0001 submited\nAuthor: admin',1,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(249,NULL,1,'2017-02-01 18:54:01','2017-02-01 18:54:01',40,'AC_OTH_AUTO','Supplier order CF1007-0001 received','2017-02-01 18:54:01','2017-02-01 14:54:01',12,NULL,NULL,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Supplier order CF1007-0001 received \nAuthor: admin',1,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(250,NULL,1,'2017-02-01 18:54:42','2017-02-01 18:54:42',40,'AC_OTH_AUTO','Email sent by MyBigCompany To mycustomer@example.com','2017-02-01 18:54:42','2017-02-01 14:54:42',12,NULL,NULL,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Sender: MyBigCompany <myemail@mybigcompany.com>
\nReceiver(s): mycustomer@example.com
\nEMail topic: Submission of order CF1007-0001
\nEmail body:
\nYou will find here our order CF1007-0001
\r\n
\r\nSincerely
\n
\nAttached files and documents: CF1007-0001.pdf',1,'order_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(251,NULL,1,'2017-02-01 19:02:21','2017-02-01 19:02:21',40,'AC_OTH_AUTO','Invoice SI1702-0001 validated','2017-02-01 19:02:21','2017-02-01 15:02:21',12,NULL,5,13,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Invoice SI1702-0001 validated\nAuthor: admin',20,'invoice_supplier',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(252,NULL,1,'2017-02-12 23:17:04','2017-02-12 23:17:04',40,'AC_OTH_AUTO','Patient créé','2017-02-12 23:17:04','2017-02-12 19:17:04',12,NULL,NULL,26,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Patient créé\nAuthor: admin',26,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(253,NULL,1,'2017-02-12 23:18:33','2017-02-12 23:18:33',40,'AC_OTH_AUTO','Consultation 2 recorded (aaa)','2017-02-12 23:18:33','2017-02-12 19:18:33',12,NULL,NULL,NULL,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Consultation 2 recorded (aaa)\nAuthor: admin',2,'cabinetmed_cons',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(254,NULL,1,'2017-02-15 23:28:41','2017-02-15 23:28:41',40,'AC_OTH_AUTO','Order CO7001-0005 validated','2017-02-15 23:28:41','2017-02-15 22:28:41',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0005 validated\nAuthor: admin',7,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(255,NULL,1,'2017-02-15 23:28:56','2017-02-15 23:28:56',40,'AC_OTH_AUTO','Order CO7001-0006 validated','2017-02-15 23:28:56','2017-02-15 22:28:56',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0006 validated\nAuthor: admin',8,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(256,NULL,1,'2017-02-15 23:34:33','2017-02-15 23:34:33',40,'AC_OTH_AUTO','Order CO7001-0007 validated','2017-02-15 23:34:33','2017-02-15 22:34:33',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0007 validated\nAuthor: admin',9,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(257,NULL,1,'2017-02-15 23:35:03','2017-02-15 23:35:03',40,'AC_OTH_AUTO','Order CO7001-0008 validated','2017-02-15 23:35:03','2017-02-15 22:35:03',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0008 validated\nAuthor: admin',10,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(263,NULL,1,'2017-02-15 23:50:34','2017-02-15 23:50:34',40,'AC_OTH_AUTO','Order CO7001-0005 validated','2017-02-15 23:50:34','2017-02-15 22:50:34',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0005 validated\nAuthor: admin',17,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(264,NULL,1,'2017-02-15 23:51:23','2017-02-15 23:51:23',40,'AC_OTH_AUTO','Order CO7001-0006 validated','2017-02-15 23:51:23','2017-02-15 22:51:23',12,NULL,NULL,7,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0006 validated\nAuthor: admin',18,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(265,NULL,1,'2017-02-15 23:54:51','2017-02-15 23:54:51',40,'AC_OTH_AUTO','Order CO7001-0007 validated','2017-02-15 23:54:51','2017-02-15 22:54:51',12,NULL,NULL,17,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0007 validated\nAuthor: admin',19,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(266,NULL,1,'2017-02-15 23:55:52','2017-02-15 23:55:52',40,'AC_OTH_AUTO','Order CO7001-0007 validated','2017-02-15 23:55:52','2017-02-15 22:55:52',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0007 validated\nAuthor: admin',20,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(267,NULL,1,'2017-02-16 00:03:44','2017-02-16 00:03:44',40,'AC_OTH_AUTO','Order CO7001-0008 validated','2017-02-16 00:03:44','2017-02-15 23:03:44',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0008 validated\nAuthor: admin',29,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(268,NULL,1,'2017-02-16 00:05:01','2017-02-16 00:05:01',40,'AC_OTH_AUTO','Order CO7001-0009 validated','2017-02-16 00:05:01','2017-02-15 23:05:01',12,NULL,NULL,11,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0009 validated\nAuthor: admin',34,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(269,NULL,1,'2017-02-16 00:05:01','2017-02-16 00:05:01',40,'AC_OTH_AUTO','Order CO7001-0010 validated','2017-02-16 00:05:01','2017-02-15 23:05:01',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0010 validated\nAuthor: admin',38,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(270,NULL,1,'2017-02-16 00:05:11','2017-02-16 00:05:11',40,'AC_OTH_AUTO','Order CO7001-0011 validated','2017-02-16 00:05:11','2017-02-15 23:05:11',12,NULL,NULL,11,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0011 validated\nAuthor: admin',40,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(271,NULL,1,'2017-02-16 00:05:11','2017-02-16 00:05:11',40,'AC_OTH_AUTO','Order CO7001-0012 validated','2017-02-16 00:05:11','2017-02-15 23:05:11',12,NULL,NULL,10,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0012 validated\nAuthor: admin',43,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(272,NULL,1,'2017-02-16 00:05:11','2017-02-16 00:05:11',40,'AC_OTH_AUTO','Order CO7001-0013 validated','2017-02-16 00:05:11','2017-02-15 23:05:11',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0013 validated\nAuthor: admin',47,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(273,NULL,1,'2017-02-16 00:05:11','2017-02-16 00:05:11',40,'AC_OTH_AUTO','Order CO7001-0014 validated','2017-02-16 00:05:11','2017-02-15 23:05:11',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0014 validated\nAuthor: admin',48,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(274,NULL,1,'2017-02-16 00:05:26','2017-02-16 00:05:26',40,'AC_OTH_AUTO','Order CO7001-0015 validated','2017-02-16 00:05:26','2017-02-15 23:05:26',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0015 validated\nAuthor: admin',50,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(275,NULL,1,'2017-02-16 00:05:26','2017-02-16 00:05:26',40,'AC_OTH_AUTO','Order CO7001-0016 validated','2017-02-16 00:05:26','2017-02-15 23:05:26',12,NULL,NULL,12,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0016 validated\nAuthor: admin',54,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(277,NULL,1,'2017-02-16 00:05:35','2017-02-16 00:05:35',40,'AC_OTH_AUTO','Order CO7001-0018 validated','2017-02-16 00:05:35','2017-02-15 23:05:35',12,NULL,NULL,19,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0018 validated\nAuthor: admin',62,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(278,NULL,1,'2017-02-16 00:05:35','2017-02-16 00:05:35',40,'AC_OTH_AUTO','Order CO7001-0019 validated','2017-02-16 00:05:35','2017-02-15 23:05:35',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0019 validated\nAuthor: admin',68,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(279,NULL,1,'2017-02-16 00:05:36','2017-02-16 00:05:36',40,'AC_OTH_AUTO','Order CO7001-0020 validated','2017-02-16 00:05:36','2017-02-15 23:05:36',12,NULL,NULL,6,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0020 validated\nAuthor: admin',72,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(281,NULL,1,'2017-02-16 00:05:37','2017-02-16 00:05:37',40,'AC_OTH_AUTO','Order CO7001-0022 validated','2017-02-16 00:05:37','2017-02-15 23:05:37',12,NULL,NULL,12,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0022 validated\nAuthor: admin',78,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(282,NULL,1,'2017-02-16 00:05:38','2017-02-16 00:05:38',40,'AC_OTH_AUTO','Order CO7001-0023 validated','2017-02-16 00:05:38','2017-02-15 23:05:38',12,NULL,NULL,11,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0023 validated\nAuthor: admin',81,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(283,NULL,1,'2017-02-16 00:05:38','2017-02-16 00:05:38',40,'AC_OTH_AUTO','Order CO7001-0024 validated','2017-02-16 00:05:38','2017-02-15 23:05:38',12,NULL,NULL,26,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0024 validated\nAuthor: admin',83,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(284,NULL,1,'2017-02-16 00:05:38','2017-02-16 00:05:38',40,'AC_OTH_AUTO','Order CO7001-0025 validated','2017-02-16 00:05:38','2017-02-15 23:05:38',12,NULL,NULL,2,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0025 validated\nAuthor: admin',84,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(285,NULL,1,'2017-02-16 00:05:38','2017-02-16 00:05:38',40,'AC_OTH_AUTO','Order CO7001-0026 validated','2017-02-16 00:05:38','2017-02-15 23:05:38',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0026 validated\nAuthor: admin',85,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(286,NULL,1,'2017-02-16 00:05:38','2017-02-16 00:05:38',40,'AC_OTH_AUTO','Order CO7001-0027 validated','2017-02-16 00:05:38','2017-02-15 23:05:38',12,NULL,NULL,10,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Order CO7001-0027 validated\nAuthor: admin',88,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(287,NULL,1,'2017-02-16 03:05:56','2017-02-16 03:05:56',40,'AC_OTH_AUTO','Commande CO7001-0016 classée Livrée','2017-02-16 03:05:56','2017-02-15 23:05:56',12,NULL,NULL,12,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Commande CO7001-0016 classée Livrée\nAuteur: admin',54,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(288,NULL,1,'2017-02-16 03:06:01','2017-02-16 03:06:01',40,'AC_OTH_AUTO','Commande CO7001-0016 classée Facturée','2017-02-16 03:06:01','2017-02-15 23:06:01',12,NULL,NULL,12,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Commande CO7001-0016 classée Facturée\nAuteur: admin',54,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(294,NULL,1,'2017-02-16 03:53:04','2017-02-16 03:53:04',40,'AC_OTH_AUTO','Commande CO7001-0021 validée','2017-02-16 03:53:04','2017-02-15 23:53:04',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Commande CO7001-0021 validée\nAuteur: admin',75,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(295,NULL,1,'2017-02-16 03:58:08','2017-02-16 03:58:08',40,'AC_OTH_AUTO','Expédition SH1702-0002 validée','2017-02-16 03:58:08','2017-02-15 23:58:08',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Expédition SH1702-0002 validée\nAuteur: admin',3,'shipping',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(296,NULL,1,'2017-02-16 04:12:29','2017-02-16 04:12:29',40,'AC_OTH_AUTO','Commande CO7001-0021 validée','2017-02-16 04:12:29','2017-02-16 00:12:29',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Commande CO7001-0021 validée\nAuteur: admin',75,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(297,NULL,1,'2017-02-16 04:14:20','2017-02-16 04:14:20',40,'AC_OTH_AUTO','Commande CO7001-0021 validée','2017-02-16 04:14:20','2017-02-16 00:14:20',12,NULL,NULL,4,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Commande CO7001-0021 validée\nAuteur: admin',75,'order',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(298,NULL,1,'2017-02-16 01:44:58','2017-02-16 01:44:58',40,'AC_OTH_AUTO','Proposal PR1702-0009 validated','2017-02-16 01:44:58','2017-02-16 00:44:58',1,NULL,NULL,1,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0009 validated\nAuthor: aeinstein',11,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(299,NULL,1,'2017-02-16 01:45:44','2017-02-16 01:45:44',40,'AC_OTH_AUTO','Proposal PR1702-0010 validated','2017-02-16 01:45:44','2017-02-16 00:45:44',2,NULL,NULL,7,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0010 validated\nAuthor: demo',12,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(300,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0011 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',1,NULL,NULL,26,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0011 validated\nAuthor: aeinstein',13,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(301,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0012 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',2,NULL,NULL,3,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0012 validated\nAuthor: demo',14,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(302,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0013 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',2,NULL,NULL,26,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0013 validated\nAuthor: demo',15,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(303,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0014 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',2,NULL,NULL,1,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0014 validated\nAuthor: demo',16,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(304,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0015 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',1,NULL,NULL,1,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0015 validated\nAuthor: aeinstein',17,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(305,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0016 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',2,NULL,NULL,26,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0016 validated\nAuthor: demo',18,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(306,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0017 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',2,NULL,NULL,12,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0017 validated\nAuthor: demo',19,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(307,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0018 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',1,NULL,NULL,26,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0018 validated\nAuthor: aeinstein',20,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(308,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0019 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',1,NULL,NULL,1,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0019 validated\nAuthor: aeinstein',21,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(309,NULL,1,'2017-02-16 01:46:15','2017-02-16 01:46:15',40,'AC_OTH_AUTO','Proposal PR1702-0020 validated','2017-02-16 01:46:15','2017-02-16 00:46:15',1,NULL,NULL,26,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0020 validated\nAuthor: aeinstein',22,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(310,NULL,1,'2017-02-16 01:46:17','2017-02-16 01:46:17',40,'AC_OTH_AUTO','Proposal PR1702-0021 validated','2017-02-16 01:46:17','2017-02-16 00:46:17',2,NULL,NULL,12,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0021 validated\nAuthor: demo',23,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(311,NULL,1,'2017-02-16 01:46:17','2017-02-16 01:46:17',40,'AC_OTH_AUTO','Proposal PR1702-0022 validated','2017-02-16 01:46:17','2017-02-16 00:46:17',2,NULL,NULL,7,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0022 validated\nAuthor: demo',24,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(312,NULL,1,'2017-02-16 01:46:17','2017-02-16 01:46:17',40,'AC_OTH_AUTO','Proposal PR1702-0023 validated','2017-02-16 01:46:17','2017-02-16 00:46:17',1,NULL,NULL,3,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0023 validated\nAuthor: aeinstein',25,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(313,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0024 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',2,NULL,NULL,1,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0024 validated\nAuthor: demo',26,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(314,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0025 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',1,NULL,NULL,6,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0025 validated\nAuthor: aeinstein',27,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(315,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0026 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',2,NULL,NULL,19,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0026 validated\nAuthor: demo',28,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(316,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0027 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',2,NULL,NULL,1,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0027 validated\nAuthor: demo',29,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(317,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0028 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',2,NULL,NULL,1,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0028 validated\nAuthor: demo',30,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(318,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0029 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',1,NULL,NULL,11,NULL,0,1,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0029 validated\nAuthor: aeinstein',31,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(319,NULL,1,'2017-02-16 01:46:18','2017-02-16 01:46:18',40,'AC_OTH_AUTO','Proposal PR1702-0030 validated','2017-02-16 01:46:18','2017-02-16 00:46:18',2,NULL,NULL,19,NULL,0,2,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposal PR1702-0030 validated\nAuthor: demo',32,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(320,NULL,1,'2017-02-16 04:46:31','2017-02-16 04:46:31',40,'AC_OTH_AUTO','Proposition PR1702-0026 signée','2017-02-16 04:46:31','2017-02-16 00:46:31',12,NULL,NULL,19,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0026 signée\nAuteur: admin',28,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(321,NULL,1,'2017-02-16 04:46:37','2017-02-16 04:46:37',40,'AC_OTH_AUTO','Proposition PR1702-0027 signée','2017-02-16 04:46:37','2017-02-16 00:46:37',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0027 signée\nAuteur: admin',29,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(322,NULL,1,'2017-02-16 04:46:42','2017-02-16 04:46:42',40,'AC_OTH_AUTO','Proposition PR1702-0028 refusée','2017-02-16 04:46:42','2017-02-16 00:46:42',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0028 refusée\nAuteur: admin',30,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(323,NULL,1,'2017-02-16 04:47:09','2017-02-16 04:47:09',40,'AC_OTH_AUTO','Proposition PR1702-0019 validée','2017-02-16 04:47:09','2017-02-16 00:47:09',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0019 validée\nAuteur: admin',21,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(324,NULL,1,'2017-02-16 04:47:25','2017-02-16 04:47:25',40,'AC_OTH_AUTO','Proposition PR1702-0023 signée','2017-02-16 04:47:25','2017-02-16 00:47:25',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0023 signée\nAuteur: admin',25,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(325,NULL,1,'2017-02-16 04:47:29','2017-02-16 04:47:29',40,'AC_OTH_AUTO','Proposition PR1702-0023 classée payée','2017-02-16 04:47:29','2017-02-16 00:47:29',12,NULL,NULL,3,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0023 classée payée\nAuteur: admin',25,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(326,NULL,1,'2017-02-17 16:07:18','2017-02-17 16:07:18',40,'AC_OTH_AUTO','Proposition PR1702-0021 validée','2017-02-17 16:07:18','2017-02-17 12:07:18',12,NULL,NULL,12,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Proposition PR1702-0021 validée\nAuteur: admin',23,'propal',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(327,NULL,1,'2017-05-12 13:53:44','2017-05-12 13:53:44',40,'AC_OTH_AUTO','Email sent by MyBigCompany To Einstein','2017-05-12 13:53:44','2017-05-12 09:53:44',12,NULL,NULL,11,12,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Sender: MyBigCompany <myemail@mybigcompany.com>
\nReceiver(s): Einstein <genius@example.com>
\nBcc: Einstein <genius@example.com>
\nEMail topic: Test
\nEmail body:
\nTest\nAuthor: admin',11,'societe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(328,NULL,1,'2017-08-29 22:39:09','2017-08-29 22:39:09',40,'AC_OTH_AUTO','Invoice FA1601-0024 validated','2017-08-29 22:39:09','2017-08-29 18:39:09',12,NULL,NULL,1,NULL,0,12,0,NULL,0,0,1,-1,'',NULL,NULL,'Invoice FA1601-0024 validated\nAuthor: admin',149,'invoice',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_actioncomm` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_actioncomm_extrafields` +-- + +DROP TABLE IF EXISTS `llx_actioncomm_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_actioncomm_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_actioncomm_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_actioncomm_extrafields` +-- + +LOCK TABLES `llx_actioncomm_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_actioncomm_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_actioncomm_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_actioncomm_reminder` +-- + +DROP TABLE IF EXISTS `llx_actioncomm_reminder`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_actioncomm_reminder` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `dateremind` datetime NOT NULL, + `typeremind` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_user` int(11) NOT NULL, + `offsetvalue` int(11) NOT NULL, + `offsetunit` varchar(1) COLLATE utf8_unicode_ci NOT NULL, + `status` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_actioncomm_reminder_unique` (`fk_user`,`typeremind`,`offsetvalue`,`offsetunit`), + KEY `idx_actioncomm_reminder_rowid` (`rowid`), + KEY `idx_actioncomm_reminder_dateremind` (`dateremind`), + KEY `idx_actioncomm_reminder_fk_user` (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_actioncomm_reminder` +-- + +LOCK TABLES `llx_actioncomm_reminder` WRITE; +/*!40000 ALTER TABLE `llx_actioncomm_reminder` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_actioncomm_reminder` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_actioncomm_resources` +-- + +DROP TABLE IF EXISTS `llx_actioncomm_resources`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_actioncomm_resources` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_actioncomm` int(11) NOT NULL, + `element_type` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `fk_element` int(11) NOT NULL, + `answer_status` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `mandatory` smallint(6) DEFAULT NULL, + `transparency` smallint(6) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_actioncomm_resources` (`fk_actioncomm`,`element_type`,`fk_element`), + KEY `idx_actioncomm_resources_fk_element` (`fk_element`) +) ENGINE=InnoDB AUTO_INCREMENT=216 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_actioncomm_resources` +-- + +LOCK TABLES `llx_actioncomm_resources` WRITE; +/*!40000 ALTER TABLE `llx_actioncomm_resources` DISABLE KEYS */; +INSERT INTO `llx_actioncomm_resources` VALUES (1,1,'user',1,NULL,NULL,1),(2,2,'user',1,NULL,NULL,1),(3,3,'user',1,NULL,NULL,1),(4,4,'user',1,NULL,NULL,1),(5,5,'user',1,NULL,NULL,1),(6,6,'user',1,NULL,NULL,1),(7,7,'user',1,NULL,NULL,1),(8,8,'user',1,NULL,NULL,1),(9,9,'user',1,NULL,NULL,1),(10,10,'user',1,NULL,NULL,1),(11,11,'user',1,NULL,NULL,1),(12,12,'user',1,NULL,NULL,1),(13,13,'user',1,NULL,NULL,1),(14,14,'user',1,NULL,NULL,1),(15,15,'user',1,NULL,NULL,1),(16,16,'user',1,NULL,NULL,1),(17,17,'user',1,NULL,NULL,1),(18,18,'user',1,NULL,NULL,1),(19,19,'user',1,NULL,NULL,1),(20,20,'user',1,NULL,NULL,1),(21,21,'user',1,NULL,NULL,1),(22,22,'user',1,NULL,NULL,1),(23,23,'user',1,NULL,NULL,1),(24,24,'user',1,NULL,NULL,1),(25,25,'user',1,NULL,NULL,1),(26,26,'user',1,NULL,NULL,1),(27,27,'user',1,NULL,NULL,1),(28,28,'user',1,NULL,NULL,1),(29,29,'user',1,NULL,NULL,1),(30,30,'user',1,NULL,NULL,1),(31,31,'user',1,NULL,NULL,1),(32,38,'user',1,NULL,NULL,1),(33,40,'user',1,NULL,NULL,1),(34,41,'user',1,NULL,NULL,1),(35,42,'user',1,NULL,NULL,1),(36,43,'user',1,NULL,NULL,1),(37,44,'user',1,NULL,NULL,1),(38,45,'user',1,NULL,NULL,1),(39,46,'user',1,NULL,NULL,1),(40,47,'user',1,NULL,NULL,1),(41,48,'user',1,NULL,NULL,1),(42,49,'user',1,NULL,NULL,1),(43,50,'user',1,NULL,NULL,1),(44,51,'user',1,NULL,NULL,1),(45,52,'user',1,NULL,NULL,1),(46,53,'user',1,NULL,NULL,1),(47,54,'user',1,NULL,NULL,1),(48,55,'user',1,NULL,NULL,1),(49,56,'user',1,NULL,NULL,1),(50,121,'user',3,NULL,NULL,1),(51,122,'user',1,NULL,NULL,1),(52,123,'user',1,NULL,NULL,1),(53,124,'user',1,NULL,NULL,1),(54,125,'user',1,NULL,NULL,1),(55,127,'user',1,NULL,NULL,1),(56,128,'user',1,NULL,NULL,1),(57,129,'user',1,NULL,NULL,1),(58,130,'user',1,NULL,NULL,1),(59,131,'user',1,NULL,NULL,1),(60,132,'user',1,NULL,NULL,1),(61,133,'user',1,NULL,NULL,1),(62,134,'user',1,NULL,NULL,1),(63,135,'user',1,NULL,NULL,1),(64,136,'user',1,NULL,NULL,1),(65,137,'user',1,NULL,NULL,1),(66,138,'user',1,NULL,NULL,1),(67,139,'user',1,NULL,NULL,1),(68,140,'user',1,NULL,NULL,1),(69,141,'user',1,NULL,NULL,1),(70,142,'user',1,NULL,NULL,1),(71,143,'user',1,NULL,NULL,1),(72,144,'user',1,NULL,NULL,1),(73,145,'user',1,NULL,NULL,1),(74,146,'user',1,NULL,NULL,1),(75,147,'user',1,NULL,NULL,1),(76,148,'user',1,NULL,NULL,1),(77,149,'user',1,NULL,NULL,1),(78,150,'user',1,NULL,NULL,1),(79,151,'user',1,NULL,NULL,1),(80,152,'user',1,NULL,NULL,1),(81,203,'user',1,NULL,NULL,1),(82,204,'user',1,NULL,NULL,1),(83,205,'user',1,NULL,NULL,1),(84,206,'user',1,NULL,NULL,1),(85,207,'user',1,NULL,NULL,1),(86,208,'user',1,NULL,NULL,1),(87,209,'user',1,NULL,NULL,1),(88,210,'user',1,NULL,NULL,1),(89,211,'user',1,NULL,NULL,1),(90,212,'user',1,NULL,NULL,1),(91,213,'user',1,NULL,NULL,1),(92,214,'user',1,NULL,NULL,1),(93,215,'user',1,NULL,NULL,1),(94,216,'user',1,NULL,NULL,1),(95,217,'user',1,NULL,NULL,1),(96,218,'user',1,NULL,NULL,1),(97,219,'user',1,NULL,NULL,1),(98,220,'user',1,NULL,NULL,1),(99,221,'user',1,NULL,NULL,1),(100,222,'user',1,NULL,NULL,1),(101,223,'user',1,NULL,NULL,1),(102,224,'user',1,NULL,NULL,1),(103,225,'user',1,NULL,NULL,1),(104,226,'user',1,NULL,NULL,1),(105,227,'user',1,NULL,NULL,1),(106,228,'user',1,NULL,NULL,1),(107,229,'user',1,NULL,NULL,1),(108,230,'user',1,NULL,NULL,1),(109,231,'user',1,NULL,NULL,1),(110,232,'user',12,'0',0,0),(111,233,'user',12,'0',0,0),(112,234,'user',12,'0',0,1),(113,235,'user',12,'0',0,1),(114,236,'user',4,'0',0,0),(115,237,'user',13,'0',0,0),(116,237,'user',16,'0',0,0),(117,237,'user',18,'0',0,0),(118,238,'user',12,'0',0,1),(119,238,'user',3,'0',0,1),(120,238,'user',10,'0',0,1),(121,239,'user',12,'0',0,0),(123,240,'user',12,'0',0,1),(125,242,'user',12,'0',0,0),(126,243,'user',12,'0',0,0),(128,245,'user',12,'0',0,0),(132,249,'user',12,'0',0,0),(133,250,'user',12,'0',0,0),(134,251,'user',12,'0',0,0),(135,252,'user',12,'0',0,0),(136,253,'user',12,'0',0,0),(137,254,'user',12,'0',0,0),(138,255,'user',12,'0',0,0),(139,256,'user',12,'0',0,0),(140,257,'user',12,'0',0,0),(146,263,'user',12,'0',0,0),(147,264,'user',12,'0',0,0),(148,265,'user',12,'0',0,0),(149,266,'user',12,'0',0,0),(150,267,'user',12,'0',0,0),(151,268,'user',12,'0',0,0),(152,269,'user',12,'0',0,0),(153,270,'user',12,'0',0,0),(154,271,'user',12,'0',0,0),(155,272,'user',12,'0',0,0),(156,273,'user',12,'0',0,0),(157,274,'user',12,'0',0,0),(158,275,'user',12,'0',0,0),(160,277,'user',12,'0',0,0),(161,278,'user',12,'0',0,0),(162,279,'user',12,'0',0,0),(164,281,'user',12,'0',0,0),(165,282,'user',12,'0',0,0),(166,283,'user',12,'0',0,0),(167,284,'user',12,'0',0,0),(168,285,'user',12,'0',0,0),(169,286,'user',12,'0',0,0),(170,287,'user',12,'0',0,0),(171,288,'user',12,'0',0,0),(177,294,'user',12,'0',0,0),(178,295,'user',12,'0',0,0),(179,296,'user',12,'0',0,0),(180,297,'user',12,'0',0,0),(181,298,'user',1,'0',0,0),(182,299,'user',2,'0',0,0),(183,300,'user',1,'0',0,0),(184,301,'user',2,'0',0,0),(185,302,'user',2,'0',0,0),(186,303,'user',2,'0',0,0),(187,304,'user',1,'0',0,0),(188,305,'user',2,'0',0,0),(189,306,'user',2,'0',0,0),(190,307,'user',1,'0',0,0),(191,308,'user',1,'0',0,0),(192,309,'user',1,'0',0,0),(193,310,'user',2,'0',0,0),(194,311,'user',2,'0',0,0),(195,312,'user',1,'0',0,0),(196,313,'user',2,'0',0,0),(197,314,'user',1,'0',0,0),(198,315,'user',2,'0',0,0),(199,316,'user',2,'0',0,0),(200,317,'user',2,'0',0,0),(201,318,'user',1,'0',0,0),(202,319,'user',2,'0',0,0),(203,320,'user',12,'0',0,0),(204,321,'user',12,'0',0,0),(205,322,'user',12,'0',0,0),(206,323,'user',12,'0',0,0),(207,324,'user',12,'0',0,0),(208,325,'user',12,'0',0,0),(209,326,'user',12,'0',0,0),(210,327,'user',12,'0',0,0),(211,328,'user',12,'0',0,0),(212,24,'socpeople',2,NULL,NULL,1),(213,235,'socpeople',2,NULL,NULL,1),(214,238,'socpeople',10,NULL,NULL,1),(215,327,'socpeople',12,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_actioncomm_resources` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_adherent` +-- + +DROP TABLE IF EXISTS `llx_adherent`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_adherent` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `civility` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `login` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass_crypted` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_adherent_type` int(11) NOT NULL, + `morphy` varchar(3) COLLATE utf8_unicode_ci NOT NULL, + `societe` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `address` text COLLATE utf8_unicode_ci, + `zip` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `state_id` int(11) DEFAULT NULL, + `country` int(11) DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_perso` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_mobile` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `birth` date DEFAULT NULL, + `photo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `public` smallint(6) NOT NULL DEFAULT '0', + `datefin` datetime DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `datevalid` datetime DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `twitter` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `facebook` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `instagram` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `snapchat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `googleplus` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `youtube` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `whatsapp` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_adherent_login` (`login`,`entity`), + UNIQUE KEY `uk_adherent_fk_soc` (`fk_soc`), + KEY `idx_adherent_fk_adherent_type` (`fk_adherent_type`), + CONSTRAINT `adherent_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_adherent_adherent_type` FOREIGN KEY (`fk_adherent_type`) REFERENCES `llx_adherent_type` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_adherent` +-- + +LOCK TABLES `llx_adherent` WRITE; +/*!40000 ALTER TABLE `llx_adherent` DISABLE KEYS */; +INSERT INTO `llx_adherent` VALUES (1,1,NULL,NULL,'Smith','Vick','vsmith','vsx1n8tf',NULL,2,'phy',NULL,10,NULL,NULL,NULL,NULL,102,'vsmith@email.com',NULL,NULL,NULL,NULL,'1960-07-07',NULL,1,0,'2012-07-09 00:00:00',NULL,NULL,'2010-07-10 15:12:56','2010-07-08 23:50:00','2013-03-20 13:30:11',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,1,NULL,NULL,'Curie','Pierre','pcurie','pcuriedolibarr',NULL,2,'phy',NULL,12,NULL,NULL,NULL,NULL,1,'pcurie@example.com','',NULL,NULL,NULL,'1972-07-08',NULL,1,1,'2017-07-17 00:00:00',NULL,NULL,'2010-07-10 15:03:32','2010-07-10 15:03:09','2015-10-05 19:57:57',1,12,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,1,NULL,NULL,'john','doe','john','8bs6gty5',NULL,2,'phy',NULL,NULL,NULL,NULL,NULL,NULL,1,'johndoe@email.com',NULL,NULL,NULL,NULL,NULL,NULL,1,0,NULL,NULL,NULL,'2011-07-18 21:28:00','2011-07-18 21:10:09','2015-10-03 09:28:46',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,1,NULL,NULL,'smith','smith','Smith','s6hjp10f',NULL,2,'phy',NULL,NULL,NULL,NULL,NULL,NULL,11,'smith@email.com',NULL,NULL,NULL,NULL,NULL,NULL,1,0,NULL,NULL,NULL,'2011-07-18 21:27:52','2011-07-18 21:27:44','2015-10-03 09:40:27',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_adherent` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_adherent_extrafields` +-- + +DROP TABLE IF EXISTS `llx_adherent_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_adherent_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `zzz` varchar(125) COLLATE utf8_unicode_ci DEFAULT NULL, + `aaa` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `sssss` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_adherent_options` (`fk_object`), + KEY `idx_adherent_extrafields` (`fk_object`) +) ENGINE=InnoDB AUTO_INCREMENT=64 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_adherent_extrafields` +-- + +LOCK TABLES `llx_adherent_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_adherent_extrafields` DISABLE KEYS */; +INSERT INTO `llx_adherent_extrafields` VALUES (62,'2011-07-18 19:10:09',3,NULL,NULL,NULL,NULL),(63,'2011-07-18 19:27:44',4,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_adherent_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_adherent_type` +-- + +DROP TABLE IF EXISTS `llx_adherent_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_adherent_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `statut` smallint(6) NOT NULL DEFAULT '0', + `libelle` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `subscription` varchar(3) COLLATE utf8_unicode_ci NOT NULL DEFAULT '1', + `vote` varchar(3) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'yes', + `note` text COLLATE utf8_unicode_ci, + `mail_valid` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_adherent_type_libelle` (`libelle`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_adherent_type` +-- + +LOCK TABLES `llx_adherent_type` WRITE; +/*!40000 ALTER TABLE `llx_adherent_type` DISABLE KEYS */; +INSERT INTO `llx_adherent_type` VALUES (1,1,'2010-07-08 21:41:55',1,'Board members','1','1','','
'),(2,1,'2010-07-08 21:41:43',1,'Standard members','1','0','','
'); +/*!40000 ALTER TABLE `llx_adherent_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_adherent_type_extrafields` +-- + +DROP TABLE IF EXISTS `llx_adherent_type_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_adherent_type_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_adherent_type_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_adherent_type_extrafields` +-- + +LOCK TABLES `llx_adherent_type_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_adherent_type_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_adherent_type_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_advtargetemailing` +-- + +DROP TABLE IF EXISTS `llx_advtargetemailing`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_advtargetemailing` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(200) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `filtervalue` text COLLATE utf8_unicode_ci, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_element` int(11) NOT NULL, + `type_element` varchar(180) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_advtargetemailing_name` (`name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_advtargetemailing` +-- + +LOCK TABLES `llx_advtargetemailing` WRITE; +/*!40000 ALTER TABLE `llx_advtargetemailing` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_advtargetemailing` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_calendrier` +-- + +DROP TABLE IF EXISTS `llx_agefodd_calendrier`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_calendrier` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `day_session` int(11) NOT NULL, + `heured` varchar(5) NOT NULL, + `heuref` varchar(5) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_calendrier` +-- + +LOCK TABLES `llx_agefodd_calendrier` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_calendrier` DISABLE KEYS */; +INSERT INTO `llx_agefodd_calendrier` VALUES (1,1,1,'09:00','12:00',1,'2013-10-13 19:23:12',1,'2013-10-13 15:23:12'),(2,1,1,'14:00','18:00',1,'2013-10-13 19:23:25',1,'2013-10-13 15:23:25'),(3,1,2,'09:00','12:00',1,'2013-10-13 19:23:12',1,'2013-10-13 15:23:12'),(4,1,2,'14:00','18:00',1,'2013-10-13 19:23:25',1,'2013-10-13 15:23:25'),(5,1,3,'09:00','12:00',1,'2013-10-13 19:23:12',1,'2013-10-13 15:23:12'),(6,1,3,'14:00','18:00',1,'2013-10-13 19:23:25',1,'2013-10-13 15:23:25'),(7,1,4,'09:00','12:00',1,'2013-10-13 19:23:12',1,'2013-10-13 15:23:12'),(8,1,4,'14:00','18:00',1,'2013-10-13 19:23:25',1,'2013-10-13 15:23:25'); +/*!40000 ALTER TABLE `llx_agefodd_calendrier` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_certif_state` +-- + +DROP TABLE IF EXISTS `llx_agefodd_certif_state`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_certif_state` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_certif` int(11) NOT NULL, + `fk_certif_type` int(11) NOT NULL, + `certif_state` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_certif_state` +-- + +LOCK TABLES `llx_agefodd_certif_state` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_certif_state` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_certif_state` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_certificate_type` +-- + +DROP TABLE IF EXISTS `llx_agefodd_certificate_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_certificate_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `intitule` varchar(80) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_certificate_type` +-- + +LOCK TABLES `llx_agefodd_certificate_type` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_certificate_type` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_certificate_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_contact` +-- + +DROP TABLE IF EXISTS `llx_agefodd_contact`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_contact` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_socpeople` int(11) NOT NULL, + `archive` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_contact_fk_socpeople` (`fk_socpeople`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_contact` +-- + +LOCK TABLES `llx_agefodd_contact` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_contact` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_contact` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_convention` +-- + +DROP TABLE IF EXISTS `llx_agefodd_convention`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_convention` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_agefodd_session` int(11) NOT NULL, + `fk_societe` int(11) NOT NULL, + `element_type` varchar(50) DEFAULT NULL, + `fk_element` int(11) DEFAULT NULL, + `model_doc` varchar(200) DEFAULT NULL, + `intro1` text NOT NULL, + `intro2` text NOT NULL, + `art1` text NOT NULL, + `art2` text NOT NULL, + `art3` text NOT NULL, + `art4` text NOT NULL, + `art5` text NOT NULL, + `art6` text NOT NULL, + `art7` text NOT NULL, + `art8` text NOT NULL, + `art9` text NOT NULL, + `sig` text, + `only_product_session` int(11) DEFAULT '0', + `notes` text NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_fk_agefodd_session_conv` (`fk_agefodd_session`), + KEY `idx_fk_societe_conv` (`fk_societe`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_convention` +-- + +LOCK TABLES `llx_agefodd_convention` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_convention` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_convention` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_convention_stagiaire` +-- + +DROP TABLE IF EXISTS `llx_agefodd_convention_stagiaire`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_convention_stagiaire` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_agefodd_convention` int(11) NOT NULL, + `fk_agefodd_session_stagiaire` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_agefodd_convention_stagiaire_convsta` (`fk_agefodd_convention`,`fk_agefodd_session_stagiaire`), + KEY `idx_fk_agefodd_session_stagiaire_conv` (`fk_agefodd_convention`), + KEY `idx_fk_agefodd_session_stagiaire_convsta` (`fk_agefodd_session_stagiaire`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_convention_stagiaire` +-- + +LOCK TABLES `llx_agefodd_convention_stagiaire` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_convention_stagiaire` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_convention_stagiaire` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_cursus` +-- + +DROP TABLE IF EXISTS `llx_agefodd_cursus`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_cursus` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref_interne` varchar(80) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `intitule` varchar(80) NOT NULL, + `archive` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `note_private` text, + `note_public` text, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `archive_cursus` (`archive`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_cursus` +-- + +LOCK TABLES `llx_agefodd_cursus` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_cursus` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_cursus` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_cursus_extrafields` +-- + +DROP TABLE IF EXISTS `llx_agefodd_cursus_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_cursus_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_cursus_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_cursus_extrafields` +-- + +LOCK TABLES `llx_agefodd_cursus_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_cursus_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_cursus_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formateur` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formateur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formateur` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_socpeople` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `type_trainer` varchar(20) DEFAULT NULL, + `archive` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_formateur_fk_socpeople` (`fk_socpeople`), + KEY `idx_agefodd_formateur_fk_user` (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formateur` +-- + +LOCK TABLES `llx_agefodd_formateur` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formateur` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formateur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formateur_category` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formateur_category`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formateur_category` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_trainer` int(11) NOT NULL, + `fk_category` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_formateur_category` (`fk_category`), + KEY `llx_agefodd_formateur_category_trainer` (`fk_trainer`), + CONSTRAINT `llx_agefodd_formateur_category` FOREIGN KEY (`fk_category`) REFERENCES `llx_agefodd_formateur_category_dict` (`rowid`), + CONSTRAINT `llx_agefodd_formateur_category_trainer` FOREIGN KEY (`fk_trainer`) REFERENCES `llx_agefodd_formateur` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formateur_category` +-- + +LOCK TABLES `llx_agefodd_formateur_category` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formateur_category` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formateur_category` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formateur_category_dict` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formateur_category_dict`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formateur_category_dict` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `code` varchar(20) NOT NULL, + `label` varchar(100) DEFAULT NULL, + `description` text, + `active` smallint(6) NOT NULL DEFAULT '0', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formateur_category_dict` +-- + +LOCK TABLES `llx_agefodd_formateur_category_dict` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formateur_category_dict` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formateur_category_dict` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formateur_training` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formateur_training`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formateur_training` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_trainer` int(11) NOT NULL, + `fk_training` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_formateur_training_training` (`fk_training`), + KEY `llx_agefodd_formateur_training_trainer` (`fk_trainer`), + CONSTRAINT `llx_agefodd_formateur_training_trainer` FOREIGN KEY (`fk_trainer`) REFERENCES `llx_agefodd_formateur` (`rowid`), + CONSTRAINT `llx_agefodd_formateur_training_training` FOREIGN KEY (`fk_training`) REFERENCES `llx_agefodd_formation_catalogue` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formateur_training` +-- + +LOCK TABLES `llx_agefodd_formateur_training` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formateur_training` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formateur_training` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formateur_type` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formateur_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formateur_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `intitule` varchar(80) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formateur_type` +-- + +LOCK TABLES `llx_agefodd_formateur_type` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formateur_type` DISABLE KEYS */; +INSERT INTO `llx_agefodd_formateur_type` VALUES (1,'Formateur interne',0,1,'2017-03-23 11:00:00'),(2,'Formateur externe - Indépendant',1,1,'2017-03-23 11:00:00'),(3,'Formateur externe - Salarié',2,1,'2017-03-23 11:00:00'),(4,'Formateur externe - Sous traintance',2,1,'2017-03-23 11:00:00'); +/*!40000 ALTER TABLE `llx_agefodd_formateur_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_catalogue` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_catalogue`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_catalogue` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(40) NOT NULL, + `ref_interne` varchar(100) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `intitule` varchar(100) NOT NULL, + `duree` double NOT NULL DEFAULT '0', + `public` text, + `methode` text, + `but` text, + `programme` text, + `pedago_usage` text, + `sanction` text, + `prerequis` text, + `note1` text, + `note2` text, + `archive` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `note_private` text, + `note_public` text, + `fk_product` int(11) DEFAULT NULL, + `nb_subscribe_min` int(11) DEFAULT NULL, + `fk_c_category` int(11) DEFAULT NULL, + `fk_c_category_bpf` int(11) DEFAULT NULL, + `certif_duration` varchar(30) DEFAULT NULL, + `qr_code_info` varchar(500) DEFAULT NULL, + `color` varchar(32) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(36) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `ref_form_cat` (`ref`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_catalogue` +-- + +LOCK TABLES `llx_agefodd_formation_catalogue` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue` DISABLE KEYS */; +INSERT INTO `llx_agefodd_formation_catalogue` VALUES (1,'FOR_1809-0001','',1,'Formation AAA',14,'','','','',NULL,NULL,'','','',0,12,'2018-09-14 09:51:02',12,NULL,NULL,4,NULL,NULL,1,NULL,NULL,NULL,'2018-09-14 07:51:02',NULL); +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_catalogue_extrafields` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_catalogue_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_catalogue_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_formation_catalogue_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_catalogue_extrafields` +-- + +LOCK TABLES `llx_agefodd_formation_catalogue_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_catalogue_modules` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_catalogue_modules`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_catalogue_modules` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_formation_catalogue` int(11) NOT NULL, + `sort_order` int(11) NOT NULL DEFAULT '1', + `title` varchar(200) NOT NULL, + `content_text` text, + `duration` double DEFAULT NULL, + `obj_peda` text, + `status` int(11) NOT NULL DEFAULT '1', + `import_key` varchar(100) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_catalogue_modules` +-- + +LOCK TABLES `llx_agefodd_formation_catalogue_modules` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_modules` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_modules` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_catalogue_type` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_catalogue_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_catalogue_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) NOT NULL, + `intitule` varchar(1000) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=93 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_catalogue_type` +-- + +LOCK TABLES `llx_agefodd_formation_catalogue_type` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_type` DISABLE KEYS */; +INSERT INTO `llx_agefodd_formation_catalogue_type` VALUES (1,'100','Formations générales',1,1,'2017-03-23 11:00:00'),(2,'110','Spécialités pluriscientifiques',2,1,'2017-03-23 11:00:00'),(3,'111','Physique-chimie',3,1,'2017-03-23 11:00:00'),(4,'112','Chimie-biologie, biochimie',4,1,'2017-03-23 11:00:00'),(5,'113','Sciences naturelles (biologie-géologie)',5,1,'2017-03-23 11:00:00'),(6,'114','Mathématiques',6,1,'2017-03-23 11:00:00'),(7,'115','Physique',7,1,'2017-03-23 11:00:00'),(8,'116','Chimie',8,1,'2017-03-23 11:00:00'),(9,'117','Sciences de la terre',9,1,'2017-03-23 11:00:00'),(10,'118','Sciences de la vie',10,1,'2017-03-23 11:00:00'),(11,'120','Spécialités pluridisciplinaires, sciences humaines et droit',11,1,'2017-03-23 11:00:00'),(12,'121','Géographie',12,1,'2017-03-23 11:00:00'),(13,'122','Economie',13,1,'2017-03-23 11:00:00'),(14,'123','Sciences sociales (y compris démographie, anthropologie)',14,1,'2017-03-23 11:00:00'),(15,'124','Psychologie',15,1,'2017-03-23 11:00:00'),(16,'125','Linguistique',16,1,'2017-03-23 11:00:00'),(17,'126','Histoire',17,1,'2017-03-23 11:00:00'),(18,'127','Philosophie, éthique et théologie',18,1,'2017-03-23 11:00:00'),(19,'128','Droit, sciences politiques',19,1,'2017-03-23 11:00:00'),(20,'130','Spécialités littéraires et artistiques plurivalentes',20,1,'2017-03-23 11:00:00'),(21,'131','Français, littérature et civilisation française',21,1,'2017-03-23 11:00:00'),(22,'132','Arts plastiques',22,1,'2017-03-23 11:00:00'),(23,'133','Musique, arts du spectacle',23,1,'2017-03-23 11:00:00'),(24,'134','Autres disciplines artistiques et spécialités artistiques plurivalentes',24,1,'2017-03-23 11:00:00'),(25,'135','Langues et civilisations anciennes',25,1,'2017-03-23 11:00:00'),(26,'136','Langues vivantes, civilisations étrangères et régionales',26,1,'2017-03-23 11:00:00'),(27,'200','Technologies industrielles fondamentales (génie industriel, procédés de Transformation, spécialités à dominante fonctionnelle)',27,1,'2017-03-23 11:00:00'),(28,'201','Technologies de commandes des transformations industriels (automatismes et robotique industriels, informatique industrielle)',28,1,'2017-03-23 11:00:00'),(29,'210','Spécialités plurivalentes de l\'agronomie et de l\'agriculture',29,1,'2017-03-23 11:00:00'),(30,'211','Productions végétales, cultures spécialisées (horticulture, viticulture,arboriculture fruitière…)',30,1,'2017-03-23 11:00:00'),(31,'212','Productions animales, élevage spécialisé, aquaculture, soins aux animaux,y compris vétérinaire',31,1,'2017-03-23 11:00:00'),(32,'213','Forêts, espaces naturels, faune sauvage, pêche',32,1,'2017-03-23 11:00:00'),(33,'214','Aménagement paysager (parcs, jardins, espaces verts ...)',33,1,'2017-03-23 11:00:00'),(34,'220','Spécialités pluritechnologiques des transformations',34,1,'2017-03-23 11:00:00'),(35,'221','Agro-alimentaire, alimentation, cuisine',35,1,'2017-03-23 11:00:00'),(36,'222','Transformations chimiques et apparentées (y compris industrie pharmaceutique)',36,1,'2017-03-23 11:00:00'),(37,'223','Métallurgie (y compris sidérurgie, fonderie, non ferreux...)',37,1,'2017-03-23 11:00:00'),(38,'224','Matériaux de construction, verre, céramique',38,1,'2017-03-23 11:00:00'),(39,'225','Plasturgie, matériaux composites',39,1,'2017-03-23 11:00:00'),(40,'226','Papier, carton',40,1,'2017-03-23 11:00:00'),(41,'227','Energie, génie climatique (y compris énergie nucléaire, thermique, hydraulique ;',41,1,'2017-03-23 11:00:00'),(42,'230','Spécialités génie civil, , pluritechnologiques, construction, bois',42,1,'2017-03-23 11:00:00'),(43,'231','Mines et carrières, génie civil, topographie',43,1,'2017-03-23 11:00:00'),(44,'232','Bâtiment : construction et couverture',44,1,'2017-03-23 11:00:00'),(45,'233','Bâtiment : finitions',45,1,'2017-03-23 11:00:00'),(46,'234','Travail du bois et de l\'ameublement',46,1,'2017-03-23 11:00:00'),(47,'240','Spécialités pluritechnologiques matériaux souples',47,1,'2017-03-23 11:00:00'),(48,'241','Textile',48,1,'2017-03-23 11:00:00'),(49,'242','Habillement (y compris mode, couture)',49,1,'2017-03-23 11:00:00'),(50,'243','Cuirs et peaux',50,1,'2017-03-23 11:00:00'),(51,'250','Spécialités pluritechnologiques mécanique-électricité (y compris maintenance mécano-électrique)',51,1,'2017-03-23 11:00:00'),(52,'251','Mécanique générale et de précision, usinage',52,1,'2017-03-23 11:00:00'),(53,'252','Moteurs et mécanique auto',53,1,'2017-03-23 11:00:00'),(54,'253','Mécanique aéronautique et spatiale',54,1,'2017-03-23 11:00:00'),(55,'254','Structures métalliques (y compris soudure, carrosserie, coque bateau, cellule, avion',55,1,'2017-03-23 11:00:00'),(56,'255','Electricité, électronique (non compris automatismes, productique)',56,1,'2017-03-23 11:00:00'),(57,'300','Spécialités plurivalentes des services',57,1,'2017-03-23 11:00:00'),(58,'310','Spécialités plurivalentes des échanges et de la gestion (y compris administration générale des entreprises et des collectivités)',58,1,'2017-03-23 11:00:00'),(59,'311','Transports, manutention, magasinage',59,1,'2017-03-23 11:00:00'),(60,'312','Commerce, vente',60,1,'2017-03-23 11:00:00'),(61,'313','Finances, banque, assurances',61,1,'2017-03-23 11:00:00'),(62,'314','Comptabilité, gestion',62,1,'2017-03-23 11:00:00'),(63,'315','Ressources humaines, gestion du personnel, gestion de l\'emploi',63,1,'2017-03-23 11:00:00'),(64,'320','Spécialités plurivalentes de la communication',64,1,'2017-03-23 11:00:00'),(65,'321','Journalisme, communication (y compris communication graphique et publicité)',65,1,'2017-03-23 11:00:00'),(66,'322','Techniques de l\'imprimerie et de l\'édition',66,1,'2017-03-23 11:00:00'),(67,'323','Techniques de l\'image et du son, métiers connexes du spectacle',67,1,'2017-03-23 11:00:00'),(68,'324','Secrétariat, bureautique',68,1,'2017-03-23 11:00:00'),(69,'325','Documentation, bibliothèques, administration des données',69,1,'2017-03-23 11:00:00'),(70,'326','Informatique, traitement de l\'information, réseaux de transmission des données',70,1,'2017-03-23 11:00:00'),(71,'330','Spécialités plurivalentes sanitaires et sociales',71,1,'2017-03-23 11:00:00'),(72,'331','Santé',72,1,'2017-03-23 11:00:00'),(73,'332','Travail social',73,1,'2017-03-23 11:00:00'),(74,'333','Enseignement, formation',74,1,'2017-03-23 11:00:00'),(75,'334','Accueil, hôtellerie, tourisme',75,1,'2017-03-23 11:00:00'),(76,'335','Animation culturelle, sportive et de loisirs',76,1,'2017-03-23 11:00:00'),(77,'336','Coiffure, esthétique et autres spécialités des services aux personnes',77,1,'2017-03-23 11:00:00'),(78,'341','Aménagement du territoire, développement, urbanisme',78,1,'2017-03-23 11:00:00'),(79,'342','Protection et développement du patrimoine',79,1,'2017-03-23 11:00:00'),(80,'343','Nettoyage, assainissement, protection de l\'environnement',80,1,'2017-03-23 11:00:00'),(81,'344','Sécurité des biens et des personnes, police, surveillance (y compris hygiène et sécurité)',81,1,'2017-03-23 11:00:00'),(82,'345','Application des droits et statut des personnes',82,1,'2017-03-23 11:00:00'),(83,'346','Spécialités militaires',83,1,'2017-03-23 11:00:00'),(84,'410','Spécialités concernant plusieurs capacités',84,1,'2017-03-23 11:00:00'),(85,'411','Pratiques sportives (y compris : arts martiaux)',85,1,'2017-03-23 11:00:00'),(86,'412','Développement des capacités mentales et apprentissages de base',86,1,'2017-03-23 11:00:00'),(87,'413','Développement des capacités comportementales et relationnelles',87,1,'2017-03-23 11:00:00'),(88,'414','Développement des capacités individuelles d\'organisation',88,1,'2017-03-23 11:00:00'),(89,'415','Développement des capacités d\'orientation, d\'insertion ou de réinsertion sociales',89,1,'2017-03-23 11:00:00'),(90,'421','Jeux et activités spécifiques de loisirs',90,1,'2017-03-23 11:00:00'),(91,'422','Economie et activités domestiques',91,1,'2017-03-23 11:00:00'),(92,'423','Vie familiale, vie sociale et autres formations au développement personne',92,1,'2017-03-23 11:00:00'); +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_catalogue_type_bpf` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_catalogue_type_bpf`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_catalogue_type_bpf` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) NOT NULL, + `intitule` varchar(1000) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_catalogue_type_bpf` +-- + +LOCK TABLES `llx_agefodd_formation_catalogue_type_bpf` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_type_bpf` DISABLE KEYS */; +INSERT INTO `llx_agefodd_formation_catalogue_type_bpf` VALUES (1,'F3a1','Formations visant un diplôme ou un titre à finalité professionnelle (hors certificat de qualification professionnelle) inscrit au Répertoire national des certifications professionnelles (RNCP)',0,1,'2017-03-23 11:00:00'),(2,'F3a2','dont de niveau I et II (licence, maîtrise, master, DEA, DESS, diplôme d’ingénieur)',1,1,'2017-03-23 11:00:00'),(3,'F3a3','dont de niveau III (BTS, DUT, écoles de formation sanitaire et sociale ...)',2,1,'2017-03-23 11:00:00'),(4,'F3a4','dont de niveau IV (BAC professionnel, BT, BP, BM...)',3,1,'2017-03-23 11:00:00'),(5,'F3a5','dont de niveau V (BEP, CAP ou CFPA 1 er degré...)',4,1,'2017-03-23 11:00:00'),(6,'F3b','Formations visant un certificat de qualification professionnelle (CQP)',5,1,'2017-03-23 11:00:00'),(7,'F3c','Formations visant une certification et/ou une habilitation inscrite à l’inventaire de la CNCP',6,1,'2017-03-23 11:00:00'),(8,'F3d','Autres formations professionnelles continues',7,1,'2017-03-23 11:00:00'),(9,'F3e','Bilans de compétence',8,1,'2017-03-23 11:00:00'),(10,'F3f','Actions d’accompagnement à la validation des acquis de l’expérience',9,1,'2017-03-23 11:00:00'); +/*!40000 ALTER TABLE `llx_agefodd_formation_catalogue_type_bpf` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_cursus` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_cursus`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_cursus` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_formation_catalogue` int(11) NOT NULL, + `fk_cursus` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_agefodd_formation_cursus` (`fk_formation_catalogue`,`fk_cursus`), + KEY `llx_agefodd_formation_cursus_ibfk_2` (`fk_cursus`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_cursus` +-- + +LOCK TABLES `llx_agefodd_formation_cursus` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_cursus` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formation_cursus` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_formation_objectifs_peda` +-- + +DROP TABLE IF EXISTS `llx_agefodd_formation_objectifs_peda`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_formation_objectifs_peda` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_formation_catalogue` int(11) NOT NULL, + `intitule` varchar(500) NOT NULL, + `priorite` smallint(6) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `fk_formation_catalogue_obj_peda` (`fk_formation_catalogue`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_formation_objectifs_peda` +-- + +LOCK TABLES `llx_agefodd_formation_objectifs_peda` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_formation_objectifs_peda` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_formation_objectifs_peda` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_opca` +-- + +DROP TABLE IF EXISTS `llx_agefodd_opca`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_opca` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session_trainee` int(11) NOT NULL, + `fk_soc_trainee` int(11) NOT NULL, + `fk_session_agefodd` int(11) NOT NULL, + `date_ask_OPCA` datetime DEFAULT NULL, + `is_date_ask_OPCA` smallint(6) NOT NULL DEFAULT '0', + `is_OPCA` smallint(6) NOT NULL DEFAULT '0', + `fk_soc_OPCA` int(11) DEFAULT NULL, + `fk_socpeople_OPCA` int(11) DEFAULT NULL, + `num_OPCA_soc` varchar(100) DEFAULT NULL, + `num_OPCA_file` varchar(100) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_opca` +-- + +LOCK TABLES `llx_agefodd_opca` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_opca` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_opca` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_place` +-- + +DROP TABLE IF EXISTS `llx_agefodd_place`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_place` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref_interne` varchar(80) NOT NULL, + `adresse` varchar(255) DEFAULT NULL, + `cp` varchar(10) DEFAULT NULL, + `ville` varchar(50) DEFAULT NULL, + `fk_pays` int(11) DEFAULT NULL, + `tel` varchar(20) DEFAULT NULL, + `fk_societe` int(11) NOT NULL, + `fk_socpeople` int(11) DEFAULT NULL, + `timeschedule` text, + `control_occupation` smallint(6) NOT NULL DEFAULT '0', + `notes` text, + `acces_site` text, + `note1` text, + `archive` smallint(6) NOT NULL DEFAULT '0', + `fk_reg_interieur` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_session_ibfk_1` (`fk_pays`), + KEY `archive_place` (`archive`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_place` +-- + +LOCK TABLES `llx_agefodd_place` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_place` DISABLE KEYS */; +INSERT INTO `llx_agefodd_place` VALUES (1,'Salle 1',NULL,NULL,NULL,NULL,NULL,-1,NULL,NULL,0,'','','',0,NULL,12,'2018-09-14 09:53:15',12,'2018-09-14 07:53:15',1); +/*!40000 ALTER TABLE `llx_agefodd_place` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_reg_interieur` +-- + +DROP TABLE IF EXISTS `llx_agefodd_reg_interieur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_reg_interieur` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `reg_int` text, + `notes` tinytext NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_reg_interieur` +-- + +LOCK TABLES `llx_agefodd_reg_interieur` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_reg_interieur` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_reg_interieur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(40) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) DEFAULT NULL, + `fk_soc_requester` int(11) DEFAULT NULL, + `fk_socpeople_requester` int(11) DEFAULT NULL, + `fk_formation_catalogue` int(11) NOT NULL, + `fk_session_place` int(11) NOT NULL, + `type_session` int(11) DEFAULT NULL, + `nb_place` int(11) DEFAULT NULL, + `nb_stagiaire` int(11) DEFAULT NULL, + `force_nb_stagiaire` int(11) DEFAULT NULL, + `nb_subscribe_min` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `dated` datetime DEFAULT NULL, + `datef` datetime DEFAULT NULL, + `notes` text NOT NULL, + `color` varchar(32) DEFAULT NULL, + `cost_trainer` double(24,8) DEFAULT '0.00000000', + `cost_site` double(24,8) DEFAULT '0.00000000', + `cost_trip` double(24,8) DEFAULT NULL, + `sell_price` double(24,8) DEFAULT '0.00000000', + `invoice_amount` double(24,8) DEFAULT '0.00000000', + `cost_buy_charges` double(24,8) DEFAULT '0.00000000', + `cost_sell_charges` double(24,8) DEFAULT '0.00000000', + `is_date_res_site` smallint(6) NOT NULL DEFAULT '0', + `date_res_site` datetime DEFAULT NULL, + `is_date_res_confirm_site` smallint(6) NOT NULL DEFAULT '0', + `date_res_confirm_site` datetime DEFAULT NULL, + `is_date_res_trainer` smallint(6) NOT NULL DEFAULT '0', + `date_res_trainer` datetime DEFAULT NULL, + `date_ask_OPCA` datetime DEFAULT NULL, + `is_date_ask_OPCA` smallint(6) NOT NULL DEFAULT '0', + `is_OPCA` smallint(6) NOT NULL DEFAULT '0', + `fk_soc_OPCA` int(11) DEFAULT NULL, + `fk_socpeople_OPCA` int(11) DEFAULT NULL, + `fk_socpeople_presta` int(11) DEFAULT NULL, + `fk_soc_employer` int(11) DEFAULT NULL, + `num_OPCA_soc` varchar(100) DEFAULT NULL, + `num_OPCA_file` varchar(100) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `status` int(11) DEFAULT NULL, + `duree_session` double NOT NULL DEFAULT '0', + `intitule_custo` varchar(100) DEFAULT NULL, + `import_key` varchar(36) DEFAULT NULL, + `ref_ext` varchar(50) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_formation_catalogue_ibfk_1` (`fk_formation_catalogue`), + KEY `llx_agefodd_session_place_ibfk_1` (`fk_session_place`), + KEY `fk_soc_session` (`fk_soc`), + KEY `idx_agefodd_session_status` (`status`), + KEY `fk_soc_requester_session` (`fk_soc_requester`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session` +-- + +LOCK TABLES `llx_agefodd_session` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session` DISABLE KEYS */; +INSERT INTO `llx_agefodd_session` VALUES (1,'SES1809-0001',1,221,-1,NULL,1,1,0,5,NULL,NULL,NULL,4,NULL,NULL,'',NULL,0.00000000,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,0,NULL,0,NULL,NULL,0,0,NULL,NULL,NULL,-1,NULL,NULL,12,'2018-09-14 09:53:42',12,'2018-09-14 07:53:42',1,14,'Formation AAA',NULL,NULL); +/*!40000 ALTER TABLE `llx_agefodd_session` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_adminsitu` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_adminsitu`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_adminsitu` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_agefodd_session_admlevel` int(11) NOT NULL DEFAULT '0', + `fk_agefodd_session` int(11) NOT NULL, + `intitule` varchar(500) DEFAULT NULL, + `delais_alerte` int(11) NOT NULL, + `indice` int(11) NOT NULL, + `level_rank` int(11) NOT NULL DEFAULT '0', + `fk_parent_level` int(11) DEFAULT '0', + `dated` datetime DEFAULT NULL, + `datef` datetime NOT NULL, + `datea` datetime NOT NULL, + `notes` text NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `archive` smallint(6) NOT NULL DEFAULT '0', + `trigger_name` varchar(150) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `fk_agefodd_session_adminsitu` (`fk_agefodd_session`), + KEY `idx_agefodd_session_adminsitu_fk_parent_level` (`fk_parent_level`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_adminsitu` +-- + +LOCK TABLES `llx_agefodd_session_adminsitu` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_adminsitu` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_adminsitu` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_admlevel` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_admlevel`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_admlevel` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `level_rank` int(11) NOT NULL DEFAULT '0', + `fk_parent_level` int(11) DEFAULT '0', + `indice` int(11) NOT NULL, + `intitule` varchar(500) NOT NULL, + `delais_alerte` int(11) NOT NULL, + `delais_alerte_end` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `trigger_name` varchar(150) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_session_admlevel_fk_parent_level` (`fk_parent_level`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_admlevel` +-- + +LOCK TABLES `llx_agefodd_session_admlevel` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_admlevel` DISABLE KEYS */; +INSERT INTO `llx_agefodd_session_admlevel` VALUES (1,0,0,100,'Préparation de l\'action',-40,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(2,1,1,101,'Inscription des stagiaires',-31,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(3,0,0,200,'Transmission de la convention de formation',-30,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(4,1,3,201,'Impression convention et vérification',-31,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(5,1,3,202,'Envoi convention (VP ou numérique avec AC)',-30,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(6,0,0,300,'Envoi des convocations',-15,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(7,1,6,301,'Préparation du dossier
(convoc., rég. intérieur, programme, fiche péda, conseils pratiques)',-15,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(8,1,6,302,'Envoi du dossier à chaque stagiaire (inter) ou au respo. formation (intra)',-15,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(9,0,0,400,'Vérifications et mise en place des moyens',-10,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(10,1,9,401,'Vérification du retour de la convention signée',-10,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(11,0,0,500,'Execution de la prestation',0,0,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(12,0,0,600,'Cloture administrative',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(13,1,12,601,'Impression des attestations',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(14,1,12,602,'Creation de la facture et verification',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(15,1,12,603,'Création du courrier d\'accompagnement',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(16,1,12,604,'Impression de la liasse administrative',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL),(17,1,12,605,'Envoi de la liasse administrative',0,8,1,'2012-01-01 00:00:00',0,'2011-12-31 23:00:00',NULL); +/*!40000 ALTER TABLE `llx_agefodd_session_admlevel` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_calendrier` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_calendrier`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_calendrier` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_agefodd_session` int(11) NOT NULL, + `date_session` date NOT NULL, + `heured` datetime NOT NULL, + `heuref` datetime NOT NULL, + `fk_actioncomm` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_fk_agefodd_session_cal` (`fk_agefodd_session`), + KEY `idx_fk_agefodd_session_act_cal` (`fk_actioncomm`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_calendrier` +-- + +LOCK TABLES `llx_agefodd_session_calendrier` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_calendrier` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_calendrier` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_commercial` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_commercial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_commercial` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session_agefodd` int(11) NOT NULL, + `fk_user_com` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_session_commercial_ibfk_2` (`fk_user_com`), + KEY `fk_session_sess_comm` (`fk_session_agefodd`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_commercial` +-- + +LOCK TABLES `llx_agefodd_session_commercial` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_commercial` DISABLE KEYS */; +INSERT INTO `llx_agefodd_session_commercial` VALUES (1,1,12,12,'2018-09-14 09:53:42',12,'2018-09-14 07:53:42'); +/*!40000 ALTER TABLE `llx_agefodd_session_commercial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_contact` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_contact`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_contact` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session_agefodd` int(11) NOT NULL, + `fk_agefodd_contact` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_session_contact_ibfk_2` (`fk_agefodd_contact`), + KEY `fk_session_sess_contact` (`fk_session_agefodd`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_contact` +-- + +LOCK TABLES `llx_agefodd_session_contact` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_contact` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_contact` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_element` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_element`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_element` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session_agefodd` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `element_type` varchar(50) NOT NULL, + `fk_element` int(11) NOT NULL, + `fk_sub_element` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_agefodd_session_element` (`fk_session_agefodd`,`fk_element`,`element_type`,`fk_soc`), + KEY `fk_session_element` (`fk_session_agefodd`), + KEY `idxagefodd_session_element_fk_element` (`fk_element`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_element` +-- + +LOCK TABLES `llx_agefodd_session_element` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_element` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_element` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_extrafields` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_session_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_extrafields` +-- + +LOCK TABLES `llx_agefodd_session_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_formateur` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_formateur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_formateur` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session` int(11) NOT NULL, + `fk_agefodd_formateur` int(11) NOT NULL, + `fk_agefodd_formateur_type` int(11) DEFAULT NULL, + `trainer_status` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `fk_session_sess_form` (`fk_session`), + KEY `idx_fk_agefodd_sess_formateur` (`fk_agefodd_formateur`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_formateur` +-- + +LOCK TABLES `llx_agefodd_session_formateur` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_formateur` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_formateur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_formateur_calendrier` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_formateur_calendrier`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_formateur_calendrier` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_agefodd_session_formateur` int(11) NOT NULL, + `date_session` date NOT NULL, + `heured` datetime NOT NULL, + `heuref` datetime NOT NULL, + `trainer_cost` double DEFAULT NULL, + `trainer_status` int(11) DEFAULT NULL, + `fk_actioncomm` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `fk_agefodd_session_formateur_sta` (`fk_agefodd_session_formateur`), + KEY `fk_actioncomm_sta` (`fk_actioncomm`), + KEY `fk_user_author_sta` (`fk_user_author`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_formateur_calendrier` +-- + +LOCK TABLES `llx_agefodd_session_formateur_calendrier` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_formateur_calendrier` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_formateur_calendrier` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_stagiaire` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_stagiaire`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_stagiaire` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_session_agefodd` int(11) NOT NULL, + `fk_stagiaire` int(11) NOT NULL, + `fk_agefodd_stagiaire_type` int(11) NOT NULL, + `fk_soc_link` int(11) DEFAULT NULL, + `fk_socpeople_sign` int(11) DEFAULT NULL, + `fk_soc_requester` int(11) DEFAULT NULL, + `status_in_session` int(11) DEFAULT NULL, + `hour_foad` double DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) DEFAULT NULL, + `dt_acknowledgement` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_session_stagiaire_ibfk_2` (`fk_stagiaire`), + KEY `fk_session_sess_sta` (`fk_session_agefodd`), + KEY `fk_agefodd_stagiaire_type_sess_sta` (`fk_agefodd_stagiaire_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_stagiaire` +-- + +LOCK TABLES `llx_agefodd_session_stagiaire` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_stagiaire` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_stagiaire` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_stagiaire_heures` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_stagiaire_heures`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_stagiaire_heures` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_stagiaire` int(11) NOT NULL, + `fk_session` int(11) NOT NULL, + `fk_calendrier` int(11) NOT NULL, + `heures` float NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_stagiaire_heures` +-- + +LOCK TABLES `llx_agefodd_session_stagiaire_heures` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_stagiaire_heures` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_session_stagiaire_heures` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_session_status_type` +-- + +DROP TABLE IF EXISTS `llx_agefodd_session_status_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_session_status_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) NOT NULL, + `intitule` varchar(80) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_session_status_type` +-- + +LOCK TABLES `llx_agefodd_session_status_type` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_session_status_type` DISABLE KEYS */; +INSERT INTO `llx_agefodd_session_status_type` VALUES (1,'ENV','Envisagée',1,1,'2012-12-31 23:00:00'),(2,'CONF','Confirmée client',2,1,'2012-12-31 23:00:00'),(3,'NOT','Non réalisée',6,1,'2012-12-31 23:00:00'),(4,'ARCH','Archivée',7,1,'2012-12-31 23:00:00'),(5,'DONE','Réalisée',5,1,'2012-12-31 23:00:00'),(6,'ONGOING','En cours',4,1,'2012-12-31 23:00:00'); +/*!40000 ALTER TABLE `llx_agefodd_session_status_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_stagiaire` +-- + +DROP TABLE IF EXISTS `llx_agefodd_stagiaire`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_stagiaire` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `nom` varchar(50) NOT NULL, + `prenom` varchar(50) NOT NULL, + `civilite` varchar(6) NOT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_soc` int(11) NOT NULL, + `fk_socpeople` int(11) DEFAULT NULL, + `fonction` varchar(80) DEFAULT NULL, + `tel1` varchar(30) DEFAULT NULL, + `tel2` varchar(30) DEFAULT NULL, + `mail` varchar(100) DEFAULT NULL, + `date_birth` datetime DEFAULT NULL, + `place_birth` varchar(100) DEFAULT NULL, + `note` text, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `nom_sta` (`nom`), + KEY `fk_soc_sta` (`fk_soc`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_stagiaire` +-- + +LOCK TABLES `llx_agefodd_stagiaire` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_stagiaire_certif` +-- + +DROP TABLE IF EXISTS `llx_agefodd_stagiaire_certif`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_stagiaire_certif` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_stagiaire` int(11) NOT NULL, + `fk_session_agefodd` int(11) NOT NULL, + `fk_session_stagiaire` int(11) NOT NULL, + `certif_code` varchar(200) NOT NULL, + `certif_label` varchar(200) NOT NULL, + `certif_dt_start` datetime NOT NULL, + `certif_dt_end` datetime NOT NULL, + `certif_dt_warning` datetime DEFAULT NULL, + `mark` varchar(20) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_stagiaire_certif` +-- + +LOCK TABLES `llx_agefodd_stagiaire_certif` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_certif` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_certif` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_stagiaire_cursus` +-- + +DROP TABLE IF EXISTS `llx_agefodd_stagiaire_cursus`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_stagiaire_cursus` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_stagiaire` int(11) NOT NULL, + `fk_cursus` int(11) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `llx_agefodd_stagiaire_cursus_ibfk_1` (`fk_cursus`), + KEY `llx_agefodd_stagiaire_cursus_ibfk_2` (`fk_stagiaire`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_stagiaire_cursus` +-- + +LOCK TABLES `llx_agefodd_stagiaire_cursus` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_cursus` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_cursus` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_stagiaire_extrafields` +-- + +DROP TABLE IF EXISTS `llx_agefodd_stagiaire_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_stagiaire_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_agefodd_stagiaire_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_stagiaire_extrafields` +-- + +LOCK TABLES `llx_agefodd_stagiaire_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_stagiaire_type` +-- + +DROP TABLE IF EXISTS `llx_agefodd_stagiaire_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_stagiaire_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `intitule` varchar(255) NOT NULL, + `sort` smallint(6) NOT NULL, + `active` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_stagiaire_type` +-- + +LOCK TABLES `llx_agefodd_stagiaire_type` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_type` DISABLE KEYS */; +INSERT INTO `llx_agefodd_stagiaire_type` VALUES (1,'Financement par l\'employeur (contrat pro.)',2,1,'2017-03-23 11:00:00'),(2,'Financement par l\'employeur',1,1,'2017-03-23 11:00:00'),(3,'Dispositifs spécifiques pour les personnes en recherche d emploi financement publique',4,1,'2017-03-23 11:00:00'),(4,'Autre dispositifs (plan de formation, périodes de professionnalisation,...)',5,1,'2017-03-23 11:00:00'),(5,'Compte personnel de formation (CPF)',3,1,'2017-03-23 11:00:00'),(6,'Période PRO',99,0,'2017-03-23 11:00:00'),(7,'Congés individuel de formation (CIF)',2,1,'2017-03-23 11:00:00'),(8,'Fond d\'assurance formation de non-salariés',6,1,'2017-03-23 11:00:00'),(9,'Pouvoirs publics pour la formation de leurs agents',7,1,'2017-03-23 11:00:00'),(10,'Pouvoirs publics pour la formation de publics spécifiques : Instances européenne',8,1,'2017-03-23 11:00:00'),(11,'Pouvoirs publics pour la formation de publics spécifiques : Etat',9,1,'2017-03-23 11:00:00'),(12,'Pouvoirs publics pour la formation de publics spécifiques : Conseils régionaux',10,1,'2017-03-23 11:00:00'),(13,'Pouvoirs publics pour la formation de publics spécifiques : Pôle emploi',11,1,'2017-03-23 11:00:00'),(14,'Pouvoirs publics pour la formation de publics spécifiques : Autres ressources publique',12,1,'2017-03-23 11:00:00'),(15,'Contrats conclus avec des personnes à titre individuel et à leurs frais',13,1,'2017-03-23 11:00:00'),(16,'Contrats conclus avec d’autres organismes de formation',14,1,'2017-03-23 11:00:00'),(17,'Dispositifs spécifiques pour les personnes en recherche d\'emploi financement OPCA',4,1,'2017-03-23 11:00:00'); +/*!40000 ALTER TABLE `llx_agefodd_stagiaire_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_agefodd_training_admlevel` +-- + +DROP TABLE IF EXISTS `llx_agefodd_training_admlevel`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_agefodd_training_admlevel` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_agefodd_training_admlevel` int(11) NOT NULL DEFAULT '0', + `fk_training` int(11) NOT NULL, + `level_rank` int(11) NOT NULL DEFAULT '0', + `fk_parent_level` int(11) DEFAULT '0', + `indice` int(11) NOT NULL, + `intitule` varchar(150) NOT NULL, + `delais_alerte` int(11) NOT NULL, + `delais_alerte_end` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `trigger_name` varchar(150) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `fk_agefodd_training_admlevel` (`fk_training`), + KEY `idx_agefodd_training_admlevel_fk_parent_level` (`fk_parent_level`) +) ENGINE=InnoDB AUTO_INCREMENT=35 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_agefodd_training_admlevel` +-- + +LOCK TABLES `llx_agefodd_training_admlevel` WRITE; +/*!40000 ALTER TABLE `llx_agefodd_training_admlevel` DISABLE KEYS */; +INSERT INTO `llx_agefodd_training_admlevel` VALUES (18,1,1,0,0,100,'Préparation de l\'action',-40,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(19,2,1,1,18,101,'Inscription des stagiaires',-31,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(20,3,1,0,0,200,'Transmission de la convention de formation',-30,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(21,4,1,1,20,201,'Impression convention et vérification',-31,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(22,5,1,1,20,202,'Envoi convention (VP ou numérique avec AC)',-30,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(23,6,1,0,0,300,'Envoi des convocations',-15,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(24,7,1,1,23,301,'Préparation du dossier
(convoc., rég. intérieur, programme, fiche péda, conseils pratiques)',-15,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(25,8,1,1,23,302,'Envoi du dossier à chaque stagiaire (inter) ou au respo. formation (intra)',-15,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(26,9,1,0,0,400,'Vérifications et mise en place des moyens',-10,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(27,10,1,1,26,401,'Vérification du retour de la convention signée',-10,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(28,11,1,0,0,500,'Execution de la prestation',0,0,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(29,12,1,0,0,600,'Cloture administrative',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(30,13,1,1,29,601,'Impression des attestations',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(31,14,1,1,29,602,'Creation de la facture et verification',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(32,15,1,1,29,603,'Création du courrier d\'accompagnement',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(33,16,1,1,29,604,'Impression de la liasse administrative',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL),(34,17,1,1,29,605,'Envoi de la liasse administrative',0,8,12,'2018-09-14 09:52:29',12,'2018-09-14 07:52:29',NULL); +/*!40000 ALTER TABLE `llx_agefodd_training_admlevel` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset` +-- + +DROP TABLE IF EXISTS `llx_asset`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_asset_type` int(11) NOT NULL, + `fk_soc` int(11) DEFAULT NULL, + `description` text, + `note_public` text, + `note_private` text, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_asset_rowid` (`rowid`), + KEY `idx_asset_ref` (`ref`), + KEY `idx_asset_entity` (`entity`), + KEY `idx_asset_fk_soc` (`fk_soc`), + KEY `idx_asset_fk_asset_type` (`fk_asset_type`), + CONSTRAINT `fk_asset_asset_type` FOREIGN KEY (`fk_asset_type`) REFERENCES `llx_asset_type` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset` +-- + +LOCK TABLES `llx_asset` WRITE; +/*!40000 ALTER TABLE `llx_asset` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_assetOf` +-- + +DROP TABLE IF EXISTS `llx_assetOf`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_assetOf` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `entity` double NOT NULL DEFAULT '0', + `fk_user` int(11) NOT NULL DEFAULT '0', + `fk_assetOf_parent` int(11) NOT NULL DEFAULT '0', + `fk_soc` int(11) NOT NULL DEFAULT '0', + `fk_commande` int(11) NOT NULL DEFAULT '0', + `fk_project` int(11) NOT NULL DEFAULT '0', + `temps_estime_fabrication` double NOT NULL DEFAULT '0', + `temps_reel_fabrication` double NOT NULL DEFAULT '0', + `mo_cost` double NOT NULL DEFAULT '0', + `mo_estimated_cost` double NOT NULL DEFAULT '0', + `compo_cost` double NOT NULL DEFAULT '0', + `compo_estimated_cost` double NOT NULL DEFAULT '0', + `total_cost` double NOT NULL DEFAULT '0', + `total_estimated_cost` double NOT NULL DEFAULT '0', + `ordre` varchar(255) DEFAULT NULL, + `numero` varchar(255) DEFAULT NULL, + `status` varchar(255) DEFAULT NULL, + `date_besoin` datetime DEFAULT NULL, + `date_lancement` datetime DEFAULT NULL, + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `note` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_user` (`fk_user`), + KEY `fk_assetOf_parent` (`fk_assetOf_parent`), + KEY `fk_soc` (`fk_soc`), + KEY `fk_commande` (`fk_commande`), + KEY `fk_project` (`fk_project`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_assetOf` +-- + +LOCK TABLES `llx_assetOf` WRITE; +/*!40000 ALTER TABLE `llx_assetOf` DISABLE KEYS */; +INSERT INTO `llx_assetOf` VALUES (1,'2018-11-18 16:19:27','2018-11-18 16:19:27',1,0,0,1,-1,0,0,0,0,0,0,0,0,0,'ASAP','OF00001','DRAFT','2018-11-18 00:00:00',NULL,NULL,NULL,''),(2,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,0,0,-1,-1,0,0,0,0,0,49,49,49,49,'ASAP','OF00004','CLOSE','2018-11-18 00:00:00','2018-11-18 00:00:00','2018-11-18 16:48:10','2018-11-18 17:08:06',''),(3,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,0,2,-1,-1,0,0,0,0,0,0,0,0,0,'','OF00002','CLOSE','2018-11-18 16:26:40','2018-11-18 00:00:00','2018-11-18 16:54:41','2018-11-18 16:54:45',''),(4,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,0,0,-1,-1,0,0,0,0,0,20,20,20,20,'ASAP','OF00006','CLOSE','2018-11-18 00:00:00','2018-11-18 00:00:00','2018-11-18 17:23:54','2018-11-18 17:25:05',''),(5,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,0,4,-1,-1,0,0,0,0,0,0,0,0,0,'ASAP','OF00005','CLOSE','2018-11-18 00:00:00','2018-11-18 00:00:00','2018-11-18 17:22:07','2018-11-18 17:22:12',''),(6,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,0,0,-1,-1,0,0,0,0,0,0,20,0,20,'ASAP','OF00008','OPEN','2018-11-18 00:00:00','2018-11-18 00:00:00','2018-11-18 17:44:27',NULL,''),(7,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,0,6,-1,-1,0,0,0,0,0,0,0,0,0,'ASAP','OF00007','CLOSE','2018-11-18 00:00:00','2018-11-18 00:00:00',NULL,NULL,''); +/*!40000 ALTER TABLE `llx_assetOf` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_assetOf_line` +-- + +DROP TABLE IF EXISTS `llx_assetOf_line`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_assetOf_line` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '0', + `fk_assetOf` int(11) NOT NULL DEFAULT '0', + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_product_fournisseur_price` int(11) NOT NULL DEFAULT '0', + `fk_entrepot` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature` int(11) NOT NULL DEFAULT '0', + `nomenclature_valide` int(11) NOT NULL DEFAULT '0', + `fk_commandedet` int(11) NOT NULL DEFAULT '0', + `qty_needed` double NOT NULL DEFAULT '0', + `qty` double NOT NULL DEFAULT '0', + `qty_used` double NOT NULL DEFAULT '0', + `qty_stock` double NOT NULL DEFAULT '0', + `conditionnement` double NOT NULL DEFAULT '0', + `conditionnement_unit` double NOT NULL DEFAULT '0', + `pmp` double NOT NULL DEFAULT '0', + `type` varchar(255) DEFAULT NULL, + `lot_number` varchar(255) DEFAULT NULL, + `measuring_units` varchar(255) DEFAULT NULL, + `note_private` longtext, + `fk_assetOf_line_parent` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `entity` (`entity`), + KEY `fk_assetOf` (`fk_assetOf`), + KEY `fk_product` (`fk_product`), + KEY `fk_product_fournisseur_price` (`fk_product_fournisseur_price`), + KEY `fk_entrepot` (`fk_entrepot`), + KEY `fk_nomenclature` (`fk_nomenclature`), + KEY `nomenclature_valide` (`nomenclature_valide`), + KEY `fk_commandedet` (`fk_commandedet`), + KEY `fk_assetOf_line_parent` (`fk_assetOf_line_parent`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_assetOf_line` +-- + +LOCK TABLES `llx_assetOf_line` WRITE; +/*!40000 ALTER TABLE `llx_assetOf_line` DISABLE KEYS */; +INSERT INTO `llx_assetOf_line` VALUES (1,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,2,196,-2,0,1,1,0,1,1,1,1,1,0,49,'TO_MAKE','','unit','',0),(2,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,2,192,-2,0,0,0,0,2,2,2,2,1,0,0,'NEEDED','','unit','aaa',1),(3,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,3,192,-2,0,0,0,0,2,2,2,2,1,0,0,'TO_MAKE','','unit','',2),(4,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,2,151,-2,0,0,0,0,1,1,1,1,1,0,49,'NEEDED','','unit','bbb',1),(6,'2018-11-18 16:26:40','2018-11-18 17:08:06',1,2,10,-2,0,0,0,0,1,1,1,1,1,0,0,'NEEDED','','unit','ccc',1),(7,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,4,195,-2,0,2,1,0,1,1,1,1,1,0,20,'TO_MAKE','','unit','',0),(8,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,4,190,-2,0,0,0,0,2,2,2,2,1,0,10,'NEEDED','','unit','aaa',7),(9,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,4,11,-2,0,0,0,0,1,1,1,1,1,0,0,'NEEDED','','unit','bbb',7),(10,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,5,11,-2,0,0,0,0,1,1,1,1,1,0,0,'TO_MAKE','','unit','',9),(11,'2018-11-18 17:21:16','2018-11-18 17:25:05',1,4,10,-2,0,0,0,0,1,1,1,1,1,0,0,'NEEDED','','unit','',7),(12,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,6,195,-2,0,2,1,0,1,1,0,0,1,0,22,'TO_MAKE','','unit','',0),(13,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,6,190,-2,0,0,0,0,2,2,0,0,1,0,10,'NEEDED','','unit','aaa',12),(14,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,6,11,-2,0,0,0,0,1,1,0,0,1,0,0,'NEEDED','','unit','bbb',12),(15,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,7,11,-1,0,0,0,0,1,1,0,0,1,0,0,'TO_MAKE','','unit','',14),(16,'2018-11-18 17:35:12','2018-11-18 17:44:27',1,6,10,-2,0,0,0,0,1,0,0,0,1,0,0,'NEEDED','','unit','',12); +/*!40000 ALTER TABLE `llx_assetOf_line` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_extrafields` +-- + +DROP TABLE IF EXISTS `llx_asset_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_extrafields` +-- + +LOCK TABLES `llx_asset_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_asset_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_type` +-- + +DROP TABLE IF EXISTS `llx_asset_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(50) NOT NULL, + `accountancy_code_asset` varchar(32) DEFAULT NULL, + `accountancy_code_depreciation_asset` varchar(32) DEFAULT NULL, + `accountancy_code_depreciation_expense` varchar(32) DEFAULT NULL, + `note` text, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_asset_type_label` (`label`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_type` +-- + +LOCK TABLES `llx_asset_type` WRITE; +/*!40000 ALTER TABLE `llx_asset_type` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_type_extrafields` +-- + +DROP TABLE IF EXISTS `llx_asset_type_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_type_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_asset_type_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_type_extrafields` +-- + +LOCK TABLES `llx_asset_type_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_asset_type_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_type_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_workstation_of` +-- + +DROP TABLE IF EXISTS `llx_asset_workstation_of`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_workstation_of` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_assetOf` int(11) NOT NULL DEFAULT '0', + `fk_asset_workstation` int(11) NOT NULL DEFAULT '0', + `fk_project_task` int(11) NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `nb_hour_real` double NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `rang` double NOT NULL DEFAULT '0', + `thm` double NOT NULL DEFAULT '0', + `nb_days_before_beginning` double NOT NULL DEFAULT '0', + `note_private` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_assetOf` (`fk_assetOf`), + KEY `fk_asset_workstation` (`fk_asset_workstation`), + KEY `fk_project_task` (`fk_project_task`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_workstation_of` +-- + +LOCK TABLES `llx_asset_workstation_of` WRITE; +/*!40000 ALTER TABLE `llx_asset_workstation_of` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_workstation_of` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_workstation_product` +-- + +DROP TABLE IF EXISTS `llx_asset_workstation_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_workstation_product` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_asset_workstation` int(11) NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `rang` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_product` (`fk_product`), + KEY `fk_asset_workstation` (`fk_asset_workstation`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_workstation_product` +-- + +LOCK TABLES `llx_asset_workstation_product` WRITE; +/*!40000 ALTER TABLE `llx_asset_workstation_product` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_workstation_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_asset_workstation_task` +-- + +DROP TABLE IF EXISTS `llx_asset_workstation_task`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_asset_workstation_task` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `libelle` varchar(255) DEFAULT NULL, + `description` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_workstation` (`fk_workstation`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_asset_workstation_task` +-- + +LOCK TABLES `llx_asset_workstation_task` WRITE; +/*!40000 ALTER TABLE `llx_asset_workstation_task` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_asset_workstation_task` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_assetof_amounts` +-- + +DROP TABLE IF EXISTS `llx_assetof_amounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_assetof_amounts` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_creation` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `amount_estimated` varchar(255) DEFAULT NULL, + `amount_real` varchar(255) DEFAULT NULL, + `amount_diff` varchar(255) DEFAULT NULL, + `date` datetime DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `date_creation` (`date_creation`), + KEY `tms` (`tms`), + KEY `rowid` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_assetof_amounts` +-- + +LOCK TABLES `llx_assetof_amounts` WRITE; +/*!40000 ALTER TABLE `llx_assetof_amounts` DISABLE KEYS */; +INSERT INTO `llx_assetof_amounts` VALUES (1,'2018-11-19 10:25:56','2018-11-19 09:25:56','20','0','20','2018-11-19 10:25:56'); +/*!40000 ALTER TABLE `llx_assetof_amounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank` +-- + +DROP TABLE IF EXISTS `llx_bank`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datev` date DEFAULT NULL, + `dateo` date DEFAULT NULL, + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_rappro` int(11) DEFAULT NULL, + `fk_type` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `num_releve` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `num_chq` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `rappro` tinyint(4) DEFAULT '0', + `note` text COLLATE utf8_unicode_ci, + `fk_bordereau` int(11) DEFAULT '0', + `banque` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `emetteur` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `author` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL, + `numero_compte` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_bank_datev` (`datev`), + KEY `idx_bank_dateo` (`dateo`), + KEY `idx_bank_fk_account` (`fk_account`), + KEY `idx_bank_rappro` (`rappro`), + KEY `idx_bank_num_releve` (`num_releve`) +) ENGINE=InnoDB AUTO_INCREMENT=40 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank` +-- + +LOCK TABLES `llx_bank` WRITE; +/*!40000 ALTER TABLE `llx_bank` DISABLE KEYS */; +INSERT INTO `llx_bank` VALUES (1,'2010-07-08 23:56:14','2016-07-30 15:16:10','2016-07-08','2016-07-08',2000.00000000,'(Initial balance)',1,NULL,1,'SOLD','201210',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(2,'2010-07-09 00:00:24','2016-07-30 15:16:10','2016-07-09','2016-07-09',500.00000000,'(Initial balance)',2,NULL,NULL,'SOLD',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(3,'2010-07-10 13:33:42','2016-07-30 15:16:10','2016-07-10','2016-07-10',0.00000000,'(Solde initial)',3,NULL,NULL,'SOLD',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(5,'2011-07-18 20:50:24','2016-07-30 15:16:10','2016-07-08','2016-07-08',20.00000000,'(CustomerInvoicePayment)',1,1,NULL,'CB','201107',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(6,'2011-07-18 20:50:47','2016-07-30 15:16:10','2016-07-08','2016-07-08',10.00000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(8,'2011-08-01 03:34:11','2016-07-30 15:21:31','2015-08-01','2015-08-01',5.63000000,'(CustomerInvoicePayment)',1,1,1,'CB','201210',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(12,'2011-08-05 23:11:37','2016-07-30 15:21:31','2015-08-05','2015-08-05',-10.00000000,'(SocialContributionPayment)',1,1,1,'VIR','201210',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(13,'2011-08-06 20:33:54','2016-07-30 15:21:31','2015-08-06','2015-08-06',5.98000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(14,'2011-08-08 02:53:40','2016-07-30 15:21:31','2015-08-08','2015-08-08',26.10000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(15,'2011-08-08 02:55:58','2016-07-30 15:21:31','2015-08-08','2015-08-08',26.96000000,'(CustomerInvoicePayment)',1,1,1,'TIP','201211',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(16,'2012-12-09 15:28:44','2016-07-30 15:21:31','2015-12-09','2015-12-09',2.00000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(17,'2012-12-09 15:28:53','2016-07-30 15:21:31','2015-12-09','2015-12-09',-2.00000000,'(CustomerInvoicePaymentBack)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(18,'2012-12-09 17:35:55','2016-07-30 15:21:31','2015-12-09','2015-12-09',-2.00000000,'(CustomerInvoicePaymentBack)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(19,'2012-12-09 17:37:02','2016-07-30 15:21:31','2015-12-09','2015-12-09',2.00000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(20,'2012-12-09 18:35:07','2016-07-30 15:21:31','2015-12-09','2015-12-09',-2.00000000,'(CustomerInvoicePaymentBack)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(21,'2012-12-12 18:54:33','2016-07-30 15:21:31','2015-12-12','2015-12-12',1.00000000,'(CustomerInvoicePayment)',1,1,1,'TIP','201210',NULL,1,NULL,0,NULL,NULL,NULL,NULL),(22,'2013-03-06 16:48:16','2016-07-30 15:16:10','2016-03-06','2016-03-06',20.00000000,'(SubscriptionPayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(23,'2013-03-20 14:30:11','2016-07-30 15:16:10','2016-03-20','2016-03-20',10.00000000,'(SubscriptionPayment)',1,1,NULL,'VIR',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(24,'2014-03-02 19:57:58','2016-07-30 15:16:10','2016-07-09','2016-07-09',605.00000000,'(CustomerInvoicePayment)',1,1,NULL,'VIR',NULL,NULL,0,NULL,0,NULL,'111',NULL,NULL),(26,'2014-03-02 20:01:39','2016-07-30 15:16:10','2016-03-19','2016-03-19',500.00000000,'(CustomerInvoicePayment)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(27,'2014-03-02 20:02:06','2016-07-30 15:16:10','2016-03-21','2016-03-21',400.00000000,'(CustomerInvoicePayment)',1,1,NULL,'VIR',NULL,NULL,0,NULL,0,NULL,'ABC and Co',NULL,NULL),(28,'2014-03-03 19:22:32','2016-07-30 15:21:31','2015-10-03','2015-10-03',-400.00000000,'(CustomerInvoicePaymentBack)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(29,'2014-03-03 19:23:16','2016-07-30 15:16:10','2016-03-10','2016-03-10',-300.00000000,'(CustomerInvoicePaymentBack)',3,1,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(30,'2016-01-22 18:56:34','2016-01-22 17:56:34','2016-01-22','2016-01-22',-900.00000000,'(SupplierInvoicePayment)',1,12,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(31,'2016-07-30 22:42:14','2016-07-30 14:42:14','2016-07-30','2016-07-30',0.00000000,'(Initial balance)',4,0,NULL,'SOLD',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(32,'2017-02-01 19:02:44','2017-02-01 15:02:44','2017-02-01','2017-02-01',-200.00000000,'(SupplierInvoicePayment)',3,12,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(33,'2017-02-06 08:10:24','2017-02-06 04:12:05','2016-03-22','2016-03-22',150.00000000,'(CustomerInvoicePayment)',1,12,NULL,'CHQ',NULL,NULL,0,NULL,2,NULL,'Magic Food Store',NULL,NULL),(34,'2017-02-06 08:10:50','2017-02-06 04:10:50','2016-03-25','2016-03-25',140.00000000,'(CustomerInvoicePayment)',1,12,NULL,'PRE',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(35,'2017-02-12 23:18:33','2017-02-12 19:18:33','2017-02-12','2017-02-12',50.00000000,'Patient payment',4,12,NULL,'CHQ',NULL,NULL,0,NULL,0,NULL,'aaa',NULL,NULL),(36,'2017-02-16 02:22:09','2017-02-15 22:22:09','2017-02-16','2017-02-16',-1.00000000,'(ExpenseReportPayment)',4,12,NULL,'CHQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL),(37,'2017-02-21 16:07:43','2017-02-21 12:07:43','2017-02-21','2017-02-21',50.00000000,'(WithdrawalPayment)',1,12,NULL,'PRE',NULL,'T170201',0,NULL,0,NULL,NULL,NULL,NULL),(38,'2017-09-06 20:08:36','2017-09-06 16:08:36','2017-09-06','2017-09-06',10.00000000,'(DonationPayment)',3,12,NULL,'LIQ',NULL,NULL,0,NULL,0,NULL,NULL,NULL,''),(39,'2018-03-16 13:59:31','2018-03-16 09:59:31','2018-03-16','2018-03-16',10.00000000,'(CustomerInvoicePayment)',4,12,NULL,'CHQ',NULL,NULL,0,NULL,0,NULL,'Indian SAS',NULL,''); +/*!40000 ALTER TABLE `llx_bank` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank_account` +-- + +DROP TABLE IF EXISTS `llx_bank_account`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank_account` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `bank` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `bic` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL, + `iban_prefix` varchar(34) COLLATE utf8_unicode_ci DEFAULT NULL, + `country_iban` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_iban` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL, + `domiciliation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `state_id` int(11) DEFAULT NULL, + `fk_pays` int(11) NOT NULL, + `proprio` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `owner_address` text COLLATE utf8_unicode_ci, + `courant` smallint(6) NOT NULL DEFAULT '0', + `clos` smallint(6) NOT NULL DEFAULT '0', + `rappro` smallint(6) DEFAULT '1', + `url` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `account_number` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_journal` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `currency_code` varchar(3) COLLATE utf8_unicode_ci NOT NULL, + `min_allowed` int(11) DEFAULT '0', + `min_desired` int(11) DEFAULT '0', + `comment` text COLLATE utf8_unicode_ci, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_accountancy_journal` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_bank_account_label` (`label`,`entity`), + KEY `idx_fk_accountancy_journal` (`fk_accountancy_journal`), + CONSTRAINT `fk_bank_account_accountancy_journal` FOREIGN KEY (`fk_accountancy_journal`) REFERENCES `llx_accounting_journal` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank_account` +-- + +LOCK TABLES `llx_bank_account` WRITE; +/*!40000 ALTER TABLE `llx_bank_account` DISABLE KEYS */; +INSERT INTO `llx_bank_account` VALUES (1,'2010-07-08 23:56:14','2016-07-30 14:45:12','SWIBAC','Swiss bank account',1,'Switz Gold Bank','','','123456789','','','NL39RABO0314043352',NULL,NULL,'21 jum street',NULL,6,'Mac Golder','11 big road,\r\nZurich',1,0,1,NULL,'','','EUR',1500,1500,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,'2010-07-09 00:00:24','2016-07-30 15:17:18','SWIBAC2','Swiss bank account old',1,'Switz Silver Bank','','','','','','NL07SNSB0908534915',NULL,NULL,'Road bankrupt\r\nZurich',NULL,6,'','',1,1,1,NULL,'','','EUR',200,400,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'2010-07-10 13:33:42','2017-08-27 13:29:05','ACCOUNTCASH','Account for cash',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,3,1,NULL,NULL,2,0,1,NULL,'','OD','EUR',0,0,'
',NULL,NULL,NULL,NULL,NULL,NULL,4),(4,'2016-07-30 18:42:14','2016-07-30 14:44:45','LUXBAC','Luxemburg Bank Account',1,'Lux Platinuium Bank','','','','','','NL46INGB0687674581',NULL,NULL,'',NULL,140,'','',1,0,1,NULL,'','','EUR',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_bank_account` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank_account_extrafields` +-- + +DROP TABLE IF EXISTS `llx_bank_account_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank_account_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_bank_account_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank_account_extrafields` +-- + +LOCK TABLES `llx_bank_account_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_bank_account_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_bank_account_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank_categ` +-- + +DROP TABLE IF EXISTS `llx_bank_categ`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank_categ` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank_categ` +-- + +LOCK TABLES `llx_bank_categ` WRITE; +/*!40000 ALTER TABLE `llx_bank_categ` DISABLE KEYS */; +INSERT INTO `llx_bank_categ` VALUES (1,'Bank category one',1),(2,'Bank category two',1); +/*!40000 ALTER TABLE `llx_bank_categ` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank_class` +-- + +DROP TABLE IF EXISTS `llx_bank_class`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank_class` ( + `lineid` int(11) NOT NULL, + `fk_categ` int(11) NOT NULL, + UNIQUE KEY `uk_bank_class_lineid` (`lineid`,`fk_categ`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank_class` +-- + +LOCK TABLES `llx_bank_class` WRITE; +/*!40000 ALTER TABLE `llx_bank_class` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_bank_class` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bank_url` +-- + +DROP TABLE IF EXISTS `llx_bank_url`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bank_url` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_bank` int(11) DEFAULT NULL, + `url_id` int(11) DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(24) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_bank_url` (`fk_bank`,`type`) +) ENGINE=InnoDB AUTO_INCREMENT=70 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bank_url` +-- + +LOCK TABLES `llx_bank_url` WRITE; +/*!40000 ALTER TABLE `llx_bank_url` DISABLE KEYS */; +INSERT INTO `llx_bank_url` VALUES (3,5,2,'/compta/paiement/card.php?id=','(paiement)','payment'),(4,5,2,'/comm/card.php?socid=','Belin SARL','company'),(5,6,3,'/compta/paiement/card.php?id=','(paiement)','payment'),(6,6,2,'/comm/card.php?socid=','Belin SARL','company'),(9,8,5,'/compta/paiement/card.php?id=','(paiement)','payment'),(10,8,7,'/comm/card.php?socid=','Generic customer','company'),(17,12,4,'/compta/payment_sc/card.php?id=','(paiement)','payment_sc'),(18,12,4,'/compta/charges.php?id=','Assurance Chomage (fff)','sc'),(19,13,6,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(20,13,7,'/dolibarrnew/comm/card.php?socid=','Generic customer','company'),(21,14,8,'/compta/paiement/card.php?id=','(paiement)','payment'),(22,14,2,'/comm/card.php?socid=','Belin SARL','company'),(23,15,9,'/compta/paiement/card.php?id=','(paiement)','payment'),(24,15,10,'/comm/card.php?socid=','Smith Vick','company'),(25,16,17,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(26,16,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(27,17,18,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(28,17,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(29,18,19,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(30,18,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(31,19,20,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(32,19,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(33,20,21,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(34,20,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(35,21,23,'/compta/paiement/card.php?id=','(paiement)','payment'),(36,21,1,'/comm/card.php?socid=','ABC and Co','company'),(37,22,24,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(38,22,12,'/dolibarrnew/comm/card.php?socid=','Dupont Alain','company'),(39,23,25,'/dolibarrnew/compta/paiement/card.php?id=','(paiement)','payment'),(40,23,10,'/dolibarrnew/comm/card.php?socid=','Smith Vick','company'),(41,24,26,'/compta/paiement/card.php?id=','(paiement)','payment'),(42,24,1,'/comm/card.php?socid=','ABC and Co','company'),(45,26,29,'/compta/paiement/card.php?id=','(paiement)','payment'),(46,26,1,'/comm/card.php?socid=','ABC and Co','company'),(47,27,30,'/compta/paiement/card.php?id=','(paiement)','payment'),(48,27,1,'/comm/card.php?socid=','ABC and Co','company'),(49,28,32,'/dolibarr_new/compta/paiement/card.php?id=','(paiement)','payment'),(50,28,1,'/dolibarr_new/comm/card.php?socid=','ABC and Co','company'),(51,29,33,'/dolibarr_new/compta/paiement/card.php?id=','(paiement)','payment'),(52,29,1,'/dolibarr_new/comm/card.php?socid=','ABC and Co','company'),(53,30,1,'/dolibarr_3.8/htdocs/fourn/paiement/card.php?id=','(paiement)','payment_supplier'),(54,30,1,'/dolibarr_3.8/htdocs/fourn/card.php?socid=','Indian SAS','company'),(55,32,2,'/dolibarr_5.0/htdocs/fourn/paiement/card.php?id=','(paiement)','payment_supplier'),(56,32,13,'/dolibarr_5.0/htdocs/fourn/card.php?socid=','Company Corp 2','company'),(57,33,34,'/dolibarr_5.0/htdocs/compta/paiement/card.php?id=','(paiement)','payment'),(58,33,19,'/dolibarr_5.0/htdocs/comm/card.php?socid=','Magic Food Store','company'),(59,34,35,'/dolibarr_5.0/htdocs/compta/paiement/card.php?id=','(paiement)','payment'),(60,34,19,'/dolibarr_5.0/htdocs/comm/card.php?socid=','Magic Food Store','company'),(61,35,2,'/dolibarr_5.0/htdocs/dolimed_5.0/cabinetmed/consultations.php?action=edit&socid=26&id=','Consultation','consultation'),(62,35,26,'','aaa','company'),(63,36,2,'/dolibarr_5.0/htdocs/expensereport/payment/card.php?rowid=','(paiement)','payment_expensereport'),(64,36,12,'/dolibarr_5.0/htdocs/user/card.php?id=','','user'),(65,37,36,'/dolibarr_5.0/htdocs/compta/paiement/card.php?id=','(paiement)','payment'),(66,37,1,'/dolibarr_5.0/htdocs/compta/prelevement/card.php?id=','T170201','withdraw'),(67,38,1,'/dolibarr_6.0/htdocs/don/payment/card.php?rowid=','(paiement)','payment_donation'),(68,39,38,'/dolibarr_7.0/htdocs/compta/paiement/card.php?id=','(paiement)','payment'),(69,39,1,'/dolibarr_7.0/htdocs/comm/card.php?socid=','Indian SAS','company'); +/*!40000 ALTER TABLE `llx_bank_url` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_blockedlog` +-- + +DROP TABLE IF EXISTS `llx_blockedlog`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_blockedlog` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `action` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `amounts` double(24,8) DEFAULT NULL, + `signature` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + `signature_line` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + `element` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_object` int(11) DEFAULT NULL, + `ref_object` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_object` datetime DEFAULT NULL, + `object_data` text COLLATE utf8_unicode_ci, + `fk_user` int(11) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `certified` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `user_fullname` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `signature` (`signature`), + KEY `fk_object_element` (`fk_object`,`element`), + KEY `entity` (`entity`), + KEY `fk_user` (`fk_user`), + KEY `entity_action` (`entity`,`action`), + KEY `entity_action_certified` (`entity`,`action`,`certified`) +) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_blockedlog` +-- + +LOCK TABLES `llx_blockedlog` WRITE; +/*!40000 ALTER TABLE `llx_blockedlog` DISABLE KEYS */; +INSERT INTO `llx_blockedlog` VALUES (20,'2018-03-16 09:57:22','MODULE_RESET',0.00000000,'d6dd5fe6c2eec2de6368f3b6da30188566f0a1a7be4b1589ccd8352d2c827ad5','fbc11d0396d9b76ea48f892bd5f0fe652e5bdf7d44873acb4bf1e1b70352bd30','module',1,'systemevent','2018-03-16 13:57:22','O:8:\"stdClass\":6:{s:9:\"mycompany\";O:8:\"stdClass\":29:{s:10:\"name_alias\";N;s:7:\"address\";s:24:\"21 Jump street..ll..ee \"\";s:3:\"zip\";s:5:\"75500\";s:4:\"town\";s:6:\"MyTown\";s:10:\"state_code\";N;s:5:\"phone\";s:8:\"09123123\";s:3:\"fax\";s:8:\"09123124\";s:5:\"email\";s:24:\"myemail@mybigcompany.com\";s:7:\"barcode\";N;s:7:\"idprof1\";s:6:\"123456\";s:7:\"idprof2\";s:1:\"1\";s:7:\"idprof3\";s:1:\"1\";s:7:\"idprof4\";s:1:\"1\";s:7:\"idprof5\";s:1:\"1\";s:7:\"idprof6\";s:0:\"\";s:9:\"tva_intra\";s:9:\"FR1234567\";s:15:\"localtax1_assuj\";i:1;s:15:\"localtax1_value\";N;s:15:\"localtax2_assuj\";i:1;s:15:\"localtax2_value\";N;s:8:\"managers\";s:10:\"Zack Zeceo\";s:7:\"capital\";s:5:\"10000\";s:11:\"typent_code\";N;s:20:\"forme_juridique_code\";s:0:\"\";s:11:\"code_client\";N;s:16:\"code_fournisseur\";N;s:7:\"ref_ext\";N;s:12:\"country_code\";s:2:\"IN\";s:4:\"name\";s:12:\"MyBigCompany\";}s:2:\"id\";i:1;s:7:\"element\";s:6:\"module\";s:3:\"ref\";s:11:\"systemevent\";s:6:\"entity\";i:1;s:4:\"date\";i:1521194242;}',12,1,0,'2018-03-16 13:57:22','Alice Adminson'),(21,'2018-03-16 09:57:24','MODULE_SET',0.00000000,'d6b66df837d8d33bd8b9744e2afa46ab8c65ae8ca462246c406de19f8254e146','0a3aae975056417705f4eb7b4a4926384075cc2b6c899603715643c8f1d6ff9b','module',1,'systemevent','2018-03-16 13:57:24','O:8:\"stdClass\":6:{s:9:\"mycompany\";O:8:\"stdClass\":29:{s:10:\"name_alias\";N;s:7:\"address\";s:24:\"21 Jump street..ll..ee \"\";s:3:\"zip\";s:5:\"75500\";s:4:\"town\";s:6:\"MyTown\";s:10:\"state_code\";N;s:5:\"phone\";s:8:\"09123123\";s:3:\"fax\";s:8:\"09123124\";s:5:\"email\";s:24:\"myemail@mybigcompany.com\";s:7:\"barcode\";N;s:7:\"idprof1\";s:6:\"123456\";s:7:\"idprof2\";s:1:\"1\";s:7:\"idprof3\";s:1:\"1\";s:7:\"idprof4\";s:1:\"1\";s:7:\"idprof5\";s:1:\"1\";s:7:\"idprof6\";s:0:\"\";s:9:\"tva_intra\";s:9:\"FR1234567\";s:15:\"localtax1_assuj\";i:1;s:15:\"localtax1_value\";N;s:15:\"localtax2_assuj\";i:1;s:15:\"localtax2_value\";N;s:8:\"managers\";s:10:\"Zack Zeceo\";s:7:\"capital\";s:5:\"10000\";s:11:\"typent_code\";N;s:20:\"forme_juridique_code\";s:0:\"\";s:11:\"code_client\";N;s:16:\"code_fournisseur\";N;s:7:\"ref_ext\";N;s:12:\"country_code\";s:2:\"IN\";s:4:\"name\";s:12:\"MyBigCompany\";}s:2:\"id\";i:1;s:7:\"element\";s:6:\"module\";s:3:\"ref\";s:11:\"systemevent\";s:6:\"entity\";i:1;s:4:\"date\";i:1521194244;}',12,1,0,'2018-03-16 13:57:24','Alice Adminson'),(22,'2018-03-16 09:59:31','PAYMENT_CUSTOMER_CREATE',10.00000000,'9beb9e3ba04582d441b49f176f995900c16572c789bcf48a1c9f285a74be76c8','86813eb2563252c0e270baaf1fffade82475fe51af5f88d14613005fd0e07783','payment',38,'PAY1803-0004','2018-03-16 12:00:00','O:8:\"stdClass\":8:{s:9:\"mycompany\";O:8:\"stdClass\":29:{s:10:\"name_alias\";N;s:7:\"address\";s:24:\"21 Jump street..ll..ee \"\";s:3:\"zip\";s:5:\"75500\";s:4:\"town\";s:6:\"MyTown\";s:10:\"state_code\";N;s:5:\"phone\";s:8:\"09123123\";s:3:\"fax\";s:8:\"09123124\";s:5:\"email\";s:24:\"myemail@mybigcompany.com\";s:7:\"barcode\";N;s:7:\"idprof1\";s:6:\"123456\";s:7:\"idprof2\";s:1:\"1\";s:7:\"idprof3\";s:1:\"1\";s:7:\"idprof4\";s:1:\"1\";s:7:\"idprof5\";s:1:\"1\";s:7:\"idprof6\";s:0:\"\";s:9:\"tva_intra\";s:9:\"FR1234567\";s:15:\"localtax1_assuj\";i:1;s:15:\"localtax1_value\";N;s:15:\"localtax2_assuj\";i:1;s:15:\"localtax2_value\";N;s:8:\"managers\";s:10:\"Zack Zeceo\";s:7:\"capital\";s:5:\"10000\";s:11:\"typent_code\";N;s:20:\"forme_juridique_code\";s:0:\"\";s:11:\"code_client\";N;s:16:\"code_fournisseur\";N;s:7:\"ref_ext\";N;s:12:\"country_code\";s:2:\"IN\";s:4:\"name\";s:12:\"MyBigCompany\";}s:3:\"ref\";s:12:\"PAY1803-0004\";s:4:\"date\";i:1521187200;s:9:\"type_code\";s:3:\"CHQ\";s:11:\"payment_num\";N;s:4:\"note\";s:0:\"\";s:12:\"payment_part\";a:1:{i:1;O:8:\"stdClass\":3:{s:6:\"amount\";s:2:\"10\";s:10:\"thirdparty\";O:8:\"stdClass\":29:{s:10:\"name_alias\";s:0:\"\";s:7:\"address\";s:13:\"1 alalah road\";s:3:\"zip\";N;s:4:\"town\";s:5:\"Delhi\";s:10:\"state_code\";N;s:5:\"phone\";N;s:3:\"fax\";N;s:5:\"email\";N;s:7:\"barcode\";N;s:7:\"idprof1\";s:0:\"\";s:7:\"idprof2\";s:0:\"\";s:7:\"idprof3\";s:0:\"\";s:7:\"idprof4\";s:0:\"\";s:7:\"idprof5\";s:0:\"\";s:7:\"idprof6\";s:0:\"\";s:9:\"tva_intra\";s:0:\"\";s:15:\"localtax1_assuj\";N;s:15:\"localtax1_value\";s:5:\"0.000\";s:15:\"localtax2_assuj\";N;s:15:\"localtax2_value\";s:5:\"0.000\";s:8:\"managers\";N;s:7:\"capital\";s:13:\"5000.00000000\";s:11:\"typent_code\";s:8:\"TE_SMALL\";s:20:\"forme_juridique_code\";N;s:11:\"code_client\";s:11:\"CU1212-0007\";s:16:\"code_fournisseur\";s:11:\"SU1212-0005\";s:7:\"ref_ext\";N;s:12:\"country_code\";s:2:\"IN\";s:4:\"name\";s:10:\"Indian SAS\";}s:7:\"invoice\";O:8:\"stdClass\":9:{s:4:\"date\";i:1453147200;s:10:\"ref_client\";N;s:4:\"type\";s:1:\"0\";s:8:\"total_ht\";s:11:\"20.00000000\";s:9:\"total_tva\";s:10:\"1.80000000\";s:9:\"total_ttc\";s:11:\"23.60000000\";s:12:\"revenuestamp\";s:10:\"0.00000000\";s:3:\"ref\";s:11:\"FA1601-0024\";s:11:\"note_public\";N;}}}s:6:\"amount\";i:10;}',12,1,0,'2018-03-16 13:59:31','Alice Adminson'); +/*!40000 ALTER TABLE `llx_blockedlog` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_blockedlog_authority` +-- + +DROP TABLE IF EXISTS `llx_blockedlog_authority`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_blockedlog_authority` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `blockchain` longtext COLLATE utf8_unicode_ci NOT NULL, + `signature` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `signature` (`signature`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_blockedlog_authority` +-- + +LOCK TABLES `llx_blockedlog_authority` WRITE; +/*!40000 ALTER TABLE `llx_blockedlog_authority` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_blockedlog_authority` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bookmark` +-- + +DROP TABLE IF EXISTS `llx_bookmark`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bookmark` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `dateb` datetime DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `target` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `title` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `favicon` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) DEFAULT '0', + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_bookmark_url` (`fk_user`,`url`), + UNIQUE KEY `uk_bookmark_title` (`fk_user`,`title`) +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bookmark` +-- + +LOCK TABLES `llx_bookmark` WRITE; +/*!40000 ALTER TABLE `llx_bookmark` DISABLE KEYS */; +INSERT INTO `llx_bookmark` VALUES (1,0,'2010-07-09 01:29:03','http://wiki.dolibarr.org','1','Online documentation','none',1,1),(2,0,'2010-07-09 01:30:15','http://www.dolibarr.org','1','Official portal','none',2,1),(3,0,'2010-07-09 01:30:53','http://www.dolistore.com','1','DoliStore','none',10,1),(4,0,'2010-07-09 01:31:35','http://asso.dolibarr.org/index.php/Main_Page','1','The foundation','none',0,1),(5,0,'2014-03-02 16:40:41','http://www.facebook.com/dolibarr','1','Facebook page','none',50,1),(6,0,'2014-03-02 16:41:12','http://www.twitter.com/dolibarr','1','Twitter channel','none',60,1),(7,0,'2014-03-02 16:42:08','http://plus.google.com/+DolibarrOrg','1','Google+ page','none',55,1); +/*!40000 ALTER TABLE `llx_bookmark` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_bordereau_cheque` +-- + +DROP TABLE IF EXISTS `llx_bordereau_cheque`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_bordereau_cheque` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime NOT NULL, + `date_bordereau` date DEFAULT NULL, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `amount` double(24,8) NOT NULL, + `nbcheque` smallint(6) NOT NULL, + `fk_bank_account` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `statut` smallint(6) NOT NULL DEFAULT '0', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_bordereau_cheque` (`ref`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_bordereau_cheque` +-- + +LOCK TABLES `llx_bordereau_cheque` WRITE; +/*!40000 ALTER TABLE `llx_bordereau_cheque` DISABLE KEYS */; +INSERT INTO `llx_bordereau_cheque` VALUES (2,'2017-02-06 08:12:05','2017-02-06','CHK1702-0001',1,150.00000000,1,1,12,NULL,1,'','2017-02-06 04:12:13'); +/*!40000 ALTER TABLE `llx_bordereau_cheque` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_boxes` +-- + +DROP TABLE IF EXISTS `llx_boxes`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_boxes` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `box_id` int(11) NOT NULL, + `position` smallint(6) NOT NULL, + `box_order` varchar(3) COLLATE utf8_unicode_ci NOT NULL, + `fk_user` int(11) NOT NULL DEFAULT '0', + `maxline` int(11) DEFAULT NULL, + `params` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_boxes` (`entity`,`box_id`,`position`,`fk_user`), + KEY `idx_boxes_boxid` (`box_id`), + KEY `idx_boxes_fk_user` (`fk_user`), + CONSTRAINT `fk_boxes_box_id` FOREIGN KEY (`box_id`) REFERENCES `llx_boxes_def` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=1183 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_boxes` +-- + +LOCK TABLES `llx_boxes` WRITE; +/*!40000 ALTER TABLE `llx_boxes` DISABLE KEYS */; +INSERT INTO `llx_boxes` VALUES (253,2,323,0,'0',0,NULL,NULL),(304,2,324,0,'0',0,NULL,NULL),(305,2,325,0,'0',0,NULL,NULL),(306,2,326,0,'0',0,NULL,NULL),(307,2,327,0,'0',0,NULL,NULL),(308,2,328,0,'0',0,NULL,NULL),(309,2,329,0,'0',0,NULL,NULL),(310,2,330,0,'0',0,NULL,NULL),(311,2,331,0,'0',0,NULL,NULL),(312,2,332,0,'0',0,NULL,NULL),(313,2,333,0,'0',0,NULL,NULL),(314,1,347,0,'A07',0,NULL,NULL),(315,1,348,0,'A27',0,NULL,NULL),(316,1,349,0,'A15',0,NULL,NULL),(317,1,350,0,'B28',0,NULL,NULL),(344,1,374,0,'B16',0,NULL,NULL),(347,1,377,0,'A29',0,NULL,NULL),(348,1,378,0,'A17',0,NULL,NULL),(358,1,388,0,'B18',0,NULL,NULL),(359,1,389,0,'B30',0,NULL,NULL),(360,1,390,0,'A19',0,NULL,NULL),(362,1,392,0,'B20',0,NULL,NULL),(363,1,393,0,'A31',0,NULL,NULL),(366,1,396,0,'B14',0,NULL,NULL),(387,1,403,0,'B26',0,NULL,NULL),(392,1,409,0,'A13',0,NULL,NULL),(393,1,410,0,'A21',0,NULL,NULL),(394,1,411,0,'B08',0,NULL,NULL),(395,1,412,0,'B22',0,NULL,NULL),(396,1,413,0,'A09',0,NULL,NULL),(397,1,414,0,'A23',0,NULL,NULL),(398,1,415,0,'B10',0,NULL,NULL),(399,1,416,0,'B24',0,NULL,NULL),(400,1,417,0,'A11',0,NULL,NULL),(401,1,418,0,'A25',0,NULL,NULL),(501,1,419,0,'B12',0,NULL,NULL),(1019,1,392,0,'A01',2,NULL,NULL),(1021,1,412,0,'A03',2,NULL,NULL),(1022,1,347,0,'A04',2,NULL,NULL),(1023,1,393,0,'A05',2,NULL,NULL),(1025,1,389,0,'A07',2,NULL,NULL),(1026,1,416,0,'A08',2,NULL,NULL),(1027,1,396,0,'B01',2,NULL,NULL),(1028,1,377,0,'B02',2,NULL,NULL),(1031,1,419,0,'B05',2,NULL,NULL),(1036,1,424,0,'B06',0,NULL,NULL),(1037,1,425,0,'A05',0,NULL,NULL),(1038,1,426,0,'B04',0,NULL,NULL),(1039,1,427,0,'A03',0,NULL,NULL),(1150,1,430,0,'B02',0,NULL,NULL),(1151,1,431,0,'A01',0,NULL,NULL),(1152,1,429,0,'A01',1,NULL,NULL),(1153,1,429,0,'B01',2,NULL,NULL),(1154,1,429,0,'A01',11,NULL,NULL),(1156,1,429,0,'B01',0,NULL,NULL),(1174,1,412,0,'A01',12,NULL,NULL),(1175,1,392,0,'A02',12,NULL,NULL),(1176,1,377,0,'A03',12,NULL,NULL),(1177,1,347,0,'A04',12,NULL,NULL),(1178,1,429,0,'B01',12,NULL,NULL),(1179,1,427,0,'B02',12,NULL,NULL),(1180,1,414,0,'B03',12,NULL,NULL),(1181,1,413,0,'B04',12,NULL,NULL),(1182,1,426,0,'B05',12,NULL,NULL); +/*!40000 ALTER TABLE `llx_boxes` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_boxes_def` +-- + +DROP TABLE IF EXISTS `llx_boxes_def`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_boxes_def` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `file` varchar(200) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `note` varchar(130) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_boxes_def` (`file`,`entity`,`note`) +) ENGINE=InnoDB AUTO_INCREMENT=432 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_boxes_def` +-- + +LOCK TABLES `llx_boxes_def` WRITE; +/*!40000 ALTER TABLE `llx_boxes_def` DISABLE KEYS */; +INSERT INTO `llx_boxes_def` VALUES (188,'box_services_vendus.php',1,'2011-08-05 20:40:27',NULL),(323,'box_actions.php',2,'2013-03-13 15:29:19',NULL),(324,'box_clients.php',2,'2013-03-13 20:21:35',NULL),(325,'box_prospect.php',2,'2013-03-13 20:21:35',NULL),(326,'box_contacts.php',2,'2013-03-13 20:21:35',NULL),(327,'box_activity.php',2,'2013-03-13 20:21:35','(WarningUsingThisBoxSlowDown)'),(328,'box_propales.php',2,'2013-03-13 20:32:38',NULL),(329,'box_comptes.php',2,'2013-03-13 20:33:09',NULL),(330,'box_factures_imp.php',2,'2013-03-13 20:33:09',NULL),(331,'box_factures.php',2,'2013-03-13 20:33:09',NULL),(332,'box_produits.php',2,'2013-03-13 20:33:09',NULL),(333,'box_produits_alerte_stock.php',2,'2013-03-13 20:33:09',NULL),(346,'box_googlemaps@google',1,'2013-11-07 00:01:39',NULL),(347,'box_clients.php',1,'2015-11-15 22:05:57',NULL),(348,'box_prospect.php',1,'2015-11-15 22:05:57',NULL),(349,'box_contacts.php',1,'2015-11-15 22:05:57',NULL),(350,'box_activity.php',1,'2015-11-15 22:05:57','(WarningUsingThisBoxSlowDown)'),(374,'box_services_contracts.php',1,'2015-11-15 22:38:37',NULL),(377,'box_project.php',1,'2015-11-15 22:38:44',NULL),(378,'box_task.php',1,'2015-11-15 22:38:44',NULL),(388,'box_contracts.php',1,'2015-11-15 22:39:52',NULL),(389,'box_services_expired.php',1,'2015-11-15 22:39:52',NULL),(390,'box_ficheinter.php',1,'2015-11-15 22:39:56',NULL),(392,'box_graph_propales_permonth.php',1,'2015-11-15 22:41:47',NULL),(393,'box_propales.php',1,'2015-11-15 22:41:47',NULL),(396,'box_graph_product_distribution.php',1,'2015-11-15 22:41:47',NULL),(403,'box_goodcustomers.php',1,'2016-07-30 11:13:20','(WarningUsingThisBoxSlowDown)'),(404,'box_external_rss.php',1,'2016-07-30 11:15:25','1 (Dolibarr.org News)'),(409,'box_produits.php',1,'2016-07-30 13:38:11',NULL),(410,'box_produits_alerte_stock.php',1,'2016-07-30 13:38:11',NULL),(411,'box_commandes.php',1,'2016-07-30 13:38:11',NULL),(412,'box_graph_orders_permonth.php',1,'2016-07-30 13:38:11',NULL),(413,'box_graph_invoices_supplier_permonth.php',1,'2016-07-30 13:38:11',NULL),(414,'box_graph_orders_supplier_permonth.php',1,'2016-07-30 13:38:11',NULL),(415,'box_fournisseurs.php',1,'2016-07-30 13:38:11',NULL),(416,'box_factures_fourn_imp.php',1,'2016-07-30 13:38:11',NULL),(417,'box_factures_fourn.php',1,'2016-07-30 13:38:11',NULL),(418,'box_supplier_orders.php',1,'2016-07-30 13:38:11',NULL),(419,'box_actions.php',1,'2016-07-30 15:42:32',NULL),(424,'box_factures_imp.php',1,'2017-02-07 18:56:12',NULL),(425,'box_factures.php',1,'2017-02-07 18:56:12',NULL),(426,'box_graph_invoices_permonth.php',1,'2017-02-07 18:56:12',NULL),(427,'box_comptes.php',1,'2017-02-07 18:56:12',NULL),(429,'box_lastlogin.php',1,'2017-08-27 13:29:14',NULL),(430,'box_bookmarks.php',1,'2018-01-19 11:27:34',NULL),(431,'box_members.php',1,'2018-01-19 11:27:56',NULL); +/*!40000 ALTER TABLE `llx_boxes_def` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_budget` +-- + +DROP TABLE IF EXISTS `llx_budget`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_budget` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `status` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `date_start` date DEFAULT NULL, + `date_end` date DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_budget` +-- + +LOCK TABLES `llx_budget` WRITE; +/*!40000 ALTER TABLE `llx_budget` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_budget` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_budget_lines` +-- + +DROP TABLE IF EXISTS `llx_budget_lines`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_budget_lines` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_budget` int(11) NOT NULL, + `fk_project_ids` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `amount` double(24,8) NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_budget_lines` (`fk_budget`,`fk_project_ids`), + CONSTRAINT `fk_budget_lines_budget` FOREIGN KEY (`fk_budget`) REFERENCES `llx_budget` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_budget_lines` +-- + +LOCK TABLES `llx_budget_lines` WRITE; +/*!40000 ALTER TABLE `llx_budget_lines` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_budget_lines` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_accounting_category` +-- + +DROP TABLE IF EXISTS `llx_c_accounting_category`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_accounting_category` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `range_account` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `sens` tinyint(4) NOT NULL DEFAULT '0', + `category_type` tinyint(4) NOT NULL DEFAULT '0', + `formula` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `position` int(11) DEFAULT '0', + `fk_country` int(11) DEFAULT NULL, + `active` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_accounting_category` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_accounting_category` +-- + +LOCK TABLES `llx_c_accounting_category` WRITE; +/*!40000 ALTER TABLE `llx_c_accounting_category` DISABLE KEYS */; +INSERT INTO `llx_c_accounting_category` VALUES (1,1,'VENTES','Ventes de marchandises','7xxxxx',0,0,'',10,1,1),(2,1,'DEPENSES','Coût d achats marchandises vendues','6xxxxx',0,0,'',20,1,1),(3,1,'PROFIT','Marge commerciale','Balance',0,1,'VENTES+DEPENSES',30,1,1),(4,1,'123','ddd','603xxx | 607xxx | 609xxx',0,0,'0',4,14,1); +/*!40000 ALTER TABLE `llx_c_accounting_category` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_action_trigger` +-- + +DROP TABLE IF EXISTS `llx_c_action_trigger`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_action_trigger` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `elementtype` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `rang` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_action_trigger_code` (`code`), + KEY `idx_action_trigger_rang` (`rang`) +) ENGINE=InnoDB AUTO_INCREMENT=237 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_action_trigger` +-- + +LOCK TABLES `llx_c_action_trigger` WRITE; +/*!40000 ALTER TABLE `llx_c_action_trigger` DISABLE KEYS */; +INSERT INTO `llx_c_action_trigger` VALUES (131,'COMPANY_SENTBYMAIL','Mails sent from third party card','Executed when you send email from third party card','societe',1),(132,'COMPANY_CREATE','Third party created','Executed when a third party is created','societe',1),(133,'PROPAL_VALIDATE','Customer proposal validated','Executed when a commercial proposal is validated','propal',2),(134,'PROPAL_SENTBYMAIL','Commercial proposal sent by mail','Executed when a commercial proposal is sent by mail','propal',3),(135,'ORDER_VALIDATE','Customer order validate','Executed when a customer order is validated','commande',4),(136,'ORDER_CLOSE','Customer order classify delivered','Executed when a customer order is set delivered','commande',5),(137,'ORDER_CLASSIFY_BILLED','Customer order classify billed','Executed when a customer order is set to billed','commande',5),(138,'ORDER_CANCEL','Customer order canceled','Executed when a customer order is canceled','commande',5),(139,'ORDER_SENTBYMAIL','Customer order sent by mail','Executed when a customer order is sent by mail ','commande',5),(140,'BILL_VALIDATE','Customer invoice validated','Executed when a customer invoice is approved','facture',6),(141,'BILL_PAYED','Customer invoice payed','Executed when a customer invoice is payed','facture',7),(142,'BILL_CANCEL','Customer invoice canceled','Executed when a customer invoice is conceled','facture',8),(143,'BILL_SENTBYMAIL','Customer invoice sent by mail','Executed when a customer invoice is sent by mail','facture',9),(144,'BILL_UNVALIDATE','Customer invoice unvalidated','Executed when a customer invoice status set back to draft','facture',10),(145,'ORDER_SUPPLIER_VALIDATE','Supplier order validated','Executed when a supplier order is validated','order_supplier',11),(146,'ORDER_SUPPLIER_APPROVE','Supplier order request approved','Executed when a supplier order is approved','order_supplier',12),(147,'ORDER_SUPPLIER_REFUSE','Supplier order request refused','Executed when a supplier order is refused','order_supplier',13),(148,'ORDER_SUPPLIER_SENTBYMAIL','Supplier order sent by mail','Executed when a supplier order is sent by mail','order_supplier',14),(149,'BILL_SUPPLIER_VALIDATE','Supplier invoice validated','Executed when a supplier invoice is validated','invoice_supplier',15),(150,'BILL_SUPPLIER_PAYED','Supplier invoice payed','Executed when a supplier invoice is payed','invoice_supplier',16),(151,'BILL_SUPPLIER_SENTBYMAIL','Supplier invoice sent by mail','Executed when a supplier invoice is sent by mail','invoice_supplier',17),(152,'BILL_SUPPLIER_CANCELED','Supplier invoice cancelled','Executed when a supplier invoice is cancelled','invoice_supplier',17),(153,'CONTRACT_VALIDATE','Contract validated','Executed when a contract is validated','contrat',18),(154,'SHIPPING_VALIDATE','Shipping validated','Executed when a shipping is validated','shipping',20),(155,'SHIPPING_SENTBYMAIL','Shipping sent by mail','Executed when a shipping is sent by mail','shipping',21),(156,'MEMBER_VALIDATE','Member validated','Executed when a member is validated','member',22),(158,'MEMBER_RESILIATE','Member resiliated','Executed when a member is resiliated','member',24),(159,'MEMBER_MODIFY','Member modified','Executed when a member is modified','member',24),(160,'MEMBER_DELETE','Member deleted','Executed when a member is deleted','member',25),(161,'FICHINTER_VALIDATE','Intervention validated','Executed when a intervention is validated','ficheinter',19),(162,'FICHINTER_CLASSIFY_BILLED','Intervention set billed','Executed when a intervention is set to billed (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19),(163,'FICHINTER_CLASSIFY_UNBILLED','Intervention set unbilled','Executed when a intervention is set to unbilled (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19),(164,'FICHINTER_REOPEN','Intervention opened','Executed when a intervention is re-opened','ficheinter',19),(165,'FICHINTER_SENTBYMAIL','Intervention sent by mail','Executed when a intervention is sent by mail','ficheinter',19),(166,'PROJECT_CREATE','Project creation','Executed when a project is created','project',140),(167,'PROPAL_CLOSE_SIGNED','Customer proposal closed signed','Executed when a customer proposal is closed signed','propal',2),(168,'PROPAL_CLOSE_REFUSED','Customer proposal closed refused','Executed when a customer proposal is closed refused','propal',2),(169,'PROPAL_CLASSIFY_BILLED','Customer proposal set billed','Executed when a customer proposal is set to billed','propal',2),(170,'TASK_CREATE','Task created','Executed when a project task is created','project',35),(171,'TASK_MODIFY','Task modified','Executed when a project task is modified','project',36),(172,'TASK_DELETE','Task deleted','Executed when a project task is deleted','project',37),(173,'BILL_SUPPLIER_UNVALIDATE','Supplier invoice unvalidated','Executed when a supplier invoice status is set back to draft','invoice_supplier',15),(174,'PROJECT_MODIFY','Project modified','Executed when a project is modified','project',141),(175,'PROJECT_DELETE','Project deleted','Executed when a project is deleted','project',142),(176,'ORDER_SUPPLIER_CREATE','Supplier order validated','Executed when a supplier order is validated','order_supplier',11),(177,'ORDER_SUPPLIER_SUBMIT','Supplier order request submited','Executed when a supplier order is approved','order_supplier',12),(178,'ORDER_SUPPLIER_RECEIVE','Supplier order request received','Executed when a supplier order is received','order_supplier',12),(179,'ORDER_SUPPLIER_CLASSIFY_BILLED','Supplier order set billed','Executed when a supplier order is set as billed','order_supplier',14),(180,'PRODUCT_CREATE','Product or service created','Executed when a product or sevice is created','product',30),(181,'PRODUCT_MODIFY','Product or service modified','Executed when a product or sevice is modified','product',30),(182,'PRODUCT_DELETE','Product or service deleted','Executed when a product or sevice is deleted','product',30),(183,'EXPENSE_REPORT_CREATE','Expense report created','Executed when an expense report is created','expense_report',201),(185,'EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expense_report',202),(186,'EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expense_report',203),(187,'EXPENSE_REPORT_PAYED','Expense report billed','Executed when an expense report is set as billed','expense_report',204),(192,'HOLIDAY_CREATE','Leave request created','Executed when a leave request is created','holiday',221),(193,'HOLIDAY_VALIDATE','Leave request validated','Executed when a leave request is validated','holiday',222),(194,'HOLIDAY_APPROVE','Leave request approved','Executed when a leave request is approved','holiday',223),(210,'MEMBER_SENTBYMAIL','Mails sent from member card','Executed when you send email from member card','member',23),(211,'CONTRACT_SENTBYMAIL','Contract sent by mail','Executed when a contract is sent by mail','contrat',18),(212,'PROPOSAL_SUPPLIER_VALIDATE','Price request validated','Executed when a commercial proposal is validated','proposal_supplier',10),(213,'PROPOSAL_SUPPLIER_SENTBYMAIL','Price request sent by mail','Executed when a commercial proposal is sent by mail','proposal_supplier',10),(214,'PROPOSAL_SUPPLIER_CLOSE_SIGNED','Price request closed signed','Executed when a customer proposal is closed signed','proposal_supplier',10),(215,'PROPOSAL_SUPPLIER_CLOSE_REFUSED','Price request closed refused','Executed when a customer proposal is closed refused','proposal_supplier',10),(216,'MEMBER_SUBSCRIPTION_CREATE','Member subscribtion recorded','Executed when a member subscribtion is deleted','member',24),(217,'MEMBER_SUBSCRIPTION_MODIFY','Member subscribtion modified','Executed when a member subscribtion is modified','member',24),(218,'MEMBER_SUBSCRIPTION_DELETE','Member subscribtion deleted','Executed when a member subscribtion is deleted','member',24),(225,'COMPANY_DELETE','Third party deleted','Executed when you delete third party','societe',1),(226,'PROPAL_DELETE','Customer proposal deleted','Executed when a customer proposal is deleted','propal',2),(227,'ORDER_DELETE','Customer order deleted','Executed when a customer order is deleted','commande',5),(228,'BILL_DELETE','Customer invoice deleted','Executed when a customer invoice is deleted','facture',9),(229,'PROPOSAL_SUPPLIER_DELETE','Price request deleted','Executed when a customer proposal delete','proposal_supplier',10),(230,'ORDER_SUPPLIER_DELETE','Supplier order deleted','Executed when a supplier order is deleted','order_supplier',14),(231,'BILL_SUPPLIER_DELETE','Supplier invoice deleted','Executed when a supplier invoice is deleted','invoice_supplier',17),(232,'CONTRACT_DELETE','Contract deleted','Executed when a contract is deleted','contrat',18),(233,'FICHINTER_DELETE','Intervention is deleted','Executed when a intervention is deleted','ficheinter',35),(234,'EXPENSE_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',204); +/*!40000 ALTER TABLE `llx_c_action_trigger` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_actioncomm` +-- + +DROP TABLE IF EXISTS `llx_c_actioncomm`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_actioncomm` ( + `id` int(11) NOT NULL, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `type` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'system', + `libelle` varchar(48) COLLATE utf8_unicode_ci NOT NULL, + `module` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `todo` tinyint(4) DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + `color` varchar(9) COLLATE utf8_unicode_ci DEFAULT NULL, + `picto` varchar(48) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_actioncomm` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_actioncomm` +-- + +LOCK TABLES `llx_c_actioncomm` WRITE; +/*!40000 ALTER TABLE `llx_c_actioncomm` DISABLE KEYS */; +INSERT INTO `llx_c_actioncomm` VALUES (1,'AC_TEL','system','Phone call',NULL,1,NULL,2,NULL,NULL),(2,'AC_FAX','system','Send Fax',NULL,1,NULL,3,NULL,NULL),(3,'AC_PROP','systemauto','Send commercial proposal by email','propal',1,NULL,10,NULL,NULL),(4,'AC_EMAIL','system','Send Email',NULL,1,NULL,4,NULL,NULL),(5,'AC_RDV','system','Rendez-vous',NULL,1,NULL,1,NULL,NULL),(8,'AC_COM','systemauto','Send customer order by email','order',1,NULL,8,NULL,NULL),(9,'AC_FAC','systemauto','Send customer invoice by email','invoice',1,NULL,6,NULL,NULL),(10,'AC_SHIP','systemauto','Send shipping by email','shipping',1,NULL,11,NULL,NULL),(11,'AC_INT','system','Intervention on site',NULL,1,NULL,4,NULL,NULL),(30,'AC_SUP_ORD','systemauto','Send supplier order by email','order_supplier',1,NULL,9,NULL,NULL),(31,'AC_SUP_INV','systemauto','Send supplier invoice by email','invoice_supplier',1,NULL,7,NULL,NULL),(40,'AC_OTH_AUTO','systemauto','Other (automatically inserted events)',NULL,1,NULL,20,NULL,NULL),(50,'AC_OTH','system','Other (manually inserted events)',NULL,1,NULL,5,NULL,NULL),(100700,'AC_CABMED','module','Send document by email','cabinetmed',0,NULL,100,NULL,NULL); +/*!40000 ALTER TABLE `llx_c_actioncomm` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_availability` +-- + +DROP TABLE IF EXISTS `llx_c_availability`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_availability` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(60) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_availability` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_availability` +-- + +LOCK TABLES `llx_c_availability` WRITE; +/*!40000 ALTER TABLE `llx_c_availability` DISABLE KEYS */; +INSERT INTO `llx_c_availability` VALUES (1,'AV_NOW','Immediate',1),(2,'AV_1W','1 week',1),(3,'AV_2W','2 weeks',1),(4,'AV_3W','3 weeks',1); +/*!40000 ALTER TABLE `llx_c_availability` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_barcode_type` +-- + +DROP TABLE IF EXISTS `llx_c_barcode_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_barcode_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `libelle` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `coder` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `example` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_barcode_type` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=47 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_barcode_type` +-- + +LOCK TABLES `llx_c_barcode_type` WRITE; +/*!40000 ALTER TABLE `llx_c_barcode_type` DISABLE KEYS */; +INSERT INTO `llx_c_barcode_type` VALUES (1,'EAN8',1,'EAN8','0','1234567'),(2,'EAN13',1,'EAN13','phpbarcode','123456789012'),(3,'UPC',1,'UPC','0','123456789012'),(4,'ISBN',1,'ISBN','0','123456789'),(5,'C39',1,'Code 39','0','1234567890'),(6,'C128',1,'Code 128','tcpdfbarcode','ABCD1234567890'),(13,'DATAMATRIX',1,'Datamatrix','0','1234567xyz'),(14,'QRCODE',1,'Qr Code','0','www.dolibarr.org'); +/*!40000 ALTER TABLE `llx_c_barcode_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_chargesociales` +-- + +DROP TABLE IF EXISTS `llx_c_chargesociales`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_chargesociales` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `libelle` varchar(80) COLLATE utf8_unicode_ci DEFAULT NULL, + `deductible` smallint(6) NOT NULL DEFAULT '0', + `active` tinyint(4) NOT NULL DEFAULT '1', + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `fk_pays` int(11) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=4110 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_chargesociales` +-- + +LOCK TABLES `llx_c_chargesociales` WRITE; +/*!40000 ALTER TABLE `llx_c_chargesociales` DISABLE KEYS */; +INSERT INTO `llx_c_chargesociales` VALUES (1,'Allocations familiales',1,1,'TAXFAM',1,NULL,NULL),(2,'CSG Deductible',1,1,'TAXCSGD',1,NULL,NULL),(3,'CSG/CRDS NON Deductible',0,1,'TAXCSGND',1,NULL,NULL),(10,'Taxe apprentissage',0,1,'TAXAPP',1,NULL,NULL),(11,'Taxe professionnelle',0,1,'TAXPRO',1,NULL,NULL),(12,'Cotisation foncière des entreprises',0,1,'TAXCFE',1,NULL,NULL),(13,'Cotisation sur la valeur ajoutée des entreprises',0,1,'TAXCVAE',1,NULL,NULL),(20,'Impots locaux/fonciers',0,1,'TAXFON',1,NULL,NULL),(25,'Impots revenus',0,1,'TAXREV',1,NULL,NULL),(30,'Assurance Sante',0,1,'TAXSECU',1,NULL,NULL),(40,'Mutuelle',0,1,'TAXMUT',1,NULL,NULL),(50,'Assurance vieillesse',0,1,'TAXRET',1,NULL,NULL),(60,'Assurance Chomage',0,1,'TAXCHOM',1,NULL,NULL),(201,'ONSS',1,1,'TAXBEONSS',2,NULL,NULL),(210,'Precompte professionnel',1,1,'TAXBEPREPRO',2,NULL,NULL),(220,'Prime d\'existence',1,1,'TAXBEPRIEXI',2,NULL,NULL),(230,'Precompte immobilier',1,1,'TAXBEPREIMMO',2,NULL,NULL),(4101,'Krankenversicherung',1,1,'TAXATKV',41,NULL,NULL),(4102,'Unfallversicherung',1,1,'TAXATUV',41,NULL,NULL),(4103,'Pensionsversicherung',1,1,'TAXATPV',41,NULL,NULL),(4104,'Arbeitslosenversicherung',1,1,'TAXATAV',41,NULL,NULL),(4105,'Insolvenzentgeltsicherungsfond',1,1,'TAXATIESG',41,NULL,NULL),(4106,'Wohnbauförderung',1,1,'TAXATWF',41,NULL,NULL),(4107,'Arbeiterkammerumlage',1,1,'TAXATAK',41,NULL,NULL),(4108,'Mitarbeitervorsorgekasse',1,1,'TAXATMVK',41,NULL,NULL),(4109,'Familienlastenausgleichsfond',1,1,'TAXATFLAF',41,NULL,NULL); +/*!40000 ALTER TABLE `llx_c_chargesociales` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_civility` +-- + +DROP TABLE IF EXISTS `llx_c_civility`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_civility` ( + `rowid` int(11) NOT NULL, + `code` varchar(6) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_civility` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_civility` +-- + +LOCK TABLES `llx_c_civility` WRITE; +/*!40000 ALTER TABLE `llx_c_civility` DISABLE KEYS */; +INSERT INTO `llx_c_civility` VALUES (1,'MME','Madame',1,NULL),(3,'MR','Monsieur',1,NULL),(5,'MLE','Mademoiselle',1,NULL),(7,'MTRE','Maître',1,NULL),(8,'DR','Docteur',1,NULL); +/*!40000 ALTER TABLE `llx_c_civility` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_country` +-- + +DROP TABLE IF EXISTS `llx_c_country`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_country` ( + `rowid` int(11) NOT NULL, + `code` varchar(2) COLLATE utf8_unicode_ci NOT NULL, + `code_iso` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `favorite` tinyint(4) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_c_country_code` (`code`), + UNIQUE KEY `idx_c_country_label` (`label`), + UNIQUE KEY `idx_c_country_code_iso` (`code_iso`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_country` +-- + +LOCK TABLES `llx_c_country` WRITE; +/*!40000 ALTER TABLE `llx_c_country` DISABLE KEYS */; +INSERT INTO `llx_c_country` VALUES (0,'',NULL,'-',1,1),(1,'FR','FRA','France',1,0),(2,'BE','BEL','Belgium',1,0),(3,'IT','ITA','Italy',1,0),(4,'ES','ESP','Spain',1,0),(5,'DE','DEU','Germany',1,0),(6,'CH','CHE','Switzerland',1,0),(7,'GB','GBR','United Kingdom',1,0),(8,'IE','IRL','Irland',1,0),(9,'CN','CHN','China',1,0),(10,'TN','TUN','Tunisia',1,0),(11,'US','USA','United States',1,0),(12,'MA','MAR','Maroc',1,0),(13,'DZ','DZA','Algeria',1,0),(14,'CA','CAN','Canada',1,0),(15,'TG','TGO','Togo',1,0),(16,'GA','GAB','Gabon',1,0),(17,'NL','NLD','Nerderland',1,0),(18,'HU','HUN','Hongrie',1,0),(19,'RU','RUS','Russia',1,0),(20,'SE','SWE','Sweden',1,0),(21,'CI','CIV','Côte d\'Ivoire',1,0),(22,'SN','SEN','Senegal',1,0),(23,'AR','ARG','Argentine',1,0),(24,'CM','CMR','Cameroun',1,0),(25,'PT','PRT','Portugal',1,0),(26,'SA','SAU','Saudi Arabia',1,0),(27,'MC','MCO','Monaco',1,0),(28,'AU','AUS','Australia',1,0),(29,'SG','SGP','Singapour',1,0),(30,'AF','AFG','Afghanistan',1,0),(31,'AX','ALA','Iles Aland',1,0),(32,'AL','ALB','Albanie',1,0),(33,'AS','ASM','Samoa américaines',1,0),(34,'AD','AND','Andorre',1,0),(35,'AO','AGO','Angola',1,0),(36,'AI','AIA','Anguilla',1,0),(37,'AQ','ATA','Antarctique',1,0),(38,'AG','ATG','Antigua-et-Barbuda',1,0),(39,'AM','ARM','Arménie',1,0),(40,'AW','ABW','Aruba',1,0),(41,'AT','AUT','Autriche',1,0),(42,'AZ','AZE','Azerbaïdjan',1,0),(43,'BS','BHS','Bahamas',1,0),(44,'BH','BHR','Bahreïn',1,0),(45,'BD','BGD','Bangladesh',1,0),(46,'BB','BRB','Barbade',1,0),(47,'BY','BLR','Biélorussie',1,0),(48,'BZ','BLZ','Belize',1,0),(49,'BJ','BEN','Bénin',1,0),(50,'BM','BMU','Bermudes',1,0),(51,'BT','BTN','Bhoutan',1,0),(52,'BO','BOL','Bolivie',1,0),(53,'BA','BIH','Bosnie-Herzégovine',1,0),(54,'BW','BWA','Botswana',1,0),(55,'BV','BVT','Ile Bouvet',1,0),(56,'BR','BRA','Brazil',1,0),(57,'IO','IOT','Territoire britannique de l\'Océan Indien',1,0),(58,'BN','BRN','Brunei',1,0),(59,'BG','BGR','Bulgarie',1,0),(60,'BF','BFA','Burkina Faso',1,0),(61,'BI','BDI','Burundi',1,0),(62,'KH','KHM','Cambodge',1,0),(63,'CV','CPV','Cap-Vert',1,0),(64,'KY','CYM','Iles Cayman',1,0),(65,'CF','CAF','République centrafricaine',1,0),(66,'TD','TCD','Tchad',1,0),(67,'CL','CHL','Chili',1,0),(68,'CX','CXR','Ile Christmas',1,0),(69,'CC','CCK','Iles des Cocos (Keeling)',1,0),(70,'CO','COL','Colombie',1,0),(71,'KM','COM','Comores',1,0),(72,'CG','COG','Congo',1,0),(73,'CD','COD','République démocratique du Congo',1,0),(74,'CK','COK','Iles Cook',1,0),(75,'CR','CRI','Costa Rica',1,0),(76,'HR','HRV','Croatie',1,0),(77,'CU','CUB','Cuba',1,0),(78,'CY','CYP','Chypre',1,0),(79,'CZ','CZE','République Tchèque',1,0),(80,'DK','DNK','Danemark',1,0),(81,'DJ','DJI','Djibouti',1,0),(82,'DM','DMA','Dominique',1,0),(83,'DO','DOM','République Dominicaine',1,0),(84,'EC','ECU','Equateur',1,0),(85,'EG','EGY','Egypte',1,0),(86,'SV','SLV','Salvador',1,0),(87,'GQ','GNQ','Guinée Equatoriale',1,0),(88,'ER','ERI','Erythrée',1,0),(89,'EE','EST','Estonia',1,0),(90,'ET','ETH','Ethiopie',1,0),(91,'FK','FLK','Iles Falkland',1,0),(92,'FO','FRO','Iles Féroé',1,0),(93,'FJ','FJI','Iles Fidji',1,0),(94,'FI','FIN','Finlande',1,0),(95,'GF','GUF','Guyane française',1,0),(96,'PF','PYF','Polynésie française',1,0),(97,'TF','ATF','Terres australes françaises',1,0),(98,'GM','GMB','Gambie',1,0),(99,'GE','GEO','Georgia',1,0),(100,'GH','GHA','Ghana',1,0),(101,'GI','GIB','Gibraltar',1,0),(102,'GR','GRC','Greece',1,0),(103,'GL','GRL','Groenland',1,0),(104,'GD','GRD','Grenade',1,0),(106,'GU','GUM','Guam',1,0),(107,'GT','GTM','Guatemala',1,0),(108,'GN','GIN','Guinea',1,0),(109,'GW','GNB','Guinea-Bissao',1,0),(111,'HT','HTI','Haiti',1,0),(112,'HM','HMD','Iles Heard et McDonald',1,0),(113,'VA','VAT','Saint-Siège (Vatican)',1,0),(114,'HN','HND','Honduras',1,0),(115,'HK','HKG','Hong Kong',1,0),(116,'IS','ISL','Islande',1,0),(117,'IN','IND','India',1,0),(118,'ID','IDN','Indonésie',1,0),(119,'IR','IRN','Iran',1,0),(120,'IQ','IRQ','Iraq',1,0),(121,'IL','ISR','Israel',1,0),(122,'JM','JAM','Jamaïque',1,0),(123,'JP','JPN','Japon',1,0),(124,'JO','JOR','Jordanie',1,0),(125,'KZ','KAZ','Kazakhstan',1,0),(126,'KE','KEN','Kenya',1,0),(127,'KI','KIR','Kiribati',1,0),(128,'KP','PRK','North Corea',1,0),(129,'KR','KOR','South Corea',1,0),(130,'KW','KWT','Koweït',1,0),(131,'KG','KGZ','Kirghizistan',1,0),(132,'LA','LAO','Laos',1,0),(133,'LV','LVA','Lettonie',1,0),(134,'LB','LBN','Liban',1,0),(135,'LS','LSO','Lesotho',1,0),(136,'LR','LBR','Liberia',1,0),(137,'LY','LBY','Libye',1,0),(138,'LI','LIE','Liechtenstein',1,0),(139,'LT','LTU','Lituanie',1,0),(140,'LU','LUX','Luxembourg',1,0),(141,'MO','MAC','Macao',1,0),(142,'MK','MKD','ex-République yougoslave de Macédoine',1,0),(143,'MG','MDG','Madagascar',1,0),(144,'MW','MWI','Malawi',1,0),(145,'MY','MYS','Malaisie',1,0),(146,'MV','MDV','Maldives',1,0),(147,'ML','MLI','Mali',1,0),(148,'MT','MLT','Malte',1,0),(149,'MH','MHL','Iles Marshall',1,0),(151,'MR','MRT','Mauritanie',1,0),(152,'MU','MUS','Maurice',1,0),(153,'YT','MYT','Mayotte',1,0),(154,'MX','MEX','Mexique',1,0),(155,'FM','FSM','Micronésie',1,0),(156,'MD','MDA','Moldavie',1,0),(157,'MN','MNG','Mongolie',1,0),(158,'MS','MSR','Monserrat',1,0),(159,'MZ','MOZ','Mozambique',1,0),(160,'MM','MMR','Birmanie (Myanmar)',1,0),(161,'NA','NAM','Namibie',1,0),(162,'NR','NRU','Nauru',1,0),(163,'NP','NPL','Népal',1,0),(164,'AN',NULL,'Antilles néerlandaises',1,0),(165,'NC','NCL','Nouvelle-Calédonie',1,0),(166,'NZ','NZL','Nouvelle-Zélande',1,0),(167,'NI','NIC','Nicaragua',1,0),(168,'NE','NER','Niger',1,0),(169,'NG','NGA','Nigeria',1,0),(170,'NU','NIU','Nioué',1,0),(171,'NF','NFK','Ile Norfolk',1,0),(172,'MP','MNP','Mariannes du Nord',1,0),(173,'NO','NOR','Norvège',1,0),(174,'OM','OMN','Oman',1,0),(175,'PK','PAK','Pakistan',1,0),(176,'PW','PLW','Palaos',1,0),(177,'PS','PSE','Territoire Palestinien Occupé',1,0),(178,'PA','PAN','Panama',1,0),(179,'PG','PNG','Papouasie-Nouvelle-Guinée',1,0),(180,'PY','PRY','Paraguay',1,0),(181,'PE','PER','Peru',1,0),(182,'PH','PHL','Philippines',1,0),(183,'PN','PCN','Iles Pitcairn',1,0),(184,'PL','POL','Pologne',1,0),(185,'PR','PRI','Porto Rico',1,0),(186,'QA','QAT','Qatar',1,0),(188,'RO','ROU','Roumanie',1,0),(189,'RW','RWA','Rwanda',1,0),(190,'SH','SHN','Sainte-Hélène',1,0),(191,'KN','KNA','Saint-Christophe-et-Niévès',1,0),(192,'LC','LCA','Sainte-Lucie',1,0),(193,'PM','SPM','Saint-Pierre-et-Miquelon',1,0),(194,'VC','VCT','Saint-Vincent-et-les-Grenadines',1,0),(195,'WS','WSM','Samoa',1,0),(196,'SM','SMR','Saint-Marin',1,0),(197,'ST','STP','Sao Tomé-et-Principe',1,0),(198,'RS','SRB','Serbie',1,0),(199,'SC','SYC','Seychelles',1,0),(200,'SL','SLE','Sierra Leone',1,0),(201,'SK','SVK','Slovaquie',1,0),(202,'SI','SVN','Slovénie',1,0),(203,'SB','SLB','Iles Salomon',1,0),(204,'SO','SOM','Somalie',1,0),(205,'ZA','ZAF','Afrique du Sud',1,0),(206,'GS','SGS','Iles Géorgie du Sud et Sandwich du Sud',1,0),(207,'LK','LKA','Sri Lanka',1,0),(208,'SD','SDN','Soudan',1,0),(209,'SR','SUR','Suriname',1,0),(210,'SJ','SJM','Iles Svalbard et Jan Mayen',1,0),(211,'SZ','SWZ','Swaziland',1,0),(212,'SY','SYR','Syrie',1,0),(213,'TW','TWN','Taïwan',1,0),(214,'TJ','TJK','Tadjikistan',1,0),(215,'TZ','TZA','Tanzanie',1,0),(216,'TH','THA','Thaïlande',1,0),(217,'TL','TLS','Timor Oriental',1,0),(218,'TK','TKL','Tokélaou',1,0),(219,'TO','TON','Tonga',1,0),(220,'TT','TTO','Trinité-et-Tobago',1,0),(221,'TR','TUR','Turquie',1,0),(222,'TM','TKM','Turkménistan',1,0),(223,'TC','TCA','Iles Turks-et-Caicos',1,0),(224,'TV','TUV','Tuvalu',1,0),(225,'UG','UGA','Ouganda',1,0),(226,'UA','UKR','Ukraine',1,0),(227,'xx','ARE','Émirats arabes unishh',1,0),(228,'UM','UMI','Iles mineures éloignées des États-Unis',1,0),(229,'UY','URY','Uruguay',1,0),(230,'UZ','UZB','Ouzbékistan',1,0),(231,'VU','VUT','Vanuatu',1,0),(232,'VE','VEN','Vénézuela',1,0),(233,'VN','VNM','Viêt Nam',1,0),(234,'VG','VGB','Iles Vierges britanniques',1,0),(235,'VI','VIR','Iles Vierges américaines',1,0),(236,'WF','WLF','Wallis-et-Futuna',1,0),(237,'EH','ESH','Sahara occidental',1,0),(238,'YE','YEM','Yémen',1,0),(239,'ZM','ZMB','Zambie',1,0),(240,'ZW','ZWE','Zimbabwe',1,0),(241,'GG','GGY','Guernesey',1,0),(242,'IM','IMN','Ile de Man',1,0),(243,'JE','JEY','Jersey',1,0),(244,'ME','MNE','Monténégro',1,0),(245,'BL','BLM','Saint-Barthélemy',1,0),(246,'MF','MAF','Saint-Martin',1,0),(247,'hh',NULL,'hhh',1,0); +/*!40000 ALTER TABLE `llx_c_country` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_currencies` +-- + +DROP TABLE IF EXISTS `llx_c_currencies`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_currencies` ( + `code_iso` varchar(3) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `unicode` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`code_iso`), + UNIQUE KEY `uk_c_currencies_code_iso` (`code_iso`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_currencies` +-- + +LOCK TABLES `llx_c_currencies` WRITE; +/*!40000 ALTER TABLE `llx_c_currencies` DISABLE KEYS */; +INSERT INTO `llx_c_currencies` VALUES ('AED','United Arab Emirates Dirham',NULL,1),('AFN','Afghanistan Afghani','[1547]',1),('ALL','Albania Leklll','[76,101,107]',1),('ANG','Netherlands Antilles Guilder','[402]',1),('ARP','Pesos argentins',NULL,0),('ARS','Argentino Peso','[36]',1),('ATS','Shiliing autrichiens',NULL,0),('AUD','Australia Dollar','[36]',1),('AWG','Aruba Guilder','[402]',1),('AZN','Azerbaijan New Manat','[1084,1072,1085]',1),('BAM','Bosnia and Herzegovina Convertible Marka','[75,77]',1),('BBD','Barbados Dollar','[36]',1),('BEF','Francs belges',NULL,0),('BGN','Bulgaria Lev','[1083,1074]',1),('BMD','Bermuda Dollar','[36]',1),('BND','Brunei Darussalam Dollar','[36]',1),('BOB','Bolivia Boliviano','[36,98]',1),('BRL','Brazil Real','[82,36]',1),('BSD','Bahamas Dollar','[36]',1),('BWP','Botswana Pula','[80]',1),('BYR','Belarus Ruble','[112,46]',1),('BZD','Belize Dollar','[66,90,36]',1),('CAD','Canada Dollar','[36]',1),('CHF','Switzerland Franc','[67,72,70]',1),('CLP','Chile Peso','[36]',1),('CNY','China Yuan Renminbi','[165]',1),('COP','Colombia Peso','[36]',1),('CRC','Costa Rica Colon','[8353]',1),('CUP','Cuba Peso','[8369]',1),('CZK','Czech Republic Koruna','[75,269]',1),('DEM','Deutsch mark',NULL,0),('DKK','Denmark Krone','[107,114]',1),('DOP','Dominican Republic Peso','[82,68,36]',1),('DZD','Algeria Dinar',NULL,1),('EEK','Estonia Kroon','[107,114]',1),('EGP','Egypt Pound','[163]',1),('ESP','Pesete',NULL,0),('EUR','Euro Member Countries','[8364]',1),('FIM','Mark finlandais',NULL,0),('FJD','Fiji Dollar','[36]',1),('FKP','Falkland Islands (Malvinas) Pound','[163]',1),('FRF','Francs francais',NULL,0),('GBP','United Kingdom Pound','[163]',1),('GGP','Guernsey Pound','[163]',1),('GHC','Ghana Cedis','[162]',1),('GIP','Gibraltar Pound','[163]',1),('GRD','Drachme (grece)',NULL,0),('GTQ','Guatemala Quetzal','[81]',1),('GYD','Guyana Dollar','[36]',1),('hhh','ddd','[]',1),('HKD','Hong Kong Dollar','[36]',1),('HNL','Honduras Lempira','[76]',1),('HRK','Croatia Kuna','[107,110]',1),('HUF','Hungary Forint','[70,116]',1),('IDR','Indonesia Rupiah','[82,112]',1),('IEP','Livres irlandaises',NULL,0),('ILS','Israel Shekel','[8362]',1),('IMP','Isle of Man Pound','[163]',1),('INR','India Rupee',NULL,1),('IRR','Iran Rial','[65020]',1),('ISK','Iceland Krona','[107,114]',1),('ITL','Lires',NULL,0),('JEP','Jersey Pound','[163]',1),('JMD','Jamaica Dollar','[74,36]',1),('JPY','Japan Yen','[165]',1),('KES','Kenya Shilling',NULL,1),('KGS','Kyrgyzstan Som','[1083,1074]',1),('KHR','Cambodia Riel','[6107]',1),('KPW','Korea (North) Won','[8361]',1),('KRW','Korea (South) Won','[8361]',1),('KYD','Cayman Islands Dollar','[36]',1),('KZT','Kazakhstan Tenge','[1083,1074]',1),('LAK','Laos Kip','[8365]',1),('LBP','Lebanon Pound','[163]',1),('LKR','Sri Lanka Rupee','[8360]',1),('LRD','Liberia Dollar','[36]',1),('LTL','Lithuania Litas','[76,116]',1),('LUF','Francs luxembourgeois',NULL,0),('LVL','Latvia Lat','[76,115]',1),('MAD','Morocco Dirham',NULL,1),('MKD','Macedonia Denar','[1076,1077,1085]',1),('MNT','Mongolia Tughrik','[8366]',1),('MRO','Mauritania Ouguiya',NULL,1),('MUR','Mauritius Rupee','[8360]',1),('MXN','Mexico Peso','[36]',1),('MXP','Pesos Mexicans',NULL,0),('MYR','Malaysia Ringgit','[82,77]',1),('MZN','Mozambique Metical','[77,84]',1),('NAD','Namibia Dollar','[36]',1),('NGN','Nigeria Naira','[8358]',1),('NIO','Nicaragua Cordoba','[67,36]',1),('NLG','Florins',NULL,0),('NOK','Norway Krone','[107,114]',1),('NPR','Nepal Rupee','[8360]',1),('NZD','New Zealand Dollar','[36]',1),('OMR','Oman Rial','[65020]',1),('PAB','Panama Balboa','[66,47,46]',1),('PEN','Peru Nuevo Sol','[83,47,46]',1),('PHP','Philippines Peso','[8369]',1),('PKR','Pakistan Rupee','[8360]',1),('PLN','Poland Zloty','[122,322]',1),('PTE','Escudos',NULL,0),('PYG','Paraguay Guarani','[71,115]',1),('QAR','Qatar Riyal','[65020]',1),('RON','Romania New Leu','[108,101,105]',1),('RSD','Serbia Dinar','[1044,1080,1085,46]',1),('RUB','Russia Ruble','[1088,1091,1073]',1),('SAR','Saudi Arabia Riyal','[65020]',1),('SBD','Solomon Islands Dollar','[36]',1),('SCR','Seychelles Rupee','[8360]',1),('SEK','Sweden Krona','[107,114]',1),('SGD','Singapore Dollar','[36]',1),('SHP','Saint Helena Pound','[163]',1),('SKK','Couronnes slovaques',NULL,0),('SOS','Somalia Shilling','[83]',1),('SRD','Suriname Dollar','[36]',1),('SUR','Rouble',NULL,0),('SVC','El Salvador Colon','[36]',1),('SYP','Syria Pound','[163]',1),('THB','Thailand Baht','[3647]',1),('TND','Tunisia Dinar',NULL,1),('TRL','Turkey Lira','[84,76]',1),('TRY','Turkey Lira','[8356]',1),('TTD','Trinidad and Tobago Dollar','[84,84,36]',1),('TVD','Tuvalu Dollar','[36]',1),('TWD','Taiwan New Dollar','[78,84,36]',1),('UAH','Ukraine Hryvna','[8372]',1),('USD','United States Dollar','[36]',1),('UYU','Uruguay Peso','[36,85]',1),('UZS','Uzbekistan Som','[1083,1074]',1),('VEF','Venezuela Bolivar Fuerte','[66,115]',1),('VND','Viet Nam Dong','[8363]',1),('XAF','Communaute Financiere Africaine (BEAC) CFA Franc',NULL,1),('XCD','East Caribbean Dollar','[36]',1),('XEU','Ecus',NULL,0),('XOF','Communaute Financiere Africaine (BCEAO) Franc',NULL,1),('XPF','Franc pacifique (XPF)',NULL,1),('YER','Yemen Rial','[65020]',1),('ZAR','South Africa Rand','[82]',1),('ZWD','Zimbabwe Dollar','[90,36]',1); +/*!40000 ALTER TABLE `llx_c_currencies` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_departements` +-- + +DROP TABLE IF EXISTS `llx_c_departements`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_departements` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code_departement` varchar(6) COLLATE utf8_unicode_ci NOT NULL, + `fk_region` int(11) DEFAULT NULL, + `cheflieu` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `tncc` int(11) DEFAULT NULL, + `ncc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `nom` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_departements` (`code_departement`,`fk_region`), + KEY `idx_departements_fk_region` (`fk_region`), + CONSTRAINT `fk_departements_code_region` FOREIGN KEY (`fk_region`) REFERENCES `llx_c_regions` (`code_region`), + CONSTRAINT `fk_departements_fk_region` FOREIGN KEY (`fk_region`) REFERENCES `llx_c_regions` (`code_region`) +) ENGINE=InnoDB AUTO_INCREMENT=2100 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_departements` +-- + +LOCK TABLES `llx_c_departements` WRITE; +/*!40000 ALTER TABLE `llx_c_departements` DISABLE KEYS */; +INSERT INTO `llx_c_departements` VALUES (1,'0',0,'0',0,'-','-',1),(2,'01',82,'01053',5,'AIN','Ain',1),(3,'02',22,'02408',5,'AISNE','Aisne',1),(4,'03',83,'03190',5,'ALLIER','Allier',1),(5,'04',93,'04070',4,'ALPES-DE-HAUTE-PROVENCE','Alpes-de-Haute-Provence',1),(6,'05',93,'05061',4,'HAUTES-ALPES','Hautes-Alpes',1),(7,'06',93,'06088',4,'ALPES-MARITIMES','Alpes-Maritimes',1),(8,'07',82,'07186',5,'ARDECHE','Ardèche',1),(9,'08',21,'08105',4,'ARDENNES','Ardennes',1),(10,'09',73,'09122',5,'ARIEGE','Ariège',1),(11,'10',21,'10387',5,'AUBE','Aube',1),(12,'11',91,'11069',5,'AUDE','Aude',1),(13,'12',73,'12202',5,'AVEYRON','Aveyron',1),(14,'13',93,'13055',4,'BOUCHES-DU-RHONE','Bouches-du-Rhône',1),(15,'14',25,'14118',2,'CALVADOS','Calvados',1),(16,'15',83,'15014',2,'CANTAL','Cantal',1),(17,'16',54,'16015',3,'CHARENTE','Charente',1),(18,'17',54,'17300',3,'CHARENTE-MARITIME','Charente-Maritime',1),(19,'18',24,'18033',2,'CHER','Cher',1),(20,'19',74,'19272',3,'CORREZE','Corrèze',1),(21,'2A',94,'2A004',3,'CORSE-DU-SUD','Corse-du-Sud',1),(22,'2B',94,'2B033',3,'HAUTE-CORSE','Haute-Corse',1),(23,'21',26,'21231',3,'COTE-D\'OR','Côte-d\'Or',1),(24,'22',53,'22278',4,'COTES-D\'ARMOR','Côtes-d\'Armor',1),(25,'23',74,'23096',3,'CREUSE','Creuse',1),(26,'24',72,'24322',3,'DORDOGNE','Dordogne',1),(27,'25',43,'25056',2,'DOUBS','Doubs',1),(28,'26',82,'26362',3,'DROME','Drôme',1),(29,'27',23,'27229',5,'EURE','Eure',1),(30,'28',24,'28085',1,'EURE-ET-LOIR','Eure-et-Loir',1),(31,'29',53,'29232',2,'FINISTERE','Finistère',1),(32,'30',91,'30189',2,'GARD','Gard',1),(33,'31',73,'31555',3,'HAUTE-GARONNE','Haute-Garonne',1),(34,'32',73,'32013',2,'GERS','Gers',1),(35,'33',72,'33063',3,'GIRONDE','Gironde',1),(36,'34',91,'34172',5,'HERAULT','Hérault',1),(37,'35',53,'35238',1,'ILLE-ET-VILAINE','Ille-et-Vilaine',1),(38,'36',24,'36044',5,'INDRE','Indre',1),(39,'37',24,'37261',1,'INDRE-ET-LOIRE','Indre-et-Loire',1),(40,'38',82,'38185',5,'ISERE','Isère',1),(41,'39',43,'39300',2,'JURA','Jura',1),(42,'40',72,'40192',4,'LANDES','Landes',1),(43,'41',24,'41018',0,'LOIR-ET-CHER','Loir-et-Cher',1),(44,'42',82,'42218',3,'LOIRE','Loire',1),(45,'43',83,'43157',3,'HAUTE-LOIRE','Haute-Loire',1),(46,'44',52,'44109',3,'LOIRE-ATLANTIQUE','Loire-Atlantique',1),(47,'45',24,'45234',2,'LOIRET','Loiret',1),(48,'46',73,'46042',2,'LOT','Lot',1),(49,'47',72,'47001',0,'LOT-ET-GARONNE','Lot-et-Garonne',1),(50,'48',91,'48095',3,'LOZERE','Lozère',1),(51,'49',52,'49007',0,'MAINE-ET-LOIRE','Maine-et-Loire',1),(52,'50',25,'50502',3,'MANCHE','Manche',1),(53,'51',21,'51108',3,'MARNE','Marne',1),(54,'52',21,'52121',3,'HAUTE-MARNE','Haute-Marne',1),(55,'53',52,'53130',3,'MAYENNE','Mayenne',1),(56,'54',41,'54395',0,'MEURTHE-ET-MOSELLE','Meurthe-et-Moselle',1),(57,'55',41,'55029',3,'MEUSE','Meuse',1),(58,'56',53,'56260',2,'MORBIHAN','Morbihan',1),(59,'57',41,'57463',3,'MOSELLE','Moselle',1),(60,'58',26,'58194',3,'NIEVRE','Nièvre',1),(61,'59',31,'59350',2,'NORD','Nord',1),(62,'60',22,'60057',5,'OISE','Oise',1),(63,'61',25,'61001',5,'ORNE','Orne',1),(64,'62',31,'62041',2,'PAS-DE-CALAIS','Pas-de-Calais',1),(65,'63',83,'63113',2,'PUY-DE-DOME','Puy-de-Dôme',1),(66,'64',72,'64445',4,'PYRENEES-ATLANTIQUES','Pyrénées-Atlantiques',1),(67,'65',73,'65440',4,'HAUTES-PYRENEES','Hautes-Pyrénées',1),(68,'66',91,'66136',4,'PYRENEES-ORIENTALES','Pyrénées-Orientales',1),(69,'67',42,'67482',2,'BAS-RHIN','Bas-Rhin',1),(70,'68',42,'68066',2,'HAUT-RHIN','Haut-Rhin',1),(71,'69',82,'69123',2,'RHONE','Rhône',1),(72,'70',43,'70550',3,'HAUTE-SAONE','Haute-Saône',1),(73,'71',26,'71270',0,'SAONE-ET-LOIRE','Saône-et-Loire',1),(74,'72',52,'72181',3,'SARTHE','Sarthe',1),(75,'73',82,'73065',3,'SAVOIE','Savoie',1),(76,'74',82,'74010',3,'HAUTE-SAVOIE','Haute-Savoie',1),(77,'75',11,'75056',0,'PARIS','Paris',1),(78,'76',23,'76540',3,'SEINE-MARITIME','Seine-Maritime',1),(79,'77',11,'77288',0,'SEINE-ET-MARNE','Seine-et-Marne',1),(80,'78',11,'78646',4,'YVELINES','Yvelines',1),(81,'79',54,'79191',4,'DEUX-SEVRES','Deux-Sèvres',1),(82,'80',22,'80021',3,'SOMME','Somme',1),(83,'81',73,'81004',2,'TARN','Tarn',1),(84,'82',73,'82121',0,'TARN-ET-GARONNE','Tarn-et-Garonne',1),(85,'83',93,'83137',2,'VAR','Var',1),(86,'84',93,'84007',0,'VAUCLUSE','Vaucluse',1),(87,'85',52,'85191',3,'VENDEE','Vendée',1),(88,'86',54,'86194',3,'VIENNE','Vienne',1),(89,'87',74,'87085',3,'HAUTE-VIENNE','Haute-Vienne',1),(90,'88',41,'88160',4,'VOSGES','Vosges',1),(91,'89',26,'89024',5,'YONNE','Yonne',1),(92,'90',43,'90010',0,'TERRITOIRE DE BELFORT','Territoire de Belfort',1),(93,'91',11,'91228',5,'ESSONNE','Essonne',1),(94,'92',11,'92050',4,'HAUTS-DE-SEINE','Hauts-de-Seine',1),(95,'93',11,'93008',3,'SEINE-SAINT-DENIS','Seine-Saint-Denis',1),(96,'94',11,'94028',2,'VAL-DE-MARNE','Val-de-Marne',1),(97,'95',11,'95500',2,'VAL-D\'OISE','Val-d\'Oise',1),(98,'971',1,'97105',3,'GUADELOUPE','Guadeloupe',1),(99,'972',2,'97209',3,'MARTINIQUE','Martinique',1),(100,'973',3,'97302',3,'GUYANE','Guyane',1),(101,'974',4,'97411',3,'REUNION','Réunion',1),(102,'01',201,'',1,'ANVERS','Anvers',1),(103,'02',203,'',3,'BRUXELLES-CAPITALE','Bruxelles-Capitale',1),(104,'03',202,'',2,'BRABANT-WALLON','Brabant-Wallon',1),(105,'04',201,'',1,'BRABANT-FLAMAND','Brabant-Flamand',1),(106,'05',201,'',1,'FLANDRE-OCCIDENTALE','Flandre-Occidentale',1),(107,'06',201,'',1,'FLANDRE-ORIENTALE','Flandre-Orientale',1),(108,'07',202,'',2,'HAINAUT','Hainaut',1),(109,'08',201,'',2,'LIEGE','Liège',1),(110,'09',202,'',1,'LIMBOURG','Limbourg',1),(111,'10',202,'',2,'LUXEMBOURG','Luxembourg',1),(112,'11',201,'',2,'NAMUR','Namur',1),(113,'NSW',2801,'',1,'','New South Wales',1),(114,'VIC',2801,'',1,'','Victoria',1),(115,'QLD',2801,'',1,'','Queensland',1),(116,'SA',2801,'',1,'','South Australia',1),(117,'ACT',2801,'',1,'','Australia Capital Territory',1),(118,'TAS',2801,'',1,'','Tasmania',1),(119,'WA',2801,'',1,'','Western Australia',1),(120,'NT',2801,'',1,'','Northern Territory',1),(121,'VI',419,'',19,'ALAVA','Álava',1),(122,'AB',404,'',4,'ALBACETE','Albacete',1),(123,'A',411,'',11,'ALICANTE','Alicante',1),(124,'AL',401,'',1,'ALMERIA','Almería',1),(125,'AV',403,'',3,'AVILA','Avila',1),(126,'BA',412,'',12,'BADAJOZ','Badajoz',1),(127,'PM',414,'',14,'ISLAS BALEARES','Islas Baleares',1),(128,'B',406,'',6,'BARCELONA','Barcelona',1),(129,'BU',403,'',8,'BURGOS','Burgos',1),(130,'CC',412,'',12,'CACERES','Cáceres',1),(131,'CA',401,'',1,'CADIz','Cádiz',1),(132,'CS',411,'',11,'CASTELLON','Castellón',1),(133,'CR',404,'',4,'CIUDAD REAL','Ciudad Real',1),(134,'CO',401,'',1,'CORDOBA','Córdoba',1),(135,'C',413,'',13,'LA CORUÑA','La Coruña',1),(136,'CU',404,'',4,'CUENCA','Cuenca',1),(137,'GI',406,'',6,'GERONA','Gerona',1),(138,'GR',401,'',1,'GRANADA','Granada',1),(139,'GU',404,'',4,'GUADALAJARA','Guadalajara',1),(140,'SS',419,'',19,'GUIPUZCOA','Guipúzcoa',1),(141,'H',401,'',1,'HUELVA','Huelva',1),(142,'HU',402,'',2,'HUESCA','Huesca',1),(143,'J',401,'',1,'JAEN','Jaén',1),(144,'LE',403,'',3,'LEON','León',1),(145,'L',406,'',6,'LERIDA','Lérida',1),(146,'LO',415,'',15,'LA RIOJA','La Rioja',1),(147,'LU',413,'',13,'LUGO','Lugo',1),(148,'M',416,'',16,'MADRID','Madrid',1),(149,'MA',401,'',1,'MALAGA','Málaga',1),(150,'MU',417,'',17,'MURCIA','Murcia',1),(151,'NA',408,'',8,'NAVARRA','Navarra',1),(152,'OR',413,'',13,'ORENSE','Orense',1),(153,'O',418,'',18,'ASTURIAS','Asturias',1),(154,'P',403,'',3,'PALENCIA','Palencia',1),(155,'GC',405,'',5,'LAS PALMAS','Las Palmas',1),(156,'PO',413,'',13,'PONTEVEDRA','Pontevedra',1),(157,'SA',403,'',3,'SALAMANCA','Salamanca',1),(158,'TF',405,'',5,'STA. CRUZ DE TENERIFE','Sta. Cruz de Tenerife',1),(159,'S',410,'',10,'CANTABRIA','Cantabria',1),(160,'SG',403,'',3,'SEGOVIA','Segovia',1),(161,'SE',401,'',1,'SEVILLA','Sevilla',1),(162,'SO',403,'',3,'SORIA','Soria',1),(163,'T',406,'',6,'TARRAGONA','Tarragona',1),(164,'TE',402,'',2,'TERUEL','Teruel',1),(165,'TO',404,'',5,'TOLEDO','Toledo',1),(166,'V',411,'',11,'VALENCIA','Valencia',1),(167,'VA',403,'',3,'VALLADOLID','Valladolid',1),(168,'BI',419,'',19,'VIZCAYA','Vizcaya',1),(169,'ZA',403,'',3,'ZAMORA','Zamora',1),(170,'Z',402,'',1,'ZARAGOZA','Zaragoza',1),(171,'CE',407,'',7,'CEUTA','Ceuta',1),(172,'ML',409,'',9,'MELILLA','Melilla',1),(174,'AG',601,NULL,NULL,'ARGOVIE','Argovie',1),(175,'AI',601,NULL,NULL,'APPENZELL RHODES INTERIEURES','Appenzell Rhodes intérieures',1),(176,'AR',601,NULL,NULL,'APPENZELL RHODES EXTERIEURES','Appenzell Rhodes extérieures',1),(177,'BE',601,NULL,NULL,'BERNE','Berne',1),(178,'BL',601,NULL,NULL,'BALE CAMPAGNE','Bâle Campagne',1),(179,'BS',601,NULL,NULL,'BALE VILLE','Bâle Ville',1),(180,'FR',601,NULL,NULL,'FRIBOURG','Fribourg',1),(181,'GE',601,NULL,NULL,'GENEVE','Genève',1),(182,'GL',601,NULL,NULL,'GLARIS','Glaris',1),(183,'GR',601,NULL,NULL,'GRISONS','Grisons',1),(184,'JU',601,NULL,NULL,'JURA','Jura',1),(185,'LU',601,NULL,NULL,'LUCERNE','Lucerne',1),(186,'NE',601,NULL,NULL,'NEUCHATEL','Neuchâtel',1),(187,'NW',601,NULL,NULL,'NIDWALD','Nidwald',1),(188,'OW',601,NULL,NULL,'OBWALD','Obwald',1),(189,'SG',601,NULL,NULL,'SAINT-GALL','Saint-Gall',1),(190,'SH',601,NULL,NULL,'SCHAFFHOUSE','Schaffhouse',1),(191,'SO',601,NULL,NULL,'SOLEURE','Soleure',1),(192,'SZ',601,NULL,NULL,'SCHWYZ','Schwyz',1),(193,'TG',601,NULL,NULL,'THURGOVIE','Thurgovie',1),(194,'TI',601,NULL,NULL,'TESSIN','Tessin',1),(195,'UR',601,NULL,NULL,'URI','Uri',1),(196,'VD',601,NULL,NULL,'VAUD','Vaud',1),(197,'VS',601,NULL,NULL,'VALAIS','Valais',1),(198,'ZG',601,NULL,NULL,'ZUG','Zug',1),(199,'ZH',601,NULL,NULL,'ZURICH','Zürich',1),(200,'AL',1101,'',0,'ALABAMA','Alabama',1),(201,'AK',1101,'',0,'ALASKA','Alaska',1),(202,'AZ',1101,'',0,'ARIZONA','Arizona',1),(203,'AR',1101,'',0,'ARKANSAS','Arkansas',1),(204,'CA',1101,'',0,'CALIFORNIA','California',1),(205,'CO',1101,'',0,'COLORADO','Colorado',1),(206,'CT',1101,'',0,'CONNECTICUT','Connecticut',1),(207,'DE',1101,'',0,'DELAWARE','Delaware',1),(208,'FL',1101,'',0,'FLORIDA','Florida',1),(209,'GA',1101,'',0,'GEORGIA','Georgia',1),(210,'HI',1101,'',0,'HAWAII','Hawaii',1),(211,'ID',1101,'',0,'IDAHO','Idaho',1),(212,'IL',1101,'',0,'ILLINOIS','Illinois',1),(213,'IN',1101,'',0,'INDIANA','Indiana',1),(214,'IA',1101,'',0,'IOWA','Iowa',1),(215,'KS',1101,'',0,'KANSAS','Kansas',1),(216,'KY',1101,'',0,'KENTUCKY','Kentucky',1),(217,'LA',1101,'',0,'LOUISIANA','Louisiana',1),(218,'ME',1101,'',0,'MAINE','Maine',1),(219,'MD',1101,'',0,'MARYLAND','Maryland',1),(220,'MA',1101,'',0,'MASSACHUSSETTS','Massachusetts',1),(221,'MI',1101,'',0,'MICHIGAN','Michigan',1),(222,'MN',1101,'',0,'MINNESOTA','Minnesota',1),(223,'MS',1101,'',0,'MISSISSIPPI','Mississippi',1),(224,'MO',1101,'',0,'MISSOURI','Missouri',1),(225,'MT',1101,'',0,'MONTANA','Montana',1),(226,'NE',1101,'',0,'NEBRASKA','Nebraska',1),(227,'NV',1101,'',0,'NEVADA','Nevada',1),(228,'NH',1101,'',0,'NEW HAMPSHIRE','New Hampshire',1),(229,'NJ',1101,'',0,'NEW JERSEY','New Jersey',1),(230,'NM',1101,'',0,'NEW MEXICO','New Mexico',1),(231,'NY',1101,'',0,'NEW YORK','New York',1),(232,'NC',1101,'',0,'NORTH CAROLINA','North Carolina',1),(233,'ND',1101,'',0,'NORTH DAKOTA','North Dakota',1),(234,'OH',1101,'',0,'OHIO','Ohio',1),(235,'OK',1101,'',0,'OKLAHOMA','Oklahoma',1),(236,'OR',1101,'',0,'OREGON','Oregon',1),(237,'PA',1101,'',0,'PENNSYLVANIA','Pennsylvania',1),(238,'RI',1101,'',0,'RHODE ISLAND','Rhode Island',1),(239,'SC',1101,'',0,'SOUTH CAROLINA','South Carolina',1),(240,'SD',1101,'',0,'SOUTH DAKOTA','South Dakota',1),(241,'TN',1101,'',0,'TENNESSEE','Tennessee',1),(242,'TX',1101,'',0,'TEXAS','Texas',1),(243,'UT',1101,'',0,'UTAH','Utah',1),(244,'VT',1101,'',0,'VERMONT','Vermont',1),(245,'VA',1101,'',0,'VIRGINIA','Virginia',1),(246,'WA',1101,'',0,'WASHINGTON','Washington',1),(247,'WV',1101,'',0,'WEST VIRGINIA','West Virginia',1),(248,'WI',1101,'',0,'WISCONSIN','Wisconsin',1),(249,'WY',1101,'',0,'WYOMING','Wyoming',1),(250,'SS',8601,NULL,NULL,NULL,'San Salvador',1),(251,'SA',8603,NULL,NULL,NULL,'Santa Ana',1),(252,'AH',8603,NULL,NULL,NULL,'Ahuachapan',1),(253,'SO',8603,NULL,NULL,NULL,'Sonsonate',1),(254,'US',8602,NULL,NULL,NULL,'Usulutan',1),(255,'SM',8602,NULL,NULL,NULL,'San Miguel',1),(256,'MO',8602,NULL,NULL,NULL,'Morazan',1),(257,'LU',8602,NULL,NULL,NULL,'La Union',1),(258,'LL',8601,NULL,NULL,NULL,'La Libertad',1),(259,'CH',8601,NULL,NULL,NULL,'Chalatenango',1),(260,'CA',8601,NULL,NULL,NULL,'Cabañas',1),(261,'LP',8601,NULL,NULL,NULL,'La Paz',1),(262,'SV',8601,NULL,NULL,NULL,'San Vicente',1),(263,'CU',8601,NULL,NULL,NULL,'Cuscatlan',1),(264,'2301',2301,'',0,'CATAMARCA','Catamarca',1),(265,'2302',2301,'',0,'JUJUY','Jujuy',1),(266,'2303',2301,'',0,'TUCAMAN','Tucamán',1),(267,'2304',2301,'',0,'SANTIAGO DEL ESTERO','Santiago del Estero',1),(268,'2305',2301,'',0,'SALTA','Salta',1),(269,'2306',2302,'',0,'CHACO','Chaco',1),(270,'2307',2302,'',0,'CORRIENTES','Corrientes',1),(271,'2308',2302,'',0,'ENTRE RIOS','Entre Ríos',1),(272,'2309',2302,'',0,'FORMOSA','Formosa',1),(273,'2310',2302,'',0,'SANTA FE','Santa Fe',1),(274,'2311',2303,'',0,'LA RIOJA','La Rioja',1),(275,'2312',2303,'',0,'MENDOZA','Mendoza',1),(276,'2313',2303,'',0,'SAN JUAN','San Juan',1),(277,'2314',2303,'',0,'SAN LUIS','San Luis',1),(278,'2315',2304,'',0,'CORDOBA','Córdoba',1),(279,'2316',2304,'',0,'BUENOS AIRES','Buenos Aires',1),(280,'2317',2304,'',0,'CABA','Caba',1),(281,'2318',2305,'',0,'LA PAMPA','La Pampa',1),(282,'2319',2305,'',0,'NEUQUEN','Neuquén',1),(283,'2320',2305,'',0,'RIO NEGRO','Río Negro',1),(284,'2321',2305,'',0,'CHUBUT','Chubut',1),(285,'2322',2305,'',0,'SANTA CRUZ','Santa Cruz',1),(286,'2323',2305,'',0,'TIERRA DEL FUEGO','Tierra del Fuego',1),(287,'2324',2305,'',0,'ISLAS MALVINAS','Islas Malvinas',1),(288,'2325',2305,'',0,'ANTARTIDA','Antártida',1),(289,'AN',11701,NULL,0,'AN','Andaman & Nicobar',1),(290,'AP',11701,NULL,0,'AP','Andhra Pradesh',1),(291,'AR',11701,NULL,0,'AR','Arunachal Pradesh',1),(292,'AS',11701,NULL,0,'AS','Assam',1),(293,'BR',11701,NULL,0,'BR','Bihar',1),(294,'CG',11701,NULL,0,'CG','Chattisgarh',1),(295,'CH',11701,NULL,0,'CH','Chandigarh',1),(296,'DD',11701,NULL,0,'DD','Daman & Diu',1),(297,'DL',11701,NULL,0,'DL','Delhi',1),(298,'DN',11701,NULL,0,'DN','Dadra and Nagar Haveli',1),(299,'GA',11701,NULL,0,'GA','Goa',1),(300,'GJ',11701,NULL,0,'GJ','Gujarat',1),(301,'HP',11701,NULL,0,'HP','Himachal Pradesh',1),(302,'HR',11701,NULL,0,'HR','Haryana',1),(303,'JH',11701,NULL,0,'JH','Jharkhand',1),(304,'JK',11701,NULL,0,'JK','Jammu & Kashmir',1),(305,'KA',11701,NULL,0,'KA','Karnataka',1),(306,'KL',11701,NULL,0,'KL','Kerala',1),(307,'LD',11701,NULL,0,'LD','Lakshadweep',1),(308,'MH',11701,NULL,0,'MH','Maharashtra',1),(309,'ML',11701,NULL,0,'ML','Meghalaya',1),(310,'MN',11701,NULL,0,'MN','Manipur',1),(311,'MP',11701,NULL,0,'MP','Madhya Pradesh',1),(312,'MZ',11701,NULL,0,'MZ','Mizoram',1),(313,'NL',11701,NULL,0,'NL','Nagaland',1),(314,'OR',11701,NULL,0,'OR','Orissa',1),(315,'PB',11701,NULL,0,'PB','Punjab',1),(316,'PY',11701,NULL,0,'PY','Puducherry',1),(317,'RJ',11701,NULL,0,'RJ','Rajasthan',1),(318,'SK',11701,NULL,0,'SK','Sikkim',1),(319,'TN',11701,NULL,0,'TN','Tamil Nadu',1),(320,'TR',11701,NULL,0,'TR','Tripura',1),(321,'UL',11701,NULL,0,'UL','Uttarakhand',1),(322,'UP',11701,NULL,0,'UP','Uttar Pradesh',1),(323,'WB',11701,NULL,0,'WB','West Bengal',1),(374,'151',6715,'',0,'151','Arica',1),(375,'152',6715,'',0,'152','Parinacota',1),(376,'011',6701,'',0,'011','Iquique',1),(377,'014',6701,'',0,'014','Tamarugal',1),(378,'021',6702,'',0,'021','Antofagasa',1),(379,'022',6702,'',0,'022','El Loa',1),(380,'023',6702,'',0,'023','Tocopilla',1),(381,'031',6703,'',0,'031','Copiapó',1),(382,'032',6703,'',0,'032','Chañaral',1),(383,'033',6703,'',0,'033','Huasco',1),(384,'041',6704,'',0,'041','Elqui',1),(385,'042',6704,'',0,'042','Choapa',1),(386,'043',6704,'',0,'043','Limarí',1),(387,'051',6705,'',0,'051','Valparaíso',1),(388,'052',6705,'',0,'052','Isla de Pascua',1),(389,'053',6705,'',0,'053','Los Andes',1),(390,'054',6705,'',0,'054','Petorca',1),(391,'055',6705,'',0,'055','Quillota',1),(392,'056',6705,'',0,'056','San Antonio',1),(393,'057',6705,'',0,'057','San Felipe de Aconcagua',1),(394,'058',6705,'',0,'058','Marga Marga',1),(395,'061',6706,'',0,'061','Cachapoal',1),(396,'062',6706,'',0,'062','Cardenal Caro',1),(397,'063',6706,'',0,'063','Colchagua',1),(398,'071',6707,'',0,'071','Talca',1),(399,'072',6707,'',0,'072','Cauquenes',1),(400,'073',6707,'',0,'073','Curicó',1),(401,'074',6707,'',0,'074','Linares',1),(402,'081',6708,'',0,'081','Concepción',1),(403,'082',6708,'',0,'082','Arauco',1),(404,'083',6708,'',0,'083','Biobío',1),(405,'084',6708,'',0,'084','Ñuble',1),(406,'091',6709,'',0,'091','Cautín',1),(407,'092',6709,'',0,'092','Malleco',1),(408,'141',6714,'',0,'141','Valdivia',1),(409,'142',6714,'',0,'142','Ranco',1),(410,'101',6710,'',0,'101','Llanquihue',1),(411,'102',6710,'',0,'102','Chiloé',1),(412,'103',6710,'',0,'103','Osorno',1),(413,'104',6710,'',0,'104','Palena',1),(414,'111',6711,'',0,'111','Coihaique',1),(415,'112',6711,'',0,'112','Aisén',1),(416,'113',6711,'',0,'113','Capitán Prat',1),(417,'114',6711,'',0,'114','General Carrera',1),(418,'121',6712,'',0,'121','Magallanes',1),(419,'122',6712,'',0,'122','Antártica Chilena',1),(420,'123',6712,'',0,'123','Tierra del Fuego',1),(421,'124',6712,'',0,'124','Última Esperanza',1),(422,'131',6713,'',0,'131','Santiago',1),(423,'132',6713,'',0,'132','Cordillera',1),(424,'133',6713,'',0,'133','Chacabuco',1),(425,'134',6713,'',0,'134','Maipo',1),(426,'135',6713,'',0,'135','Melipilla',1),(427,'136',6713,'',0,'136','Talagante',1),(428,'DIF',15401,'',0,'DIF','Distrito Federal',1),(429,'AGS',15401,'',0,'AGS','Aguascalientes',1),(430,'BCN',15401,'',0,'BCN','Baja California Norte',1),(431,'BCS',15401,'',0,'BCS','Baja California Sur',1),(432,'CAM',15401,'',0,'CAM','Campeche',1),(433,'CHP',15401,'',0,'CHP','Chiapas',1),(434,'CHI',15401,'',0,'CHI','Chihuahua',1),(435,'COA',15401,'',0,'COA','Coahuila',1),(436,'COL',15401,'',0,'COL','Colima',1),(437,'DUR',15401,'',0,'DUR','Durango',1),(438,'GTO',15401,'',0,'GTO','Guanajuato',1),(439,'GRO',15401,'',0,'GRO','Guerrero',1),(440,'HGO',15401,'',0,'HGO','Hidalgo',1),(441,'JAL',15401,'',0,'JAL','Jalisco',1),(442,'MEX',15401,'',0,'MEX','México',1),(443,'MIC',15401,'',0,'MIC','Michoacán de Ocampo',1),(444,'MOR',15401,'',0,'MOR','Morelos',1),(445,'NAY',15401,'',0,'NAY','Nayarit',1),(446,'NLE',15401,'',0,'NLE','Nuevo León',1),(447,'OAX',15401,'',0,'OAX','Oaxaca',1),(448,'PUE',15401,'',0,'PUE','Puebla',1),(449,'QRO',15401,'',0,'QRO','Querétaro',1),(451,'ROO',15401,'',0,'ROO','Quintana Roo',1),(452,'SLP',15401,'',0,'SLP','San Luis Potosí',1),(453,'SIN',15401,'',0,'SIN','Sinaloa',1),(454,'SON',15401,'',0,'SON','Sonora',1),(455,'TAB',15401,'',0,'TAB','Tabasco',1),(456,'TAM',15401,'',0,'TAM','Tamaulipas',1),(457,'TLX',15401,'',0,'TLX','Tlaxcala',1),(458,'VER',15401,'',0,'VER','Veracruz',1),(459,'YUC',15401,'',0,'YUC','Yucatán',1),(460,'ZAC',15401,'',0,'ZAC','Zacatecas',1),(461,'ANT',7001,'',0,'ANT','Antioquia',1),(462,'BOL',7001,'',0,'BOL','Bolívar',1),(463,'BOY',7001,'',0,'BOY','Boyacá',1),(464,'CAL',7001,'',0,'CAL','Caldas',1),(465,'CAU',7001,'',0,'CAU','Cauca',1),(466,'CUN',7001,'',0,'CUN','Cundinamarca',1),(467,'HUI',7001,'',0,'HUI','Huila',1),(468,'LAG',7001,'',0,'LAG','La Guajira',1),(469,'MET',7001,'',0,'MET','Meta',1),(470,'NAR',7001,'',0,'NAR','Nariño',1),(471,'NDS',7001,'',0,'NDS','Norte de Santander',1),(472,'SAN',7001,'',0,'SAN','Santander',1),(473,'SUC',7001,'',0,'SUC','Sucre',1),(474,'TOL',7001,'',0,'TOL','Tolima',1),(475,'VAC',7001,'',0,'VAC','Valle del Cauca',1),(476,'RIS',7001,'',0,'RIS','Risalda',1),(477,'ATL',7001,'',0,'ATL','Atlántico',1),(478,'COR',7001,'',0,'COR','Córdoba',1),(479,'SAP',7001,'',0,'SAP','San Andrés, Providencia y Santa Catalina',1),(480,'ARA',7001,'',0,'ARA','Arauca',1),(481,'CAS',7001,'',0,'CAS','Casanare',1),(482,'AMA',7001,'',0,'AMA','Amazonas',1),(483,'CAQ',7001,'',0,'CAQ','Caquetá',1),(484,'CHO',7001,'',0,'CHO','Chocó',1),(485,'GUA',7001,'',0,'GUA','Guainía',1),(486,'GUV',7001,'',0,'GUV','Guaviare',1),(487,'PUT',7001,'',0,'PUT','Putumayo',1),(488,'QUI',7001,'',0,'QUI','Quindío',1),(489,'VAU',7001,'',0,'VAU','Vaupés',1),(490,'BOG',7001,'',0,'BOG','Bogotá',1),(491,'VID',7001,'',0,'VID','Vichada',1),(492,'CES',7001,'',0,'CES','Cesar',1),(493,'MAG',7001,'',0,'MAG','Magdalena',1),(494,'AT',11401,'',0,'AT','Atlántida',1),(495,'CH',11401,'',0,'CH','Choluteca',1),(496,'CL',11401,'',0,'CL','Colón',1),(497,'CM',11401,'',0,'CM','Comayagua',1),(498,'CO',11401,'',0,'CO','Copán',1),(499,'CR',11401,'',0,'CR','Cortés',1),(500,'EP',11401,'',0,'EP','El Paraíso',1),(501,'FM',11401,'',0,'FM','Francisco Morazán',1),(502,'GD',11401,'',0,'GD','Gracias a Dios',1),(503,'IN',11401,'',0,'IN','Intibucá',1),(504,'IB',11401,'',0,'IB','Islas de la Bahía',1),(505,'LP',11401,'',0,'LP','La Paz',1),(506,'LM',11401,'',0,'LM','Lempira',1),(507,'OC',11401,'',0,'OC','Ocotepeque',1),(508,'OL',11401,'',0,'OL','Olancho',1),(509,'SB',11401,'',0,'SB','Santa Bárbara',1),(510,'VL',11401,'',0,'VL','Valle',1),(511,'YO',11401,'',0,'YO','Yoro',1),(512,'DC',11401,'',0,'DC','Distrito Central',1),(652,'CC',4601,'Oistins',0,'CC','Christ Church',1),(655,'SA',4601,'Greenland',0,'SA','Saint Andrew',1),(656,'SG',4601,'Bulkeley',0,'SG','Saint George',1),(657,'JA',4601,'Holetown',0,'JA','Saint James',1),(658,'SJ',4601,'Four Roads',0,'SJ','Saint John',1),(659,'SB',4601,'Bathsheba',0,'SB','Saint Joseph',1),(660,'SL',4601,'Crab Hill',0,'SL','Saint Lucy',1),(661,'SM',4601,'Bridgetown',0,'SM','Saint Michael',1),(662,'SP',4601,'Speightstown',0,'SP','Saint Peter',1),(663,'SC',4601,'Crane',0,'SC','Saint Philip',1),(664,'ST',4601,'Hillaby',0,'ST','Saint Thomas',1),(777,'AG',315,NULL,NULL,NULL,'AGRIGENTO',1),(778,'AL',312,NULL,NULL,NULL,'ALESSANDRIA',1),(779,'AN',310,NULL,NULL,NULL,'ANCONA',1),(780,'AO',319,NULL,NULL,NULL,'AOSTA',1),(781,'AR',316,NULL,NULL,NULL,'AREZZO',1),(782,'AP',310,NULL,NULL,NULL,'ASCOLI PICENO',1),(783,'AT',312,NULL,NULL,NULL,'ASTI',1),(784,'AV',304,NULL,NULL,NULL,'AVELLINO',1),(785,'BA',313,NULL,NULL,NULL,'BARI',1),(786,'BT',313,NULL,NULL,NULL,'BARLETTA-ANDRIA-TRANI',1),(787,'BL',320,NULL,NULL,NULL,'BELLUNO',1),(788,'BN',304,NULL,NULL,NULL,'BENEVENTO',1),(789,'BG',309,NULL,NULL,NULL,'BERGAMO',1),(790,'BI',312,NULL,NULL,NULL,'BIELLA',1),(791,'BO',305,NULL,NULL,NULL,'BOLOGNA',1),(792,'BZ',317,NULL,NULL,NULL,'BOLZANO',1),(793,'BS',309,NULL,NULL,NULL,'BRESCIA',1),(794,'BR',313,NULL,NULL,NULL,'BRINDISI',1),(795,'CA',314,NULL,NULL,NULL,'CAGLIARI',1),(796,'CL',315,NULL,NULL,NULL,'CALTANISSETTA',1),(797,'CB',311,NULL,NULL,NULL,'CAMPOBASSO',1),(798,'CI',314,NULL,NULL,NULL,'CARBONIA-IGLESIAS',1),(799,'CE',304,NULL,NULL,NULL,'CASERTA',1),(800,'CT',315,NULL,NULL,NULL,'CATANIA',1),(801,'CZ',303,NULL,NULL,NULL,'CATANZARO',1),(802,'CH',301,NULL,NULL,NULL,'CHIETI',1),(803,'CO',309,NULL,NULL,NULL,'COMO',1),(804,'CS',303,NULL,NULL,NULL,'COSENZA',1),(805,'CR',309,NULL,NULL,NULL,'CREMONA',1),(806,'KR',303,NULL,NULL,NULL,'CROTONE',1),(807,'CN',312,NULL,NULL,NULL,'CUNEO',1),(808,'EN',315,NULL,NULL,NULL,'ENNA',1),(809,'FM',310,NULL,NULL,NULL,'FERMO',1),(810,'FE',305,NULL,NULL,NULL,'FERRARA',1),(811,'FI',316,NULL,NULL,NULL,'FIRENZE',1),(812,'FG',313,NULL,NULL,NULL,'FOGGIA',1),(813,'FC',305,NULL,NULL,NULL,'FORLI-CESENA',1),(814,'FR',307,NULL,NULL,NULL,'FROSINONE',1),(815,'GE',308,NULL,NULL,NULL,'GENOVA',1),(816,'GO',306,NULL,NULL,NULL,'GORIZIA',1),(817,'GR',316,NULL,NULL,NULL,'GROSSETO',1),(818,'IM',308,NULL,NULL,NULL,'IMPERIA',1),(819,'IS',311,NULL,NULL,NULL,'ISERNIA',1),(820,'SP',308,NULL,NULL,NULL,'LA SPEZIA',1),(821,'AQ',301,NULL,NULL,NULL,'L AQUILA',1),(822,'LT',307,NULL,NULL,NULL,'LATINA',1),(823,'LE',313,NULL,NULL,NULL,'LECCE',1),(824,'LC',309,NULL,NULL,NULL,'LECCO',1),(825,'LI',314,NULL,NULL,NULL,'LIVORNO',1),(826,'LO',309,NULL,NULL,NULL,'LODI',1),(827,'LU',316,NULL,NULL,NULL,'LUCCA',1),(828,'MC',310,NULL,NULL,NULL,'MACERATA',1),(829,'MN',309,NULL,NULL,NULL,'MANTOVA',1),(830,'MS',316,NULL,NULL,NULL,'MASSA-CARRARA',1),(831,'MT',302,NULL,NULL,NULL,'MATERA',1),(832,'VS',314,NULL,NULL,NULL,'MEDIO CAMPIDANO',1),(833,'ME',315,NULL,NULL,NULL,'MESSINA',1),(834,'MI',309,NULL,NULL,NULL,'MILANO',1),(835,'MB',309,NULL,NULL,NULL,'MONZA e BRIANZA',1),(836,'MO',305,NULL,NULL,NULL,'MODENA',1),(837,'NA',304,NULL,NULL,NULL,'NAPOLI',1),(838,'NO',312,NULL,NULL,NULL,'NOVARA',1),(839,'NU',314,NULL,NULL,NULL,'NUORO',1),(840,'OG',314,NULL,NULL,NULL,'OGLIASTRA',1),(841,'OT',314,NULL,NULL,NULL,'OLBIA-TEMPIO',1),(842,'OR',314,NULL,NULL,NULL,'ORISTANO',1),(843,'PD',320,NULL,NULL,NULL,'PADOVA',1),(844,'PA',315,NULL,NULL,NULL,'PALERMO',1),(845,'PR',305,NULL,NULL,NULL,'PARMA',1),(846,'PV',309,NULL,NULL,NULL,'PAVIA',1),(847,'PG',318,NULL,NULL,NULL,'PERUGIA',1),(848,'PU',310,NULL,NULL,NULL,'PESARO e URBINO',1),(849,'PE',301,NULL,NULL,NULL,'PESCARA',1),(850,'PC',305,NULL,NULL,NULL,'PIACENZA',1),(851,'PI',316,NULL,NULL,NULL,'PISA',1),(852,'PT',316,NULL,NULL,NULL,'PISTOIA',1),(853,'PN',306,NULL,NULL,NULL,'PORDENONE',1),(854,'PZ',302,NULL,NULL,NULL,'POTENZA',1),(855,'PO',316,NULL,NULL,NULL,'PRATO',1),(856,'RG',315,NULL,NULL,NULL,'RAGUSA',1),(857,'RA',305,NULL,NULL,NULL,'RAVENNA',1),(858,'RC',303,NULL,NULL,NULL,'REGGIO CALABRIA',1),(859,'RE',305,NULL,NULL,NULL,'REGGIO NELL EMILIA',1),(860,'RI',307,NULL,NULL,NULL,'RIETI',1),(861,'RN',305,NULL,NULL,NULL,'RIMINI',1),(862,'RM',307,NULL,NULL,NULL,'ROMA',1),(863,'RO',320,NULL,NULL,NULL,'ROVIGO',1),(864,'SA',304,NULL,NULL,NULL,'SALERNO',1),(865,'SS',314,NULL,NULL,NULL,'SASSARI',1),(866,'SV',308,NULL,NULL,NULL,'SAVONA',1),(867,'SI',316,NULL,NULL,NULL,'SIENA',1),(868,'SR',315,NULL,NULL,NULL,'SIRACUSA',1),(869,'SO',309,NULL,NULL,NULL,'SONDRIO',1),(870,'TA',313,NULL,NULL,NULL,'TARANTO',1),(871,'TE',301,NULL,NULL,NULL,'TERAMO',1),(872,'TR',318,NULL,NULL,NULL,'TERNI',1),(873,'TO',312,NULL,NULL,NULL,'TORINO',1),(874,'TP',315,NULL,NULL,NULL,'TRAPANI',1),(875,'TN',317,NULL,NULL,NULL,'TRENTO',1),(876,'TV',320,NULL,NULL,NULL,'TREVISO',1),(877,'TS',306,NULL,NULL,NULL,'TRIESTE',1),(878,'UD',306,NULL,NULL,NULL,'UDINE',1),(879,'VA',309,NULL,NULL,NULL,'VARESE',1),(880,'VE',320,NULL,NULL,NULL,'VENEZIA',1),(881,'VB',312,NULL,NULL,NULL,'VERBANO-CUSIO-OSSOLA',1),(882,'VC',312,NULL,NULL,NULL,'VERCELLI',1),(883,'VR',320,NULL,NULL,NULL,'VERONA',1),(884,'VV',303,NULL,NULL,NULL,'VIBO VALENTIA',1),(885,'VI',320,NULL,NULL,NULL,'VICENZA',1),(886,'VT',307,NULL,NULL,NULL,'VITERBO',1),(1036,'VE-L',23201,'',0,'VE-L','Mérida',1),(1037,'VE-T',23201,'',0,'VE-T','Trujillo',1),(1038,'VE-E',23201,'',0,'VE-E','Barinas',1),(1039,'VE-M',23202,'',0,'VE-M','Miranda',1),(1040,'VE-W',23202,'',0,'VE-W','Vargas',1),(1041,'VE-A',23202,'',0,'VE-A','Distrito Capital',1),(1042,'VE-D',23203,'',0,'VE-D','Aragua',1),(1043,'VE-G',23203,'',0,'VE-G','Carabobo',1),(1044,'VE-I',23204,'',0,'VE-I','Falcón',1),(1045,'VE-K',23204,'',0,'VE-K','Lara',1),(1046,'VE-U',23204,'',0,'VE-U','Yaracuy',1),(1047,'VE-F',23205,'',0,'VE-F','Bolívar',1),(1048,'VE-X',23205,'',0,'VE-X','Amazonas',1),(1049,'VE-Y',23205,'',0,'VE-Y','Delta Amacuro',1),(1050,'VE-O',23206,'',0,'VE-O','Nueva Esparta',1),(1051,'VE-Z',23206,'',0,'VE-Z','Dependencias Federales',1),(1052,'VE-C',23207,'',0,'VE-C','Apure',1),(1053,'VE-J',23207,'',0,'VE-J','Guárico',1),(1054,'VE-H',23207,'',0,'VE-H','Cojedes',1),(1055,'VE-P',23207,'',0,'VE-P','Portuguesa',1),(1056,'VE-B',23208,'',0,'VE-B','Anzoátegui',1),(1057,'VE-N',23208,'',0,'VE-N','Monagas',1),(1058,'VE-R',23208,'',0,'VE-R','Sucre',1),(1059,'VE-V',23209,'',0,'VE-V','Zulia',1),(1060,'VE-S',23209,'',0,'VE-S','Táchira',1),(1061,'66',10201,NULL,NULL,NULL,'?????',1),(1062,'00',10205,NULL,NULL,NULL,'?????',1),(1063,'01',10205,NULL,NULL,NULL,'?????',1),(1064,'02',10205,NULL,NULL,NULL,'?????',1),(1065,'03',10205,NULL,NULL,NULL,'??????',1),(1066,'04',10205,NULL,NULL,NULL,'?????',1),(1067,'05',10205,NULL,NULL,NULL,'??????',1),(1068,'06',10203,NULL,NULL,NULL,'??????',1),(1069,'07',10203,NULL,NULL,NULL,'???????????',1),(1070,'08',10203,NULL,NULL,NULL,'??????',1),(1071,'09',10203,NULL,NULL,NULL,'?????',1),(1072,'10',10203,NULL,NULL,NULL,'??????',1),(1073,'11',10203,NULL,NULL,NULL,'??????',1),(1074,'12',10203,NULL,NULL,NULL,'?????????',1),(1075,'13',10206,NULL,NULL,NULL,'????',1),(1076,'14',10206,NULL,NULL,NULL,'?????????',1),(1077,'15',10206,NULL,NULL,NULL,'????????',1),(1078,'16',10206,NULL,NULL,NULL,'???????',1),(1079,'17',10213,NULL,NULL,NULL,'???????',1),(1080,'18',10213,NULL,NULL,NULL,'????????',1),(1081,'19',10213,NULL,NULL,NULL,'??????',1),(1082,'20',10213,NULL,NULL,NULL,'???????',1),(1083,'21',10212,NULL,NULL,NULL,'????????',1),(1084,'22',10212,NULL,NULL,NULL,'??????',1),(1085,'23',10212,NULL,NULL,NULL,'????????',1),(1086,'24',10212,NULL,NULL,NULL,'???????',1),(1087,'25',10212,NULL,NULL,NULL,'????????',1),(1088,'26',10212,NULL,NULL,NULL,'???????',1),(1089,'27',10202,NULL,NULL,NULL,'??????',1),(1090,'28',10202,NULL,NULL,NULL,'?????????',1),(1091,'29',10202,NULL,NULL,NULL,'????????',1),(1092,'30',10202,NULL,NULL,NULL,'??????',1),(1093,'31',10209,NULL,NULL,NULL,'????????',1),(1094,'32',10209,NULL,NULL,NULL,'???????',1),(1095,'33',10209,NULL,NULL,NULL,'????????',1),(1096,'34',10209,NULL,NULL,NULL,'???????',1),(1097,'35',10209,NULL,NULL,NULL,'????????',1),(1098,'36',10211,NULL,NULL,NULL,'???????????????',1),(1099,'37',10211,NULL,NULL,NULL,'?????',1),(1100,'38',10211,NULL,NULL,NULL,'?????',1),(1101,'39',10207,NULL,NULL,NULL,'????????',1),(1102,'40',10207,NULL,NULL,NULL,'???????',1),(1103,'41',10207,NULL,NULL,NULL,'??????????',1),(1104,'42',10207,NULL,NULL,NULL,'?????',1),(1105,'43',10207,NULL,NULL,NULL,'???????',1),(1106,'44',10208,NULL,NULL,NULL,'??????',1),(1107,'45',10208,NULL,NULL,NULL,'??????',1),(1108,'46',10208,NULL,NULL,NULL,'??????',1),(1109,'47',10208,NULL,NULL,NULL,'?????',1),(1110,'48',10208,NULL,NULL,NULL,'????',1),(1111,'49',10210,NULL,NULL,NULL,'??????',1),(1112,'50',10210,NULL,NULL,NULL,'????',1),(1113,'51',10210,NULL,NULL,NULL,'????????',1),(1114,'52',10210,NULL,NULL,NULL,'????????',1),(1115,'53',10210,NULL,NULL,NULL,'???-??????',1),(1116,'54',10210,NULL,NULL,NULL,'??',1),(1117,'55',10210,NULL,NULL,NULL,'?????',1),(1118,'56',10210,NULL,NULL,NULL,'???????',1),(1119,'57',10210,NULL,NULL,NULL,'?????',1),(1120,'58',10210,NULL,NULL,NULL,'?????',1),(1121,'59',10210,NULL,NULL,NULL,'?????',1),(1122,'60',10210,NULL,NULL,NULL,'?????',1),(1123,'61',10210,NULL,NULL,NULL,'?????',1),(1124,'62',10204,NULL,NULL,NULL,'????????',1),(1125,'63',10204,NULL,NULL,NULL,'??????',1),(1126,'64',10204,NULL,NULL,NULL,'???????',1),(1127,'65',10204,NULL,NULL,NULL,'?????',1),(1128,'AL01',1301,'',0,'','Wilaya d\'Adrar',1),(1129,'AL02',1301,'',0,'','Wilaya de Chlef',1),(1130,'AL03',1301,'',0,'','Wilaya de Laghouat',1),(1131,'AL04',1301,'',0,'','Wilaya d\'Oum El Bouaghi',1),(1132,'AL05',1301,'',0,'','Wilaya de Batna',1),(1133,'AL06',1301,'',0,'','Wilaya de Béjaïa',1),(1134,'AL07',1301,'',0,'','Wilaya de Biskra',1),(1135,'AL08',1301,'',0,'','Wilaya de Béchar',1),(1136,'AL09',1301,'',0,'','Wilaya de Blida',1),(1137,'AL11',1301,'',0,'','Wilaya de Bouira',1),(1138,'AL12',1301,'',0,'','Wilaya de Tamanrasset',1),(1139,'AL13',1301,'',0,'','Wilaya de Tébessa',1),(1140,'AL14',1301,'',0,'','Wilaya de Tlemcen',1),(1141,'AL15',1301,'',0,'','Wilaya de Tiaret',1),(1142,'AL16',1301,'',0,'','Wilaya de Tizi Ouzou',1),(1143,'AL17',1301,'',0,'','Wilaya d\'Alger',1),(1144,'AL18',1301,'',0,'','Wilaya de Djelfa',1),(1145,'AL19',1301,'',0,'','Wilaya de Jijel',1),(1146,'AL20',1301,'',0,'','Wilaya de Sétif ',1),(1147,'AL21',1301,'',0,'','Wilaya de Saïda',1),(1148,'AL22',1301,'',0,'','Wilaya de Skikda',1),(1149,'AL23',1301,'',0,'','Wilaya de Sidi Bel Abbès',1),(1150,'AL24',1301,'',0,'','Wilaya d\'Annaba',1),(1151,'AL25',1301,'',0,'','Wilaya de Guelma',1),(1152,'AL26',1301,'',0,'','Wilaya de Constantine',1),(1153,'AL27',1301,'',0,'','Wilaya de Médéa',1),(1154,'AL28',1301,'',0,'','Wilaya de Mostaganem',1),(1155,'AL29',1301,'',0,'','Wilaya de M\'Sila',1),(1156,'AL30',1301,'',0,'','Wilaya de Mascara',1),(1157,'AL31',1301,'',0,'','Wilaya d\'Ouargla',1),(1158,'AL32',1301,'',0,'','Wilaya d\'Oran',1),(1159,'AL33',1301,'',0,'','Wilaya d\'El Bayadh',1),(1160,'AL34',1301,'',0,'','Wilaya d\'Illizi',1),(1161,'AL35',1301,'',0,'','Wilaya de Bordj Bou Arreridj',1),(1162,'AL36',1301,'',0,'','Wilaya de Boumerdès',1),(1163,'AL37',1301,'',0,'','Wilaya d\'El Tarf',1),(1164,'AL38',1301,'',0,'','Wilaya de Tindouf',1),(1165,'AL39',1301,'',0,'','Wilaya de Tissemsilt',1),(1166,'AL40',1301,'',0,'','Wilaya d\'El Oued',1),(1167,'AL41',1301,'',0,'','Wilaya de Khenchela',1),(1168,'AL42',1301,'',0,'','Wilaya de Souk Ahras',1),(1169,'AL43',1301,'',0,'','Wilaya de Tipaza',1),(1170,'AL44',1301,'',0,'','Wilaya de Mila',1),(1171,'AL45',1301,'',0,'','Wilaya d\'Aïn Defla',1),(1172,'AL46',1301,'',0,'','Wilaya de Naâma',1),(1173,'AL47',1301,'',0,'','Wilaya d\'Aïn Témouchent',1),(1174,'AL48',1301,'',0,'','Wilaya de Ghardaia',1),(1175,'AL49',1301,'',0,'','Wilaya de Relizane',1),(1176,'MA',1209,'',0,'','Province de Benslimane',1),(1177,'MA1',1209,'',0,'','Province de Berrechid',1),(1178,'MA2',1209,'',0,'','Province de Khouribga',1),(1179,'MA3',1209,'',0,'','Province de Settat',1),(1180,'MA4',1210,'',0,'','Province d\'El Jadida',1),(1181,'MA5',1210,'',0,'','Province de Safi',1),(1182,'MA6',1210,'',0,'','Province de Sidi Bennour',1),(1183,'MA7',1210,'',0,'','Province de Youssoufia',1),(1184,'MA6B',1205,'',0,'','Préfecture de Fès',1),(1185,'MA7B',1205,'',0,'','Province de Boulemane',1),(1186,'MA8',1205,'',0,'','Province de Moulay Yacoub',1),(1187,'MA9',1205,'',0,'','Province de Sefrou',1),(1188,'MA8A',1202,'',0,'','Province de Kénitra',1),(1189,'MA9A',1202,'',0,'','Province de Sidi Kacem',1),(1190,'MA10',1202,'',0,'','Province de Sidi Slimane',1),(1191,'MA11',1208,'',0,'','Préfecture de Casablanca',1),(1192,'MA12',1208,'',0,'','Préfecture de Mohammédia',1),(1193,'MA13',1208,'',0,'','Province de Médiouna',1),(1194,'MA14',1208,'',0,'','Province de Nouaceur',1),(1195,'MA15',1214,'',0,'','Province d\'Assa-Zag',1),(1196,'MA16',1214,'',0,'','Province d\'Es-Semara',1),(1197,'MA17A',1214,'',0,'','Province de Guelmim',1),(1198,'MA18',1214,'',0,'','Province de Tata',1),(1199,'MA19',1214,'',0,'','Province de Tan-Tan',1),(1200,'MA15',1215,'',0,'','Province de Boujdour',1),(1201,'MA16',1215,'',0,'','Province de Lâayoune',1),(1202,'MA17',1215,'',0,'','Province de Tarfaya',1),(1203,'MA18',1211,'',0,'','Préfecture de Marrakech',1),(1204,'MA19',1211,'',0,'','Province d\'Al Haouz',1),(1205,'MA20',1211,'',0,'','Province de Chichaoua',1),(1206,'MA21',1211,'',0,'','Province d\'El Kelâa des Sraghna',1),(1207,'MA22',1211,'',0,'','Province d\'Essaouira',1),(1208,'MA23',1211,'',0,'','Province de Rehamna',1),(1209,'MA24',1206,'',0,'','Préfecture de Meknès',1),(1210,'MA25',1206,'',0,'','Province d’El Hajeb',1),(1211,'MA26',1206,'',0,'','Province d\'Errachidia',1),(1212,'MA27',1206,'',0,'','Province d’Ifrane',1),(1213,'MA28',1206,'',0,'','Province de Khénifra',1),(1214,'MA29',1206,'',0,'','Province de Midelt',1),(1215,'MA30',1204,'',0,'','Préfecture d\'Oujda-Angad',1),(1216,'MA31',1204,'',0,'','Province de Berkane',1),(1217,'MA32',1204,'',0,'','Province de Driouch',1),(1218,'MA33',1204,'',0,'','Province de Figuig',1),(1219,'MA34',1204,'',0,'','Province de Jerada',1),(1220,'MA35',1204,'',0,'','Province de Nadorgg',1),(1221,'MA36',1204,'',0,'','Province de Taourirt',1),(1222,'MA37',1216,'',0,'','Province d\'Aousserd',1),(1223,'MA38',1216,'',0,'','Province d\'Oued Ed-Dahab',1),(1224,'MA39',1207,'',0,'','Préfecture de Rabat',1),(1225,'MA40',1207,'',0,'','Préfecture de Skhirat-Témara',1),(1226,'MA41',1207,'',0,'','Préfecture de Salé',1),(1227,'MA42',1207,'',0,'','Province de Khémisset',1),(1228,'MA43',1213,'',0,'','Préfecture d\'Agadir Ida-Outanane',1),(1229,'MA44',1213,'',0,'','Préfecture d\'Inezgane-Aït Melloul',1),(1230,'MA45',1213,'',0,'','Province de Chtouka-Aït Baha',1),(1231,'MA46',1213,'',0,'','Province d\'Ouarzazate',1),(1232,'MA47',1213,'',0,'','Province de Sidi Ifni',1),(1233,'MA48',1213,'',0,'','Province de Taroudant',1),(1234,'MA49',1213,'',0,'','Province de Tinghir',1),(1235,'MA50',1213,'',0,'','Province de Tiznit',1),(1236,'MA51',1213,'',0,'','Province de Zagora',1),(1237,'MA52',1212,'',0,'','Province d\'Azilal',1),(1238,'MA53',1212,'',0,'','Province de Beni Mellal',1),(1239,'MA54',1212,'',0,'','Province de Fquih Ben Salah',1),(1240,'MA55',1201,'',0,'','Préfecture de M\'diq-Fnideq',1),(1241,'MA56',1201,'',0,'','Préfecture de Tanger-Asilah',1),(1242,'MA57',1201,'',0,'','Province de Chefchaouen',1),(1243,'MA58',1201,'',0,'','Province de Fahs-Anjra',1),(1244,'MA59',1201,'',0,'','Province de Larache',1),(1245,'MA60',1201,'',0,'','Province d\'Ouezzane',1),(1246,'MA61',1201,'',0,'','Province de Tétouan',1),(1247,'MA62',1203,'',0,'','Province de Guercif',1),(1248,'MA63',1203,'',0,'','Province d\'Al Hoceïma',1),(1249,'MA64',1203,'',0,'','Province de Taounate',1),(1250,'MA65',1203,'',0,'','Province de Taza',1),(1251,'MA6A',1205,'',0,'','Préfecture de Fès',1),(1252,'MA7A',1205,'',0,'','Province de Boulemane',1),(1253,'MA15A',1214,'',0,'','Province d\'Assa-Zag',1),(1254,'MA16A',1214,'',0,'','Province d\'Es-Semara',1),(1255,'MA18A',1211,'',0,'','Préfecture de Marrakech',1),(1256,'MA19A',1214,'',0,'','Province de Tan-Tan',1),(1257,'MA19B',1214,'',0,'','Province de Tan-Tan',1),(1258,'TN01',1001,'',0,'','Ariana',1),(1259,'TN02',1001,'',0,'','Béja',1),(1260,'TN03',1001,'',0,'','Ben Arous',1),(1261,'TN04',1001,'',0,'','Bizerte',1),(1262,'TN05',1001,'',0,'','Gabès',1),(1263,'TN06',1001,'',0,'','Gafsa',1),(1264,'TN07',1001,'',0,'','Jendouba',1),(1265,'TN08',1001,'',0,'','Kairouan',1),(1266,'TN09',1001,'',0,'','Kasserine',1),(1267,'TN10',1001,'',0,'','Kébili',1),(1268,'TN11',1001,'',0,'','La Manouba',1),(1269,'TN12',1001,'',0,'','Le Kef',1),(1270,'TN13',1001,'',0,'','Mahdia',1),(1271,'TN14',1001,'',0,'','Médenine',1),(1272,'TN15',1001,'',0,'','Monastir',1),(1273,'TN16',1001,'',0,'','Nabeul',1),(1274,'TN17',1001,'',0,'','Sfax',1),(1275,'TN18',1001,'',0,'','Sidi Bouzid',1),(1276,'TN19',1001,'',0,'','Siliana',1),(1277,'TN20',1001,'',0,'','Sousse',1),(1278,'TN21',1001,'',0,'','Tataouine',1),(1279,'TN22',1001,'',0,'','Tozeur',1),(1280,'TN23',1001,'',0,'','Tunis',1),(1281,'TN24',1001,'',0,'','Zaghouan',1),(1287,'976',6,'97601',3,'MAYOTTE','Mayotte',1),(1513,'ON',1401,'',1,'','Ontario',1),(1514,'QC',1401,'',1,'','Quebec',1),(1515,'NS',1401,'',1,'','Nova Scotia',1),(1516,'NB',1401,'',1,'','New Brunswick',1),(1517,'MB',1401,'',1,'','Manitoba',1),(1518,'BC',1401,'',1,'','British Columbia',1),(1519,'PE',1401,'',1,'','Prince Edward Island',1),(1520,'SK',1401,'',1,'','Saskatchewan',1),(1521,'AB',1401,'',1,'','Alberta',1),(1522,'NL',1401,'',1,'','Newfoundland and Labrador',1),(1575,'BW',501,NULL,NULL,'BADEN-WÜRTTEMBERG','Baden-Württemberg',1),(1576,'BY',501,NULL,NULL,'BAYERN','Bayern',1),(1577,'BE',501,NULL,NULL,'BERLIN','Berlin',1),(1578,'BB',501,NULL,NULL,'BRANDENBURG','Brandenburg',1),(1579,'HB',501,NULL,NULL,'BREMEN','Bremen',1),(1580,'HH',501,NULL,NULL,'HAMBURG','Hamburg',1),(1581,'HE',501,NULL,NULL,'HESSEN','Hessen',1),(1582,'MV',501,NULL,NULL,'MECKLENBURG-VORPOMMERN','Mecklenburg-Vorpommern',1),(1583,'NI',501,NULL,NULL,'NIEDERSACHSEN','Niedersachsen',1),(1584,'NW',501,NULL,NULL,'NORDRHEIN-WESTFALEN','Nordrhein-Westfalen',1),(1585,'RP',501,NULL,NULL,'RHEINLAND-PFALZ','Rheinland-Pfalz',1),(1586,'SL',501,NULL,NULL,'SAARLAND','Saarland',1),(1587,'SN',501,NULL,NULL,'SACHSEN','Sachsen',1),(1588,'ST',501,NULL,NULL,'SACHSEN-ANHALT','Sachsen-Anhalt',1),(1589,'SH',501,NULL,NULL,'SCHLESWIG-HOLSTEIN','Schleswig-Holstein',1),(1590,'TH',501,NULL,NULL,'THÜRINGEN','Thüringen',1),(1592,'67',10205,'',0,'','Δράμα',1),(1684,'701',701,NULL,0,NULL,'Bedfordshire',1),(1685,'702',701,NULL,0,NULL,'Berkshire',1),(1686,'703',701,NULL,0,NULL,'Bristol, City of',1),(1687,'704',701,NULL,0,NULL,'Buckinghamshire',1),(1688,'705',701,NULL,0,NULL,'Cambridgeshire',1),(1689,'706',701,NULL,0,NULL,'Cheshire',1),(1690,'707',701,NULL,0,NULL,'Cleveland',1),(1691,'708',701,NULL,0,NULL,'Cornwall',1),(1692,'709',701,NULL,0,NULL,'Cumberland',1),(1693,'710',701,NULL,0,NULL,'Cumbria',1),(1694,'711',701,NULL,0,NULL,'Derbyshire',1),(1695,'712',701,NULL,0,NULL,'Devon',1),(1696,'713',701,NULL,0,NULL,'Dorset',1),(1697,'714',701,NULL,0,NULL,'Co. Durham',1),(1698,'715',701,NULL,0,NULL,'East Riding of Yorkshire',1),(1699,'716',701,NULL,0,NULL,'East Sussex',1),(1700,'717',701,NULL,0,NULL,'Essex',1),(1701,'718',701,NULL,0,NULL,'Gloucestershire',1),(1702,'719',701,NULL,0,NULL,'Greater Manchester',1),(1703,'720',701,NULL,0,NULL,'Hampshire',1),(1704,'721',701,NULL,0,NULL,'Hertfordshire',1),(1705,'722',701,NULL,0,NULL,'Hereford and Worcester',1),(1706,'723',701,NULL,0,NULL,'Herefordshire',1),(1707,'724',701,NULL,0,NULL,'Huntingdonshire',1),(1708,'725',701,NULL,0,NULL,'Isle of Man',1),(1709,'726',701,NULL,0,NULL,'Isle of Wight',1),(1710,'727',701,NULL,0,NULL,'Jersey',1),(1711,'728',701,NULL,0,NULL,'Kent',1),(1712,'729',701,NULL,0,NULL,'Lancashire',1),(1713,'730',701,NULL,0,NULL,'Leicestershire',1),(1714,'731',701,NULL,0,NULL,'Lincolnshire',1),(1715,'732',701,NULL,0,NULL,'London - City of London',1),(1716,'733',701,NULL,0,NULL,'Merseyside',1),(1717,'734',701,NULL,0,NULL,'Middlesex',1),(1718,'735',701,NULL,0,NULL,'Norfolk',1),(1719,'736',701,NULL,0,NULL,'North Yorkshire',1),(1720,'737',701,NULL,0,NULL,'North Riding of Yorkshire',1),(1721,'738',701,NULL,0,NULL,'Northamptonshire',1),(1722,'739',701,NULL,0,NULL,'Northumberland',1),(1723,'740',701,NULL,0,NULL,'Nottinghamshire',1),(1724,'741',701,NULL,0,NULL,'Oxfordshire',1),(1725,'742',701,NULL,0,NULL,'Rutland',1),(1726,'743',701,NULL,0,NULL,'Shropshire',1),(1727,'744',701,NULL,0,NULL,'Somerset',1),(1728,'745',701,NULL,0,NULL,'Staffordshire',1),(1729,'746',701,NULL,0,NULL,'Suffolk',1),(1730,'747',701,NULL,0,NULL,'Surrey',1),(1731,'748',701,NULL,0,NULL,'Sussex',1),(1732,'749',701,NULL,0,NULL,'Tyne and Wear',1),(1733,'750',701,NULL,0,NULL,'Warwickshire',1),(1734,'751',701,NULL,0,NULL,'West Midlands',1),(1735,'752',701,NULL,0,NULL,'West Sussex',1),(1736,'753',701,NULL,0,NULL,'West Yorkshire',1),(1737,'754',701,NULL,0,NULL,'West Riding of Yorkshire',1),(1738,'755',701,NULL,0,NULL,'Wiltshire',1),(1739,'756',701,NULL,0,NULL,'Worcestershire',1),(1740,'757',701,NULL,0,NULL,'Yorkshire',1),(1741,'758',702,NULL,0,NULL,'Anglesey',1),(1742,'759',702,NULL,0,NULL,'Breconshire',1),(1743,'760',702,NULL,0,NULL,'Caernarvonshire',1),(1744,'761',702,NULL,0,NULL,'Cardiganshire',1),(1745,'762',702,NULL,0,NULL,'Carmarthenshire',1),(1746,'763',702,NULL,0,NULL,'Ceredigion',1),(1747,'764',702,NULL,0,NULL,'Denbighshire',1),(1748,'765',702,NULL,0,NULL,'Flintshire',1),(1749,'766',702,NULL,0,NULL,'Glamorgan',1),(1750,'767',702,NULL,0,NULL,'Gwent',1),(1751,'768',702,NULL,0,NULL,'Gwynedd',1),(1752,'769',702,NULL,0,NULL,'Merionethshire',1),(1753,'770',702,NULL,0,NULL,'Monmouthshire',1),(1754,'771',702,NULL,0,NULL,'Mid Glamorgan',1),(1755,'772',702,NULL,0,NULL,'Montgomeryshire',1),(1756,'773',702,NULL,0,NULL,'Pembrokeshire',1),(1757,'774',702,NULL,0,NULL,'Powys',1),(1758,'775',702,NULL,0,NULL,'Radnorshire',1),(1759,'776',702,NULL,0,NULL,'South Glamorgan',1),(1760,'777',703,NULL,0,NULL,'Aberdeen, City of',1),(1761,'778',703,NULL,0,NULL,'Angus',1),(1762,'779',703,NULL,0,NULL,'Argyll',1),(1763,'780',703,NULL,0,NULL,'Ayrshire',1),(1764,'781',703,NULL,0,NULL,'Banffshire',1),(1765,'782',703,NULL,0,NULL,'Berwickshire',1),(1766,'783',703,NULL,0,NULL,'Bute',1),(1767,'784',703,NULL,0,NULL,'Caithness',1),(1768,'785',703,NULL,0,NULL,'Clackmannanshire',1),(1769,'786',703,NULL,0,NULL,'Dumfriesshire',1),(1770,'787',703,NULL,0,NULL,'Dumbartonshire',1),(1771,'788',703,NULL,0,NULL,'Dundee, City of',1),(1772,'789',703,NULL,0,NULL,'East Lothian',1),(1773,'790',703,NULL,0,NULL,'Fife',1),(1774,'791',703,NULL,0,NULL,'Inverness',1),(1775,'792',703,NULL,0,NULL,'Kincardineshire',1),(1776,'793',703,NULL,0,NULL,'Kinross-shire',1),(1777,'794',703,NULL,0,NULL,'Kirkcudbrightshire',1),(1778,'795',703,NULL,0,NULL,'Lanarkshire',1),(1779,'796',703,NULL,0,NULL,'Midlothian',1),(1780,'797',703,NULL,0,NULL,'Morayshire',1),(1781,'798',703,NULL,0,NULL,'Nairnshire',1),(1782,'799',703,NULL,0,NULL,'Orkney',1),(1783,'800',703,NULL,0,NULL,'Peebleshire',1),(1784,'801',703,NULL,0,NULL,'Perthshire',1),(1785,'802',703,NULL,0,NULL,'Renfrewshire',1),(1786,'803',703,NULL,0,NULL,'Ross & Cromarty',1),(1787,'804',703,NULL,0,NULL,'Roxburghshire',1),(1788,'805',703,NULL,0,NULL,'Selkirkshire',1),(1789,'806',703,NULL,0,NULL,'Shetland',1),(1790,'807',703,NULL,0,NULL,'Stirlingshire',1),(1791,'808',703,NULL,0,NULL,'Sutherland',1),(1792,'809',703,NULL,0,NULL,'West Lothian',1),(1793,'810',703,NULL,0,NULL,'Wigtownshire',1),(1794,'811',704,NULL,0,NULL,'Antrim',1),(1795,'812',704,NULL,0,NULL,'Armagh',1),(1796,'813',704,NULL,0,NULL,'Co. Down',1),(1797,'814',704,NULL,0,NULL,'Co. Fermanagh',1),(1798,'815',704,NULL,0,NULL,'Co. Londonderry',1),(1849,'GR',1701,NULL,NULL,NULL,'Groningen',1),(1850,'FR',1701,NULL,NULL,NULL,'Friesland',1),(1851,'DR',1701,NULL,NULL,NULL,'Drenthe',1),(1852,'OV',1701,NULL,NULL,NULL,'Overijssel',1),(1853,'GD',1701,NULL,NULL,NULL,'Gelderland',1),(1854,'FL',1701,NULL,NULL,NULL,'Flevoland',1),(1855,'UT',1701,NULL,NULL,NULL,'Utrecht',1),(1856,'NH',1701,NULL,NULL,NULL,'Noord-Holland',1),(1857,'ZH',1701,NULL,NULL,NULL,'Zuid-Holland',1),(1858,'ZL',1701,NULL,NULL,NULL,'Zeeland',1),(1859,'NB',1701,NULL,NULL,NULL,'Noord-Brabant',1),(1860,'LB',1701,NULL,NULL,NULL,'Limburg',1),(1900,'AC',5601,'ACRE',0,'AC','Acre',1),(1901,'AL',5601,'ALAGOAS',0,'AL','Alagoas',1),(1902,'AP',5601,'AMAPA',0,'AP','Amapá',1),(1903,'AM',5601,'AMAZONAS',0,'AM','Amazonas',1),(1904,'BA',5601,'BAHIA',0,'BA','Bahia',1),(1905,'CE',5601,'CEARA',0,'CE','Ceará',1),(1906,'ES',5601,'ESPIRITO SANTO',0,'ES','Espirito Santo',1),(1907,'GO',5601,'GOIAS',0,'GO','Goiás',1),(1908,'MA',5601,'MARANHAO',0,'MA','Maranhão',1),(1909,'MT',5601,'MATO GROSSO',0,'MT','Mato Grosso',1),(1910,'MS',5601,'MATO GROSSO DO SUL',0,'MS','Mato Grosso do Sul',1),(1911,'MG',5601,'MINAS GERAIS',0,'MG','Minas Gerais',1),(1912,'PA',5601,'PARA',0,'PA','Pará',1),(1913,'PB',5601,'PARAIBA',0,'PB','Paraiba',1),(1914,'PR',5601,'PARANA',0,'PR','Paraná',1),(1915,'PE',5601,'PERNAMBUCO',0,'PE','Pernambuco',1),(1916,'PI',5601,'PIAUI',0,'PI','Piauí',1),(1917,'RJ',5601,'RIO DE JANEIRO',0,'RJ','Rio de Janeiro',1),(1918,'RN',5601,'RIO GRANDE DO NORTE',0,'RN','Rio Grande do Norte',1),(1919,'RS',5601,'RIO GRANDE DO SUL',0,'RS','Rio Grande do Sul',1),(1920,'RO',5601,'RONDONIA',0,'RO','Rondônia',1),(1921,'RR',5601,'RORAIMA',0,'RR','Roraima',1),(1922,'SC',5601,'SANTA CATARINA',0,'SC','Santa Catarina',1),(1923,'SE',5601,'SERGIPE',0,'SE','Sergipe',1),(1924,'SP',5601,'SAO PAULO',0,'SP','Sao Paulo',1),(1925,'TO',5601,'TOCANTINS',0,'TO','Tocantins',1),(1926,'DF',5601,'DISTRITO FEDERAL',0,'DF','Distrito Federal',1),(1927,'001',5201,'',0,'','Belisario Boeto',1),(1928,'002',5201,'',0,'','Hernando Siles',1),(1929,'003',5201,'',0,'','Jaime Zudáñez',1),(1930,'004',5201,'',0,'','Juana Azurduy de Padilla',1),(1931,'005',5201,'',0,'','Luis Calvo',1),(1932,'006',5201,'',0,'','Nor Cinti',1),(1933,'007',5201,'',0,'','Oropeza',1),(1934,'008',5201,'',0,'','Sud Cinti',1),(1935,'009',5201,'',0,'','Tomina',1),(1936,'010',5201,'',0,'','Yamparáez',1),(1937,'011',5202,'',0,'','Abel Iturralde',1),(1938,'012',5202,'',0,'','Aroma',1),(1939,'013',5202,'',0,'','Bautista Saavedra',1),(1940,'014',5202,'',0,'','Caranavi',1),(1941,'015',5202,'',0,'','Eliodoro Camacho',1),(1942,'016',5202,'',0,'','Franz Tamayo',1),(1943,'017',5202,'',0,'','Gualberto Villarroel',1),(1944,'018',5202,'',0,'','Ingaví',1),(1945,'019',5202,'',0,'','Inquisivi',1),(1946,'020',5202,'',0,'','José Ramón Loayza',1),(1947,'021',5202,'',0,'','Larecaja',1),(1948,'022',5202,'',0,'','Los Andes (Bolivia)',1),(1949,'023',5202,'',0,'','Manco Kapac',1),(1950,'024',5202,'',0,'','Muñecas',1),(1951,'025',5202,'',0,'','Nor Yungas',1),(1952,'026',5202,'',0,'','Omasuyos',1),(1953,'027',5202,'',0,'','Pacajes',1),(1954,'028',5202,'',0,'','Pedro Domingo Murillo',1),(1955,'029',5202,'',0,'','Sud Yungas',1),(1956,'030',5202,'',0,'','General José Manuel Pando',1),(1957,'031',5203,'',0,'','Arani',1),(1958,'032',5203,'',0,'','Arque',1),(1959,'033',5203,'',0,'','Ayopaya',1),(1960,'034',5203,'',0,'','Bolívar (Bolivia)',1),(1961,'035',5203,'',0,'','Campero',1),(1962,'036',5203,'',0,'','Capinota',1),(1963,'037',5203,'',0,'','Cercado (Cochabamba)',1),(1964,'038',5203,'',0,'','Esteban Arze',1),(1965,'039',5203,'',0,'','Germán Jordán',1),(1966,'040',5203,'',0,'','José Carrasco',1),(1967,'041',5203,'',0,'','Mizque',1),(1968,'042',5203,'',0,'','Punata',1),(1969,'043',5203,'',0,'','Quillacollo',1),(1970,'044',5203,'',0,'','Tapacarí',1),(1971,'045',5203,'',0,'','Tiraque',1),(1972,'046',5203,'',0,'','Chapare',1),(1973,'047',5204,'',0,'','Carangas',1),(1974,'048',5204,'',0,'','Cercado (Oruro)',1),(1975,'049',5204,'',0,'','Eduardo Avaroa',1),(1976,'050',5204,'',0,'','Ladislao Cabrera',1),(1977,'051',5204,'',0,'','Litoral de Atacama',1),(1978,'052',5204,'',0,'','Mejillones',1),(1979,'053',5204,'',0,'','Nor Carangas',1),(1980,'054',5204,'',0,'','Pantaleón Dalence',1),(1981,'055',5204,'',0,'','Poopó',1),(1982,'056',5204,'',0,'','Sabaya',1),(1983,'057',5204,'',0,'','Sajama',1),(1984,'058',5204,'',0,'','San Pedro de Totora',1),(1985,'059',5204,'',0,'','Saucarí',1),(1986,'060',5204,'',0,'','Sebastián Pagador',1),(1987,'061',5204,'',0,'','Sud Carangas',1),(1988,'062',5204,'',0,'','Tomás Barrón',1),(1989,'063',5205,'',0,'','Alonso de Ibáñez',1),(1990,'064',5205,'',0,'','Antonio Quijarro',1),(1991,'065',5205,'',0,'','Bernardino Bilbao',1),(1992,'066',5205,'',0,'','Charcas (Potosí)',1),(1993,'067',5205,'',0,'','Chayanta',1),(1994,'068',5205,'',0,'','Cornelio Saavedra',1),(1995,'069',5205,'',0,'','Daniel Campos',1),(1996,'070',5205,'',0,'','Enrique Baldivieso',1),(1997,'071',5205,'',0,'','José María Linares',1),(1998,'072',5205,'',0,'','Modesto Omiste',1),(1999,'073',5205,'',0,'','Nor Chichas',1),(2000,'074',5205,'',0,'','Nor Lípez',1),(2001,'075',5205,'',0,'','Rafael Bustillo',1),(2002,'076',5205,'',0,'','Sud Chichas',1),(2003,'077',5205,'',0,'','Sud Lípez',1),(2004,'078',5205,'',0,'','Tomás Frías',1),(2005,'079',5206,'',0,'','Aniceto Arce',1),(2006,'080',5206,'',0,'','Burdet O\'Connor',1),(2007,'081',5206,'',0,'','Cercado (Tarija)',1),(2008,'082',5206,'',0,'','Eustaquio Méndez',1),(2009,'083',5206,'',0,'','José María Avilés',1),(2010,'084',5206,'',0,'','Gran Chaco',1),(2011,'085',5207,'',0,'','Andrés Ibáñez',1),(2012,'086',5207,'',0,'','Caballero',1),(2013,'087',5207,'',0,'','Chiquitos',1),(2014,'088',5207,'',0,'','Cordillera (Bolivia)',1),(2015,'089',5207,'',0,'','Florida',1),(2016,'090',5207,'',0,'','Germán Busch',1),(2017,'091',5207,'',0,'','Guarayos',1),(2018,'092',5207,'',0,'','Ichilo',1),(2019,'093',5207,'',0,'','Obispo Santistevan',1),(2020,'094',5207,'',0,'','Sara',1),(2021,'095',5207,'',0,'','Vallegrande',1),(2022,'096',5207,'',0,'','Velasco',1),(2023,'097',5207,'',0,'','Warnes',1),(2024,'098',5207,'',0,'','Ángel Sandóval',1),(2025,'099',5207,'',0,'','Ñuflo de Chaves',1),(2026,'100',5208,'',0,'','Cercado (Beni)',1),(2027,'101',5208,'',0,'','Iténez',1),(2028,'102',5208,'',0,'','Mamoré',1),(2029,'103',5208,'',0,'','Marbán',1),(2030,'104',5208,'',0,'','Moxos',1),(2031,'105',5208,'',0,'','Vaca Díez',1),(2032,'106',5208,'',0,'','Yacuma',1),(2033,'107',5208,'',0,'','General José Ballivián Segurola',1),(2034,'108',5209,'',0,'','Abuná',1),(2035,'109',5209,'',0,'','Madre de Dios',1),(2036,'110',5209,'',0,'','Manuripi',1),(2037,'111',5209,'',0,'','Nicolás Suárez',1),(2038,'112',5209,'',0,'','General Federico Román',1),(2039,'B',4101,NULL,NULL,'BURGENLAND','Burgenland',1),(2040,'K',4101,NULL,NULL,'KAERNTEN','Kärnten',1),(2041,'N',4101,NULL,NULL,'NIEDEROESTERREICH','Niederösterreich',1),(2042,'O',4101,NULL,NULL,'OBEROESTERREICH','Oberösterreich',1),(2043,'S',4101,NULL,NULL,'SALZBURG','Salzburg',1),(2044,'ST',4101,NULL,NULL,'STEIERMARK','Steiermark',1),(2045,'T',4101,NULL,NULL,'TIROL','Tirol',1),(2046,'V',4101,NULL,NULL,'VORARLBERG','Vorarlberg',1),(2047,'W',4101,NULL,NULL,'WIEN','Wien',1),(2048,'2326',2305,'',0,'MISIONES','Misiones',1),(2049,'PA-1',17801,'',0,'','Bocas del Toro',1),(2050,'PA-2',17801,'',0,'','Coclé',1),(2051,'PA-3',17801,'',0,'','Colón',1),(2052,'PA-4',17801,'',0,'','Chiriquí',1),(2053,'PA-5',17801,'',0,'','Darién',1),(2054,'PA-6',17801,'',0,'','Herrera',1),(2055,'PA-7',17801,'',0,'','Los Santos',1),(2056,'PA-8',17801,'',0,'','Panamá',1),(2057,'PA-9',17801,'',0,'','Veraguas',1),(2058,'PA-13',17801,'',0,'','Panamá Oeste',1),(2059,'AE-1',22701,'',0,'','Abu Dhabi',1),(2060,'AE-2',22701,'',0,'','Dubai',1),(2061,'AE-3',22701,'',0,'','Ajman',1),(2062,'AE-4',22701,'',0,'','Fujairah',1),(2063,'AE-5',22701,'',0,'','Ras al-Khaimah',1),(2064,'AE-6',22701,'',0,'','Sharjah',1),(2065,'AE-7',22701,'',0,'','Umm al-Quwain',1),(2066,'BA',11801,NULL,0,'BA','Bali',1),(2067,'BB',11801,NULL,0,'BB','Bangka Belitung',1),(2068,'BT',11801,NULL,0,'BT','Banten',1),(2069,'BE',11801,NULL,0,'BA','Bengkulu',1),(2070,'YO',11801,NULL,0,'YO','DI Yogyakarta',1),(2071,'JK',11801,NULL,0,'JK','DKI Jakarta',1),(2072,'GO',11801,NULL,0,'GO','Gorontalo',1),(2073,'JA',11801,NULL,0,'JA','Jambi',1),(2074,'JB',11801,NULL,0,'JB','Jawa Barat',1),(2075,'JT',11801,NULL,0,'JT','Jawa Tengah',1),(2076,'JI',11801,NULL,0,'JI','Jawa Timur',1),(2077,'KB',11801,NULL,0,'KB','Kalimantan Barat',1),(2078,'KS',11801,NULL,0,'KS','Kalimantan Selatan',1),(2079,'KT',11801,NULL,0,'KT','Kalimantan Tengah',1),(2080,'KI',11801,NULL,0,'KI','Kalimantan Timur',1),(2081,'KU',11801,NULL,0,'KU','Kalimantan Utara',1),(2082,'KR',11801,NULL,0,'KR','Kepulauan Riau',1),(2083,'LA',11801,NULL,0,'LA','Lampung',1),(2084,'MA',11801,NULL,0,'MA','Maluku',1),(2085,'MU',11801,NULL,0,'MU','Maluku Utara',1),(2086,'AC',11801,NULL,0,'AC','Nanggroe Aceh Darussalam',1),(2087,'NB',11801,NULL,0,'NB','Nusa Tenggara Barat',1),(2088,'NT',11801,NULL,0,'NT','Nusa Tenggara Timur',1),(2089,'PA',11801,NULL,0,'PA','Papua',1),(2090,'PB',11801,NULL,0,'PB','Papua Barat',1),(2091,'RI',11801,NULL,0,'RI','Riau',1),(2092,'SR',11801,NULL,0,'SR','Sulawesi Barat',1),(2093,'SN',11801,NULL,0,'SN','Sulawesi Selatan',1),(2094,'ST',11801,NULL,0,'ST','Sulawesi Tengah',1),(2095,'SG',11801,NULL,0,'SG','Sulawesi Tenggara',1),(2096,'SA',11801,NULL,0,'SA','Sulawesi Utara',1),(2097,'SB',11801,NULL,0,'SB','Sumatera Barat',1),(2098,'SS',11801,NULL,0,'SS','Sumatera Selatan',1),(2099,'SU',11801,NULL,0,'SU','Sumatera Utara ',1); +/*!40000 ALTER TABLE `llx_c_departements` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ecotaxe` +-- + +DROP TABLE IF EXISTS `llx_c_ecotaxe`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ecotaxe` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `price` double(24,8) DEFAULT NULL, + `organization` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_pays` int(11) NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_ecotaxe` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ecotaxe` +-- + +LOCK TABLES `llx_c_ecotaxe` WRITE; +/*!40000 ALTER TABLE `llx_c_ecotaxe` DISABLE KEYS */; +INSERT INTO `llx_c_ecotaxe` VALUES (1,'ER-A-A','Materiels electriques < 0,2kg',0.01000000,'ERP',1,1),(2,'ER-A-B','Materiels electriques >= 0,2 kg et < 0,5 kg',0.03000000,'ERP',1,1),(3,'ER-A-C','Materiels electriques >= 0,5 kg et < 1 kg',0.04000000,'ERP',1,1),(4,'ER-A-D','Materiels electriques >= 1 kg et < 2 kg',0.13000000,'ERP',1,1),(5,'ER-A-E','Materiels electriques >= 2 kg et < 4kg',0.21000000,'ERP',1,1),(6,'ER-A-F','Materiels electriques >= 4 kg et < 8 kg',0.42000000,'ERP',1,1),(7,'ER-A-G','Materiels electriques >= 8 kg et < 15 kg',0.84000000,'ERP',1,1),(8,'ER-A-H','Materiels electriques >= 15 kg et < 20 kg',1.25000000,'ERP',1,1),(9,'ER-A-I','Materiels electriques >= 20 kg et < 30 kg',1.88000000,'ERP',1,1),(10,'ER-A-J','Materiels electriques >= 30 kg',3.34000000,'ERP',1,1),(11,'ER-M-1','TV, Moniteurs < 9kg',0.84000000,'ERP',1,1),(12,'ER-M-2','TV, Moniteurs >= 9kg et < 15kg',1.67000000,'ERP',1,1),(13,'ER-M-3','TV, Moniteurs >= 15kg et < 30kg',3.34000000,'ERP',1,1),(14,'ER-M-4','TV, Moniteurs >= 30 kg',6.69000000,'ERP',1,1),(15,'EC-A-A','Materiels electriques 0,2 kg max',0.00840000,'Ecologic',1,1),(16,'EC-A-B','Materiels electriques 0,21 kg min - 0,50 kg max',0.02500000,'Ecologic',1,1),(17,'EC-A-C','Materiels electriques 0,51 kg min - 1 kg max',0.04000000,'Ecologic',1,1),(18,'EC-A-D','Materiels electriques 1,01 kg min - 2,5 kg max',0.13000000,'Ecologic',1,1),(19,'EC-A-E','Materiels electriques 2,51 kg min - 4 kg max',0.21000000,'Ecologic',1,1),(20,'EC-A-F','Materiels electriques 4,01 kg min - 8 kg max',0.42000000,'Ecologic',1,1),(21,'EC-A-G','Materiels electriques 8,01 kg min - 12 kg max',0.63000000,'Ecologic',1,1),(22,'EC-A-H','Materiels electriques 12,01 kg min - 20 kg max',1.05000000,'Ecologic',1,1),(23,'EC-A-I','Materiels electriques 20,01 kg min',1.88000000,'Ecologic',1,1),(24,'EC-M-1','TV, Moniteurs 9 kg max',0.84000000,'Ecologic',1,1),(25,'EC-M-2','TV, Moniteurs 9,01 kg min - 18 kg max',1.67000000,'Ecologic',1,1),(26,'EC-M-3','TV, Moniteurs 18,01 kg min - 36 kg max',3.34000000,'Ecologic',1,1),(27,'EC-M-4','TV, Moniteurs 36,01 kg min',6.69000000,'Ecologic',1,1),(28,'ES-M-1','TV, Moniteurs <= 20 pouces',0.84000000,'Eco-systemes',1,1),(29,'ES-M-2','TV, Moniteurs > 20 pouces et <= 32 pouces',3.34000000,'Eco-systemes',1,1),(30,'ES-M-3','TV, Moniteurs > 32 pouces et autres grands ecrans',6.69000000,'Eco-systemes',1,1),(31,'ES-A-A','Ordinateur fixe, Audio home systems (HIFI), elements hifi separes',0.84000000,'Eco-systemes',1,1),(32,'ES-A-B','Ordinateur portable, CD-RCR, VCR, lecteurs et enregistreurs DVD, instruments de musique et caisses de resonance, haut parleurs...',0.25000000,'Eco-systemes',1,1),(33,'ES-A-C','Imprimante, photocopieur, telecopieur',0.42000000,'Eco-systemes',1,1),(34,'ES-A-D','Accessoires, clavier, souris, PDA, imprimante photo, appareil photo, gps, telephone, repondeur, telephone sans fil, modem, telecommande, casque, camescope, baladeur mp3, radio portable, radio K7 et CD portable, radio reveil',0.08400000,'Eco-systemes',1,1),(35,'ES-A-E','GSM',0.00840000,'Eco-systemes',1,1),(36,'ES-A-F','Jouets et equipements de loisirs et de sports < 0,5 kg',0.04200000,'Eco-systemes',1,1),(37,'ES-A-G','Jouets et equipements de loisirs et de sports > 0,5 kg',0.17000000,'Eco-systemes',1,1),(38,'ES-A-H','Jouets et equipements de loisirs et de sports > 10 kg',1.25000000,'Eco-systemes',1,1); +/*!40000 ALTER TABLE `llx_c_ecotaxe` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_effectif` +-- + +DROP TABLE IF EXISTS `llx_c_effectif`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_effectif` ( + `id` int(11) NOT NULL, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_effectif` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_effectif` +-- + +LOCK TABLES `llx_c_effectif` WRITE; +/*!40000 ALTER TABLE `llx_c_effectif` DISABLE KEYS */; +INSERT INTO `llx_c_effectif` VALUES (0,'EF0','-',1,NULL),(1,'EF1-5','1 - 5',1,NULL),(2,'EF6-10','6 - 10',1,NULL),(3,'EF11-50','11 - 50',1,NULL),(4,'EF51-100','51 - 100',1,NULL),(5,'EF100-500','100 - 500',1,NULL),(6,'EF500-','> 500',1,NULL); +/*!40000 ALTER TABLE `llx_c_effectif` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_email_senderprofile` +-- + +DROP TABLE IF EXISTS `llx_c_email_senderprofile`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_email_senderprofile` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `private` smallint(6) NOT NULL DEFAULT '0', + `date_creation` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `signature` text COLLATE utf8_unicode_ci, + `position` smallint(6) DEFAULT '0', + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_email_senderprofile` (`entity`,`label`,`email`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_email_senderprofile` +-- + +LOCK TABLES `llx_c_email_senderprofile` WRITE; +/*!40000 ALTER TABLE `llx_c_email_senderprofile` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_c_email_senderprofile` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_email_templates` +-- + +DROP TABLE IF EXISTS `llx_c_email_templates`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_email_templates` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `type_template` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `private` smallint(6) NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` smallint(6) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `topic` text COLLATE utf8_unicode_ci, + `content` mediumtext COLLATE utf8_unicode_ci, + `content_lines` text COLLATE utf8_unicode_ci, + `enabled` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `joinfiles` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_email_templates` (`entity`,`label`,`lang`), + KEY `idx_type` (`type_template`) +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_email_templates` +-- + +LOCK TABLES `llx_c_email_templates` WRITE; +/*!40000 ALTER TABLE `llx_c_email_templates` DISABLE KEYS */; +INSERT INTO `llx_c_email_templates` VALUES (1,1,NULL,'propal_send','',1,NULL,NULL,'2018-01-19 11:17:48','ggg',1,1,'gg','gggfff',NULL,'1','1'),(2,0,'adherent','member','',0,NULL,NULL,'2018-01-19 11:17:48','(SendAnEMailToMember)',1,1,'__(CardContent)__','__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','1'),(3,0,'banque','thirdparty','',0,NULL,NULL,'2018-01-19 11:17:48','(YourSEPAMandate)',1,0,'__(YourSEPAMandate)__','__(Hello)__,

\n\n__(FindYourSEPAMandate)__ :
\n__MYCOMPANY_NAME__
\n__MYCOMPANY_FULLADDRESS__

\n__(Sincerely)__
\n__USER_SIGNATURE__',NULL,'1','1'),(6,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingEmailOnAutoSubscription)',10,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipRequestWasReceived)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipRequestWasReceived)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','0'),(7,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingEmailOnMemberValidation)',20,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasValidated)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourMembershipWasValidated)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','0'),(8,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingEmailOnNewSubscription)',30,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourSubscriptionWasRecorded)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfYourSubscriptionWasRecorded)__
\n\n

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','1'),(9,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingReminderForExpiredSubscription)',40,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(SubscriptionReminderEmail)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(ThisIsContentOfSubscriptionReminderEmail)__
\n
__ONLINE_PAYMENT_TEXT_AND_URL__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','0'),(10,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingEmailOnCancelation)',50,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(YourMembershipWasCanceled)__','__(Hello)__ __MEMBER_FULLNAME__,

\n\n__(YourMembershipWasCanceled)__
\n

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','0'),(11,0,'adherent','member','',0,NULL,NULL,'2018-11-23 11:56:08','(SendingAnEMailToMember)',60,1,'[__[MAIN_INFO_SOCIETE_NOM]__] __(CardContent)__','__(Hello)__,

\n\n__(ThisIsContentOfYourCard)__
\n__(ID)__ : __ID__
\n__(Civiliyty)__ : __MEMBER_CIVILITY__
\n__(Firstname)__ : __MEMBER_FIRSTNAME__
\n__(Lastname)__ : __MEMBER_LASTNAME__
\n__(Fullname)__ : __MEMBER_FULLNAME__
\n__(Company)__ : __MEMBER_COMPANY__
\n__(Address)__ : __MEMBER_ADDRESS__
\n__(Zip)__ : __MEMBER_ZIP__
\n__(Town)__ : __MEMBER_TOWN__
\n__(Country)__ : __MEMBER_COUNTRY__
\n__(Email)__ : __MEMBER_EMAIL__
\n__(Birthday)__ : __MEMBER_BIRTH__
\n__(Photo)__ : __MEMBER_PHOTO__
\n__(Login)__ : __MEMBER_LOGIN__
\n__(Password)__ : __MEMBER_PASSWORD__
\n__(Phone)__ : __MEMBER_PHONE__
\n__(PhonePerso)__ : __MEMBER_PHONEPRO__
\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__

\n__(Sincerely)__
__USER_SIGNATURE__',NULL,'1','0'); +/*!40000 ALTER TABLE `llx_c_email_templates` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_exp_tax_cat` +-- + +DROP TABLE IF EXISTS `llx_c_exp_tax_cat`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_exp_tax_cat` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(48) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `active` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_exp_tax_cat` +-- + +LOCK TABLES `llx_c_exp_tax_cat` WRITE; +/*!40000 ALTER TABLE `llx_c_exp_tax_cat` DISABLE KEYS */; +INSERT INTO `llx_c_exp_tax_cat` VALUES (1,'ExpAutoCat',1,0),(2,'ExpCycloCat',1,0),(3,'ExpMotoCat',1,0),(4,'ExpAuto3CV',1,1),(5,'ExpAuto4CV',1,1),(6,'ExpAuto5CV',1,1),(7,'ExpAuto6CV',1,1),(8,'ExpAuto7CV',1,1),(9,'ExpAuto8CV',1,1),(10,'ExpAuto9CV',1,0),(11,'ExpAuto10CV',1,0),(12,'ExpAuto11CV',1,0),(13,'ExpAuto12CV',1,0),(14,'ExpAuto3PCV',1,0),(15,'ExpAuto4PCV',1,0),(16,'ExpAuto5PCV',1,0),(17,'ExpAuto6PCV',1,0),(18,'ExpAuto7PCV',1,0),(19,'ExpAuto8PCV',1,0),(20,'ExpAuto9PCV',1,0),(21,'ExpAuto10PCV',1,0),(22,'ExpAuto11PCV',1,0),(23,'ExpAuto12PCV',1,0),(24,'ExpAuto13PCV',1,0),(25,'ExpCyclo',1,0),(26,'ExpMoto12CV',1,0),(27,'ExpMoto345CV',1,0),(28,'ExpMoto5PCV',1,0); +/*!40000 ALTER TABLE `llx_c_exp_tax_cat` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_exp_tax_range` +-- + +DROP TABLE IF EXISTS `llx_c_exp_tax_range`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_exp_tax_range` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_c_exp_tax_cat` int(11) NOT NULL DEFAULT '1', + `range_ik` double NOT NULL DEFAULT '0', + `entity` int(11) NOT NULL DEFAULT '1', + `active` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_exp_tax_range` +-- + +LOCK TABLES `llx_c_exp_tax_range` WRITE; +/*!40000 ALTER TABLE `llx_c_exp_tax_range` DISABLE KEYS */; +INSERT INTO `llx_c_exp_tax_range` VALUES (1,4,0,1,1),(2,4,5000,1,1),(3,4,20000,1,1),(4,5,0,1,1),(5,5,5000,1,1),(6,5,20000,1,1),(7,6,0,1,1),(8,6,5000,1,1),(9,6,20000,1,1),(10,7,0,1,1),(11,7,5000,1,1),(12,7,20000,1,1),(13,8,0,1,1),(14,8,5000,1,1),(15,8,20000,1,1); +/*!40000 ALTER TABLE `llx_c_exp_tax_range` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_field_list` +-- + +DROP TABLE IF EXISTS `llx_c_field_list`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_field_list` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `element` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `name` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `alias` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `title` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `align` varchar(6) COLLATE utf8_unicode_ci DEFAULT 'left', + `sort` tinyint(4) NOT NULL DEFAULT '1', + `search` tinyint(4) NOT NULL DEFAULT '0', + `visible` tinyint(4) NOT NULL DEFAULT '1', + `enabled` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `rang` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_field_list` +-- + +LOCK TABLES `llx_c_field_list` WRITE; +/*!40000 ALTER TABLE `llx_c_field_list` DISABLE KEYS */; +INSERT INTO `llx_c_field_list` VALUES (1,'2011-02-06 11:18:30','product_default',1,'p.ref','ref','Ref','left',1,1,1,'1',1),(2,'2011-02-06 11:18:30','product_default',1,'p.label','label','Label','left',1,1,1,'1',2),(3,'2011-02-06 11:18:30','product_default',1,'p.barcode','barcode','BarCode','center',1,1,1,'$conf->barcode->enabled',3),(4,'2011-02-06 11:18:30','product_default',1,'p.tms','datem','DateModification','center',1,0,1,'1',4),(5,'2011-02-06 11:18:30','product_default',1,'p.price','price','SellingPriceHT','right',1,0,1,'1',5),(6,'2011-02-06 11:18:30','product_default',1,'p.price_ttc','price_ttc','SellingPriceTTC','right',1,0,1,'1',6),(7,'2011-02-06 11:18:30','product_default',1,'p.stock','stock','Stock','right',0,0,1,'$conf->stock->enabled',7),(8,'2011-02-06 11:18:30','product_default',1,'p.envente','status','Status','right',1,0,1,'1',8); +/*!40000 ALTER TABLE `llx_c_field_list` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_format_cards` +-- + +DROP TABLE IF EXISTS `llx_c_format_cards`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_format_cards` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `name` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `paper_size` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `orientation` varchar(1) COLLATE utf8_unicode_ci NOT NULL, + `metric` varchar(5) COLLATE utf8_unicode_ci NOT NULL, + `leftmargin` double(24,8) NOT NULL, + `topmargin` double(24,8) NOT NULL, + `nx` int(11) NOT NULL, + `ny` int(11) NOT NULL, + `spacex` double(24,8) NOT NULL, + `spacey` double(24,8) NOT NULL, + `width` double(24,8) NOT NULL, + `height` double(24,8) NOT NULL, + `font_size` int(11) NOT NULL, + `custom_x` double(24,8) NOT NULL, + `custom_y` double(24,8) NOT NULL, + `active` int(11) NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_format_cards` +-- + +LOCK TABLES `llx_c_format_cards` WRITE; +/*!40000 ALTER TABLE `llx_c_format_cards` DISABLE KEYS */; +INSERT INTO `llx_c_format_cards` VALUES (1,'5160','Avery-5160, WL-875WX','letter','P','mm',5.58165000,12.70000000,3,10,3.55600000,0.00000000,65.87490000,25.40000000,7,0.00000000,0.00000000,1),(2,'5161','Avery-5161, WL-75WX','letter','P','mm',4.44500000,12.70000000,2,10,3.96800000,0.00000000,101.60000000,25.40000000,7,0.00000000,0.00000000,1),(3,'5162','Avery-5162, WL-100WX','letter','P','mm',3.87350000,22.35200000,2,7,4.95400000,0.00000000,101.60000000,33.78100000,8,0.00000000,0.00000000,1),(4,'5163','Avery-5163, WL-125WX','letter','P','mm',4.57200000,12.70000000,2,5,3.55600000,0.00000000,101.60000000,50.80000000,10,0.00000000,0.00000000,1),(5,'5164','5164 (Letter)','letter','P','in',0.14800000,0.50000000,2,3,0.20310000,0.00000000,4.00000000,3.33000000,12,0.00000000,0.00000000,0),(6,'8600','Avery-8600','letter','P','mm',7.10000000,19.00000000,3,10,9.50000000,3.10000000,66.60000000,25.40000000,7,0.00000000,0.00000000,1),(7,'99012','DYMO 99012 89*36mm','custom','L','mm',1.00000000,1.00000000,1,1,0.00000000,0.00000000,36.00000000,89.00000000,10,36.00000000,89.00000000,1),(8,'99014','DYMO 99014 101*54mm','custom','L','mm',1.00000000,1.00000000,1,1,0.00000000,0.00000000,54.00000000,101.00000000,10,54.00000000,101.00000000,1),(9,'AVERYC32010','Avery-C32010','A4','P','mm',15.00000000,13.00000000,2,5,10.00000000,0.00000000,85.00000000,54.00000000,10,0.00000000,0.00000000,1),(10,'CARD','Dolibarr Business cards','A4','P','mm',15.00000000,15.00000000,2,5,0.00000000,0.00000000,85.00000000,54.00000000,10,0.00000000,0.00000000,1),(11,'L7163','Avery-L7163','A4','P','mm',5.00000000,15.00000000,2,7,2.50000000,0.00000000,99.10000000,38.10000000,8,0.00000000,0.00000000,1); +/*!40000 ALTER TABLE `llx_c_format_cards` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_forme_juridique` +-- + +DROP TABLE IF EXISTS `llx_c_forme_juridique`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_forme_juridique` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` int(11) NOT NULL, + `fk_pays` int(11) NOT NULL, + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `isvatexempted` tinyint(4) NOT NULL DEFAULT '0', + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_forme_juridique` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=100230 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_forme_juridique` +-- + +LOCK TABLES `llx_c_forme_juridique` WRITE; +/*!40000 ALTER TABLE `llx_c_forme_juridique` DISABLE KEYS */; +INSERT INTO `llx_c_forme_juridique` VALUES (100001,100001,1,'Etudiant',0,0,'cabinetmed',0),(100002,100002,1,'Retraité',0,0,'cabinetmed',0),(100003,100003,1,'Artisan',0,0,'cabinetmed',0),(100004,100004,1,'Femme de ménage',0,0,'cabinetmed',0),(100005,100005,1,'Professeur',0,0,'cabinetmed',0),(100006,100006,1,'Profession libérale',0,0,'cabinetmed',0),(100007,100007,1,'Informaticien',0,0,'cabinetmed',0),(100009,0,0,'-',0,1,NULL,0),(100010,2301,23,'Monotributista',0,1,NULL,0),(100011,2302,23,'Sociedad Civil',0,1,NULL,0),(100012,2303,23,'Sociedades Comerciales',0,1,NULL,0),(100013,2304,23,'Sociedades de Hecho',0,1,NULL,0),(100014,2305,23,'Sociedades Irregulares',0,1,NULL,0),(100015,2306,23,'Sociedad Colectiva',0,1,NULL,0),(100016,2307,23,'Sociedad en Comandita Simple',0,1,NULL,0),(100017,2308,23,'Sociedad de Capital e Industria',0,1,NULL,0),(100018,2309,23,'Sociedad Accidental o en participación',0,1,NULL,0),(100019,2310,23,'Sociedad de Responsabilidad Limitada',0,1,NULL,0),(100020,2311,23,'Sociedad Anónima',0,1,NULL,0),(100021,2312,23,'Sociedad Anónima con Participación Estatal Mayoritaria',0,1,NULL,0),(100022,2313,23,'Sociedad en Comandita por Acciones (arts. 315 a 324, LSC)',0,1,NULL,0),(100023,11,1,'Artisan Commerçant (EI)',0,1,NULL,0),(100024,12,1,'Commerçant (EI)',0,1,NULL,0),(100025,13,1,'Artisan (EI)',0,1,NULL,0),(100026,14,1,'Officier public ou ministériel',0,1,NULL,0),(100027,15,1,'Profession libérale (EI)',0,1,NULL,0),(100028,16,1,'Exploitant agricole',0,1,NULL,0),(100029,17,1,'Agent commercial',0,1,NULL,0),(100030,18,1,'Associé Gérant de société',0,1,NULL,0),(100031,19,1,'Personne physique',0,1,NULL,0),(100032,21,1,'Indivision',0,1,NULL,0),(100033,22,1,'Société créée de fait',0,1,NULL,0),(100034,23,1,'Société en participation',0,1,NULL,0),(100035,27,1,'Paroisse hors zone concordataire',0,1,NULL,0),(100036,29,1,'Groupement de droit privé non doté de la personnalité morale',0,1,NULL,0),(100037,31,1,'Personne morale de droit étranger, immatriculée au RCS',0,1,NULL,0),(100038,32,1,'Personne morale de droit étranger, non immatriculée au RCS',0,1,NULL,0),(100039,35,1,'Régime auto-entrepreneur',0,1,NULL,0),(100040,41,1,'Etablissement public ou régie à caractère industriel ou commercial',0,1,NULL,0),(100041,51,1,'Société coopérative commerciale particulière',0,1,NULL,0),(100042,52,1,'Société en nom collectif',0,1,NULL,0),(100043,53,1,'Société en commandite',0,1,NULL,0),(100044,54,1,'Société à responsabilité limitée (SARL)',0,1,NULL,0),(100045,55,1,'Société anonyme à conseil d administration',0,1,NULL,0),(100046,56,1,'Société anonyme à directoire',0,1,NULL,0),(100047,57,1,'Société par actions simplifiée (SAS)',0,1,NULL,0),(100048,58,1,'Entreprise Unipersonnelle à Responsabilité Limitée (EURL)',0,1,NULL,0),(100049,59,1,'Société par actions simplifiée unipersonnelle (SASU)',0,1,NULL,0),(100050,60,1,'Entreprise Individuelle à Responsabilité Limitée (EIRL)',0,1,NULL,0),(100051,61,1,'Caisse d\'épargne et de prévoyance',0,1,NULL,0),(100052,62,1,'Groupement d\'intérêt économique (GIE)',0,1,NULL,0),(100053,63,1,'Société coopérative agricole',0,1,NULL,0),(100054,64,1,'Société non commerciale d assurances',0,1,NULL,0),(100055,65,1,'Société civile',0,1,NULL,0),(100056,69,1,'Personnes de droit privé inscrites au RCS',0,1,NULL,0),(100057,71,1,'Administration de l état',0,1,NULL,0),(100058,72,1,'Collectivité territoriale',0,1,NULL,0),(100059,73,1,'Etablissement public administratif',0,1,NULL,0),(100060,74,1,'Personne morale de droit public administratif',0,1,NULL,0),(100061,81,1,'Organisme gérant régime de protection social à adhésion obligatoire',0,1,NULL,0),(100062,82,1,'Organisme mutualiste',0,1,NULL,0),(100063,83,1,'Comité d entreprise',0,1,NULL,0),(100064,84,1,'Organisme professionnel',0,1,NULL,0),(100065,85,1,'Organisme de retraite à adhésion non obligatoire',0,1,NULL,0),(100066,91,1,'Syndicat de propriétaires',0,1,NULL,0),(100067,92,1,'Association loi 1901 ou assimilé',0,1,NULL,0),(100068,93,1,'Fondation',0,1,NULL,0),(100069,99,1,'Personne morale de droit privé',0,1,NULL,0),(100070,200,2,'Indépendant',0,1,NULL,0),(100071,201,2,'SPRL - Société à responsabilité limitée',0,1,NULL,0),(100072,202,2,'SA - Société Anonyme',0,1,NULL,0),(100073,203,2,'SCRL - Société coopérative à responsabilité limitée',0,1,NULL,0),(100074,204,2,'ASBL - Association sans but Lucratif',0,1,NULL,0),(100075,205,2,'SCRI - Société coopérative à responsabilité illimitée',0,1,NULL,0),(100076,206,2,'SCS - Société en commandite simple',0,1,NULL,0),(100077,207,2,'SCA - Société en commandite par action',0,1,NULL,0),(100078,208,2,'SNC - Société en nom collectif',0,1,NULL,0),(100079,209,2,'GIE - Groupement d intérêt économique',0,1,NULL,0),(100080,210,2,'GEIE - Groupement européen d intérêt économique',0,1,NULL,0),(100081,220,2,'Eenmanszaak',0,1,NULL,0),(100082,221,2,'BVBA - Besloten vennootschap met beperkte aansprakelijkheid',0,1,NULL,0),(100083,222,2,'NV - Naamloze Vennootschap',0,1,NULL,0),(100084,223,2,'CVBA - Coöperatieve vennootschap met beperkte aansprakelijkheid',0,1,NULL,0),(100085,224,2,'VZW - Vereniging zonder winstoogmerk',0,1,NULL,0),(100086,225,2,'CVOA - Coöperatieve vennootschap met onbeperkte aansprakelijkheid ',0,1,NULL,0),(100087,226,2,'GCV - Gewone commanditaire vennootschap',0,1,NULL,0),(100088,227,2,'Comm.VA - Commanditaire vennootschap op aandelen',0,1,NULL,0),(100089,228,2,'VOF - Vennootschap onder firma',0,1,NULL,0),(100090,229,2,'VS0 - Vennootschap met sociaal oogmerk',0,1,NULL,0),(100091,500,5,'GmbH - Gesellschaft mit beschränkter Haftung',0,1,NULL,0),(100092,501,5,'AG - Aktiengesellschaft ',0,1,NULL,0),(100093,502,5,'GmbH&Co. KG - Gesellschaft mit beschränkter Haftung & Compagnie Kommanditgesellschaft',0,1,NULL,0),(100094,503,5,'Gewerbe - Personengesellschaft',0,1,NULL,0),(100095,504,5,'UG - Unternehmergesellschaft -haftungsbeschränkt-',0,1,NULL,0),(100096,505,5,'GbR - Gesellschaft des bürgerlichen Rechts',0,1,NULL,0),(100097,506,5,'KG - Kommanditgesellschaft',0,1,NULL,0),(100098,507,5,'Ltd. - Limited Company',0,1,NULL,0),(100099,508,5,'OHG - Offene Handelsgesellschaft',0,1,NULL,0),(100100,10201,102,'Ατομική επιχείρηση',0,1,NULL,0),(100101,10202,102,'Εταιρική επιχείρηση',0,1,NULL,0),(100102,10203,102,'Ομόρρυθμη Εταιρεία Ο.Ε',0,1,NULL,0),(100103,10204,102,'Ετερόρρυθμη Εταιρεία Ε.Ε',0,1,NULL,0),(100104,10205,102,'Εταιρεία Περιορισμένης Ευθύνης Ε.Π.Ε',0,1,NULL,0),(100105,10206,102,'Ανώνυμη Εταιρεία Α.Ε',0,1,NULL,0),(100106,10207,102,'Ανώνυμη ναυτιλιακή εταιρεία Α.Ν.Ε',0,1,NULL,0),(100107,10208,102,'Συνεταιρισμός',0,1,NULL,0),(100108,10209,102,'Συμπλοιοκτησία',0,1,NULL,0),(100109,301,3,'Società semplice',0,1,NULL,0),(100110,302,3,'Società in nome collettivo s.n.c.',0,1,NULL,0),(100111,303,3,'Società in accomandita semplice s.a.s.',0,1,NULL,0),(100112,304,3,'Società per azioni s.p.a.',0,1,NULL,0),(100113,305,3,'Società a responsabilità limitata s.r.l.',0,1,NULL,0),(100114,306,3,'Società in accomandita per azioni s.a.p.a.',0,1,NULL,0),(100115,307,3,'Società cooperativa a r.l.',0,1,NULL,0),(100116,308,3,'Società consortile',0,1,NULL,0),(100117,309,3,'Società europea',0,1,NULL,0),(100118,310,3,'Società cooperativa europea',0,1,NULL,0),(100119,311,3,'Società unipersonale',0,1,NULL,0),(100120,312,3,'Società di professionisti',0,1,NULL,0),(100121,313,3,'Società di fatto',0,1,NULL,0),(100122,315,3,'Società apparente',0,1,NULL,0),(100123,316,3,'Impresa individuale ',0,1,NULL,0),(100124,317,3,'Impresa coniugale',0,1,NULL,0),(100125,318,3,'Impresa familiare',0,1,NULL,0),(100126,319,3,'Consorzio cooperativo',0,1,NULL,0),(100127,320,3,'Società cooperativa sociale',0,1,NULL,0),(100128,321,3,'Società cooperativa di consumo',0,1,NULL,0),(100129,322,3,'Società cooperativa agricola',0,1,NULL,0),(100130,323,3,'A.T.I. Associazione temporanea di imprese',0,1,NULL,0),(100131,324,3,'R.T.I. Raggruppamento temporaneo di imprese',0,1,NULL,0),(100132,325,3,'Studio associato',0,1,NULL,0),(100133,600,6,'Raison Individuelle',0,1,NULL,0),(100134,601,6,'Société Simple',0,1,NULL,0),(100135,602,6,'Société en nom collectif',0,1,NULL,0),(100136,603,6,'Société en commandite',0,1,NULL,0),(100137,604,6,'Société anonyme (SA)',0,1,NULL,0),(100138,605,6,'Société en commandite par actions',0,1,NULL,0),(100139,606,6,'Société à responsabilité limitée (SARL)',0,1,NULL,0),(100140,607,6,'Société coopérative',0,1,NULL,0),(100141,608,6,'Association',0,1,NULL,0),(100142,609,6,'Fondation',0,1,NULL,0),(100143,700,7,'Sole Trader',0,1,NULL,0),(100144,701,7,'Partnership',0,1,NULL,0),(100145,702,7,'Private Limited Company by shares (LTD)',0,1,NULL,0),(100146,703,7,'Public Limited Company',0,1,NULL,0),(100147,704,7,'Workers Cooperative',0,1,NULL,0),(100148,705,7,'Limited Liability Partnership',0,1,NULL,0),(100149,706,7,'Franchise',0,1,NULL,0),(100150,1000,10,'Société à responsabilité limitée (SARL)',0,1,NULL,0),(100151,1001,10,'Société en Nom Collectif (SNC)',0,1,NULL,0),(100152,1002,10,'Société en Commandite Simple (SCS)',0,1,NULL,0),(100153,1003,10,'société en participation',0,1,NULL,0),(100154,1004,10,'Société Anonyme (SA)',0,1,NULL,0),(100155,1005,10,'Société Unipersonnelle à Responsabilité Limitée (SUARL)',0,1,NULL,0),(100156,1006,10,'Groupement d\'intérêt économique (GEI)',0,1,NULL,0),(100157,1007,10,'Groupe de sociétés',0,1,NULL,0),(100158,1701,17,'Eenmanszaak',0,1,NULL,0),(100159,1702,17,'Maatschap',0,1,NULL,0),(100160,1703,17,'Vennootschap onder firma',0,1,NULL,0),(100161,1704,17,'Commanditaire vennootschap',0,1,NULL,0),(100162,1705,17,'Besloten vennootschap (BV)',0,1,NULL,0),(100163,1706,17,'Naamloze Vennootschap (NV)',0,1,NULL,0),(100164,1707,17,'Vereniging',0,1,NULL,0),(100165,1708,17,'Stichting',0,1,NULL,0),(100166,1709,17,'Coöperatie met beperkte aansprakelijkheid (BA)',0,1,NULL,0),(100167,1710,17,'Coöperatie met uitgesloten aansprakelijkheid (UA)',0,1,NULL,0),(100168,1711,17,'Coöperatie met wettelijke aansprakelijkheid (WA)',0,1,NULL,0),(100169,1712,17,'Onderlinge waarborgmaatschappij',0,1,NULL,0),(100170,401,4,'Empresario Individual',0,1,NULL,0),(100171,402,4,'Comunidad de Bienes',0,1,NULL,0),(100172,403,4,'Sociedad Civil',0,1,NULL,0),(100173,404,4,'Sociedad Colectiva',0,1,NULL,0),(100174,405,4,'Sociedad Limitada',0,1,NULL,0),(100175,406,4,'Sociedad Anónima',0,1,NULL,0),(100176,407,4,'Sociedad Comanditaria por Acciones',0,1,NULL,0),(100177,408,4,'Sociedad Comanditaria Simple',0,1,NULL,0),(100178,409,4,'Sociedad Laboral',0,1,NULL,0),(100179,410,4,'Sociedad Cooperativa',0,1,NULL,0),(100180,411,4,'Sociedad de Garantía Recíproca',0,1,NULL,0),(100181,412,4,'Entidad de Capital-Riesgo',0,1,NULL,0),(100182,413,4,'Agrupación de Interés Económico',0,1,NULL,0),(100183,414,4,'Sociedad de Inversión Mobiliaria',0,1,NULL,0),(100184,415,4,'Agrupación sin Ánimo de Lucro',0,1,NULL,0),(100185,15201,152,'Mauritius Private Company Limited By Shares',0,1,NULL,0),(100186,15202,152,'Mauritius Company Limited By Guarantee',0,1,NULL,0),(100187,15203,152,'Mauritius Public Company Limited By Shares',0,1,NULL,0),(100188,15204,152,'Mauritius Foreign Company',0,1,NULL,0),(100189,15205,152,'Mauritius GBC1 (Offshore Company)',0,1,NULL,0),(100190,15206,152,'Mauritius GBC2 (International Company)',0,1,NULL,0),(100191,15207,152,'Mauritius General Partnership',0,1,NULL,0),(100192,15208,152,'Mauritius Limited Partnership',0,1,NULL,0),(100193,15209,152,'Mauritius Sole Proprietorship',0,1,NULL,0),(100194,15210,152,'Mauritius Trusts',0,1,NULL,0),(100195,15401,154,'Sociedad en nombre colectivo',0,1,NULL,0),(100196,15402,154,'Sociedad en comandita simple',0,1,NULL,0),(100197,15403,154,'Sociedad de responsabilidad limitada',0,1,NULL,0),(100198,15404,154,'Sociedad anónima',0,1,NULL,0),(100199,15405,154,'Sociedad en comandita por acciones',0,1,NULL,0),(100200,15406,154,'Sociedad cooperativa',0,1,NULL,0),(100201,4100,41,'GmbH - Gesellschaft mit beschränkter Haftung',0,1,NULL,0),(100202,4101,41,'GesmbH - Gesellschaft mit beschränkter Haftung',0,1,NULL,0),(100203,4102,41,'AG - Aktiengesellschaft',0,1,NULL,0),(100204,4103,41,'EWIV - Europäische wirtschaftliche Interessenvereinigung',0,1,NULL,0),(100205,4104,41,'KEG - Kommanditerwerbsgesellschaft',0,1,NULL,0),(100206,4105,41,'OEG - Offene Erwerbsgesellschaft',0,1,NULL,0),(100207,4106,41,'OHG - Offene Handelsgesellschaft',0,1,NULL,0),(100208,4107,41,'AG & Co KG - Kommanditgesellschaft',0,1,NULL,0),(100209,4108,41,'GmbH & Co KG - Kommanditgesellschaft',0,1,NULL,0),(100210,4109,41,'KG - Kommanditgesellschaft',0,1,NULL,0),(100211,4110,41,'OG - Offene Gesellschaft',0,1,NULL,0),(100212,4111,41,'GbR - Gesellschaft nach bürgerlichem Recht',0,1,NULL,0),(100213,4112,41,'GesbR - Gesellschaft nach bürgerlichem Recht',0,1,NULL,0),(100214,4113,41,'GesnbR - Gesellschaft nach bürgerlichem Recht',0,1,NULL,0),(100215,4114,41,'e.U. - eingetragener Einzelunternehmer',0,1,NULL,0),(100216,17801,178,'Empresa individual',0,1,NULL,0),(100217,17802,178,'Asociación General',0,1,NULL,0),(100218,17803,178,'Sociedad de Responsabilidad Limitada',0,1,NULL,0),(100219,17804,178,'Sociedad Civil',0,1,NULL,0),(100220,17805,178,'Sociedad Anónima',0,1,NULL,0),(100221,8001,80,'Aktieselvskab A/S',0,1,NULL,0),(100222,8002,80,'Anparts Selvskab ApS',0,1,NULL,0),(100223,8003,80,'Personlig ejet selvskab',0,1,NULL,0),(100224,8004,80,'Iværksætterselvskab IVS',0,1,NULL,0),(100225,8005,80,'Interessentskab I/S',0,1,NULL,0),(100226,8006,80,'Holdingselskab',0,1,NULL,0),(100227,8007,80,'Selskab Med Begrænset Hæftelse SMBA',0,1,NULL,0),(100228,8008,80,'Kommanditselskab K/S',0,1,NULL,0),(100229,8009,80,'SPE-selskab',0,1,NULL,0); +/*!40000 ALTER TABLE `llx_c_forme_juridique` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_holiday_types` +-- + +DROP TABLE IF EXISTS `llx_c_holiday_types`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_holiday_types` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `affect` int(11) NOT NULL, + `delay` int(11) NOT NULL, + `newByMonth` double(8,5) NOT NULL DEFAULT '0.00000', + `fk_country` int(11) DEFAULT NULL, + `active` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_holiday_types` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_holiday_types` +-- + +LOCK TABLES `llx_c_holiday_types` WRITE; +/*!40000 ALTER TABLE `llx_c_holiday_types` DISABLE KEYS */; +INSERT INTO `llx_c_holiday_types` VALUES (1,'LEAVE_SICK','Sick leave',0,0,0.00000,NULL,1),(2,'LEAVE_OTHER','Other leave',0,0,0.00000,NULL,1),(3,'LEAVE_PAID','Paid vacation',1,7,0.00000,NULL,1),(4,'LEAVE_RTT_FR','RTT',1,7,0.83000,1,0),(5,'LEAVE_PAID_FR','Paid vacation',1,30,2.08334,1,0); +/*!40000 ALTER TABLE `llx_c_holiday_types` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_hrm_department` +-- + +DROP TABLE IF EXISTS `llx_c_hrm_department`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_hrm_department` ( + `rowid` int(11) NOT NULL, + `pos` tinyint(4) NOT NULL DEFAULT '0', + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_hrm_department` +-- + +LOCK TABLES `llx_c_hrm_department` WRITE; +/*!40000 ALTER TABLE `llx_c_hrm_department` DISABLE KEYS */; +INSERT INTO `llx_c_hrm_department` VALUES (1,5,'MANAGEMENT','Management',1),(2,10,'GESTION','Gestion',1),(3,15,'TRAINING','Training',1),(4,20,'IT','Inform. Technology (IT)',1),(5,25,'MARKETING','Marketing',1),(6,30,'SALES','Sales',1),(7,35,'LEGAL','Legal',1),(8,40,'FINANCIAL','Financial accounting',1),(9,45,'HUMANRES','Human resources',1),(10,50,'PURCHASING','Purchasing',1),(11,55,'SERVICES','Services',1),(12,60,'CUSTOMSERV','Customer service',1),(13,65,'CONSULTING','Consulting',1),(14,70,'LOGISTIC','Logistics',1),(15,75,'CONSTRUCT','Engineering/design',1),(16,80,'PRODUCTION','Manufacturing',1),(17,85,'QUALITY','Quality assurance',1),(18,85,'MAINT','Plant assurance',1); +/*!40000 ALTER TABLE `llx_c_hrm_department` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_hrm_function` +-- + +DROP TABLE IF EXISTS `llx_c_hrm_function`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_hrm_function` ( + `rowid` int(11) NOT NULL, + `pos` tinyint(4) NOT NULL DEFAULT '0', + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `c_level` tinyint(4) NOT NULL DEFAULT '0', + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_hrm_function` +-- + +LOCK TABLES `llx_c_hrm_function` WRITE; +/*!40000 ALTER TABLE `llx_c_hrm_function` DISABLE KEYS */; +INSERT INTO `llx_c_hrm_function` VALUES (1,5,'EXECBOARD','Executive board',0,1),(2,10,'MANAGDIR','Managing director',1,1),(3,15,'ACCOUNTMANAG','Account manager',0,1),(4,20,'ENGAGDIR','Engagement director',1,1),(5,25,'DIRECTOR','Director',1,1),(6,30,'PROJMANAG','Project manager',0,1),(7,35,'DEPHEAD','Department head',0,1),(8,40,'SECRETAR','Secretary',0,1),(9,45,'EMPLOYEE','Department employee',0,1); +/*!40000 ALTER TABLE `llx_c_hrm_function` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_incoterms` +-- + +DROP TABLE IF EXISTS `llx_c_incoterms`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_incoterms` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(3) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_incoterms` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_incoterms` +-- + +LOCK TABLES `llx_c_incoterms` WRITE; +/*!40000 ALTER TABLE `llx_c_incoterms` DISABLE KEYS */; +INSERT INTO `llx_c_incoterms` VALUES (1,'EXW','Ex Works, au départ non chargé, non dédouané sortie d\'usine (uniquement adapté aux flux domestiques, nationaux)',1),(2,'FCA','Free Carrier, marchandises dédouanées et chargées dans le pays de départ, chez le vendeur ou chez le commissionnaire de transport de l\'acheteur',1),(3,'FAS','Free Alongside Ship, sur le quai du port de départ',1),(4,'FOB','Free On Board, chargé sur le bateau, les frais de chargement dans celui-ci étant fonction du liner term indiqué par la compagnie maritime (à la charge du vendeur)',1),(5,'CFR','Cost and Freight, chargé dans le bateau, livraison au port de départ, frais payés jusqu\'au port d\'arrivée, sans assurance pour le transport, non déchargé du navire à destination (les frais de déchargement sont inclus ou non au port d\'arrivée)',1),(6,'CIF','Cost, Insurance and Freight, chargé sur le bateau, frais jusqu\'au port d\'arrivée, avec l\'assurance marchandise transportée souscrite par le vendeur pour le compte de l\'acheteur',1),(7,'CPT','Carriage Paid To, livraison au premier transporteur, frais jusqu\'au déchargement du mode de transport, sans assurance pour le transport',1),(8,'CIP','Carriage and Insurance Paid to, idem CPT, avec assurance marchandise transportée souscrite par le vendeur pour le compte de l\'acheteur',1),(9,'DAT','Delivered At Terminal, marchandises (déchargées) livrées sur quai, dans un terminal maritime, fluvial, aérien, routier ou ferroviaire désigné (dédouanement import, et post-acheminement payés par l\'acheteur)',1),(10,'DAP','Delivered At Place, marchandises (non déchargées) mises à disposition de l\'acheteur dans le pays d\'importation au lieu précisé dans le contrat (déchargement, dédouanement import payé par l\'acheteur)',1),(11,'DDP','Delivered Duty Paid, marchandises (non déchargées) livrées à destination finale, dédouanement import et taxes à la charge du vendeur ; l\'acheteur prend en charge uniquement le déchargement (si exclusion des taxes type TVA, le préciser clairement)',1); +/*!40000 ALTER TABLE `llx_c_incoterms` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_input_method` +-- + +DROP TABLE IF EXISTS `llx_c_input_method`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_input_method` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `libelle` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_methode_commande_fournisseur` (`code`), + UNIQUE KEY `uk_c_input_method` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_input_method` +-- + +LOCK TABLES `llx_c_input_method` WRITE; +/*!40000 ALTER TABLE `llx_c_input_method` DISABLE KEYS */; +INSERT INTO `llx_c_input_method` VALUES (1,'OrderByMail','Courrier',1,NULL),(2,'OrderByFax','Fax',1,NULL),(3,'OrderByEMail','EMail',1,NULL),(4,'OrderByPhone','Téléphone',1,NULL),(5,'OrderByWWW','En ligne',1,NULL); +/*!40000 ALTER TABLE `llx_c_input_method` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_input_reason` +-- + +DROP TABLE IF EXISTS `llx_c_input_reason`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_input_reason` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(60) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_input_reason` (`code`) +) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_input_reason` +-- + +LOCK TABLES `llx_c_input_reason` WRITE; +/*!40000 ALTER TABLE `llx_c_input_reason` DISABLE KEYS */; +INSERT INTO `llx_c_input_reason` VALUES (1,'SRC_INTE','Web site',1,NULL),(2,'SRC_CAMP_MAIL','Mailing campaign',1,NULL),(3,'SRC_CAMP_PHO','Phone campaign',1,NULL),(4,'SRC_CAMP_FAX','Fax campaign',1,NULL),(5,'SRC_COMM','Commercial contact',1,NULL),(6,'SRC_SHOP','Shop contact',1,NULL),(7,'SRC_CAMP_EMAIL','EMailing campaign',1,NULL),(8,'SRC_WOM','Word of mouth',1,NULL),(9,'SRC_PARTNER','Partner',1,NULL),(10,'SRC_EMPLOYEE','Employee',1,NULL),(11,'SRC_SPONSORING','Sponsoring',1,NULL); +/*!40000 ALTER TABLE `llx_c_input_reason` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_lead_status` +-- + +DROP TABLE IF EXISTS `llx_c_lead_status`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_lead_status` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) DEFAULT NULL, + `percent` double(5,2) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_lead_status_code` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_lead_status` +-- + +LOCK TABLES `llx_c_lead_status` WRITE; +/*!40000 ALTER TABLE `llx_c_lead_status` DISABLE KEYS */; +INSERT INTO `llx_c_lead_status` VALUES (1,'PROSP','Prospection',10,0.00,1),(2,'QUAL','Qualification',20,20.00,1),(3,'PROPO','Proposal',30,40.00,1),(4,'NEGO','Negotiation',40,60.00,1),(5,'PENDING','Pending',50,50.00,0),(6,'WON','Won',60,100.00,1),(7,'LOST','Lost',70,0.00,1); +/*!40000 ALTER TABLE `llx_c_lead_status` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_lead_type` +-- + +DROP TABLE IF EXISTS `llx_c_lead_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_lead_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(10) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `code` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_lead_type` +-- + +LOCK TABLES `llx_c_lead_type` WRITE; +/*!40000 ALTER TABLE `llx_c_lead_type` DISABLE KEYS */; +INSERT INTO `llx_c_lead_type` VALUES (1,'SUPP','Support',1),(2,'TRAIN','Formation',1),(3,'ADVI','Conseil',1); +/*!40000 ALTER TABLE `llx_c_lead_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_methode_commande_fournisseur` +-- + +DROP TABLE IF EXISTS `llx_c_methode_commande_fournisseur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_methode_commande_fournisseur` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `libelle` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_methode_commande_fournisseur` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_methode_commande_fournisseur` +-- + +LOCK TABLES `llx_c_methode_commande_fournisseur` WRITE; +/*!40000 ALTER TABLE `llx_c_methode_commande_fournisseur` DISABLE KEYS */; +INSERT INTO `llx_c_methode_commande_fournisseur` VALUES (1,'OrderByMail','Courrier',1),(2,'OrderByFax','Fax',1),(3,'OrderByEMail','EMail',1),(4,'OrderByPhone','Téléphone',1),(5,'OrderByWWW','En ligne',1); +/*!40000 ALTER TABLE `llx_c_methode_commande_fournisseur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_paiement` +-- + +DROP TABLE IF EXISTS `llx_c_paiement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_paiement` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `code` varchar(6) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(62) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` smallint(6) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_paiement_code` (`entity`,`code`) +) ENGINE=InnoDB AUTO_INCREMENT=54 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_paiement` +-- + +LOCK TABLES `llx_c_paiement` WRITE; +/*!40000 ALTER TABLE `llx_c_paiement` DISABLE KEYS */; +INSERT INTO `llx_c_paiement` VALUES (1,1,'TIP','TIP',2,0,NULL,NULL,0),(2,1,'VIR','Virement',2,1,NULL,NULL,0),(3,1,'PRE','Prélèvement',2,1,NULL,NULL,0),(4,1,'LIQ','Espèces',2,1,NULL,NULL,0),(6,1,'CB','Carte Bancaire',2,1,NULL,NULL,0),(7,1,'CHQ','Chèque',2,1,NULL,NULL,0),(50,1,'VAD','Paiement en ligne',2,0,NULL,NULL,0),(51,1,'TRA','Traite',2,0,NULL,NULL,0),(52,1,'LCR','LCR',2,0,NULL,NULL,0),(53,1,'FAC','Factor',2,0,NULL,NULL,0); +/*!40000 ALTER TABLE `llx_c_paiement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_paiement_temp` +-- + +DROP TABLE IF EXISTS `llx_c_paiement_temp`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_paiement_temp` ( + `id` int(11) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `code` varchar(6) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(62) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `type` smallint(6) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `accountancy_code` varchar(32) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `module` varchar(32) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_paiement_temp` +-- + +LOCK TABLES `llx_c_paiement_temp` WRITE; +/*!40000 ALTER TABLE `llx_c_paiement_temp` DISABLE KEYS */; +INSERT INTO `llx_c_paiement_temp` VALUES (1,1,'TIP','TIP',2,0,NULL,NULL,0),(2,1,'VIR','Virement',2,1,NULL,NULL,0),(3,1,'PRE','Prélèvement',2,1,NULL,NULL,0),(4,1,'LIQ','Espèces',2,1,NULL,NULL,0),(6,1,'CB','Carte Bancaire',2,1,NULL,NULL,0),(7,1,'CHQ','Chèque',2,1,NULL,NULL,0),(50,1,'VAD','Paiement en ligne',2,0,NULL,NULL,0),(51,1,'TRA','Traite',2,0,NULL,NULL,0),(52,1,'LCR','LCR',2,0,NULL,NULL,0),(53,1,'FAC','Factor',2,0,NULL,NULL,0); +/*!40000 ALTER TABLE `llx_c_paiement_temp` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_paper_format` +-- + +DROP TABLE IF EXISTS `llx_c_paper_format`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_paper_format` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `width` float(6,2) DEFAULT '0.00', + `height` float(6,2) DEFAULT '0.00', + `unit` varchar(5) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=226 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_paper_format` +-- + +LOCK TABLES `llx_c_paper_format` WRITE; +/*!40000 ALTER TABLE `llx_c_paper_format` DISABLE KEYS */; +INSERT INTO `llx_c_paper_format` VALUES (1,'EU4A0','Format 4A0',1682.00,2378.00,'mm',1,NULL),(2,'EU2A0','Format 2A0',1189.00,1682.00,'mm',1,NULL),(3,'EUA0','Format A0',840.00,1189.00,'mm',1,NULL),(4,'EUA1','Format A1',594.00,840.00,'mm',1,NULL),(5,'EUA2','Format A2',420.00,594.00,'mm',1,NULL),(6,'EUA3','Format A3',297.00,420.00,'mm',1,NULL),(7,'EUA4','Format A4',210.00,297.00,'mm',1,NULL),(8,'EUA5','Format A5',148.00,210.00,'mm',1,NULL),(9,'EUA6','Format A6',105.00,148.00,'mm',1,NULL),(100,'USLetter','Format Letter (A)',216.00,279.00,'mm',1,NULL),(105,'USLegal','Format Legal',216.00,356.00,'mm',1,NULL),(110,'USExecutive','Format Executive',190.00,254.00,'mm',1,NULL),(115,'USLedger','Format Ledger/Tabloid (B)',279.00,432.00,'mm',1,NULL),(200,'CAP1','Format Canadian P1',560.00,860.00,'mm',1,NULL),(205,'CAP2','Format Canadian P2',430.00,560.00,'mm',1,NULL),(210,'CAP3','Format Canadian P3',280.00,430.00,'mm',1,NULL),(215,'CAP4','Format Canadian P4',215.00,280.00,'mm',1,NULL),(220,'CAP5','Format Canadian P5',140.00,215.00,'mm',1,NULL),(225,'CAP6','Format Canadian P6',107.00,140.00,'mm',1,NULL); +/*!40000 ALTER TABLE `llx_c_paper_format` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_payment_term` +-- + +DROP TABLE IF EXISTS `llx_c_payment_term`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_payment_term` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `code` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `sortorder` smallint(6) DEFAULT NULL, + `active` tinyint(4) DEFAULT '1', + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `libelle_facture` text COLLATE utf8_unicode_ci, + `type_cdr` tinyint(4) DEFAULT NULL, + `nbjour` smallint(6) DEFAULT NULL, + `decalage` smallint(6) DEFAULT NULL, + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_payment_term_code` (`entity`,`code`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_payment_term` +-- + +LOCK TABLES `llx_c_payment_term` WRITE; +/*!40000 ALTER TABLE `llx_c_payment_term` DISABLE KEYS */; +INSERT INTO `llx_c_payment_term` VALUES (1,1,'RECEP',1,1,'A réception','Réception de facture',0,0,NULL,NULL,0),(2,1,'30D',2,1,'30 jours','Réglement à 30 jours',0,30,NULL,NULL,0),(3,1,'30DENDMONTH',3,1,'30 jours fin de mois','Réglement à 30 jours fin de mois',1,30,NULL,NULL,0),(4,1,'60D',4,1,'60 jours','Réglement à 60 jours',0,60,NULL,NULL,0),(5,1,'60DENDMONTH',5,1,'60 jours fin de mois','Réglement à 60 jours fin de mois',1,60,NULL,NULL,0),(6,1,'PT_ORDER',6,1,'A réception de commande','A réception de commande',0,0,NULL,NULL,0),(7,1,'PT_DELIVERY',7,1,'Livraison','Règlement à la livraison',0,0,NULL,NULL,0),(8,1,'PT_5050',8,1,'50 et 50','Règlement 50% à la commande, 50% à la livraison',0,0,NULL,NULL,0); +/*!40000 ALTER TABLE `llx_c_payment_term` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_price_expression` +-- + +DROP TABLE IF EXISTS `llx_c_price_expression`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_price_expression` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `title` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `expression` varchar(80) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_price_expression` +-- + +LOCK TABLES `llx_c_price_expression` WRITE; +/*!40000 ALTER TABLE `llx_c_price_expression` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_c_price_expression` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_price_global_variable` +-- + +DROP TABLE IF EXISTS `llx_c_price_global_variable`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_price_global_variable` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `value` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_price_global_variable` +-- + +LOCK TABLES `llx_c_price_global_variable` WRITE; +/*!40000 ALTER TABLE `llx_c_price_global_variable` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_c_price_global_variable` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_price_global_variable_updater` +-- + +DROP TABLE IF EXISTS `llx_c_price_global_variable_updater`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_price_global_variable_updater` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` int(11) NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `parameters` text COLLATE utf8_unicode_ci, + `fk_variable` int(11) NOT NULL, + `update_interval` int(11) DEFAULT '0', + `next_update` int(11) DEFAULT '0', + `last_status` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_price_global_variable_updater` +-- + +LOCK TABLES `llx_c_price_global_variable_updater` WRITE; +/*!40000 ALTER TABLE `llx_c_price_global_variable_updater` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_c_price_global_variable_updater` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_propalst` +-- + +DROP TABLE IF EXISTS `llx_c_propalst`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_propalst` ( + `id` smallint(6) NOT NULL, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_propalst` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_propalst` +-- + +LOCK TABLES `llx_c_propalst` WRITE; +/*!40000 ALTER TABLE `llx_c_propalst` DISABLE KEYS */; +INSERT INTO `llx_c_propalst` VALUES (0,'PR_DRAFT','Brouillon',1),(1,'PR_OPEN','Ouverte',1),(2,'PR_SIGNED','Signée',1),(3,'PR_NOTSIGNED','Non Signée',1),(4,'PR_FAC','Facturée',1); +/*!40000 ALTER TABLE `llx_c_propalst` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_prospectlevel` +-- + +DROP TABLE IF EXISTS `llx_c_prospectlevel`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_prospectlevel` ( + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `sortorder` smallint(6) DEFAULT NULL, + `active` smallint(6) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_prospectlevel` +-- + +LOCK TABLES `llx_c_prospectlevel` WRITE; +/*!40000 ALTER TABLE `llx_c_prospectlevel` DISABLE KEYS */; +INSERT INTO `llx_c_prospectlevel` VALUES ('PL_HIGH','High',4,1,NULL),('PL_LOW','Low',2,1,NULL),('PL_MEDIUM','Medium',3,1,NULL),('PL_NONE','None',1,1,NULL); +/*!40000 ALTER TABLE `llx_c_prospectlevel` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_regions` +-- + +DROP TABLE IF EXISTS `llx_c_regions`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_regions` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code_region` int(11) NOT NULL, + `fk_pays` int(11) NOT NULL, + `cheflieu` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `tncc` int(11) DEFAULT NULL, + `nom` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `code_region` (`code_region`), + UNIQUE KEY `uk_code_region` (`code_region`), + KEY `idx_c_regions_fk_pays` (`fk_pays`) +) ENGINE=InnoDB AUTO_INCREMENT=23347 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_regions` +-- + +LOCK TABLES `llx_c_regions` WRITE; +/*!40000 ALTER TABLE `llx_c_regions` DISABLE KEYS */; +INSERT INTO `llx_c_regions` VALUES (1,0,0,'0',0,'-',1),(101,1,1,'97105',3,'Guadeloupe',1),(102,2,1,'97209',3,'Martinique',1),(103,3,1,'97302',3,'Guyane',1),(104,4,1,'97411',3,'Réunion',1),(105,11,1,'75056',1,'Île-de-France',1),(106,21,1,'51108',0,'Champagne-Ardenne',1),(107,22,1,'80021',0,'Picardie',1),(108,23,1,'76540',0,'Haute-Normandie',1),(109,24,1,'45234',2,'Centre',1),(110,25,1,'14118',0,'Basse-Normandie',1),(111,26,1,'21231',0,'Bourgogne',1),(112,31,1,'59350',2,'Nord-Pas-de-Calais',1),(113,41,1,'57463',0,'Lorraine',1),(114,42,1,'67482',1,'Alsace',1),(115,43,1,'25056',0,'Franche-Comté',1),(116,52,1,'44109',4,'Pays de la Loire',1),(117,53,1,'35238',0,'Bretagne',1),(118,54,1,'86194',2,'Poitou-Charentes',1),(119,72,1,'33063',1,'Aquitaine',1),(120,73,1,'31555',0,'Midi-Pyrénées',1),(121,74,1,'87085',2,'Limousin',1),(122,82,1,'69123',2,'Rhône-Alpes',1),(123,83,1,'63113',1,'Auvergne',1),(124,91,1,'34172',2,'Languedoc-Roussillon',1),(125,93,1,'13055',0,'Provence-Alpes-Côte d\'Azur',1),(126,94,1,'2A004',0,'Corse',1),(201,201,2,'',1,'Flandre',1),(202,202,2,'',2,'Wallonie',1),(203,203,2,'',3,'Bruxelles-Capitale',1),(301,301,3,NULL,1,'Abruzzo',1),(302,302,3,NULL,1,'Basilicata',1),(303,303,3,NULL,1,'Calabria',1),(304,304,3,NULL,1,'Campania',1),(305,305,3,NULL,1,'Emilia-Romagna',1),(306,306,3,NULL,1,'Friuli-Venezia Giulia',1),(307,307,3,NULL,1,'Lazio',1),(308,308,3,NULL,1,'Liguria',1),(309,309,3,NULL,1,'Lombardia',1),(310,310,3,NULL,1,'Marche',1),(311,311,3,NULL,1,'Molise',1),(312,312,3,NULL,1,'Piemonte',1),(313,313,3,NULL,1,'Puglia',1),(314,314,3,NULL,1,'Sardegna',1),(315,315,3,NULL,1,'Sicilia',1),(316,316,3,NULL,1,'Toscana',1),(317,317,3,NULL,1,'Trentino-Alto Adige',1),(318,318,3,NULL,1,'Umbria',1),(319,319,3,NULL,1,'Valle d Aosta',1),(320,320,3,NULL,1,'Veneto',1),(401,401,4,'',0,'Andalucia',1),(402,402,4,'',0,'Aragón',1),(403,403,4,'',0,'Castilla y León',1),(404,404,4,'',0,'Castilla la Mancha',1),(405,405,4,'',0,'Canarias',1),(406,406,4,'',0,'Cataluña',1),(407,407,4,'',0,'Comunidad de Ceuta',1),(408,408,4,'',0,'Comunidad Foral de Navarra',1),(409,409,4,'',0,'Comunidad de Melilla',1),(410,410,4,'',0,'Cantabria',1),(411,411,4,'',0,'Comunidad Valenciana',1),(412,412,4,'',0,'Extemadura',1),(413,413,4,'',0,'Galicia',1),(414,414,4,'',0,'Islas Baleares',1),(415,415,4,'',0,'La Rioja',1),(416,416,4,'',0,'Comunidad de Madrid',1),(417,417,4,'',0,'Región de Murcia',1),(418,418,4,'',0,'Principado de Asturias',1),(419,419,4,'',0,'Pais Vasco',1),(601,601,6,'',1,'Cantons',1),(1001,1001,10,'',0,'Ariana',1),(1002,1002,10,'',0,'Béja',1),(1003,1003,10,'',0,'Ben Arous',1),(1004,1004,10,'',0,'Bizerte',1),(1005,1005,10,'',0,'Gabès',1),(1006,1006,10,'',0,'Gafsa',1),(1007,1007,10,'',0,'Jendouba',1),(1008,1008,10,'',0,'Kairouan',1),(1009,1009,10,'',0,'Kasserine',1),(1010,1010,10,'',0,'Kébili',1),(1011,1011,10,'',0,'La Manouba',1),(1012,1012,10,'',0,'Le Kef',1),(1013,1013,10,'',0,'Mahdia',1),(1014,1014,10,'',0,'Médenine',1),(1015,1015,10,'',0,'Monastir',1),(1016,1016,10,'',0,'Nabeul',1),(1017,1017,10,'',0,'Sfax',1),(1018,1018,10,'',0,'Sidi Bouzid',1),(1019,1019,10,'',0,'Siliana',1),(1020,1020,10,'',0,'Sousse',1),(1021,1021,10,'',0,'Tataouine',1),(1022,1022,10,'',0,'Tozeur',1),(1023,1023,10,'',0,'Tunis',1),(1024,1024,10,'',0,'Zaghouan',1),(1101,1101,11,'',0,'United-States',1),(1201,1201,12,'',0,'Tanger-Tétouan',1),(1202,1202,12,'',0,'Gharb-Chrarda-Beni Hssen',1),(1203,1203,12,'',0,'Taza-Al Hoceima-Taounate',1),(1204,1204,12,'',0,'L\'Oriental',1),(1205,1205,12,'',0,'Fès-Boulemane',1),(1206,1206,12,'',0,'Meknès-Tafialet',1),(1207,1207,12,'',0,'Rabat-Salé-Zemour-Zaër',1),(1208,1208,12,'',0,'Grand Cassablanca',1),(1209,1209,12,'',0,'Chaouia-Ouardigha',1),(1210,1210,12,'',0,'Doukahla-Adba',1),(1211,1211,12,'',0,'Marrakech-Tensift-Al Haouz',1),(1212,1212,12,'',0,'Tadla-Azilal',1),(1213,1213,12,'',0,'Sous-Massa-Drâa',1),(1214,1214,12,'',0,'Guelmim-Es Smara',1),(1215,1215,12,'',0,'Laâyoune-Boujdour-Sakia el Hamra',1),(1216,1216,12,'',0,'Oued Ed-Dahab Lagouira',1),(1301,1301,13,'',0,'Algerie',1),(2301,2301,23,'',0,'Norte',1),(2302,2302,23,'',0,'Litoral',1),(2303,2303,23,'',0,'Cuyana',1),(2304,2304,23,'',0,'Central',1),(2305,2305,23,'',0,'Patagonia',1),(2801,2801,28,'',0,'Australia',1),(4601,4601,46,'',0,'Barbados',1),(6701,6701,67,NULL,NULL,'Tarapacá',1),(6702,6702,67,NULL,NULL,'Antofagasta',1),(6703,6703,67,NULL,NULL,'Atacama',1),(6704,6704,67,NULL,NULL,'Coquimbo',1),(6705,6705,67,NULL,NULL,'Valparaíso',1),(6706,6706,67,NULL,NULL,'General Bernardo O Higgins',1),(6707,6707,67,NULL,NULL,'Maule',1),(6708,6708,67,NULL,NULL,'Biobío',1),(6709,6709,67,NULL,NULL,'Raucanía',1),(6710,6710,67,NULL,NULL,'Los Lagos',1),(6711,6711,67,NULL,NULL,'Aysén General Carlos Ibáñez del Campo',1),(6712,6712,67,NULL,NULL,'Magallanes y Antártica Chilena',1),(6713,6713,67,NULL,NULL,'Santiago',1),(6714,6714,67,NULL,NULL,'Los Ríos',1),(6715,6715,67,NULL,NULL,'Arica y Parinacota',1),(7001,7001,70,'',0,'Colombie',1),(8601,8601,86,NULL,NULL,'Central',1),(8602,8602,86,NULL,NULL,'Oriental',1),(8603,8603,86,NULL,NULL,'Occidental',1),(10201,10201,102,NULL,NULL,'??????',1),(10202,10202,102,NULL,NULL,'?????? ??????',1),(10203,10203,102,NULL,NULL,'???????? ?????????',1),(10204,10204,102,NULL,NULL,'?????',1),(10205,10205,102,NULL,NULL,'????????? ????????? ??? ?????',1),(10206,10206,102,NULL,NULL,'???????',1),(10207,10207,102,NULL,NULL,'????? ?????',1),(10208,10208,102,NULL,NULL,'?????? ??????',1),(10209,10209,102,NULL,NULL,'????????????',1),(10210,10210,102,NULL,NULL,'????? ??????',1),(10211,10211,102,NULL,NULL,'?????? ??????',1),(10212,10212,102,NULL,NULL,'????????',1),(10213,10213,102,NULL,NULL,'?????? ?????????',1),(11401,11401,114,'',0,'Honduras',1),(11701,11701,117,'',0,'India',1),(15201,15201,152,'',0,'Rivière Noire',1),(15202,15202,152,'',0,'Flacq',1),(15203,15203,152,'',0,'Grand Port',1),(15204,15204,152,'',0,'Moka',1),(15205,15205,152,'',0,'Pamplemousses',1),(15206,15206,152,'',0,'Plaines Wilhems',1),(15207,15207,152,'',0,'Port-Louis',1),(15208,15208,152,'',0,'Rivière du Rempart',1),(15209,15209,152,'',0,'Savanne',1),(15210,15210,152,'',0,'Rodrigues',1),(15211,15211,152,'',0,'Les îles Agaléga',1),(15212,15212,152,'',0,'Les écueils des Cargados Carajos',1),(15401,15401,154,'',0,'Mexique',1),(23201,23201,232,'',0,'Los Andes',1),(23202,23202,232,'',0,'Capital',1),(23203,23203,232,'',0,'Central',1),(23204,23204,232,'',0,'Cento Occidental',1),(23205,23205,232,'',0,'Guayana',1),(23206,23206,232,'',0,'Insular',1),(23207,23207,232,'',0,'Los Llanos',1),(23208,23208,232,'',0,'Nor-Oriental',1),(23209,23209,232,'',0,'Zuliana',1),(23215,6,1,'97601',3,'Mayotte',1),(23280,420,4,'',0,'Otros',1),(23281,501,5,'',0,'Deutschland',1),(23296,701,7,'',0,'England',1),(23297,702,7,'',0,'Wales',1),(23298,703,7,'',0,'Scotland',1),(23299,704,7,'',0,'Northern Ireland',1),(23325,1401,14,'',0,'Canada',1),(23326,1701,17,'',0,'Provincies van Nederland ',1),(23333,5601,56,'',0,'Brasil',1),(23334,5201,52,'',0,'Chuquisaca',1),(23335,5202,52,'',0,'La Paz',1),(23336,5203,52,'',0,'Cochabamba',1),(23337,5204,52,'',0,'Oruro',1),(23338,5205,52,'',0,'Potosí',1),(23339,5206,52,'',0,'Tarija',1),(23340,5207,52,'',0,'Santa Cruz',1),(23341,5208,52,'',0,'El Beni',1),(23342,5209,52,'',0,'Pando',1),(23343,4101,41,'',0,'Österreich',1),(23344,17801,178,'',0,'Panama',1),(23345,22701,227,'',0,'United Arab Emirates',1),(23346,11801,118,'',0,'Indonesia',1); +/*!40000 ALTER TABLE `llx_c_regions` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_revenuestamp` +-- + +DROP TABLE IF EXISTS `llx_c_revenuestamp`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_revenuestamp` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_pays` int(11) NOT NULL, + `taux` double NOT NULL, + `note` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `accountancy_code_sell` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_buy` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `revenuestamp_type` varchar(16) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'fixed', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=102 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_revenuestamp` +-- + +LOCK TABLES `llx_c_revenuestamp` WRITE; +/*!40000 ALTER TABLE `llx_c_revenuestamp` DISABLE KEYS */; +INSERT INTO `llx_c_revenuestamp` VALUES (101,10,0.4,'Revenue stamp tunisia',1,NULL,NULL,'fixed'); +/*!40000 ALTER TABLE `llx_c_revenuestamp` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_shipment_mode` +-- + +DROP TABLE IF EXISTS `llx_c_shipment_mode`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_shipment_mode` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `tracking` varchar(256) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) DEFAULT '0', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_shipment_mode` +-- + +LOCK TABLES `llx_c_shipment_mode` WRITE; +/*!40000 ALTER TABLE `llx_c_shipment_mode` DISABLE KEYS */; +INSERT INTO `llx_c_shipment_mode` VALUES (1,'2010-10-09 23:43:16','CATCH','Catch','Catch by client','',1,NULL),(2,'2010-10-09 23:43:16','TRANS','Transporter','Generic transporter','',1,NULL),(3,'2010-10-09 23:43:16','COLSUI','Colissimo Suivi','Colissimo Suivi','',0,NULL),(4,'2011-07-18 17:28:27','LETTREMAX','Lettre Max','Courrier Suivi et Lettre Max','',0,NULL),(9,'2013-02-24 01:48:18','UPS','UPS','United Parcel Service','http://wwwapps.ups.com/etracking/tracking.cgi?InquiryNumber2=&InquiryNumber3=&tracknums_displayed=3&loc=fr_FR&TypeOfInquiryNumber=T&HTMLVersion=4.0&InquiryNumber22=&InquiryNumber32=&track=Track&Suivi.x=64&Suivi.y=7&Suivi=Valider&InquiryNumber1={TRACKID}',0,NULL),(10,'2013-02-24 01:48:18','KIALA','KIALA','Relais Kiala','http://www.kiala.fr/tnt/delivery/{TRACKID}',0,NULL),(11,'2013-02-24 01:48:18','GLS','GLS','General Logistics Systems','http://www.gls-group.eu/276-I-PORTAL-WEB/content/GLS/FR01/FR/5004.htm?txtAction=71000&txtRefNo={TRACKID}',0,NULL),(12,'2013-02-24 01:48:18','CHRONO','Chronopost','Chronopost','http://www.chronopost.fr/expedier/inputLTNumbersNoJahia.do?listeNumeros={TRACKID}',0,NULL); +/*!40000 ALTER TABLE `llx_c_shipment_mode` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_stcomm` +-- + +DROP TABLE IF EXISTS `llx_c_stcomm`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_stcomm` ( + `id` int(11) NOT NULL, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `picto` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_stcomm` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_stcomm` +-- + +LOCK TABLES `llx_c_stcomm` WRITE; +/*!40000 ALTER TABLE `llx_c_stcomm` DISABLE KEYS */; +INSERT INTO `llx_c_stcomm` VALUES (-1,'ST_NO','Do not contact',1,NULL),(0,'ST_NEVER','Never contacted',1,NULL),(1,'ST_TODO','To contact',1,NULL),(2,'ST_PEND','Contact in progress',1,NULL),(3,'ST_DONE','Contacted',1,NULL); +/*!40000 ALTER TABLE `llx_c_stcomm` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticket_category` +-- + +DROP TABLE IF EXISTS `llx_c_ticket_category`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticket_category` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticket_category` +-- + +LOCK TABLES `llx_c_ticket_category` WRITE; +/*!40000 ALTER TABLE `llx_c_ticket_category` DISABLE KEYS */; +INSERT INTO `llx_c_ticket_category` VALUES (1,1,'OTHER','10','Other',1,1,NULL); +/*!40000 ALTER TABLE `llx_c_ticket_category` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticket_severity` +-- + +DROP TABLE IF EXISTS `llx_c_ticket_severity`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticket_severity` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `color` varchar(10) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticket_severity` +-- + +LOCK TABLES `llx_c_ticket_severity` WRITE; +/*!40000 ALTER TABLE `llx_c_ticket_severity` DISABLE KEYS */; +INSERT INTO `llx_c_ticket_severity` VALUES (1,1,'LOW','10','Low','',1,0,NULL),(2,1,'NORMAL','20','Normal','',1,1,NULL),(3,1,'HIGH','30','High','',1,0,NULL),(4,1,'BLOCKING','40','Critical / blocking','',1,0,NULL); +/*!40000 ALTER TABLE `llx_c_ticket_severity` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticket_type` +-- + +DROP TABLE IF EXISTS `llx_c_ticket_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticket_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticket_type` +-- + +LOCK TABLES `llx_c_ticket_type` WRITE; +/*!40000 ALTER TABLE `llx_c_ticket_type` DISABLE KEYS */; +INSERT INTO `llx_c_ticket_type` VALUES (1,1,'COM','10','Commercial question',1,1,NULL),(2,1,'ISSUE','20','Issue or problem',1,0,NULL),(3,1,'REQUEST','25','Change or enhancement request',1,0,NULL),(4,1,'PROJECT','30','Project',0,0,NULL),(5,1,'OTHER','40','Other',1,0,NULL); +/*!40000 ALTER TABLE `llx_c_ticket_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticketsup_category` +-- + +DROP TABLE IF EXISTS `llx_c_ticketsup_category`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticketsup_category` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticketsup_category` +-- + +LOCK TABLES `llx_c_ticketsup_category` WRITE; +/*!40000 ALTER TABLE `llx_c_ticketsup_category` DISABLE KEYS */; +INSERT INTO `llx_c_ticketsup_category` VALUES (1,1,'OTHER','10','Other',1,1,NULL); +/*!40000 ALTER TABLE `llx_c_ticketsup_category` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticketsup_severity` +-- + +DROP TABLE IF EXISTS `llx_c_ticketsup_severity`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticketsup_severity` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `color` varchar(10) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticketsup_severity` +-- + +LOCK TABLES `llx_c_ticketsup_severity` WRITE; +/*!40000 ALTER TABLE `llx_c_ticketsup_severity` DISABLE KEYS */; +INSERT INTO `llx_c_ticketsup_severity` VALUES (1,1,'LOW','10','Low','',1,0,NULL),(2,1,'NORMAL','20','Normal','',1,1,NULL),(3,1,'HIGH','30','High','',1,0,NULL),(4,1,'BLOCKING','40','Critical / blocking','',1,0,NULL); +/*!40000 ALTER TABLE `llx_c_ticketsup_severity` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ticketsup_type` +-- + +DROP TABLE IF EXISTS `llx_c_ticketsup_type`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ticketsup_type` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `code` varchar(32) NOT NULL, + `pos` varchar(32) NOT NULL, + `label` varchar(128) NOT NULL, + `active` int(11) DEFAULT '1', + `use_default` int(11) DEFAULT '1', + `description` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_code` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ticketsup_type` +-- + +LOCK TABLES `llx_c_ticketsup_type` WRITE; +/*!40000 ALTER TABLE `llx_c_ticketsup_type` DISABLE KEYS */; +INSERT INTO `llx_c_ticketsup_type` VALUES (1,1,'COM','10','Commercial question',1,1,NULL),(2,1,'ISSUE','20','Issue or problem',1,0,NULL),(3,1,'REQUEST','25','Change or enhancement request',1,0,NULL),(4,1,'PROJECT','30','Project',1,0,NULL),(5,1,'OTHER','40','Other',1,0,NULL); +/*!40000 ALTER TABLE `llx_c_ticketsup_type` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_tva` +-- + +DROP TABLE IF EXISTS `llx_c_tva`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_tva` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_pays` int(11) NOT NULL, + `code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `taux` double NOT NULL, + `localtax1` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `note` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `accountancy_code_sell` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_buy` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_tva_id` (`fk_pays`,`code`,`taux`,`recuperableonly`) +) ENGINE=InnoDB AUTO_INCREMENT=2477 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_tva` +-- + +LOCK TABLES `llx_c_tva` WRITE; +/*!40000 ALTER TABLE `llx_c_tva` DISABLE KEYS */; +INSERT INTO `llx_c_tva` VALUES (11,1,'',20,NULL,'0',NULL,'0',0,'VAT standard rate (France hors DOM-TOM)',1,NULL,NULL),(12,1,'',8.5,NULL,'0',NULL,'0',0,'VAT standard rate (DOM sauf Guyane et Saint-Martin)',0,NULL,NULL),(13,1,'',8.5,NULL,'0',NULL,'0',1,'VAT standard rate (DOM sauf Guyane et Saint-Martin), non perçu par le vendeur mais récupérable par acheteur',0,NULL,NULL),(14,1,'',5.5,NULL,'0',NULL,'0',0,'VAT reduced rate (France hors DOM-TOM)',1,NULL,NULL),(15,1,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0 ou non applicable',1,NULL,NULL),(16,1,'',2.1,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(17,1,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(21,2,'',21,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(22,2,'',6,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(23,2,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0 ou non applicable',1,NULL,NULL),(24,2,'',12,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(31,3,'',21,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(32,3,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(33,3,'',4,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(34,3,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(41,4,'',21,'5.2','3','-19:-15:-9','5',0,'VAT standard rate',1,NULL,NULL),(42,4,'',10,'1.4','3','-19:-15:-9','5',0,'VAT reduced rate',1,NULL,NULL),(43,4,'',4,'0.5','3','-19:-15:-9','5',0,'VAT super-reduced rate',1,NULL,NULL),(44,4,'',0,'0','3','-19:-15:-9','5',0,'VAT Rate 0',1,NULL,NULL),(51,5,'',19,NULL,'0',NULL,'0',0,'allgemeine Ust.',1,NULL,NULL),(52,5,'',7,NULL,'0',NULL,'0',0,'ermäßigte USt.',1,NULL,NULL),(53,5,'',0,NULL,'0',NULL,'0',0,'keine USt.',1,NULL,NULL),(54,5,'',5.5,NULL,'0',NULL,'0',0,'USt. Forst',0,NULL,NULL),(55,5,'',10.7,NULL,'0',NULL,'0',0,'USt. Landwirtschaft',0,NULL,NULL),(61,6,'',8,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(62,6,'',3.8,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(63,6,'',2.5,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(64,6,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(71,7,'',20,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(72,7,'',17.5,NULL,'0',NULL,'0',0,'VAT standard rate before 2011',1,NULL,NULL),(73,7,'',5,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(74,7,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(81,8,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(82,8,'',23,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(83,8,'',13.5,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(84,8,'',9,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(85,8,'',4.8,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(91,9,'',17,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(92,9,'',13,NULL,'0',NULL,'0',0,'VAT reduced rate 0',1,NULL,NULL),(93,9,'',3,NULL,'0',NULL,'0',0,'VAT super reduced rate 0',1,NULL,NULL),(94,9,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(101,10,'',6,'1','4','0','0',0,'VAT 6%',1,NULL,NULL),(102,10,'',12,'1','4','0','0',0,'VAT 12%',1,NULL,NULL),(103,10,'',18,'1','4','0','0',0,'VAT 18%',1,NULL,NULL),(104,10,'',7.5,'1','4','0','0',0,'VAT 6% Majoré à 25% (7.5%)',1,NULL,NULL),(105,10,'',15,'1','4','0','0',0,'VAT 12% Majoré à 25% (15%)',1,NULL,NULL),(106,10,'',22.5,'1','4','0','0',0,'VAT 18% Majoré à 25% (22.5%)',1,NULL,NULL),(107,10,'',0,'1','4','0','0',0,'VAT Rate 0',1,NULL,NULL),(111,11,'',0,NULL,'0',NULL,'0',0,'No Sales Tax',1,NULL,NULL),(112,11,'',4,NULL,'0',NULL,'0',0,'Sales Tax 4%',1,NULL,NULL),(113,11,'',6,NULL,'0',NULL,'0',0,'Sales Tax 6%',1,NULL,NULL),(121,12,'',20,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(122,12,'',14,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(123,12,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(124,12,'',7,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(125,12,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(141,14,'',7,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(142,14,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(143,14,'',5,'9.975','1',NULL,'0',0,'GST/TPS and PST/TVQ rate for Province',1,NULL,NULL),(171,17,'',19,NULL,'0',NULL,'0',0,'Algemeen BTW tarief',1,NULL,NULL),(172,17,'',6,NULL,'0',NULL,'0',0,'Verlaagd BTW tarief',1,NULL,NULL),(173,17,'',0,NULL,'0',NULL,'0',0,'0 BTW tarief',1,NULL,NULL),(174,17,'',21,NULL,'0',NULL,'0',0,'Algemeen BTW tarief (vanaf 1 oktober 2012)',0,NULL,NULL),(201,20,'',25,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(202,20,'',12,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(203,20,'',6,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(204,20,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(211,21,'',0,'0','0','0','0',0,'IVA Rate 0',1,NULL,NULL),(212,21,'',18,'7.5','2','0','0',0,'IVA standard rate',1,NULL,NULL),(221,22,'',18,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(222,22,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(223,22,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(231,23,'',21,NULL,'0',NULL,'0',0,'IVA standard rate',1,NULL,NULL),(232,23,'',10.5,NULL,'0',NULL,'0',0,'IVA reduced rate',1,NULL,NULL),(233,23,'',0,NULL,'0',NULL,'0',0,'IVA Rate 0',1,NULL,NULL),(241,24,'',19.25,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(242,24,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(251,25,'',23,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(252,25,'',13,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(253,25,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(254,25,'',6,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(261,26,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(271,27,'',19.6,NULL,'0',NULL,'0',0,'VAT standard rate (France hors DOM-TOM)',1,NULL,NULL),(272,27,'',8.5,NULL,'0',NULL,'0',0,'VAT standard rate (DOM sauf Guyane et Saint-Martin)',0,NULL,NULL),(273,27,'',8.5,NULL,'0',NULL,'0',1,'VAT standard rate (DOM sauf Guyane et Saint-Martin), non perçu par le vendeur mais récupérable par acheteur',0,NULL,NULL),(274,27,'',5.5,NULL,'0',NULL,'0',0,'VAT reduced rate (France hors DOM-TOM)',0,NULL,NULL),(275,27,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0 ou non applicable',1,NULL,NULL),(276,27,'',2.1,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(277,27,'',7,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(281,28,'',10,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(282,28,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(411,41,'',20,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(412,41,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(413,41,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(461,46,'',0,NULL,'0',NULL,'0',0,'No VAT',1,NULL,NULL),(462,46,'',15,NULL,'0',NULL,'0',0,'VAT 15%',1,NULL,NULL),(463,46,'',7.5,NULL,'0',NULL,'0',0,'VAT 7.5%',1,NULL,NULL),(561,56,'',0,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(591,59,'',20,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(592,59,'',7,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(593,59,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(671,67,'',19,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(672,67,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(801,80,'',25,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(802,80,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(861,86,'',13,NULL,'0',NULL,'0',0,'IVA 13',1,NULL,NULL),(862,86,'',0,NULL,'0',NULL,'0',0,'SIN IVA',1,NULL,NULL),(1141,114,'',0,NULL,'0',NULL,'0',0,'No ISV',1,NULL,NULL),(1142,114,'',12,NULL,'0',NULL,'0',0,'ISV 12%',1,NULL,NULL),(1161,116,'',25.5,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1162,116,'',7,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1163,116,'',0,NULL,'0',NULL,'0',0,'VAT rate 0',1,NULL,NULL),(1171,117,'',12.5,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1172,117,'',4,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1173,117,'',1,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(1174,117,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1176,117,'CGST+SGST',0,'9','1','9','1',0,'CGST+SGST - Same state sales',1,NULL,NULL),(1177,117,'IGST',18,'0','0','0','0',0,'IGST',1,NULL,NULL),(1231,123,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1232,123,'',5,NULL,'0',NULL,'0',0,'VAT Rate 5',1,NULL,NULL),(1401,140,'',15,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1402,140,'',12,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1403,140,'',6,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1404,140,'',3,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(1405,140,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1481,148,'',18,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1482,148,'',7,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1483,148,'',5,NULL,'0',NULL,'0',0,'VAT super-reduced rate',1,NULL,NULL),(1484,148,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1511,151,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1512,151,'',14,NULL,'0',NULL,'0',0,'VAT Rate 14',1,NULL,NULL),(1521,152,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1522,152,'',15,NULL,'0',NULL,'0',0,'VAT Rate 15',1,NULL,NULL),(1541,154,'',0,NULL,'0',NULL,'0',0,'No VAT',1,NULL,NULL),(1542,154,'',16,NULL,'0',NULL,'0',0,'VAT 16%',1,NULL,NULL),(1543,154,'',10,NULL,'0',NULL,'0',0,'VAT Frontero',1,NULL,NULL),(1662,166,'',15,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1663,166,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1692,169,'',5,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1693,169,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1731,173,'',25,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1732,173,'',14,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1733,173,'',8,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1734,173,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1781,178,'',7,NULL,'0',NULL,'0',0,'ITBMS standard rate',1,NULL,NULL),(1782,178,'',0,NULL,'0',NULL,'0',0,'ITBMS Rate 0',1,NULL,NULL),(1811,181,'',18,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1812,181,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1841,184,'',20,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1842,184,'',7,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1843,184,'',3,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1844,184,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1881,188,'',24,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(1882,188,'',9,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1883,188,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(1884,188,'',5,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(1931,193,'',0,NULL,'0',NULL,'0',0,'No VAT in SPM',1,NULL,NULL),(2011,201,'',19,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(2012,201,'',10,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(2013,201,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(2021,202,'',22,NULL,'0',NULL,'0',0,'VAT standard rate',1,NULL,NULL),(2022,202,'',9.5,NULL,'0',NULL,'0',0,'VAT reduced rate',1,NULL,NULL),(2023,202,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(2051,205,'',0,NULL,'0',NULL,'0',0,'No VAT',1,NULL,NULL),(2052,205,'',14,NULL,'0',NULL,'0',0,'VAT 14%',1,NULL,NULL),(2131,213,'',5,NULL,'0',NULL,'0',0,'VAT 5%',1,NULL,NULL),(2261,226,'',20,NULL,'0',NULL,'0',0,'VAT standart rate',1,NULL,NULL),(2262,226,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(2321,232,'',0,NULL,'0',NULL,'0',0,'No VAT',1,NULL,NULL),(2322,232,'',12,NULL,'0',NULL,'0',0,'VAT 12%',1,NULL,NULL),(2323,232,'',8,NULL,'0',NULL,'0',0,'VAT 8%',1,NULL,NULL),(2461,246,'',0,NULL,'0',NULL,'0',0,'VAT Rate 0',1,NULL,NULL),(2462,102,'',23,'0','0','0','0',0,'Κανονικός Φ.Π.Α.',1,NULL,NULL),(2463,102,'',0,'0','0','0','0',0,'Μηδενικό Φ.Π.Α.',1,NULL,NULL),(2464,102,'',13,'0','0','0','0',0,'Μειωμένος Φ.Π.Α.',1,NULL,NULL),(2465,102,'',6.5,'0','0','0','0',0,'Υπερμειωμένος Φ.Π.Α.',1,NULL,NULL),(2466,102,'',16,'0','0','0','0',0,'Νήσων κανονικός Φ.Π.Α.',1,NULL,NULL),(2467,102,'',9,'0','0','0','0',0,'Νήσων μειωμένος Φ.Π.Α.',1,NULL,NULL),(2468,102,'',5,'0','0','0','0',0,'Νήσων υπερμειωμένος Φ.Π.Α.',1,NULL,NULL),(2469,1,'85',8.5,NULL,'0',NULL,'0',0,'VAT standard rate (DOM sauf Guyane et Saint-Martin)',0,NULL,NULL),(2470,1,'85NPR',8.5,NULL,'0',NULL,'0',1,'VAT standard rate (DOM sauf Guyane et Saint-Martin), non perçu par le vendeur mais récupérable par acheteur',0,NULL,NULL),(2471,1,'85NPROM',8.5,'2','3',NULL,'0',1,'VAT standard rate (DOM sauf Guyane et Saint-Martin), NPR, Octroi de Mer',0,NULL,NULL),(2472,1,'85NPROMOMR',8.5,'2','3','2.5','3',1,'VAT standard rate (DOM sauf Guyane et Saint-Martin), NPR, Octroi de Mer et Octroi de Mer Regional',0,NULL,NULL); +/*!40000 ALTER TABLE `llx_c_tva` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_type_contact` +-- + +DROP TABLE IF EXISTS `llx_c_type_contact`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_type_contact` ( + `rowid` int(11) NOT NULL, + `element` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `source` varchar(8) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'external', + `code` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_type_contact_id` (`element`,`source`,`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_type_contact` +-- + +LOCK TABLES `llx_c_type_contact` WRITE; +/*!40000 ALTER TABLE `llx_c_type_contact` DISABLE KEYS */; +INSERT INTO `llx_c_type_contact` VALUES (10,'contrat','internal','SALESREPSIGN','Commercial signataire du contrat',1,NULL,0),(11,'contrat','internal','SALESREPFOLL','Commercial suivi du contrat',1,NULL,0),(20,'contrat','external','BILLING','Contact client facturation contrat',1,NULL,0),(21,'contrat','external','CUSTOMER','Contact client suivi contrat',1,NULL,0),(22,'contrat','external','SALESREPSIGN','Contact client signataire contrat',1,NULL,0),(31,'propal','internal','SALESREPFOLL','Commercial à l\'origine de la propale',1,NULL,0),(40,'propal','external','BILLING','Contact client facturation propale',1,NULL,0),(41,'propal','external','CUSTOMER','Contact client suivi propale',1,NULL,0),(42,'propal','external','SHIPPING','Customer contact for delivery',1,NULL,0),(50,'facture','internal','SALESREPFOLL','Responsable suivi du paiement',1,NULL,0),(60,'facture','external','BILLING','Contact client facturation',1,NULL,0),(61,'facture','external','SHIPPING','Contact client livraison',1,NULL,0),(62,'facture','external','SERVICE','Contact client prestation',1,NULL,0),(70,'invoice_supplier','internal','SALESREPFOLL','Responsable suivi du paiement',1,NULL,0),(71,'invoice_supplier','external','BILLING','Contact fournisseur facturation',1,NULL,0),(72,'invoice_supplier','external','SHIPPING','Contact fournisseur livraison',1,NULL,0),(73,'invoice_supplier','external','SERVICE','Contact fournisseur prestation',1,NULL,0),(80,'agenda','internal','ACTOR','Responsable',1,NULL,0),(81,'agenda','internal','GUEST','Guest',1,NULL,0),(85,'agenda','external','ACTOR','Responsable',1,NULL,0),(86,'agenda','external','GUEST','Guest',1,NULL,0),(91,'commande','internal','SALESREPFOLL','Responsable suivi de la commande',1,NULL,0),(100,'commande','external','BILLING','Contact client facturation commande',1,NULL,0),(101,'commande','external','CUSTOMER','Contact client suivi commande',1,NULL,0),(102,'commande','external','SHIPPING','Contact client livraison commande',1,NULL,0),(120,'fichinter','internal','INTERREPFOLL','Responsable suivi de l\'intervention',1,NULL,0),(121,'fichinter','internal','INTERVENING','Intervenant',1,NULL,0),(130,'fichinter','external','BILLING','Contact client facturation intervention',1,NULL,0),(131,'fichinter','external','CUSTOMER','Contact client suivi de l\'intervention',1,NULL,0),(140,'order_supplier','internal','SALESREPFOLL','Responsable suivi de la commande',1,NULL,0),(141,'order_supplier','internal','SHIPPING','Responsable réception de la commande',1,NULL,0),(142,'order_supplier','external','BILLING','Contact fournisseur facturation commande',1,NULL,0),(143,'order_supplier','external','CUSTOMER','Contact fournisseur suivi commande',1,NULL,0),(145,'order_supplier','external','SHIPPING','Contact fournisseur livraison commande',1,NULL,0),(150,'dolresource','internal','USERINCHARGE','In charge of resource',1,NULL,0),(151,'dolresource','external','THIRDINCHARGE','In charge of resource',1,NULL,0),(155,'ticket','internal','SUPPORTTEC','Utilisateur contact support',1,NULL,0),(156,'ticket','internal','CONTRIBUTOR','Intervenant',1,NULL,0),(157,'ticket','external','SUPPORTCLI','Contact client suivi incident',1,NULL,0),(158,'ticket','external','CONTRIBUTOR','Intervenant',1,NULL,0),(160,'project','internal','PROJECTLEADER','Chef de Projet',1,NULL,0),(161,'project','internal','PROJECTCONTRIBUTOR','Intervenant',1,NULL,0),(170,'project','external','PROJECTLEADER','Chef de Projet',1,NULL,0),(171,'project','external','PROJECTCONTRIBUTOR','Intervenant',1,NULL,0),(180,'project_task','internal','TASKEXECUTIVE','Responsable',1,NULL,0),(181,'project_task','internal','TASKCONTRIBUTOR','Intervenant',1,NULL,0),(190,'project_task','external','TASKEXECUTIVE','Responsable',1,NULL,0),(191,'project_task','external','TASKCONTRIBUTOR','Intervenant',1,NULL,0),(200,'societe','external','GENERALREF','Généraliste (référent)',0,'cabinetmed',0),(201,'societe','external','GENERALISTE','Généraliste',0,'cabinetmed',0),(210,'societe','external','SPECCHIROR','Chirurgien ortho',0,'cabinetmed',0),(211,'societe','external','SPECCHIROT','Chirurgien autre',0,'cabinetmed',0),(220,'societe','external','SPECDERMA','Dermatologue',0,'cabinetmed',0),(225,'societe','external','SPECENDOC','Endocrinologue',0,'cabinetmed',0),(230,'societe','external','SPECGYNECO','Gynécologue',0,'cabinetmed',0),(240,'societe','external','SPECGASTRO','Gastroantérologue',0,'cabinetmed',0),(245,'societe','external','SPECINTERNE','Interniste',0,'cabinetmed',0),(250,'societe','external','SPECCARDIO','Cardiologue',0,'cabinetmed',0),(260,'societe','external','SPECNEPHRO','Néphrologue',0,'cabinetmed',0),(263,'societe','external','SPECPNEUMO','Pneumologue',0,'cabinetmed',0),(265,'societe','external','SPECNEURO','Neurologue',0,'cabinetmed',0),(270,'societe','external','SPECRHUMATO','Rhumatologue',0,'cabinetmed',0),(280,'societe','external','KINE','Kinésithérapeute',0,'cabinetmed',0); +/*!40000 ALTER TABLE `llx_c_type_contact` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_type_container` +-- + +DROP TABLE IF EXISTS `llx_c_type_container`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_type_container` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(32) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(64) NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_type_container_id` (`code`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_type_container` +-- + +LOCK TABLES `llx_c_type_container` WRITE; +/*!40000 ALTER TABLE `llx_c_type_container` DISABLE KEYS */; +INSERT INTO `llx_c_type_container` VALUES (2,'page',1,'Page',1,'system'),(3,'banner',1,'Banner',1,'system'),(4,'blogpost',1,'BlogPost',1,'system'),(5,'other',1,'Other',1,'system'); +/*!40000 ALTER TABLE `llx_c_type_container` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_type_fees` +-- + +DROP TABLE IF EXISTS `llx_c_type_fees`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_type_fees` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + `type` int(11) DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_type_fees` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=48 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_type_fees` +-- + +LOCK TABLES `llx_c_type_fees` WRITE; +/*!40000 ALTER TABLE `llx_c_type_fees` DISABLE KEYS */; +INSERT INTO `llx_c_type_fees` VALUES (1,'TF_OTHER','Other','705',1,NULL,0,0),(2,'TF_TRIP','Trip',NULL,1,NULL,0,0),(3,'TF_LUNCH','Lunch',NULL,1,NULL,0,0),(4,'EX_KME','ExpLabelKm','625100',1,NULL,0,0),(5,'EX_FUE','ExpLabelFuelCV','606150',0,NULL,0,0),(6,'EX_HOT','ExpLabelHotel','625160',0,NULL,0,0),(7,'EX_PAR','ExpLabelParkingCV','625160',0,NULL,0,0),(8,'EX_TOL','ExpLabelTollCV','625160',0,NULL,0,0),(9,'EX_TAX','ExpLabelVariousTaxes','637800',0,NULL,0,0),(10,'EX_IND','ExpLabelIndemnityTranspSub','648100',0,NULL,0,0),(11,'EX_SUM','ExpLabelMaintenanceSupply','606300',0,NULL,0,0),(12,'EX_SUO','ExpLabelOfficeSupplies','606400',0,NULL,0,0),(13,'EX_CAR','ExpLabelCarRental','613000',0,NULL,0,0),(14,'EX_DOC','ExpLabelDocumentation','618100',0,NULL,0,0),(15,'EX_CUR','ExpLabelCustomersReceiving','625710',0,NULL,0,0),(16,'EX_OTR','ExpLabelOtherReceiving','625700',0,NULL,0,0),(17,'EX_POS','ExpLabelPostage','626100',0,NULL,0,0),(18,'EX_CAM','ExpLabelMaintenanceRepairCV','615300',0,NULL,0,0),(19,'EX_EMM','ExpLabelEmployeesMeal','625160',0,NULL,0,0),(20,'EX_GUM','ExpLabelGuestsMeal','625160',0,NULL,0,0),(21,'EX_BRE','ExpLabelBreakfast','625160',0,NULL,0,0),(22,'EX_FUE_VP','ExpLabelFuelPV','606150',0,NULL,0,0),(23,'EX_TOL_VP','ExpLabelTollPV','625160',0,NULL,0,0),(24,'EX_PAR_VP','ExpLabelParkingPV','625160',0,NULL,0,0),(25,'EX_CAM_VP','ExpLabelMaintenanceRepairPV','615300',0,NULL,0,0); +/*!40000 ALTER TABLE `llx_c_type_fees` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_type_resource` +-- + +DROP TABLE IF EXISTS `llx_c_type_resource`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_type_resource` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_type_resource_id` (`label`,`code`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_type_resource` +-- + +LOCK TABLES `llx_c_type_resource` WRITE; +/*!40000 ALTER TABLE `llx_c_type_resource` DISABLE KEYS */; +INSERT INTO `llx_c_type_resource` VALUES (1,'RES_ROOMS','Rooms',1),(2,'RES_CARS','Cars',1); +/*!40000 ALTER TABLE `llx_c_type_resource` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_typent` +-- + +DROP TABLE IF EXISTS `llx_c_typent`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_typent` ( + `id` int(11) NOT NULL, + `code` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `module` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_c_typent` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_typent` +-- + +LOCK TABLES `llx_c_typent` WRITE; +/*!40000 ALTER TABLE `llx_c_typent` DISABLE KEYS */; +INSERT INTO `llx_c_typent` VALUES (0,'TE_UNKNOWN','-',NULL,1,NULL,0),(1,'TE_STARTUP','Start-up',NULL,1,NULL,0),(2,'TE_GROUP','Grand groupe',NULL,1,NULL,0),(3,'TE_MEDIUM','PME/PMI',NULL,1,NULL,0),(4,'TE_SMALL','TPE',NULL,1,NULL,0),(5,'TE_ADMIN','Administration',NULL,1,NULL,0),(6,'TE_WHOLE','Grossiste',NULL,1,NULL,0),(7,'TE_RETAIL','Revendeur',NULL,1,NULL,0),(8,'TE_PRIVATE','Particulier',NULL,1,NULL,0),(100,'TE_OTHER','Autres',NULL,1,NULL,0),(101,'TE_HOMME','Homme',NULL,0,'cabinetmed',0),(102,'TE_FEMME','Femme',NULL,0,'cabinetmed',0),(231,'TE_A_RI','Responsable Inscripto',23,1,NULL,0),(232,'TE_B_RNI','Responsable No Inscripto',23,1,NULL,0),(233,'TE_C_FE','Consumidor Final/Exento',23,1,NULL,0); +/*!40000 ALTER TABLE `llx_c_typent` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_units` +-- + +DROP TABLE IF EXISTS `llx_c_units`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_units` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `short_label` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_c_units_code` (`code`) +) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_units` +-- + +LOCK TABLES `llx_c_units` WRITE; +/*!40000 ALTER TABLE `llx_c_units` DISABLE KEYS */; +INSERT INTO `llx_c_units` VALUES (1,'P','piece','p',1),(2,'SET','set','se',1),(3,'S','second','s',1),(4,'H','hour','h',1),(5,'D','day','d',1),(6,'KG','kilogram','kg',1),(7,'G','gram','g',1),(8,'M','meter','m',1),(9,'LM','linear meter','lm',1),(10,'M2','square meter','m2',1),(11,'M3','cubic meter','m3',1),(12,'L','liter','l',1); +/*!40000 ALTER TABLE `llx_c_units` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_c_ziptown` +-- + +DROP TABLE IF EXISTS `llx_c_ziptown`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_c_ziptown` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_county` int(11) DEFAULT NULL, + `fk_pays` int(11) NOT NULL DEFAULT '0', + `zip` varchar(10) COLLATE utf8_unicode_ci NOT NULL, + `town` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ziptown_fk_pays` (`zip`,`town`,`fk_pays`), + KEY `idx_c_ziptown_fk_county` (`fk_county`), + KEY `idx_c_ziptown_fk_pays` (`fk_pays`), + KEY `idx_c_ziptown_zip` (`zip`), + CONSTRAINT `fk_c_ziptown_fk_county` FOREIGN KEY (`fk_county`) REFERENCES `llx_c_departements` (`rowid`), + CONSTRAINT `fk_c_ziptown_fk_pays` FOREIGN KEY (`fk_pays`) REFERENCES `llx_c_country` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_c_ziptown` +-- + +LOCK TABLES `llx_c_ziptown` WRITE; +/*!40000 ALTER TABLE `llx_c_ziptown` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_c_ziptown` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie` +-- + +DROP TABLE IF EXISTS `llx_categorie`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_parent` int(11) NOT NULL DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `type` tinyint(4) NOT NULL DEFAULT '1', + `entity` int(11) NOT NULL DEFAULT '1', + `description` text COLLATE utf8_unicode_ci, + `fk_soc` int(11) DEFAULT NULL, + `visible` tinyint(4) NOT NULL DEFAULT '1', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `color` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_categorie_ref` (`entity`,`fk_parent`,`label`,`type`), + KEY `idx_categorie_type` (`type`), + KEY `idx_categorie_label` (`label`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie` +-- + +LOCK TABLES `llx_categorie` WRITE; +/*!40000 ALTER TABLE `llx_categorie` DISABLE KEYS */; +INSERT INTO `llx_categorie` VALUES (1,0,'Preferred Partners',1,1,'This category is used to tag suppliers that are Prefered Partners',NULL,0,NULL,'005fbf',NULL),(2,0,'MyCategory',1,1,'This is description of MyCategory for customer and prospects
',NULL,0,NULL,NULL,NULL),(3,7,'Hot products',1,1,'This is description of hot products
',NULL,0,NULL,NULL,NULL),(4,0,'Merchant',1,1,'Category dedicated to merchant third parties',NULL,0,NULL,'bf5f00',NULL),(5,7,'Bio Fairtrade',0,1,'',NULL,0,NULL,NULL,NULL),(6,7,'Bio AB',0,1,'',NULL,0,NULL,NULL,NULL),(7,9,'Bio',0,1,'This product is a BIO product',NULL,0,NULL,NULL,NULL),(8,7,'Bio Dynamic',0,1,'',NULL,0,NULL,NULL,NULL),(9,0,'High Quality Product',0,1,'Label dedicated for High quality products',NULL,0,NULL,'7f7f00',NULL),(10,0,'Reserved for VIP',0,1,'Product of thi category are reserved to VIP customers',NULL,0,NULL,'7f0000',NULL),(11,9,'ISO',0,1,'Product of this category has an ISO label',NULL,0,NULL,NULL,NULL),(12,0,'VIP',2,1,'',NULL,0,NULL,'bf5f00',NULL),(13,0,'Region North',2,1,'Customer of North Region',NULL,0,NULL,'7f007f',NULL),(14,0,'Regular customer',2,1,'',NULL,0,NULL,'5fbf00',NULL),(15,13,'Region North A',2,1,'',NULL,0,NULL,'bf00bf',NULL),(17,0,'MyTag1',4,1,'',NULL,0,NULL,NULL,NULL),(18,0,'Met during meeting',4,1,'',NULL,0,NULL,'ff7f00',NULL),(19,17,'MySubTag1',4,1,'',NULL,0,NULL,NULL,NULL),(20,13,'Region North B',2,1,'',NULL,0,NULL,'bf005f',NULL),(21,0,'Region South',2,1,'',NULL,0,NULL,NULL,NULL),(22,21,'Region South A',2,1,'',NULL,0,NULL,NULL,NULL),(23,21,'Region South B',2,1,'',NULL,0,NULL,NULL,NULL),(24,0,'Limited Edition',0,1,'This is a limited edition',NULL,0,NULL,'ff7f00',NULL),(25,0,'Imported products',0,1,'For product we have to import from another country',NULL,0,NULL,NULL,NULL),(26,28,'Friends',4,1,'Category of friends contact',NULL,0,NULL,'00bf00',NULL),(27,28,'Family',4,1,'Category of family contacts',NULL,0,NULL,'007f3f',NULL),(28,0,'Personal contacts',4,1,'For personal contacts',NULL,0,NULL,'007f3f',NULL),(29,0,'Online only merchant',1,1,'',NULL,0,NULL,'aaaaff',NULL),(30,0,'ppp',6,1,'ppp',NULL,0,NULL,'ff5656',NULL); +/*!40000 ALTER TABLE `llx_categorie` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_account` +-- + +DROP TABLE IF EXISTS `llx_categorie_account`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_account` ( + `fk_categorie` int(11) NOT NULL, + `fk_account` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_account`), + KEY `idx_categorie_account_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_account_fk_account` (`fk_account`), + CONSTRAINT `fk_categorie_account_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_account_fk_account` FOREIGN KEY (`fk_account`) REFERENCES `llx_bank_account` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_account` +-- + +LOCK TABLES `llx_categorie_account` WRITE; +/*!40000 ALTER TABLE `llx_categorie_account` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categorie_account` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_association` +-- + +DROP TABLE IF EXISTS `llx_categorie_association`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_association` ( + `fk_categorie_mere` int(11) NOT NULL, + `fk_categorie_fille` int(11) NOT NULL, + UNIQUE KEY `uk_categorie_association` (`fk_categorie_mere`,`fk_categorie_fille`), + UNIQUE KEY `uk_categorie_association_fk_categorie_fille` (`fk_categorie_fille`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_association` +-- + +LOCK TABLES `llx_categorie_association` WRITE; +/*!40000 ALTER TABLE `llx_categorie_association` DISABLE KEYS */; +INSERT INTO `llx_categorie_association` VALUES (3,5),(9,11); +/*!40000 ALTER TABLE `llx_categorie_association` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_contact` +-- + +DROP TABLE IF EXISTS `llx_categorie_contact`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_contact` ( + `fk_categorie` int(11) NOT NULL, + `fk_socpeople` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_socpeople`), + KEY `idx_categorie_contact_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_contact_fk_socpeople` (`fk_socpeople`), + CONSTRAINT `fk_categorie_contact_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_contact_fk_socpeople` FOREIGN KEY (`fk_socpeople`) REFERENCES `llx_socpeople` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_contact` +-- + +LOCK TABLES `llx_categorie_contact` WRITE; +/*!40000 ALTER TABLE `llx_categorie_contact` DISABLE KEYS */; +INSERT INTO `llx_categorie_contact` VALUES (18,3,NULL),(18,6,NULL),(19,6,NULL),(26,9,NULL),(27,7,NULL),(27,8,NULL),(27,10,NULL),(28,11,NULL); +/*!40000 ALTER TABLE `llx_categorie_contact` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_fournisseur` +-- + +DROP TABLE IF EXISTS `llx_categorie_fournisseur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_fournisseur` ( + `fk_categorie` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_soc`), + KEY `idx_categorie_fournisseur_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_fournisseur_fk_societe` (`fk_soc`), + CONSTRAINT `fk_categorie_fournisseur_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_fournisseur_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_fournisseur` +-- + +LOCK TABLES `llx_categorie_fournisseur` WRITE; +/*!40000 ALTER TABLE `llx_categorie_fournisseur` DISABLE KEYS */; +INSERT INTO `llx_categorie_fournisseur` VALUES (1,2,NULL),(1,10,NULL); +/*!40000 ALTER TABLE `llx_categorie_fournisseur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_lang` +-- + +DROP TABLE IF EXISTS `llx_categorie_lang`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_lang` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_category` int(11) NOT NULL DEFAULT '0', + `lang` varchar(5) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_category_lang` (`fk_category`,`lang`), + CONSTRAINT `fk_category_lang_fk_category` FOREIGN KEY (`fk_category`) REFERENCES `llx_categorie` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_lang` +-- + +LOCK TABLES `llx_categorie_lang` WRITE; +/*!40000 ALTER TABLE `llx_categorie_lang` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categorie_lang` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_member` +-- + +DROP TABLE IF EXISTS `llx_categorie_member`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_member` ( + `fk_categorie` int(11) NOT NULL, + `fk_member` int(11) NOT NULL, + PRIMARY KEY (`fk_categorie`,`fk_member`), + KEY `idx_categorie_member_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_member_fk_member` (`fk_member`), + CONSTRAINT `fk_categorie_member_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_member_member_rowid` FOREIGN KEY (`fk_member`) REFERENCES `llx_adherent` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_member` +-- + +LOCK TABLES `llx_categorie_member` WRITE; +/*!40000 ALTER TABLE `llx_categorie_member` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categorie_member` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_product` +-- + +DROP TABLE IF EXISTS `llx_categorie_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_product` ( + `fk_categorie` int(11) NOT NULL, + `fk_product` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_product`), + KEY `idx_categorie_product_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_product_fk_product` (`fk_product`), + CONSTRAINT `fk_categorie_product_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_product_product_rowid` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_product` +-- + +LOCK TABLES `llx_categorie_product` WRITE; +/*!40000 ALTER TABLE `llx_categorie_product` DISABLE KEYS */; +INSERT INTO `llx_categorie_product` VALUES (5,2,NULL),(6,2,NULL),(8,4,NULL),(9,5,NULL),(9,12,NULL),(10,3,NULL),(10,4,NULL),(24,1,NULL),(24,11,NULL),(25,10,NULL); +/*!40000 ALTER TABLE `llx_categorie_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_project` +-- + +DROP TABLE IF EXISTS `llx_categorie_project`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_project` ( + `fk_categorie` int(11) NOT NULL, + `fk_project` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_project`), + KEY `idx_categorie_project_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_project_fk_project` (`fk_project`), + CONSTRAINT `fk_categorie_project_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_project_fk_project` FOREIGN KEY (`fk_project`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_categorie_project_fk_project_rowid` FOREIGN KEY (`fk_project`) REFERENCES `llx_projet` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_project` +-- + +LOCK TABLES `llx_categorie_project` WRITE; +/*!40000 ALTER TABLE `llx_categorie_project` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categorie_project` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_societe` +-- + +DROP TABLE IF EXISTS `llx_categorie_societe`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_societe` ( + `fk_categorie` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_soc`), + KEY `idx_categorie_societe_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_societe_fk_societe` (`fk_soc`), + CONSTRAINT `fk_categorie_societe_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_societe_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_societe` +-- + +LOCK TABLES `llx_categorie_societe` WRITE; +/*!40000 ALTER TABLE `llx_categorie_societe` DISABLE KEYS */; +INSERT INTO `llx_categorie_societe` VALUES (12,10,NULL),(12,11,NULL),(14,11,NULL); +/*!40000 ALTER TABLE `llx_categorie_societe` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categorie_user` +-- + +DROP TABLE IF EXISTS `llx_categorie_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categorie_user` ( + `fk_categorie` int(11) NOT NULL, + `fk_user` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_categorie`,`fk_user`), + KEY `idx_categorie_user_fk_categorie` (`fk_categorie`), + KEY `idx_categorie_user_fk_user` (`fk_user`), + CONSTRAINT `fk_categorie_user_categorie_rowid` FOREIGN KEY (`fk_categorie`) REFERENCES `llx_categorie` (`rowid`), + CONSTRAINT `fk_categorie_user_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categorie_user` +-- + +LOCK TABLES `llx_categorie_user` WRITE; +/*!40000 ALTER TABLE `llx_categorie_user` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categorie_user` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_categories_extrafields` +-- + +DROP TABLE IF EXISTS `llx_categories_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_categories_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_categories_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_categories_extrafields` +-- + +LOCK TABLES `llx_categories_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_categories_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_categories_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_chargesociales` +-- + +DROP TABLE IF EXISTS `llx_chargesociales`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_chargesociales` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_ech` datetime NOT NULL, + `libelle` varchar(80) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_type` int(11) NOT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `paye` smallint(6) NOT NULL DEFAULT '0', + `periode` date DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `date_creation` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `ref` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_chargesociales` +-- + +LOCK TABLES `llx_chargesociales` WRITE; +/*!40000 ALTER TABLE `llx_chargesociales` DISABLE KEYS */; +INSERT INTO `llx_chargesociales` VALUES (4,'2011-08-09 00:00:00','fff',1,60,NULL,NULL,10.00000000,1,'2011-08-01','2012-12-08 13:11:10',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_chargesociales` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande` +-- + +DROP TABLE IF EXISTS `llx_commande`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_soc` int(11) NOT NULL, + `fk_projet` int(11) DEFAULT NULL, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_client` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `date_commande` date DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `source` smallint(6) DEFAULT NULL, + `fk_statut` smallint(6) DEFAULT '0', + `amount_ht` double(24,8) DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `facture` tinyint(4) DEFAULT '0', + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `date_livraison` date DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `fk_warehouse` int(11) DEFAULT NULL, + `fk_availability` int(11) DEFAULT NULL, + `fk_input_reason` int(11) DEFAULT NULL, + `fk_delivery_address` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_commande_ref` (`ref`,`entity`), + KEY `idx_commande_fk_soc` (`fk_soc`), + KEY `idx_commande_fk_user_author` (`fk_user_author`), + KEY `idx_commande_fk_user_valid` (`fk_user_valid`), + KEY `idx_commande_fk_user_cloture` (`fk_user_cloture`), + KEY `idx_commande_fk_projet` (`fk_projet`), + KEY `idx_commande_fk_account` (`fk_account`), + KEY `idx_commande_fk_currency` (`fk_currency`), + CONSTRAINT `fk_commande_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_commande_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_commande_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_commande_fk_user_cloture` FOREIGN KEY (`fk_user_cloture`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_commande_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=93 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande` +-- + +LOCK TABLES `llx_commande` WRITE; +/*!40000 ALTER TABLE `llx_commande` DISABLE KEYS */; +INSERT INTO `llx_commande` VALUES (1,'2016-07-30 15:13:20',1,NULL,'CO1107-0002',1,NULL,NULL,'','2011-07-20 15:23:12','2016-08-08 13:59:09',NULL,'2016-07-20',1,NULL,1,NULL,NULL,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,'','','einstein',0,NULL,NULL,1,1,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(2,'2016-07-30 15:13:20',1,NULL,'CO1107-0003',1,NULL,NULL,'','2011-07-20 23:20:12','2018-02-12 17:06:51',NULL,'2016-07-21',1,NULL,1,NULL,NULL,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,'','','einstein',0,NULL,NULL,0,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(3,'2016-07-30 15:13:20',1,NULL,'CO1107-0004',1,NULL,NULL,'','2011-07-20 23:22:53','2018-02-17 18:27:56',NULL,'2016-07-21',1,NULL,1,NULL,NULL,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,30.00000000,30.00000000,'','','einstein',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(5,'2016-07-30 15:12:32',1,NULL,'CO1108-0001',1,NULL,NULL,'','2011-08-08 03:04:11','2015-08-08 03:04:21',NULL,'2015-08-08',1,NULL,1,NULL,NULL,2,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,'','','einstein',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(6,'2016-07-30 15:13:20',19,NULL,'(PROV6)',1,NULL,NULL,'','2013-02-17 16:22:14',NULL,NULL,'2016-02-17',1,NULL,NULL,NULL,NULL,0,0.00000000,0,NULL,0,11.76000000,0.00000000,0.00000000,60.00000000,71.76000000,'','','einstein',0,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(17,'2017-02-15 22:50:34',4,NULL,'CO7001-0005',1,NULL,NULL,NULL,'2017-02-15 23:50:34','2017-02-15 23:50:34',NULL,'2016-05-13',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,509.00000000,509.00000000,'','','',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,509.00000000,0.00000000,509.00000000,NULL),(18,'2017-02-15 23:08:58',7,4,'CO7001-0006',1,NULL,NULL,NULL,'2017-02-15 23:51:23','2017-02-15 23:51:23',NULL,'2017-02-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,900.00000000,900.00000000,'','','',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,900.00000000,0.00000000,900.00000000,NULL),(20,'2017-02-15 23:09:04',4,NULL,'CO7001-0007',1,NULL,NULL,NULL,'2017-02-15 23:55:52','2017-02-15 23:55:52',NULL,'2016-04-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,330.00000000,330.00000000,'','','',0,NULL,NULL,2,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,330.00000000,0.00000000,330.00000000,NULL),(29,'2017-02-15 23:08:42',4,NULL,'CO7001-0008',1,NULL,NULL,NULL,'2017-02-16 00:03:44','2017-02-16 00:03:44',NULL,'2017-02-12',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,457.00000000,457.00000000,'','','',0,NULL,NULL,1,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,457.00000000,0.00000000,457.00000000,NULL),(34,'2017-02-15 23:08:47',11,NULL,'CO7001-0009',1,NULL,NULL,NULL,'2017-02-16 00:05:01','2017-02-16 00:05:01',NULL,'2017-01-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,124.00000000,124.00000000,'','','',0,NULL,NULL,2,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,124.00000000,0.00000000,124.00000000,NULL),(38,'2017-02-15 23:08:50',3,NULL,'CO7001-0010',1,NULL,NULL,NULL,'2017-02-16 00:05:01','2017-02-16 00:05:01',NULL,'2017-02-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,200.00000000,200.00000000,'','','',0,NULL,NULL,1,NULL,NULL,2,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,200.00000000,0.00000000,200.00000000,NULL),(40,'2017-02-15 23:08:53',11,NULL,'CO7001-0011',1,NULL,NULL,NULL,'2017-02-16 00:05:10','2017-02-16 00:05:11',NULL,'2017-01-23',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,1210.00000000,1210.00000000,'','','',0,NULL,NULL,1,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,1210.00000000,0.00000000,1210.00000000,NULL),(43,'2017-02-15 23:05:11',10,NULL,'CO7001-0012',1,NULL,NULL,NULL,'2017-02-16 00:05:11','2017-02-16 00:05:11',NULL,'2017-02-13',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,478.00000000,478.00000000,'','','',0,NULL,NULL,2,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,478.00000000,0.00000000,478.00000000,NULL),(47,'2017-02-15 23:09:10',1,NULL,'CO7001-0013',1,NULL,NULL,NULL,'2017-02-16 00:05:11','2017-02-16 00:05:11',NULL,'2016-11-13',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,55.00000000,55.00000000,'','','',0,NULL,NULL,2,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,55.00000000,0.00000000,55.00000000,NULL),(48,'2017-02-15 23:09:07',4,NULL,'CO7001-0014',1,NULL,NULL,NULL,'2017-02-16 00:05:11','2017-02-16 00:05:11',NULL,'2016-07-30',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,540.00000000,540.00000000,'','','',0,NULL,NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,540.00000000,0.00000000,540.00000000,NULL),(50,'2017-02-15 23:05:26',1,NULL,'CO7001-0015',1,NULL,NULL,NULL,'2017-02-16 00:05:26','2017-02-16 00:05:26',NULL,'2017-12-12',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,118.00000000,118.00000000,'','','',0,NULL,NULL,1,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,118.00000000,0.00000000,118.00000000,NULL),(54,'2017-02-15 23:06:01',12,NULL,'CO7001-0016',1,NULL,NULL,NULL,'2017-02-16 00:05:26','2017-02-16 00:05:26','2017-02-16 03:05:56','2016-06-03',12,NULL,12,12,1,3,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,220.00000000,220.00000000,'','','',1,NULL,NULL,NULL,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,220.00000000,0.00000000,220.00000000,NULL),(58,'2017-02-15 23:09:13',1,NULL,'CO7001-0017',1,NULL,NULL,NULL,'2017-02-16 00:05:26','2017-02-16 00:05:26',NULL,'2016-07-23',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,436.00000000,436.00000000,'','','',0,NULL,NULL,1,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,436.00000000,0.00000000,436.00000000,NULL),(62,'2017-02-15 23:09:16',19,NULL,'CO7001-0018',1,NULL,NULL,NULL,'2017-02-16 00:05:35','2017-02-16 00:05:35',NULL,'2016-02-23',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,410.00000000,410.00000000,'','','',0,NULL,NULL,2,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,410.00000000,0.00000000,410.00000000,NULL),(68,'2017-02-15 23:09:19',3,NULL,'CO7001-0019',1,NULL,NULL,NULL,'2017-02-16 00:05:35','2017-02-16 00:05:35',NULL,'2016-05-19',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,45.00000000,45.00000000,'','','',0,NULL,NULL,NULL,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,45.00000000,0.00000000,45.00000000,NULL),(72,'2017-02-15 23:09:23',6,NULL,'CO7001-0020',1,NULL,NULL,NULL,'2017-02-16 00:05:36','2017-02-16 00:05:36',NULL,'2016-11-13',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,610.00000000,610.00000000,'','','',0,NULL,NULL,NULL,NULL,NULL,2,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,610.00000000,0.00000000,610.00000000,NULL),(75,'2017-02-16 00:14:20',4,NULL,'CO7001-0021',1,NULL,NULL,NULL,'2017-02-16 00:05:37','2017-02-16 04:14:20',NULL,'2016-02-13',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,25.00000000,49.88000000,0.00000000,1200.00000000,1274.88000000,'','','',0,NULL,NULL,2,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,1200.00000000,25.00000000,1274.88000000,NULL),(78,'2017-02-15 23:05:37',12,NULL,'CO7001-0022',1,NULL,NULL,NULL,'2017-02-16 00:05:37','2017-02-16 00:05:37',NULL,'2016-10-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,928.00000000,928.00000000,'','','',0,NULL,NULL,2,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,928.00000000,0.00000000,928.00000000,NULL),(81,'2017-02-15 23:09:30',11,NULL,'CO7001-0023',1,NULL,NULL,NULL,'2017-02-16 00:05:38','2017-02-16 00:05:38',NULL,'2016-07-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,725.00000000,725.00000000,'','','',0,NULL,NULL,2,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,725.00000000,0.00000000,725.00000000,NULL),(83,'2017-02-15 23:10:24',26,NULL,'CO7001-0024',1,NULL,NULL,NULL,'2017-02-16 00:05:38','2017-02-16 00:05:38',NULL,'2016-04-03',12,NULL,12,NULL,1,-1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,105.00000000,105.00000000,'','','',0,NULL,NULL,1,NULL,NULL,1,NULL,1,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,105.00000000,0.00000000,105.00000000,NULL),(84,'2017-02-15 23:05:38',2,NULL,'CO7001-0025',1,NULL,NULL,NULL,'2017-02-16 00:05:38','2017-02-16 00:05:38',NULL,'2016-06-19',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,510.00000000,510.00000000,'','','',0,NULL,NULL,1,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,510.00000000,0.00000000,510.00000000,NULL),(85,'2017-02-15 23:05:38',1,NULL,'CO7001-0026',1,NULL,NULL,NULL,'2017-02-16 00:05:38','2017-02-16 00:05:38',NULL,'2016-01-03',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,47.00000000,47.00000000,'','','',0,NULL,NULL,1,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,47.00000000,0.00000000,47.00000000,NULL),(88,'2017-02-15 23:09:36',10,NULL,'CO7001-0027',1,NULL,NULL,NULL,'2017-02-16 00:05:38','2017-02-16 00:05:38',NULL,'2015-02-23',12,NULL,12,NULL,1,1,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,50.00000000,50.00000000,'','','',0,NULL,NULL,1,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,50.00000000,0.00000000,50.00000000,NULL),(90,'2017-02-16 00:46:31',19,NULL,'(PROV90)',1,NULL,NULL,NULL,'2017-02-16 04:46:31',NULL,NULL,'2017-02-16',12,NULL,NULL,NULL,NULL,0,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,440.00000000,440.00000000,'','','',0,NULL,NULL,3,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,440.00000000,0.00000000,440.00000000,NULL),(91,'2017-02-16 00:46:37',1,NULL,'(PROV91)',1,NULL,NULL,NULL,'2017-02-16 04:46:37',NULL,NULL,'2017-02-16',12,NULL,NULL,NULL,NULL,0,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,1000.00000000,1000.00000000,'','','',0,NULL,NULL,3,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,1000.00000000,0.00000000,1000.00000000,NULL),(92,'2017-02-16 00:47:25',3,NULL,'(PROV92)',1,NULL,NULL,NULL,'2017-02-16 04:47:25',NULL,NULL,'2017-02-16',12,NULL,NULL,NULL,NULL,0,0.00000000,0,NULL,0,0.00000000,0.00000000,0.00000000,1018.00000000,1018.00000000,'','','',0,NULL,NULL,3,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,'',0,'EUR',1.00000000,1018.00000000,0.00000000,1018.00000000,NULL); +/*!40000 ALTER TABLE `llx_commande` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_extrafields` +-- + +DROP TABLE IF EXISTS `llx_commande_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_commande_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_extrafields` +-- + +LOCK TABLES `llx_commande_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_commande_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_commande_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseur` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseur`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseur` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_soc` int(11) NOT NULL, + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_supplier` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_projet` int(11) DEFAULT '0', + `date_creation` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_approve` datetime DEFAULT NULL, + `date_approve2` datetime DEFAULT NULL, + `date_commande` date DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_approve` int(11) DEFAULT NULL, + `fk_user_approve2` int(11) DEFAULT NULL, + `source` smallint(6) NOT NULL, + `fk_statut` smallint(6) DEFAULT '0', + `billed` smallint(6) DEFAULT '0', + `amount_ht` double(24,8) DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_input_method` int(11) DEFAULT '0', + `fk_cond_reglement` int(11) DEFAULT '0', + `fk_mode_reglement` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_livraison` datetime DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_commande_fournisseur_ref` (`ref`,`fk_soc`,`entity`), + KEY `idx_commande_fournisseur_fk_soc` (`fk_soc`), + KEY `billed` (`billed`), + CONSTRAINT `fk_commande_fournisseur_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseur` +-- + +LOCK TABLES `llx_commande_fournisseur` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseur` DISABLE KEYS */; +INSERT INTO `llx_commande_fournisseur` VALUES (1,'2017-02-01 14:54:01',13,'CF1007-0001',1,NULL,NULL,NULL,'2016-07-11 17:13:40','2017-02-01 18:51:42','2017-02-01 18:52:04',NULL,'2017-02-01',1,NULL,12,12,NULL,0,4,0,0.00000000,0,0,39.20000000,0.00000000,0.00000000,200.00000000,239.20000000,NULL,NULL,'muscadet',2,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(2,'2016-07-30 16:11:52',1,'CF1007-0002',1,NULL,NULL,NULL,'2016-07-11 18:46:28','2016-07-11 18:47:33',NULL,NULL,'2016-07-11',1,NULL,1,NULL,NULL,0,3,0,0.00000000,0,0,0.00000000,0.00000000,0.00000000,200.00000000,200.00000000,NULL,NULL,'muscadet',4,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(3,'2012-12-08 13:11:07',17,'(PROV3)',1,NULL,NULL,NULL,'2011-08-04 23:00:52',NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,0,0,0,0.00000000,0,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,'muscadet',0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(4,'2012-12-08 13:11:07',17,'(PROV4)',1,NULL,NULL,NULL,'2011-08-04 23:19:32',NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,0,0,0,0.00000000,0,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,'muscadet',0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(13,'2017-02-01 13:35:27',1,'CF1303-0004',1,NULL,NULL,NULL,'2016-03-09 19:39:18','2016-03-09 19:39:27','2016-03-09 19:39:32',NULL,'2016-03-09',1,NULL,1,1,NULL,0,2,0,0.00000000,0,0,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,NULL,NULL,'muscadet',1,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL); +/*!40000 ALTER TABLE `llx_commande_fournisseur` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseur_dispatch` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseur_dispatch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseur_dispatch` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_commande` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `fk_commandefourndet` int(11) NOT NULL DEFAULT '0', + `qty` float DEFAULT NULL, + `fk_entrepot` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `comment` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_commande_fournisseur_dispatch_fk_commande` (`fk_commande`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseur_dispatch` +-- + +LOCK TABLES `llx_commande_fournisseur_dispatch` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseur_dispatch` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_commande_fournisseur_dispatch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseur_extrafields` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseur_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseur_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_commande_fournisseur_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseur_extrafields` +-- + +LOCK TABLES `llx_commande_fournisseur_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseur_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_commande_fournisseur_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseur_log` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseur_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseur_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datelog` datetime NOT NULL, + `fk_commande` int(11) NOT NULL, + `fk_statut` smallint(6) NOT NULL, + `fk_user` int(11) NOT NULL, + `comment` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseur_log` +-- + +LOCK TABLES `llx_commande_fournisseur_log` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseur_log` DISABLE KEYS */; +INSERT INTO `llx_commande_fournisseur_log` VALUES (1,'2010-07-11 15:13:40','2010-07-11 17:13:40',1,0,1,NULL),(2,'2010-07-11 15:15:42','2010-07-11 17:15:42',1,1,1,NULL),(3,'2010-07-11 15:16:28','2010-07-11 17:16:28',1,2,1,NULL),(4,'2010-07-11 15:19:14','2010-07-11 00:00:00',1,3,1,NULL),(5,'2010-07-11 15:19:36','2010-07-11 00:00:00',1,5,1,NULL),(6,'2010-07-11 16:46:28','2010-07-11 18:46:28',2,0,1,NULL),(7,'2010-07-11 16:47:33','2010-07-11 18:47:33',2,1,1,NULL),(8,'2010-07-11 16:47:41','2010-07-11 18:47:41',2,2,1,NULL),(9,'2010-07-11 16:48:00','2010-07-11 00:00:00',2,3,1,NULL),(10,'2011-08-04 21:00:52','2011-08-04 23:00:52',3,0,1,NULL),(11,'2011-08-04 21:19:32','2011-08-04 23:19:32',4,0,1,NULL),(12,'2011-08-04 21:22:16','2011-08-04 23:22:16',5,0,1,NULL),(13,'2011-08-04 21:22:54','2011-08-04 23:22:54',6,0,1,NULL),(14,'2011-08-04 21:23:29','2011-08-04 23:23:29',7,0,1,NULL),(15,'2011-08-04 21:36:10','2011-08-04 23:36:10',8,0,1,NULL),(19,'2011-08-08 13:04:37','2011-08-08 15:04:37',6,1,1,NULL),(20,'2011-08-08 13:04:38','2011-08-08 15:04:38',6,2,1,NULL),(29,'2013-03-09 18:39:18','2013-03-09 19:39:18',13,0,1,NULL),(30,'2013-03-09 18:39:27','2013-03-09 19:39:27',13,1,1,NULL),(31,'2013-03-09 18:39:32','2013-03-09 19:39:32',13,2,1,NULL),(32,'2013-03-09 18:39:41','2013-03-09 00:00:00',13,3,1,'hf'),(33,'2013-03-22 09:26:38','2013-03-22 10:26:38',14,0,1,NULL); +/*!40000 ALTER TABLE `llx_commande_fournisseur_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseurdet` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseurdet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseurdet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_commande` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `special_code` int(11) DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `fk_commande_fournisseurdet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_commande_fournisseurdet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseurdet` +-- + +LOCK TABLES `llx_commande_fournisseurdet` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseurdet` DISABLE KEYS */; +INSERT INTO `llx_commande_fournisseurdet` VALUES (1,1,NULL,NULL,'','','Chips',19.600,'',0.000,'',0.000,'',10,0,0,20.00000000,200.00000000,39.20000000,0.00000000,0.00000000,239.20000000,0,NULL,NULL,0,NULL,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(2,2,NULL,4,'ABCD','Decapsuleur','',0.000,'',0.000,'',0.000,'',20,0,0,10.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(6,13,NULL,NULL,'','','dfgdf',0.000,'',0.000,'0',0.000,'0',1,0,0,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000); +/*!40000 ALTER TABLE `llx_commande_fournisseurdet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commande_fournisseurdet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_commande_fournisseurdet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commande_fournisseurdet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_commande_fournisseurdet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commande_fournisseurdet_extrafields` +-- + +LOCK TABLES `llx_commande_fournisseurdet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_commande_fournisseurdet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_commande_fournisseurdet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commandedet` +-- + +DROP TABLE IF EXISTS `llx_commandedet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commandedet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_commande` int(11) DEFAULT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `tva_tx` double(6,3) DEFAULT NULL, + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT NULL, + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT NULL, + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `fk_remise_except` int(11) DEFAULT NULL, + `price` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `special_code` int(10) unsigned DEFAULT '0', + `rang` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_commandefourndet` int(11) DEFAULT NULL, + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `idx_commandedet_fk_commande` (`fk_commande`), + KEY `idx_commandedet_fk_product` (`fk_product`), + KEY `fk_commandedet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_commandedet_fk_commande` FOREIGN KEY (`fk_commande`) REFERENCES `llx_commande` (`rowid`), + CONSTRAINT `fk_commandedet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=292 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commandedet` +-- + +LOCK TABLES `llx_commandedet` WRITE; +/*!40000 ALTER TABLE `llx_commandedet` DISABLE KEYS */; +INSERT INTO `llx_commandedet` VALUES (1,1,NULL,NULL,NULL,'Product 1',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(2,1,NULL,2,NULL,'',0.000,'',0.000,'',0.000,'',1,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(3,1,NULL,5,NULL,'cccc',0.000,'',0.000,'',0.000,'',1,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(4,2,NULL,NULL,NULL,'hgf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(10,5,NULL,NULL,NULL,'gfdgdf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(11,6,NULL,NULL,NULL,'gdfg',19.600,'',0.000,'',0.000,'',1,0,0,NULL,10,10.00000000,10.00000000,1.96000000,0.00000000,0.00000000,11.96000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(12,6,NULL,NULL,NULL,'gfdgd',19.600,'',0.000,'',0.000,'',1,0,0,NULL,50,50.00000000,50.00000000,9.80000000,0.00000000,0.00000000,59.80000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(14,3,NULL,NULL,NULL,'gdfgdf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(15,3,NULL,NULL,NULL,'fghfgh',0.000,'',0.000,'',0.000,'',1,0,0,NULL,20,20.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(16,17,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(17,17,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(18,17,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,9,9.00000000,9.00000000,0.00000000,0.00000000,0.00000000,9.00000000,1,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',9.00000000,9.00000000,0.00000000,9.00000000),(19,18,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(20,18,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(21,18,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(24,20,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,5,5.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',5.00000000,20.00000000,0.00000000,20.00000000),(25,20,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(26,20,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(55,29,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(56,29,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(57,29,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(58,29,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,1,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(59,29,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,10,10.00000000,30.00000000,0.00000000,0.00000000,0.00000000,30.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0,'EUR',10.00000000,30.00000000,0.00000000,30.00000000),(75,34,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(76,34,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(77,34,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(78,34,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,9,9.00000000,9.00000000,0.00000000,0.00000000,0.00000000,9.00000000,1,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',9.00000000,9.00000000,0.00000000,9.00000000),(94,38,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(95,38,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(99,40,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(100,40,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(101,40,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(102,40,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(103,40,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(112,43,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(113,43,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(114,43,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(115,43,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(116,43,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(125,47,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(126,47,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(127,47,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(128,47,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(129,48,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(130,48,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(134,50,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(135,50,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(145,54,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(146,54,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(158,58,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(159,58,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(160,58,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,9,9.00000000,36.00000000,0.00000000,0.00000000,0.00000000,36.00000000,1,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',9.00000000,36.00000000,0.00000000,36.00000000),(174,62,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(175,62,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(176,62,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(198,68,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(199,68,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(209,72,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(210,72,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(211,72,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(212,72,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(213,72,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(227,75,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(235,78,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(236,78,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(237,78,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(238,78,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(246,81,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(247,81,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(248,81,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,5,5.00000000,25.00000000,0.00000000,0.00000000,0.00000000,25.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',5.00000000,25.00000000,0.00000000,25.00000000),(253,83,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,5,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',5.00000000,5.00000000,0.00000000,5.00000000),(254,83,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(255,83,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(256,83,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(257,84,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(258,84,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(259,84,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(260,85,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(261,85,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(262,85,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(271,88,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(272,88,NULL,3,NULL,'',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(276,75,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,90.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(278,75,NULL,13,NULL,'A powerfull computer XP4523 
\r\n(Code douane: USXP765 - Pays d'origine: Etats-Unis)',5.000,'',9.975,'1',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,25.00000000,49.88000000,0.00000000,574.88000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,25.00000000,574.88000000),(279,75,NULL,13,NULL,'A powerfull computer XP4523 
\n(Code douane: USXP765 - Pays d\'origine: Etats-Unis)',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(280,90,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(281,90,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,10,10.00000000,30.00000000,0.00000000,0.00000000,0.00000000,30.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',10.00000000,30.00000000,0.00000000,30.00000000),(282,90,NULL,2,NULL,'',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(283,90,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(284,91,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(285,91,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(286,91,NULL,13,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(287,92,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(288,92,NULL,13,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(289,92,NULL,10,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(290,92,NULL,13,NULL,'A powerfull computer XP4523 ',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(291,92,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0,'EUR',9.00000000,18.00000000,0.00000000,18.00000000); +/*!40000 ALTER TABLE `llx_commandedet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_commandedet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_commandedet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_commandedet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_commandedet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_commandedet_extrafields` +-- + +LOCK TABLES `llx_commandedet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_commandedet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_commandedet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_comment` +-- + +DROP TABLE IF EXISTS `llx_comment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_comment` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `description` text COLLATE utf8_unicode_ci NOT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_element` int(11) DEFAULT NULL, + `element_type` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT '1', + `import_key` varchar(125) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_comment` +-- + +LOCK TABLES `llx_comment` WRITE; +/*!40000 ALTER TABLE `llx_comment` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_comment` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_cond_reglement` +-- + +DROP TABLE IF EXISTS `llx_cond_reglement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_cond_reglement` ( + `rowid` int(11) NOT NULL, + `code` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `sortorder` smallint(6) DEFAULT NULL, + `active` tinyint(4) DEFAULT '1', + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `libelle_facture` text COLLATE utf8_unicode_ci, + `fdm` tinyint(4) DEFAULT NULL, + `nbjour` smallint(6) DEFAULT NULL, + `decalage` smallint(6) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_cond_reglement` +-- + +LOCK TABLES `llx_cond_reglement` WRITE; +/*!40000 ALTER TABLE `llx_cond_reglement` DISABLE KEYS */; +INSERT INTO `llx_cond_reglement` VALUES (1,'RECEP',1,1,'A réception','Réception de facture',0,0,NULL),(2,'30D',2,1,'30 jours','Réglement à 30 jours',0,30,NULL),(3,'30DENDMONTH',3,1,'30 jours fin de mois','Réglement à 30 jours fin de mois',1,30,NULL),(4,'60D',4,1,'60 jours','Réglement à 60 jours',0,60,NULL),(5,'60DENDMONTH',5,1,'60 jours fin de mois','Réglement à 60 jours fin de mois',1,60,NULL); +/*!40000 ALTER TABLE `llx_cond_reglement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_const` +-- + +DROP TABLE IF EXISTS `llx_const`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_const` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `value` text COLLATE utf8_unicode_ci NOT NULL, + `type` varchar(64) COLLATE utf8_unicode_ci DEFAULT 'string', + `visible` tinyint(4) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_const` (`name`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=6610 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_const` +-- + +LOCK TABLES `llx_const` WRITE; +/*!40000 ALTER TABLE `llx_const` DISABLE KEYS */; +INSERT INTO `llx_const` VALUES (8,'MAIN_UPLOAD_DOC',0,'2048','chaine',0,'Max size for file upload (0 means no upload allowed)','2010-07-08 11:17:57'),(9,'MAIN_SEARCHFORM_SOCIETE',0,'1','yesno',0,'Show form for quick company search','2010-07-08 11:17:57'),(10,'MAIN_SEARCHFORM_CONTACT',0,'1','yesno',0,'Show form for quick contact search','2010-07-08 11:17:57'),(11,'MAIN_SEARCHFORM_PRODUITSERVICE',0,'1','yesno',0,'Show form for quick product search','2010-07-08 11:17:58'),(12,'MAIN_SEARCHFORM_ADHERENT',0,'1','yesno',0,'Show form for quick member search','2010-07-08 11:17:58'),(16,'MAIN_SIZE_LISTE_LIMIT',0,'25','chaine',0,'Longueur maximum des listes','2010-07-08 11:17:58'),(29,'MAIN_DELAY_NOT_ACTIVATED_SERVICES',1,'0','chaine',0,'Tolérance de retard avant alerte (en jours) sur services à activer','2010-07-08 11:17:58'),(33,'SOCIETE_NOLIST_COURRIER',0,'1','yesno',0,'Liste les fichiers du repertoire courrier','2010-07-08 11:17:58'),(36,'ADHERENT_MAIL_REQUIRED',1,'1','yesno',0,'EMail required to create a new member','2010-07-08 11:17:58'),(37,'ADHERENT_MAIL_FROM',1,'adherents@domain.com','chaine',0,'Sender EMail for automatic emails','2010-07-08 11:17:58'),(38,'ADHERENT_MAIL_RESIL',1,'Your subscription has been resiliated.\r\nWe hope to see you soon again','html',0,'Mail resiliation','2018-11-23 11:56:07'),(39,'ADHERENT_MAIL_VALID',1,'Your subscription has been validated.\r\nThis is a remind of your personal information :\r\n\r\n%INFOS%\r\n\r\n','html',0,'Mail de validation','2018-11-23 11:56:07'),(40,'ADHERENT_MAIL_COTIS',1,'Hello %PRENOM%,\r\nThanks for your subscription.\r\nThis email confirms that your subscription has been received and processed.\r\n\r\n','html',0,'Mail de validation de cotisation','2018-11-23 11:56:07'),(41,'ADHERENT_MAIL_VALID_SUBJECT',1,'Your subscription has been validated','chaine',0,'Sujet du mail de validation','2010-07-08 11:17:59'),(42,'ADHERENT_MAIL_RESIL_SUBJECT',1,'Resiliating your subscription','chaine',0,'Sujet du mail de resiliation','2010-07-08 11:17:59'),(43,'ADHERENT_MAIL_COTIS_SUBJECT',1,'Receipt of your subscription','chaine',0,'Sujet du mail de validation de cotisation','2010-07-08 11:17:59'),(44,'MAILING_EMAIL_FROM',1,'dolibarr@domain.com','chaine',0,'EMail emmetteur pour les envois d emailings','2010-07-08 11:17:59'),(45,'ADHERENT_USE_MAILMAN',1,'0','yesno',0,'Utilisation de Mailman','2010-07-08 11:17:59'),(46,'ADHERENT_MAILMAN_UNSUB_URL',1,'http://lists.domain.com/cgi-bin/mailman/admin/%LISTE%/members?adminpw=%MAILMAN_ADMINPW%&user=%EMAIL%','chaine',0,'Url de desinscription aux listes mailman','2010-07-08 11:17:59'),(47,'ADHERENT_MAILMAN_URL',1,'http://lists.domain.com/cgi-bin/mailman/admin/%LISTE%/members?adminpw=%MAILMAN_ADMINPW%&send_welcome_msg_to_this_batch=1&subscribees=%EMAIL%','chaine',0,'Url pour les inscriptions mailman','2010-07-08 11:17:59'),(48,'ADHERENT_MAILMAN_LISTS',1,'test-test,test-test2','chaine',0,'Listes auxquelles inscrire les nouveaux adherents','2010-07-08 11:17:59'),(49,'ADHERENT_MAILMAN_ADMINPW',1,'','chaine',0,'Mot de passe Admin des liste mailman','2010-07-08 11:17:59'),(50,'ADHERENT_MAILMAN_SERVER',1,'lists.domain.com','chaine',0,'Serveur hebergeant les interfaces d Admin des listes mailman','2010-07-08 11:17:59'),(51,'ADHERENT_MAILMAN_LISTS_COTISANT',1,'','chaine',0,'Liste(s) auxquelles les nouveaux cotisants sont inscris automatiquement','2010-07-08 11:17:59'),(52,'ADHERENT_USE_SPIP',1,'0','yesno',0,'Utilisation de SPIP ?','2010-07-08 11:17:59'),(53,'ADHERENT_USE_SPIP_AUTO',1,'0','yesno',0,'Utilisation de SPIP automatiquement','2010-07-08 11:17:59'),(54,'ADHERENT_SPIP_USER',1,'user','chaine',0,'user spip','2010-07-08 11:17:59'),(55,'ADHERENT_SPIP_PASS',1,'pass','chaine',0,'Pass de connection','2010-07-08 11:17:59'),(56,'ADHERENT_SPIP_SERVEUR',1,'localhost','chaine',0,'serveur spip','2010-07-08 11:17:59'),(57,'ADHERENT_SPIP_DB',1,'spip','chaine',0,'db spip','2010-07-08 11:17:59'),(58,'ADHERENT_CARD_HEADER_TEXT',1,'%ANNEE%','chaine',0,'Texte imprime sur le haut de la carte adherent','2010-07-08 11:17:59'),(59,'ADHERENT_CARD_FOOTER_TEXT',1,'Association AZERTY','chaine',0,'Texte imprime sur le bas de la carte adherent','2010-07-08 11:17:59'),(61,'FCKEDITOR_ENABLE_USER',1,'1','yesno',0,'Activation fckeditor sur notes utilisateurs','2010-07-08 11:17:59'),(62,'FCKEDITOR_ENABLE_SOCIETE',1,'1','yesno',0,'Activation fckeditor sur notes societe','2010-07-08 11:17:59'),(63,'FCKEDITOR_ENABLE_PRODUCTDESC',1,'1','yesno',0,'Activation fckeditor sur notes produits','2010-07-08 11:17:59'),(64,'FCKEDITOR_ENABLE_MEMBER',1,'1','yesno',0,'Activation fckeditor sur notes adherent','2010-07-08 11:17:59'),(65,'FCKEDITOR_ENABLE_MAILING',1,'1','yesno',0,'Activation fckeditor sur emailing','2010-07-08 11:17:59'),(67,'DON_ADDON_MODEL',1,'html_cerfafr','chaine',0,'','2010-07-08 11:18:00'),(68,'PROPALE_ADDON',1,'mod_propale_marbre','chaine',0,'','2010-07-08 11:18:00'),(69,'PROPALE_ADDON_PDF',1,'azur','chaine',0,'','2010-07-08 11:18:00'),(70,'COMMANDE_ADDON',1,'mod_commande_marbre','chaine',0,'','2010-07-08 11:18:00'),(71,'COMMANDE_ADDON_PDF',1,'einstein','chaine',0,'','2010-07-08 11:18:00'),(72,'COMMANDE_SUPPLIER_ADDON',1,'mod_commande_fournisseur_muguet','chaine',0,'','2010-07-08 11:18:00'),(73,'COMMANDE_SUPPLIER_ADDON_PDF',1,'muscadet','chaine',0,'','2010-07-08 11:18:00'),(74,'EXPEDITION_ADDON',1,'enlevement','chaine',0,'','2010-07-08 11:18:00'),(76,'FICHEINTER_ADDON',1,'pacific','chaine',0,'','2010-07-08 11:18:00'),(77,'FICHEINTER_ADDON_PDF',1,'soleil','chaine',0,'','2010-07-08 11:18:00'),(79,'FACTURE_ADDON_PDF',1,'crabe','chaine',0,'','2010-07-08 11:18:00'),(80,'PROPALE_VALIDITY_DURATION',1,'15','chaine',0,'Durée de validitée des propales','2010-07-08 11:18:00'),(230,'COMPANY_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/thirdparties','chaine',0,NULL,'2010-07-08 11:26:20'),(238,'LIVRAISON_ADDON_PDF',1,'typhon','chaine',0,'Nom du gestionnaire de generation des commandes en PDF','2010-07-08 11:26:27'),(239,'LIVRAISON_ADDON_NUMBER',1,'mod_livraison_jade','chaine',0,'Nom du gestionnaire de numerotation des bons de livraison','2013-03-20 13:17:36'),(245,'FACTURE_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/invoices','chaine',0,NULL,'2010-07-08 11:28:53'),(249,'DON_FORM',1,'html_cerfafr','chaine',0,'Nom du gestionnaire de formulaire de dons','2017-09-06 16:12:22'),(254,'ADHERENT_BANK_ACCOUNT',1,'','chaine',0,'ID du Compte banquaire utilise','2010-07-08 11:29:05'),(255,'ADHERENT_BANK_CATEGORIE',1,'','chaine',0,'ID de la categorie banquaire des cotisations','2010-07-08 11:29:05'),(256,'ADHERENT_ETIQUETTE_TYPE',1,'L7163','chaine',0,'Type d etiquette (pour impression de planche d etiquette)','2010-07-08 11:29:05'),(269,'PROJECT_ADDON_PDF',1,'baleine','chaine',0,'Nom du gestionnaire de generation des projets en PDF','2010-07-08 11:29:33'),(270,'PROJECT_ADDON',1,'mod_project_simple','chaine',0,'Nom du gestionnaire de numerotation des projets','2010-07-08 11:29:33'),(368,'STOCK_USERSTOCK_AUTOCREATE',1,'1','chaine',0,'','2010-07-08 22:44:59'),(369,'EXPEDITION_ADDON_PDF',1,'merou','chaine',0,'','2010-07-08 22:58:07'),(377,'FACTURE_ADDON',1,'mod_facture_terre','chaine',0,'','2010-07-08 23:08:12'),(380,'ADHERENT_CARD_TEXT',1,'%TYPE% n° %ID%\r\n%PRENOM% %NOM%\r\n<%EMAIL%>\r\n%ADRESSE%\r\n%CP% %VILLE%\r\n%PAYS%','',0,'Texte imprime sur la carte adherent','2010-07-08 23:14:46'),(381,'ADHERENT_CARD_TEXT_RIGHT',1,'aaa','',0,'','2010-07-08 23:14:55'),(385,'PRODUIT_USE_SEARCH_TO_SELECT',1,'1','chaine',0,'','2010-07-08 23:22:19'),(386,'STOCK_CALCULATE_ON_SHIPMENT',1,'1','chaine',0,'','2010-07-08 23:23:21'),(387,'STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER',1,'1','chaine',0,'','2010-07-08 23:23:26'),(392,'MAIN_AGENDA_XCAL_EXPORTKEY',1,'dolibarr','chaine',0,'','2010-07-08 23:27:50'),(393,'MAIN_AGENDA_EXPORT_PAST_DELAY',1,'100','chaine',0,'','2010-07-08 23:27:50'),(610,'CASHDESK_ID_THIRDPARTY',1,'7','chaine',0,'','2010-07-11 17:08:18'),(611,'CASHDESK_ID_BANKACCOUNT_CASH',1,'3','chaine',0,'','2010-07-11 17:08:18'),(612,'CASHDESK_ID_BANKACCOUNT_CHEQUE',1,'1','chaine',0,'','2010-07-11 17:08:18'),(613,'CASHDESK_ID_BANKACCOUNT_CB',1,'1','chaine',0,'','2010-07-11 17:08:18'),(614,'CASHDESK_ID_WAREHOUSE',1,'2','chaine',0,'','2010-07-11 17:08:18'),(660,'LDAP_USER_DN',1,'ou=users,dc=my-domain,dc=com','chaine',0,NULL,'2010-07-18 10:25:27'),(661,'LDAP_GROUP_DN',1,'ou=groups,dc=my-domain,dc=com','chaine',0,NULL,'2010-07-18 10:25:27'),(662,'LDAP_FILTER_CONNECTION',1,'&(objectClass=user)(objectCategory=person)','chaine',0,NULL,'2010-07-18 10:25:27'),(663,'LDAP_FIELD_LOGIN',1,'uid','chaine',0,NULL,'2010-07-18 10:25:27'),(664,'LDAP_FIELD_FULLNAME',1,'cn','chaine',0,NULL,'2010-07-18 10:25:27'),(665,'LDAP_FIELD_NAME',1,'sn','chaine',0,NULL,'2010-07-18 10:25:27'),(666,'LDAP_FIELD_FIRSTNAME',1,'givenname','chaine',0,NULL,'2010-07-18 10:25:27'),(667,'LDAP_FIELD_MAIL',1,'mail','chaine',0,NULL,'2010-07-18 10:25:27'),(668,'LDAP_FIELD_PHONE',1,'telephonenumber','chaine',0,NULL,'2010-07-18 10:25:27'),(669,'LDAP_FIELD_FAX',1,'facsimiletelephonenumber','chaine',0,NULL,'2010-07-18 10:25:27'),(670,'LDAP_FIELD_MOBILE',1,'mobile','chaine',0,NULL,'2010-07-18 10:25:27'),(671,'LDAP_SERVER_TYPE',1,'openldap','chaine',0,'','2010-07-18 10:25:46'),(672,'LDAP_SERVER_PROTOCOLVERSION',1,'3','chaine',0,'','2010-07-18 10:25:47'),(673,'LDAP_SERVER_HOST',1,'localhost','chaine',0,'','2010-07-18 10:25:47'),(674,'LDAP_SERVER_PORT',1,'389','chaine',0,'','2010-07-18 10:25:47'),(675,'LDAP_SERVER_USE_TLS',1,'0','chaine',0,'','2010-07-18 10:25:47'),(676,'LDAP_SYNCHRO_ACTIVE',1,'dolibarr2ldap','chaine',0,'','2010-07-18 10:25:47'),(677,'LDAP_CONTACT_ACTIVE',1,'1','chaine',0,'','2010-07-18 10:25:47'),(678,'LDAP_MEMBER_ACTIVE',1,'1','chaine',0,'','2010-07-18 10:25:47'),(974,'MAIN_MODULE_WORKFLOW_TRIGGERS',1,'1','chaine',0,NULL,'2011-07-18 18:02:20'),(975,'WORKFLOW_PROPAL_AUTOCREATE_ORDER',1,'1','chaine',0,'','2011-07-18 18:02:24'),(980,'PRELEVEMENT_NUMERO_NATIONAL_EMETTEUR',1,'1234567','chaine',0,'','2011-07-18 18:05:50'),(983,'FACTURE_RIB_NUMBER',1,'1','chaine',0,'','2011-07-18 18:35:14'),(984,'FACTURE_CHQ_NUMBER',1,'1','chaine',0,'','2011-07-18 18:35:14'),(1016,'GOOGLE_DUPLICATE_INTO_GCAL',1,'1','chaine',0,'','2011-07-18 21:40:20'),(1152,'SOCIETE_CODECLIENT_ADDON',1,'mod_codeclient_monkey','chaine',0,'','2011-07-29 20:50:02'),(1231,'MAIN_UPLOAD_DOC',1,'2048','chaine',0,'','2011-07-29 21:04:00'),(1234,'MAIN_UMASK',1,'0664','chaine',0,'','2011-07-29 21:04:11'),(1240,'MAIN_LOGEVENTS_USER_LOGIN',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1241,'MAIN_LOGEVENTS_USER_LOGIN_FAILED',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1242,'MAIN_LOGEVENTS_USER_LOGOUT',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1243,'MAIN_LOGEVENTS_USER_CREATE',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1244,'MAIN_LOGEVENTS_USER_MODIFY',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1245,'MAIN_LOGEVENTS_USER_NEW_PASSWORD',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1246,'MAIN_LOGEVENTS_USER_ENABLEDISABLE',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1247,'MAIN_LOGEVENTS_USER_DELETE',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1248,'MAIN_LOGEVENTS_GROUP_CREATE',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1249,'MAIN_LOGEVENTS_GROUP_MODIFY',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1250,'MAIN_LOGEVENTS_GROUP_DELETE',1,'1','chaine',0,'','2011-07-29 21:05:01'),(1251,'MAIN_BOXES_MAXLINES',1,'5','',0,'','2011-07-29 21:05:42'),(1482,'EXPEDITION_ADDON_NUMBER',1,'mod_expedition_safor','chaine',0,'Nom du gestionnaire de numerotation des expeditions','2011-08-05 17:53:11'),(1490,'CONTRACT_ADDON',1,'mod_contract_serpis','chaine',0,'Nom du gestionnaire de numerotation des contrats','2011-08-05 18:11:58'),(1677,'COMMANDE_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/orders','chaine',0,NULL,'2012-12-08 13:11:02'),(1698,'PRODUCT_CODEPRODUCT_ADDON',1,'mod_codeproduct_leopard','yesno',0,'Module to control product codes','2012-12-08 13:11:25'),(1724,'PROPALE_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/proposals','chaine',0,NULL,'2012-12-08 13:17:14'),(1730,'OPENSTREETMAP_ENABLE_MAPS',1,'1','chaine',0,'','2012-12-08 13:22:47'),(1731,'OPENSTREETMAP_ENABLE_MAPS_CONTACTS',1,'1','chaine',0,'','2012-12-08 13:22:47'),(1732,'OPENSTREETMAP_ENABLE_MAPS_MEMBERS',1,'1','chaine',0,'','2012-12-08 13:22:47'),(1733,'OPENSTREETMAP_MAPS_ZOOM_LEVEL',1,'15','chaine',0,'','2012-12-08 13:22:47'),(1742,'MAIN_MAIL_EMAIL_FROM',2,'dolibarr-robot@domain.com','chaine',0,'EMail emetteur pour les emails automatiques Dolibarr','2012-12-08 14:08:14'),(1743,'MAIN_MENU_STANDARD',2,'eldy_menu.php','chaine',0,'Module de gestion de la barre de menu du haut pour utilisateurs internes','2013-02-11 19:43:54'),(1744,'MAIN_MENUFRONT_STANDARD',2,'eldy_menu.php','chaine',0,'Module de gestion de la barre de menu du haut pour utilisateurs externes','2013-02-11 19:43:54'),(1745,'MAIN_MENU_SMARTPHONE',2,'iphone_backoffice.php','chaine',0,'Module de gestion de la barre de menu smartphone pour utilisateurs internes','2012-12-08 14:08:14'),(1746,'MAIN_MENUFRONT_SMARTPHONE',2,'iphone_frontoffice.php','chaine',0,'Module de gestion de la barre de menu smartphone pour utilisateurs externes','2012-12-08 14:08:14'),(1747,'MAIN_THEME',2,'eldy','chaine',0,'Default theme','2012-12-08 14:08:14'),(1748,'MAIN_DELAY_ACTIONS_TODO',2,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur actions planifiées non réalisées','2012-12-08 14:08:14'),(1749,'MAIN_DELAY_ORDERS_TO_PROCESS',2,'2','chaine',0,'Tolérance de retard avant alerte (en jours) sur commandes clients non traitées','2012-12-08 14:08:14'),(1750,'MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS',2,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur commandes fournisseurs non traitées','2012-12-08 14:08:14'),(1751,'MAIN_DELAY_PROPALS_TO_CLOSE',2,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur propales à cloturer','2012-12-08 14:08:14'),(1752,'MAIN_DELAY_PROPALS_TO_BILL',2,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur propales non facturées','2012-12-08 14:08:14'),(1753,'MAIN_DELAY_CUSTOMER_BILLS_UNPAYED',2,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur factures client impayées','2012-12-08 14:08:14'),(1754,'MAIN_DELAY_SUPPLIER_BILLS_TO_PAY',2,'2','chaine',0,'Tolérance de retard avant alerte (en jours) sur factures fournisseur impayées','2012-12-08 14:08:14'),(1755,'MAIN_DELAY_NOT_ACTIVATED_SERVICES',2,'0','chaine',0,'Tolérance de retard avant alerte (en jours) sur services à activer','2012-12-08 14:08:14'),(1756,'MAIN_DELAY_RUNNING_SERVICES',2,'0','chaine',0,'Tolérance de retard avant alerte (en jours) sur services expirés','2012-12-08 14:08:14'),(1757,'MAIN_DELAY_MEMBERS',2,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur cotisations adhérent en retard','2012-12-08 14:08:14'),(1758,'MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE',2,'62','chaine',0,'Tolérance de retard avant alerte (en jours) sur rapprochements bancaires à faire','2012-12-08 14:08:14'),(1759,'MAILING_EMAIL_FROM',2,'dolibarr@domain.com','chaine',0,'EMail emmetteur pour les envois d emailings','2012-12-08 14:08:14'),(1760,'MAIN_INFO_SOCIETE_COUNTRY',3,'1:FR:France','chaine',0,'','2013-02-26 21:56:28'),(1761,'MAIN_INFO_SOCIETE_NOM',3,'bbb','chaine',0,'','2012-12-08 14:08:20'),(1762,'MAIN_INFO_SOCIETE_STATE',3,'0','chaine',0,'','2013-02-27 14:20:27'),(1763,'MAIN_MONNAIE',3,'EUR','chaine',0,'','2012-12-08 14:08:20'),(1764,'MAIN_LANG_DEFAULT',3,'auto','chaine',0,'','2012-12-08 14:08:20'),(1765,'MAIN_MAIL_EMAIL_FROM',3,'dolibarr-robot@domain.com','chaine',0,'EMail emetteur pour les emails automatiques Dolibarr','2012-12-08 14:08:20'),(1766,'MAIN_MENU_STANDARD',3,'eldy_menu.php','chaine',0,'Module de gestion de la barre de menu du haut pour utilisateurs internes','2013-02-11 19:43:54'),(1767,'MAIN_MENUFRONT_STANDARD',3,'eldy_menu.php','chaine',0,'Module de gestion de la barre de menu du haut pour utilisateurs externes','2013-02-11 19:43:54'),(1768,'MAIN_MENU_SMARTPHONE',3,'iphone_backoffice.php','chaine',0,'Module de gestion de la barre de menu smartphone pour utilisateurs internes','2012-12-08 14:08:20'),(1769,'MAIN_MENUFRONT_SMARTPHONE',3,'iphone_frontoffice.php','chaine',0,'Module de gestion de la barre de menu smartphone pour utilisateurs externes','2012-12-08 14:08:20'),(1770,'MAIN_THEME',3,'eldy','chaine',0,'Default theme','2012-12-08 14:08:20'),(1771,'MAIN_DELAY_ACTIONS_TODO',3,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur actions planifiées non réalisées','2012-12-08 14:08:20'),(1772,'MAIN_DELAY_ORDERS_TO_PROCESS',3,'2','chaine',0,'Tolérance de retard avant alerte (en jours) sur commandes clients non traitées','2012-12-08 14:08:20'),(1773,'MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS',3,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur commandes fournisseurs non traitées','2012-12-08 14:08:20'),(1774,'MAIN_DELAY_PROPALS_TO_CLOSE',3,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur propales à cloturer','2012-12-08 14:08:20'),(1775,'MAIN_DELAY_PROPALS_TO_BILL',3,'7','chaine',0,'Tolérance de retard avant alerte (en jours) sur propales non facturées','2012-12-08 14:08:20'),(1776,'MAIN_DELAY_CUSTOMER_BILLS_UNPAYED',3,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur factures client impayées','2012-12-08 14:08:20'),(1777,'MAIN_DELAY_SUPPLIER_BILLS_TO_PAY',3,'2','chaine',0,'Tolérance de retard avant alerte (en jours) sur factures fournisseur impayées','2012-12-08 14:08:20'),(1778,'MAIN_DELAY_NOT_ACTIVATED_SERVICES',3,'0','chaine',0,'Tolérance de retard avant alerte (en jours) sur services à activer','2012-12-08 14:08:20'),(1779,'MAIN_DELAY_RUNNING_SERVICES',3,'0','chaine',0,'Tolérance de retard avant alerte (en jours) sur services expirés','2012-12-08 14:08:20'),(1780,'MAIN_DELAY_MEMBERS',3,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur cotisations adhérent en retard','2012-12-08 14:08:20'),(1781,'MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE',3,'62','chaine',0,'Tolérance de retard avant alerte (en jours) sur rapprochements bancaires à faire','2012-12-08 14:08:20'),(1782,'MAILING_EMAIL_FROM',3,'dolibarr@domain.com','chaine',0,'EMail emmetteur pour les envois d emailings','2012-12-08 14:08:20'),(1803,'SYSLOG_FILE',1,'DOL_DATA_ROOT/dolibarr.log','chaine',0,'','2012-12-08 14:15:08'),(1804,'SYSLOG_HANDLERS',1,'[\"mod_syslog_file\"]','chaine',0,'','2012-12-08 14:15:08'),(1805,'MAIN_MODULE_SKINCOLOREDITOR',3,'1',NULL,0,NULL,'2012-12-08 14:35:40'),(1806,'MAIN_MODULE_SKINCOLOREDITOR_TABS_0',3,'user:+tabskincoloreditors:ColorEditor:skincoloreditor@skincoloreditor:/skincoloreditor/usercolors.php?id=__ID__','chaine',0,NULL,'2012-12-08 14:35:40'),(1922,'PAYPAL_API_SANDBOX',1,'1','chaine',0,'','2012-12-12 12:11:05'),(1923,'PAYPAL_API_USER',1,'seller_1355312017_biz_api1.nltechno.com','chaine',0,'','2012-12-12 12:11:05'),(1924,'PAYPAL_API_PASSWORD',1,'1355312040','chaine',0,'','2012-12-12 12:11:05'),(1925,'PAYPAL_API_SIGNATURE',1,'AXqqdsWBzvfn0q5iNmbuiDv1y.3EAXIMWyl4C5KvDReR9HDwwAd6dQ4Q','chaine',0,'','2012-12-12 12:11:05'),(1926,'PAYPAL_API_INTEGRAL_OR_PAYPALONLY',1,'integral','chaine',0,'','2012-12-12 12:11:05'),(1927,'PAYPAL_SECURITY_TOKEN',1,'50c82fab36bb3b6aa83e2a50691803b2','chaine',0,'','2012-12-12 12:11:05'),(1928,'PAYPAL_SECURITY_TOKEN_UNIQUE',1,'0','chaine',0,'','2012-12-12 12:11:05'),(1929,'PAYPAL_ADD_PAYMENT_URL',1,'1','chaine',0,'','2012-12-12 12:11:05'),(1980,'MAIN_PDF_FORMAT',1,'EUA4','chaine',0,'','2012-12-12 19:58:05'),(1981,'MAIN_PROFID1_IN_ADDRESS',1,'0','chaine',0,'','2012-12-12 19:58:05'),(1982,'MAIN_PROFID2_IN_ADDRESS',1,'0','chaine',0,'','2012-12-12 19:58:05'),(1983,'MAIN_PROFID3_IN_ADDRESS',1,'0','chaine',0,'','2012-12-12 19:58:05'),(1984,'MAIN_PROFID4_IN_ADDRESS',1,'0','chaine',0,'','2012-12-12 19:58:05'),(1985,'MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT',1,'0','chaine',0,'','2012-12-12 19:58:05'),(2251,'FCKEDITOR_TEST',1,'Test
\r\n\"\"fdfs','chaine',0,'','2012-12-19 19:12:24'),(2293,'SYSTEMTOOLS_MYSQLDUMP',1,'/usr/bin/mysqldump','chaine',0,'','2012-12-27 02:02:00'),(2835,'MAIN_USE_CONNECT_TIMEOUT',1,'10','chaine',0,'','2013-01-16 19:28:50'),(2836,'MAIN_USE_RESPONSE_TIMEOUT',1,'30','chaine',0,'','2013-01-16 19:28:50'),(2837,'MAIN_PROXY_USE',1,'0','chaine',0,'','2013-01-16 19:28:50'),(2838,'MAIN_PROXY_HOST',1,'localhost','chaine',0,'','2013-01-16 19:28:50'),(2839,'MAIN_PROXY_PORT',1,'8080','chaine',0,'','2013-01-16 19:28:50'),(2840,'MAIN_PROXY_USER',1,'aaa','chaine',0,'','2013-01-16 19:28:50'),(2841,'MAIN_PROXY_PASS',1,'bbb','chaine',0,'','2013-01-16 19:28:50'),(2848,'OVHSMS_NICK',1,'BN196-OVH','chaine',0,'','2013-01-16 19:32:36'),(2849,'OVHSMS_PASS',1,'bigone-10','chaine',0,'','2013-01-16 19:32:36'),(2850,'OVHSMS_SOAPURL',1,'https://www.ovh.com/soapi/soapi-re-1.55.wsdl','chaine',0,'','2013-01-16 19:32:36'),(2854,'THEME_ELDY_RGB',1,'bfbf00','chaine',0,'','2013-01-18 10:02:53'),(2855,'THEME_ELDY_ENABLE_PERSONALIZED',1,'0','chaine',0,'','2013-01-18 10:02:55'),(2858,'MAIN_SESSION_TIMEOUT',1,'2000','chaine',0,'','2013-01-19 17:01:53'),(2862,'TICKET_ADDON',1,'mod_ticket_avenc','chaine',0,'Nom du gestionnaire de numerotation des tickets','2013-01-19 17:16:10'),(2867,'FACSIM_ADDON',1,'mod_facsim_alcoy','chaine',0,'','2013-01-19 17:16:25'),(2868,'POS_SERVICES',1,'0','chaine',0,'','2013-01-19 17:16:51'),(2869,'POS_USE_TICKETS',1,'1','chaine',0,'','2013-01-19 17:16:51'),(2870,'POS_MAX_TTC',1,'100','chaine',0,'','2013-01-19 17:16:51'),(3190,'MAIN_MODULE_HOLIDAY',2,'1',NULL,0,NULL,'2013-02-01 08:52:34'),(3191,'MAIN_MODULE_HOLIDAY_TABS_0',2,'user:+paidholidays:CPTitreMenu:holiday:$user->rights->holiday->write:/holiday/index.php?mainmenu=holiday&id=__ID__','chaine',0,NULL,'2013-02-01 08:52:34'),(3195,'INVOICE_SUPPLIER_ADDON_PDF',1,'canelle','chaine',0,'','2013-02-10 19:50:27'),(3199,'MAIN_FORCE_RELOAD_PAGE',1,'1','chaine',0,NULL,'2013-02-12 16:22:55'),(3217,'MAIN_PDF_TITLE_BACKGROUND_COLOR',1,'240,240,240','chaine',1,'','2013-02-13 15:18:02'),(3223,'OVH_THIRDPARTY_IMPORT',1,'2','chaine',0,'','2013-02-13 16:20:18'),(3241,'COMPANY_USE_SEARCH_TO_SELECT',1,'2','chaine',0,'','2013-02-17 14:33:39'),(3409,'AGENDA_USE_EVENT_TYPE',1,'1','chaine',0,'','2013-02-27 18:12:24'),(3886,'MAIN_REMOVE_INSTALL_WARNING',1,'1','chaine',1,'','2013-03-02 18:32:50'),(4013,'MAIN_DELAY_ACTIONS_TODO',1,'7','chaine',0,'','2013-03-06 08:59:12'),(4014,'MAIN_DELAY_PROPALS_TO_CLOSE',1,'31','chaine',0,'','2013-03-06 08:59:12'),(4015,'MAIN_DELAY_PROPALS_TO_BILL',1,'7','chaine',0,'','2013-03-06 08:59:12'),(4016,'MAIN_DELAY_ORDERS_TO_PROCESS',1,'2','chaine',0,'','2013-03-06 08:59:12'),(4017,'MAIN_DELAY_CUSTOMER_BILLS_UNPAYED',1,'31','chaine',0,'','2013-03-06 08:59:12'),(4018,'MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS',1,'7','chaine',0,'','2013-03-06 08:59:12'),(4019,'MAIN_DELAY_SUPPLIER_BILLS_TO_PAY',1,'2','chaine',0,'','2013-03-06 08:59:12'),(4020,'MAIN_DELAY_RUNNING_SERVICES',1,'-15','chaine',0,'','2013-03-06 08:59:12'),(4021,'MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE',1,'62','chaine',0,'','2013-03-06 08:59:13'),(4022,'MAIN_DELAY_MEMBERS',1,'31','chaine',0,'','2013-03-06 08:59:13'),(4023,'MAIN_DISABLE_METEO',1,'0','chaine',0,'','2013-03-06 08:59:13'),(4044,'ADHERENT_VAT_FOR_SUBSCRIPTIONS',1,'0','',0,'','2013-03-06 16:06:38'),(4047,'ADHERENT_BANK_USE',1,'bankviainvoice','',0,'','2013-03-06 16:12:30'),(4049,'PHPSANE_SCANIMAGE',1,'/usr/bin/scanimage','chaine',0,'','2013-03-06 21:54:13'),(4050,'PHPSANE_PNMTOJPEG',1,'/usr/bin/pnmtojpeg','chaine',0,'','2013-03-06 21:54:13'),(4051,'PHPSANE_PNMTOTIFF',1,'/usr/bin/pnmtotiff','chaine',0,'','2013-03-06 21:54:13'),(4052,'PHPSANE_OCR',1,'/usr/bin/gocr','chaine',0,'','2013-03-06 21:54:13'),(4548,'ECM_AUTO_TREE_ENABLED',1,'1','chaine',0,'','2013-03-10 15:57:21'),(4579,'MAIN_MODULE_AGENDA',2,'1',NULL,0,NULL,'2013-03-13 15:29:19'),(4580,'MAIN_AGENDA_ACTIONAUTO_COMPANY_CREATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4581,'MAIN_AGENDA_ACTIONAUTO_CONTRACT_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4582,'MAIN_AGENDA_ACTIONAUTO_PROPAL_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4583,'MAIN_AGENDA_ACTIONAUTO_PROPAL_SENTBYMAIL',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4584,'MAIN_AGENDA_ACTIONAUTO_ORDER_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4585,'MAIN_AGENDA_ACTIONAUTO_ORDER_SENTBYMAIL',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4586,'MAIN_AGENDA_ACTIONAUTO_BILL_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4587,'MAIN_AGENDA_ACTIONAUTO_BILL_PAYED',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4588,'MAIN_AGENDA_ACTIONAUTO_BILL_CANCEL',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4589,'MAIN_AGENDA_ACTIONAUTO_BILL_SENTBYMAIL',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4590,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4591,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4592,'MAIN_AGENDA_ACTIONAUTO_SHIPPING_VALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4593,'MAIN_AGENDA_ACTIONAUTO_SHIPPING_SENTBYMAIL',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4594,'MAIN_AGENDA_ACTIONAUTO_BILL_UNVALIDATE',2,'1','chaine',0,NULL,'2013-03-13 15:29:19'),(4595,'MAIN_MODULE_GOOGLE',2,'1',NULL,0,NULL,'2013-03-13 15:29:47'),(4596,'MAIN_MODULE_GOOGLE_TABS_0',2,'agenda:+gcal:MenuAgendaGoogle:google@google:$conf->google->enabled && $conf->global->GOOGLE_ENABLE_AGENDA:/google/index.php','chaine',0,NULL,'2013-03-13 15:29:47'),(4597,'MAIN_MODULE_GOOGLE_TABS_1',2,'user:+gsetup:GoogleUserConf:google@google:$conf->google->enabled && $conf->global->GOOGLE_DUPLICATE_INTO_GCAL:/google/admin/google_calsync_user.php?id=__ID__','chaine',0,NULL,'2013-03-13 15:29:47'),(4598,'MAIN_MODULE_GOOGLE_TRIGGERS',2,'1','chaine',0,NULL,'2013-03-13 15:29:47'),(4599,'MAIN_MODULE_GOOGLE_HOOKS',2,'[\"toprightmenu\"]','chaine',0,NULL,'2013-03-13 15:29:47'),(4688,'GOOGLE_ENABLE_AGENDA',2,'1','chaine',0,'','2013-03-13 15:36:29'),(4689,'GOOGLE_AGENDA_NAME1',2,'eldy','chaine',0,'','2013-03-13 15:36:29'),(4690,'GOOGLE_AGENDA_SRC1',2,'eldy10@mail.com','chaine',0,'','2013-03-13 15:36:29'),(4691,'GOOGLE_AGENDA_COLOR1',2,'BE6D00','chaine',0,'','2013-03-13 15:36:29'),(4692,'GOOGLE_AGENDA_COLOR2',2,'7A367A','chaine',0,'','2013-03-13 15:36:29'),(4693,'GOOGLE_AGENDA_COLOR3',2,'7A367A','chaine',0,'','2013-03-13 15:36:29'),(4694,'GOOGLE_AGENDA_COLOR4',2,'7A367A','chaine',0,'','2013-03-13 15:36:29'),(4695,'GOOGLE_AGENDA_COLOR5',2,'7A367A','chaine',0,'','2013-03-13 15:36:29'),(4696,'GOOGLE_AGENDA_TIMEZONE',2,'Europe/Paris','chaine',0,'','2013-03-13 15:36:29'),(4697,'GOOGLE_AGENDA_NB',2,'5','chaine',0,'','2013-03-13 15:36:29'),(4725,'SOCIETE_CODECLIENT_ADDON',2,'mod_codeclient_leopard','chaine',0,'Module to control third parties codes','2013-03-13 20:21:35'),(4726,'SOCIETE_CODECOMPTA_ADDON',2,'mod_codecompta_panicum','chaine',0,'Module to control third parties codes','2013-03-13 20:21:35'),(4727,'SOCIETE_FISCAL_MONTH_START',2,'','chaine',0,'Mettre le numero du mois du debut d\\\'annee fiscale, ex: 9 pour septembre','2013-03-13 20:21:35'),(4728,'MAIN_SEARCHFORM_SOCIETE',2,'1','yesno',0,'Show form for quick company search','2013-03-13 20:21:35'),(4729,'MAIN_SEARCHFORM_CONTACT',2,'1','yesno',0,'Show form for quick contact search','2013-03-13 20:21:35'),(4730,'COMPANY_ADDON_PDF_ODT_PATH',2,'DOL_DATA_ROOT/doctemplates/thirdparties','chaine',0,NULL,'2013-03-13 20:21:35'),(4743,'MAIN_MODULE_CLICKTODIAL',2,'1',NULL,0,NULL,'2013-03-13 20:30:28'),(4744,'MAIN_MODULE_NOTIFICATION',2,'1',NULL,0,NULL,'2013-03-13 20:30:34'),(4745,'MAIN_MODULE_WEBSERVICES',2,'1',NULL,0,NULL,'2013-03-13 20:30:41'),(4746,'MAIN_MODULE_PROPALE',2,'1',NULL,0,NULL,'2013-03-13 20:32:38'),(4747,'PROPALE_ADDON_PDF',2,'azur','chaine',0,'Nom du gestionnaire de generation des propales en PDF','2013-03-13 20:32:38'),(4748,'PROPALE_ADDON',2,'mod_propale_marbre','chaine',0,'Nom du gestionnaire de numerotation des propales','2013-03-13 20:32:38'),(4749,'PROPALE_VALIDITY_DURATION',2,'15','chaine',0,'Duration of validity of business proposals','2013-03-13 20:32:38'),(4750,'PROPALE_ADDON_PDF_ODT_PATH',2,'DOL_DATA_ROOT/doctemplates/proposals','chaine',0,NULL,'2013-03-13 20:32:38'),(4752,'MAIN_MODULE_TAX',2,'1',NULL,0,NULL,'2013-03-13 20:32:47'),(4753,'MAIN_MODULE_DON',2,'1',NULL,0,NULL,'2013-03-13 20:32:54'),(4754,'DON_ADDON_MODEL',2,'html_cerfafr','chaine',0,'Nom du gestionnaire de generation de recu de dons','2013-03-13 20:32:54'),(4755,'POS_USE_TICKETS',2,'1','chaine',0,'','2013-03-13 20:33:09'),(4756,'POS_MAX_TTC',2,'100','chaine',0,'','2013-03-13 20:33:09'),(4757,'MAIN_MODULE_POS',2,'1',NULL,0,NULL,'2013-03-13 20:33:09'),(4758,'TICKET_ADDON',2,'mod_ticket_avenc','chaine',0,'Nom du gestionnaire de numerotation des tickets','2013-03-13 20:33:09'),(4759,'MAIN_MODULE_BANQUE',2,'1',NULL,0,NULL,'2013-03-13 20:33:09'),(4760,'MAIN_MODULE_FACTURE',2,'1',NULL,0,NULL,'2013-03-13 20:33:09'),(4761,'FACTURE_ADDON_PDF',2,'crabe','chaine',0,'Name of PDF model of invoice','2013-03-13 20:33:09'),(4762,'FACTURE_ADDON',2,'mod_facture_terre','chaine',0,'Name of numbering numerotation rules of invoice','2013-03-13 20:33:09'),(4763,'FACTURE_ADDON_PDF_ODT_PATH',2,'DOL_DATA_ROOT/doctemplates/invoices','chaine',0,NULL,'2013-03-13 20:33:09'),(4764,'MAIN_MODULE_SOCIETE',2,'1',NULL,0,NULL,'2013-03-13 20:33:09'),(4765,'MAIN_MODULE_PRODUCT',2,'1',NULL,0,NULL,'2013-03-13 20:33:09'),(4766,'PRODUCT_CODEPRODUCT_ADDON',2,'mod_codeproduct_leopard','chaine',0,'Module to control product codes','2013-03-13 20:33:09'),(4767,'MAIN_SEARCHFORM_PRODUITSERVICE',2,'1','yesno',0,'Show form for quick product search','2013-03-13 20:33:09'),(4772,'FACSIM_ADDON',2,'mod_facsim_alcoy','chaine',0,'','2013-03-13 20:33:32'),(4773,'MAIN_MODULE_MAILING',2,'1',NULL,0,NULL,'2013-03-13 20:33:37'),(4774,'MAIN_MODULE_OPENSURVEY',2,'1',NULL,0,NULL,'2013-03-13 20:33:42'),(4782,'AGENDA_USE_EVENT_TYPE',2,'1','chaine',0,'','2013-03-13 20:53:36'),(4884,'AGENDA_DISABLE_EXT',2,'1','chaine',0,'','2013-03-13 22:03:40'),(4928,'COMMANDE_SUPPLIER_ADDON_NUMBER',1,'mod_commande_fournisseur_muguet','chaine',0,'Nom du gestionnaire de numerotation des commandes fournisseur','2013-03-22 09:24:29'),(4929,'INVOICE_SUPPLIER_ADDON_NUMBER',1,'mod_facture_fournisseur_cactus','chaine',0,'Nom du gestionnaire de numerotation des factures fournisseur','2013-03-22 09:24:29'),(5001,'MAIN_CRON_KEY',0,'bc54582fe30d5d4a830c6f582ec28810','chaine',0,'','2013-03-23 17:54:53'),(5009,'CRON_KEY',0,'2c2e755c20be2014098f629865598006','chaine',0,'','2013-03-23 18:06:24'),(5139,'SOCIETE_ADD_REF_IN_LIST',1,'','yesno',0,'Display customer ref into select list','2013-09-08 23:06:08'),(5150,'PROJECT_TASK_ADDON_PDF',1,'','chaine',0,'Name of PDF/ODT tasks manager class','2013-09-08 23:06:14'),(5151,'PROJECT_TASK_ADDON',1,'mod_task_simple','chaine',0,'Name of Numbering Rule task manager class','2013-09-08 23:06:14'),(5152,'PROJECT_TASK_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/tasks','chaine',0,'','2013-09-08 23:06:14'),(5239,'BOOKMARKS_SHOW_IN_MENU',1,'10','chaine',0,'','2014-03-02 15:42:26'),(5271,'DONATION_ART200',1,'','yesno',0,'Option Française - Eligibilité Art200 du CGI','2014-12-21 12:51:28'),(5272,'DONATION_ART238',1,'','yesno',0,'Option Française - Eligibilité Art238 bis du CGI','2014-12-21 12:51:28'),(5273,'DONATION_ART885',1,'','yesno',0,'Option Française - Eligibilité Art885-0 V bis du CGI','2014-12-21 12:51:28'),(5274,'DONATION_MESSAGE',1,'Thank you','chaine',0,'Message affiché sur le récépissé de versements ou dons','2014-12-21 12:51:28'),(5288,'DONATION_ACCOUNTINGACCOUNT',1,'7581','chaine',0,'Compte comptable de remise des versements ou dons','2015-07-19 13:41:21'),(5349,'MAIN_SEARCHFORM_CONTACT',1,'1','chaine',0,'','2015-10-03 10:11:33'),(5351,'MAIN_SEARCHFORM_PRODUITSERVICE',1,'1','chaine',0,'','2015-10-03 10:11:33'),(5352,'MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER',1,'0','chaine',0,'','2015-10-03 10:11:33'),(5353,'MAIN_SEARCHFORM_ADHERENT',1,'1','chaine',0,'','2015-10-03 10:11:33'),(5354,'MAIN_SEARCHFORM_PROJECT',1,'0','chaine',0,'','2015-10-03 10:11:33'),(5394,'FCKEDITOR_ENABLE_DETAILS',1,'1','yesno',0,'WYSIWIG for products details lines for all entities','2015-11-04 15:27:44'),(5395,'FCKEDITOR_ENABLE_USERSIGN',1,'1','yesno',0,'WYSIWIG for user signature','2015-11-04 15:27:44'),(5396,'FCKEDITOR_ENABLE_MAIL',1,'1','yesno',0,'WYSIWIG for products details lines for all entities','2015-11-04 15:27:44'),(5398,'CATEGORIE_RECURSIV_ADD',1,'','yesno',0,'Affect parent categories','2015-11-04 15:27:46'),(5403,'MAIN_MODULE_FCKEDITOR',1,'1',NULL,0,NULL,'2015-11-04 15:41:40'),(5404,'MAIN_MODULE_CATEGORIE',1,'1',NULL,0,NULL,'2015-11-04 15:41:43'),(5415,'EXPEDITION_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/shipment','chaine',0,NULL,'2015-11-15 22:38:28'),(5416,'LIVRAISON_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/delivery','chaine',0,NULL,'2015-11-15 22:38:28'),(5419,'MAIN_MODULE_CASHDESK',1,'1',NULL,0,NULL,'2015-11-15 22:38:33'),(5426,'MAIN_MODULE_PROJET',1,'1',NULL,0,NULL,'2015-11-15 22:38:44'),(5427,'PROJECT_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/projects','chaine',0,NULL,'2015-11-15 22:38:44'),(5428,'PROJECT_USE_OPPORTUNIES',1,'1','chaine',0,NULL,'2015-11-15 22:38:44'),(5430,'MAIN_MODULE_EXPORT',1,'1',NULL,0,NULL,'2015-11-15 22:38:56'),(5431,'MAIN_MODULE_IMPORT',1,'1',NULL,0,NULL,'2015-11-15 22:38:58'),(5432,'MAIN_MODULE_MAILING',1,'1',NULL,0,NULL,'2015-11-15 22:39:00'),(5434,'EXPENSEREPORT_ADDON_PDF',1,'standard','chaine',0,'Name of manager to build PDF expense reports documents','2015-11-15 22:39:05'),(5436,'SALARIES_ACCOUNTING_ACCOUNT_PAYMENT',1,'421','chaine',0,NULL,'2015-11-15 22:39:08'),(5437,'SALARIES_ACCOUNTING_ACCOUNT_CHARGE',1,'641','chaine',0,NULL,'2015-11-15 22:39:08'),(5441,'ADHERENT_ETIQUETTE_TEXT',1,'%FULLNAME%\n%ADDRESS%\n%ZIP% %TOWN%\n%COUNTRY%','text',0,'Text to print on member address sheets','2018-11-23 11:56:07'),(5443,'MAIN_MODULE_PRELEVEMENT',1,'1',NULL,0,NULL,'2015-11-15 22:39:33'),(5453,'MAIN_MODULE_CONTRAT',1,'1',NULL,0,NULL,'2015-11-15 22:39:52'),(5455,'MAIN_MODULE_FICHEINTER',1,'1',NULL,0,NULL,'2015-11-15 22:39:56'),(5459,'MAIN_MODULE_PAYPAL',1,'1',NULL,0,NULL,'2015-11-15 22:41:02'),(5460,'MAIN_MODULE_MARGIN',1,'1',NULL,0,NULL,'2015-11-15 22:41:47'),(5461,'MAIN_MODULE_MARGIN_TABS_0',1,'product:+margin:Margins:margins:$user->rights->margins->liretous:/margin/tabs/productMargins.php?id=__ID__','chaine',0,NULL,'2015-11-15 22:41:47'),(5462,'MAIN_MODULE_MARGIN_TABS_1',1,'thirdparty:+margin:Margins:margins:empty($user->societe_id) && $user->rights->margins->liretous && ($object->client > 0):/margin/tabs/thirdpartyMargins.php?socid=__ID__','chaine',0,NULL,'2015-11-15 22:41:47'),(5463,'MAIN_MODULE_PROPALE',1,'1',NULL,0,NULL,'2015-11-15 22:41:47'),(5483,'GENBARCODE_BARCODETYPE_THIRDPARTY',1,'6','chaine',0,'','2016-01-16 15:49:43'),(5484,'PRODUIT_DEFAULT_BARCODE_TYPE',1,'2','chaine',0,'','2016-01-16 15:49:46'),(5539,'PRODUCT_USE_OLD_PATH_FOR_PHOTO',0,'0','chaine',1,'Use old path for products images','2016-01-22 13:34:23'),(5541,'MODULE_GOOGLE_DEBUG',1,'0','chaine',1,'','2016-01-22 13:34:57'),(5586,'MAIN_DELAY_EXPENSEREPORTS_TO_PAY',1,'31','chaine',0,'Tolérance de retard avant alerte (en jours) sur les notes de frais impayées','2016-01-22 17:28:18'),(5587,'MAIN_FIX_FOR_BUGGED_MTA',1,'1','chaine',1,'Set constant to fix email ending from PHP with some linux ike system','2016-01-22 17:28:18'),(5590,'MAIN_VERSION_LAST_INSTALL',0,'3.8.3','chaine',0,'Dolibarr version when install','2016-01-22 17:28:42'),(5604,'MAIN_INFO_SOCIETE_LOGO',1,'mybigcompany.png','chaine',0,'','2016-01-22 17:33:49'),(5605,'MAIN_INFO_SOCIETE_LOGO_SMALL',1,'mybigcompany_small.png','chaine',0,'','2016-01-22 17:33:49'),(5606,'MAIN_INFO_SOCIETE_LOGO_MINI',1,'mybigcompany_mini.png','chaine',0,'','2016-01-22 17:33:49'),(5612,'MAIN_ENABLE_LOG_TO_HTML',0,'0','chaine',1,'If this option is set to 1, it is possible to see log output at end of HTML sources by adding paramater logtohtml=1 on URL','2016-03-13 10:54:45'),(5614,'MAIN_SIZE_SHORTLISTE_LIMIT',1,'4','chaine',0,'Longueur maximum des listes courtes (fiche client)','2016-03-13 10:54:46'),(5626,'MAIN_MODULE_SUPPLIERPROPOSAL',1,'1',NULL,0,NULL,'2016-07-30 11:13:20'),(5627,'SUPPLIER_PROPOSAL_ADDON_PDF',1,'aurore','chaine',0,'Name of submodule to generate PDF for supplier quotation request','2016-07-30 11:13:20'),(5628,'SUPPLIER_PROPOSAL_ADDON',1,'mod_supplier_proposal_marbre','chaine',0,'Name of submodule to number supplier quotation request','2016-07-30 11:13:20'),(5629,'SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/supplier_proposal','chaine',0,NULL,'2016-07-30 11:13:20'),(5632,'MAIN_MODULE_RESOURCE',1,'1',NULL,0,NULL,'2016-07-30 11:13:32'),(5633,'MAIN_MODULE_API',1,'1',NULL,0,NULL,'2016-07-30 11:13:54'),(5634,'MAIN_MODULE_WEBSERVICES',1,'1',NULL,0,NULL,'2016-07-30 11:13:56'),(5635,'WEBSERVICES_KEY',1,'dolibarrkey','chaine',0,'','2016-07-30 11:14:04'),(5638,'MAIN_MODULE_EXTERNALRSS',1,'1',NULL,0,NULL,'2016-07-30 11:15:04'),(5639,'EXTERNAL_RSS_TITLE_1',1,'Dolibarr.org News','chaine',0,'','2016-07-30 11:15:25'),(5640,'EXTERNAL_RSS_URLRSS_1',1,'https://www.dolibarr.org/rss','chaine',0,'','2016-07-30 11:15:25'),(5642,'SOCIETE_CODECOMPTA_ADDON',1,'mod_codecompta_aquarium','chaine',0,'','2016-07-30 11:16:42'),(5707,'CASHDESK_NO_DECREASE_STOCK',1,'1','chaine',0,'','2016-07-30 13:38:11'),(5708,'MAIN_MODULE_PRODUCTBATCH',1,'1',NULL,0,NULL,'2016-07-30 13:38:11'),(5710,'MAIN_MODULE_STOCK',1,'1',NULL,0,NULL,'2016-07-30 13:38:11'),(5711,'MAIN_MODULE_PRODUCT',1,'1',NULL,0,NULL,'2016-07-30 13:38:11'),(5712,'MAIN_MODULE_EXPEDITION',1,'1',NULL,0,NULL,'2016-07-30 13:38:11'),(5808,'MARGIN_TYPE',1,'costprice','chaine',0,'','2016-07-30 16:32:18'),(5809,'DISPLAY_MARGIN_RATES',1,'1','chaine',0,'','2016-07-30 16:32:20'),(5810,'MAIN_FEATURES_LEVEL',0,'0','chaine',1,'Level of features to show (0=stable only, 1=stable+experimental, 2=stable+experimental+development','2016-07-30 18:36:15'),(5813,'USER_PASSWORD_PATTERN',1,'8;1;1;1;3;1','chaine',0,'','2016-07-31 16:04:58'),(5814,'MAIN_MODULE_EXPENSEREPORT',1,'1',NULL,0,NULL,'2016-07-31 21:14:32'),(5830,'LOAN_ACCOUNTING_ACCOUNT_CAPITAL',1,'164','chaine',0,NULL,'2017-01-29 15:11:51'),(5831,'LOAN_ACCOUNTING_ACCOUNT_INSURANCE',1,'6162','chaine',0,NULL,'2017-01-29 15:11:51'),(5833,'ACCOUNTING_EXPORT_SEPARATORCSV',1,',','string',0,NULL,'2017-01-29 15:11:56'),(5834,'ACCOUNTING_ACCOUNT_SUSPENSE',1,'471','chaine',0,NULL,'2017-01-29 15:11:56'),(5839,'ACCOUNTING_ACCOUNT_TRANSFER_CASH',1,'58','chaine',0,NULL,'2017-01-29 15:11:56'),(5840,'CHARTOFACCOUNTS',1,'2','chaine',0,NULL,'2017-01-29 15:11:56'),(5841,'ACCOUNTING_EXPORT_MODELCSV',1,'1','chaine',0,NULL,'2017-01-29 15:11:56'),(5842,'ACCOUNTING_LENGTH_GACCOUNT',1,'','chaine',0,NULL,'2017-01-29 15:11:56'),(5843,'ACCOUNTING_LENGTH_AACCOUNT',1,'','chaine',0,NULL,'2017-01-29 15:11:56'),(5844,'ACCOUNTING_LIST_SORT_VENTILATION_TODO',1,'1','yesno',0,NULL,'2017-01-29 15:11:56'),(5845,'ACCOUNTING_LIST_SORT_VENTILATION_DONE',1,'1','yesno',0,NULL,'2017-01-29 15:11:56'),(5846,'ACCOUNTING_EXPORT_DATE',1,'%d%m%Y','chaine',0,NULL,'2017-01-29 15:11:56'),(5848,'ACCOUNTING_EXPORT_FORMAT',1,'csv','chaine',0,NULL,'2017-01-29 15:11:56'),(5853,'MAIN_MODULE_WORKFLOW',1,'1',NULL,0,NULL,'2017-01-29 15:12:12'),(5854,'MAIN_MODULE_NOTIFICATION',1,'1',NULL,0,NULL,'2017-01-29 15:12:35'),(5855,'MAIN_MODULE_OAUTH',1,'1',NULL,0,NULL,'2017-01-29 15:12:41'),(5883,'MAILING_LIMIT_SENDBYWEB',0,'15','chaine',1,'Number of targets to defined packet size when sending mass email','2017-01-29 17:36:33'),(5884,'MAIN_MAIL_DEBUG',1,'0','chaine',1,'','2017-01-29 18:53:02'),(5885,'MAIN_SOAP_DEBUG',1,'0','chaine',1,'','2017-01-29 18:53:02'),(5887,'PROJECT_USE_OPPORTUNITIES',1,'1','chaine',0,'','2017-02-01 12:23:56'),(5888,'PROJECT_HIDE_TASKS',1,'1','chaine',0,'','2017-02-01 12:23:56'),(5889,'MAIN_AGENDA_ACTIONAUTO_COMPANY_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5890,'MAIN_AGENDA_ACTIONAUTO_COMPANY_CREATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5891,'MAIN_AGENDA_ACTIONAUTO_PROPAL_CLOSE_REFUSED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5892,'MAIN_AGENDA_ACTIONAUTO_PROPAL_CLOSE_SIGNED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5893,'MAIN_AGENDA_ACTIONAUTO_PROPAL_CLASSIFY_BILLED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5894,'MAIN_AGENDA_ACTIONAUTO_PROPAL_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5895,'MAIN_AGENDA_ACTIONAUTO_PROPAL_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5896,'MAIN_AGENDA_ACTIONAUTO_ORDER_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5897,'MAIN_AGENDA_ACTIONAUTO_ORDER_CLOSE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5898,'MAIN_AGENDA_ACTIONAUTO_ORDER_CANCEL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5899,'MAIN_AGENDA_ACTIONAUTO_ORDER_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5900,'MAIN_AGENDA_ACTIONAUTO_ORDER_CLASSIFY_BILLED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5901,'MAIN_AGENDA_ACTIONAUTO_BILL_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5902,'MAIN_AGENDA_ACTIONAUTO_BILL_PAYED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5903,'MAIN_AGENDA_ACTIONAUTO_BILL_CANCEL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5904,'MAIN_AGENDA_ACTIONAUTO_BILL_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5905,'MAIN_AGENDA_ACTIONAUTO_BILL_UNVALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5906,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5907,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_APPROVE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5908,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_RECEIVE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5909,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_SUBMIT',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5910,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_REFUSE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5911,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_CLASSIFY_BILLED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5912,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5913,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_UNVALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5914,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5915,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_PAYED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5916,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5917,'MAIN_AGENDA_ACTIONAUTO_BILL_SUPPLIER_CANCELED',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5918,'MAIN_AGENDA_ACTIONAUTO_CONTRACT_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5919,'MAIN_AGENDA_ACTIONAUTO_FICHINTER_REOPEN',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5920,'MAIN_AGENDA_ACTIONAUTO_FICHINTER_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5921,'MAIN_AGENDA_ACTIONAUTO_FICHINTER_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5922,'MAIN_AGENDA_ACTIONAUTO_SHIPPING_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5923,'MAIN_AGENDA_ACTIONAUTO_SHIPPING_SENTBYMAIL',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5924,'MAIN_AGENDA_ACTIONAUTO_MEMBER_VALIDATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5925,'MAIN_AGENDA_ACTIONAUTO_MEMBER_SUBSCRIPTION',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5926,'MAIN_AGENDA_ACTIONAUTO_MEMBER_MODIFY',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5927,'MAIN_AGENDA_ACTIONAUTO_MEMBER_RESILIATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5928,'MAIN_AGENDA_ACTIONAUTO_MEMBER_DELETE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5929,'MAIN_AGENDA_ACTIONAUTO_PROJECT_CREATE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5930,'MAIN_AGENDA_ACTIONAUTO_PROJECT_DELETE',1,'1','chaine',0,'','2017-02-01 14:48:55'),(5931,'DATABASE_PWD_ENCRYPTED',1,'1','chaine',0,'','2017-02-01 15:06:04'),(5932,'MAIN_DISABLE_ALL_MAILS',1,'0','chaine',0,'','2017-02-01 15:09:09'),(5933,'MAIN_MAIL_SENDMODE',1,'mail','chaine',0,'','2017-02-01 15:09:09'),(5934,'MAIN_MAIL_SMTP_PORT',1,'465','chaine',0,'','2017-02-01 15:09:09'),(5935,'MAIN_MAIL_SMTP_SERVER',1,'smtp.mail.com','chaine',0,'','2017-02-01 15:09:09'),(5936,'MAIN_MAIL_SMTPS_ID',1,'eldy10@mail.com','chaine',0,'','2017-02-01 15:09:09'),(5937,'MAIN_MAIL_SMTPS_PW',1,'bidonge','chaine',0,'','2017-02-01 15:09:09'),(5938,'MAIN_MAIL_EMAIL_FROM',1,'robot@example.com','chaine',0,'','2017-02-01 15:09:09'),(5939,'MAIN_MAIL_DEFAULT_FROMTYPE',1,'user','chaine',0,'','2017-02-01 15:09:09'),(5940,'PRELEVEMENT_ID_BANKACCOUNT',1,'1','chaine',0,'','2017-02-06 04:04:47'),(5941,'PRELEVEMENT_ICS',1,'ICS123456','chaine',0,'','2017-02-06 04:04:47'),(5942,'PRELEVEMENT_USER',1,'1','chaine',0,'','2017-02-06 04:04:47'),(5943,'BANKADDON_PDF',1,'sepamandate','chaine',0,'','2017-02-06 04:13:52'),(5947,'CHEQUERECEIPTS_THYME_MASK',1,'CHK{yy}{mm}-{0000@1}','chaine',0,'','2017-02-06 04:16:27'),(5948,'MAIN_MODULE_LOAN',1,'1',NULL,0,NULL,'2017-02-06 19:19:05'),(5954,'MAIN_SUBMODULE_EXPEDITION',1,'1','chaine',0,'','2017-02-06 23:57:37'),(5963,'MAIN_MODULE_BANQUE',1,'1',NULL,0,NULL,'2017-02-07 18:56:12'),(5964,'MAIN_MODULE_TAX',1,'1',NULL,0,NULL,'2017-02-07 18:56:12'),(5996,'CABINETMED_RHEUMATOLOGY_ON',1,'0','text',0,'','2018-11-23 11:56:07'),(5999,'MAIN_SEARCHFORM_SOCIETE',1,'1','text',0,'','2018-11-23 11:56:07'),(6000,'CABINETMED_BANK_PATIENT_REQUIRED',1,'0','text',0,'','2018-11-23 11:56:07'),(6019,'MAIN_INFO_SOCIETE_COUNTRY',2,'1:FR:France','chaine',0,'','2017-02-15 17:18:22'),(6020,'MAIN_INFO_SOCIETE_NOM',2,'MySecondCompany','chaine',0,'','2017-02-15 17:18:22'),(6021,'MAIN_INFO_SOCIETE_STATE',2,'0','chaine',0,'','2017-02-15 17:18:22'),(6022,'MAIN_MONNAIE',2,'EUR','chaine',0,'','2017-02-15 17:18:22'),(6023,'MAIN_LANG_DEFAULT',2,'auto','chaine',0,'','2017-02-15 17:18:22'),(6032,'MAIN_MODULE_MULTICURRENCY',1,'1',NULL,0,NULL,'2017-02-15 17:29:59'),(6048,'SYSLOG_FACILITY',0,'LOG_USER','chaine',0,'','2017-02-15 22:37:01'),(6049,'SYSLOG_FIREPHP_INCLUDEPATH',0,'/home/ldestailleur/git/dolibarr_5.0/htdocs/includes/firephp/firephp-core/lib/','chaine',0,'','2017-02-15 22:37:01'),(6050,'SYSLOG_FILE',0,'DOL_DATA_ROOT/dolibarr.log','chaine',0,'','2017-02-15 22:37:01'),(6051,'SYSLOG_CHROMEPHP_INCLUDEPATH',0,'/home/ldestailleur/git/dolibarr_5.0/htdocs/includes/ccampbell/chromephp/','chaine',0,'','2017-02-15 22:37:01'),(6052,'SYSLOG_HANDLERS',0,'[\"mod_syslog_file\"]','chaine',0,'','2017-02-15 22:37:01'),(6054,'SYSLOG_LEVEL',0,'7','chaine',0,'','2017-02-15 22:37:21'),(6074,'CABINETMED_DELAY_TO_LOCK_RECORD',1,'','chaine',1,'Number of days before locking edit of consultation','2017-02-21 00:04:15'),(6092,'MAIN_SIZE_SHORTLIST_LIMIT',0,'3','chaine',0,'Max length for small lists (tabs)','2017-05-12 09:02:38'),(6099,'MAIN_MODULE_SKYPE',1,'1',NULL,0,NULL,'2017-05-12 09:03:51'),(6100,'MAIN_MODULE_GRAVATAR',1,'1',NULL,0,NULL,'2017-05-12 09:03:54'),(6102,'PRODUCT_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/products','chaine',0,'','2017-08-27 13:29:07'),(6103,'CONTRACT_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/contracts','chaine',0,'','2017-08-27 13:29:07'),(6104,'USERGROUP_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/usergroups','chaine',0,'','2017-08-27 13:29:07'),(6105,'USER_ADDON_PDF_ODT_PATH',1,'DOL_DATA_ROOT/doctemplates/users','chaine',0,'','2017-08-27 13:29:07'),(6106,'MAIN_ENABLE_OVERWRITE_TRANSLATION',1,'1','chaine',0,'Enable overwrote of translation','2017-08-27 13:29:07'),(6108,'MAIN_AGENDA_ACTIONAUTO_ORDER_SUPPLIER_CREATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6109,'MAIN_AGENDA_ACTIONAUTO_FICHINTER_CLASSIFY_BILLED',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6110,'MAIN_AGENDA_ACTIONAUTO_FICHINTER_CLASSIFY_UNBILLED',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6111,'MAIN_AGENDA_ACTIONAUTO_PRODUCT_CREATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6112,'MAIN_AGENDA_ACTIONAUTO_PRODUCT_MODIFY',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6113,'MAIN_AGENDA_ACTIONAUTO_PRODUCT_DELETE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6114,'MAIN_AGENDA_ACTIONAUTO_PROJECT_MODIFY',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6115,'MAIN_AGENDA_ACTIONAUTO_EXPENSE_REPORT_CREATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6116,'MAIN_AGENDA_ACTIONAUTO_EXPENSE_REPORT_VALIDATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6117,'MAIN_AGENDA_ACTIONAUTO_EXPENSE_REPORT_APPROVE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6118,'MAIN_AGENDA_ACTIONAUTO_EXPENSE_REPORT_PAYED',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6119,'MAIN_AGENDA_ACTIONAUTO_HOLIDAY_CREATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6120,'MAIN_AGENDA_ACTIONAUTO_HOLIDAY_VALIDATE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6121,'MAIN_AGENDA_ACTIONAUTO_HOLIDAY_APPROVE',1,'1','chaine',0,NULL,'2017-08-27 13:29:14'),(6137,'MAIN_LANG_DEFAULT',1,'auto','chaine',0,'','2017-08-28 10:19:58'),(6138,'MAIN_MULTILANGS',1,'1','chaine',0,'','2017-08-28 10:19:58'),(6139,'MAIN_THEME',1,'eldy','chaine',0,'','2017-08-28 10:19:58'),(6140,'THEME_ELDY_USE_HOVER',1,'edf4fb','chaine',0,'','2017-08-28 10:19:58'),(6141,'MAIN_SIZE_LISTE_LIMIT',1,'25','chaine',0,'','2017-08-28 10:19:59'),(6142,'MAIN_SIZE_SHORTLIST_LIMIT',1,'3','chaine',0,'','2017-08-28 10:19:59'),(6143,'MAIN_DISABLE_JAVASCRIPT',1,'0','chaine',0,'','2017-08-28 10:19:59'),(6144,'MAIN_BUTTON_HIDE_UNAUTHORIZED',1,'0','chaine',0,'','2017-08-28 10:19:59'),(6145,'MAIN_START_WEEK',1,'1','chaine',0,'','2017-08-28 10:19:59'),(6146,'MAIN_DEFAULT_WORKING_DAYS',1,'1-5','chaine',0,'','2017-08-28 10:19:59'),(6147,'MAIN_DEFAULT_WORKING_HOURS',1,'9-18','chaine',0,'','2017-08-28 10:19:59'),(6148,'MAIN_SHOW_LOGO',1,'1','chaine',0,'','2017-08-28 10:19:59'),(6149,'MAIN_FIRSTNAME_NAME_POSITION',1,'0','chaine',0,'','2017-08-28 10:19:59'),(6150,'MAIN_HELPCENTER_DISABLELINK',0,'1','chaine',0,'','2017-08-28 10:19:59'),(6151,'MAIN_HOME',1,'__(NoteSomeFeaturesAreDisabled)__
\r\n
\r\n__(SomeTranslationAreUncomplete)__
','chaine',0,'','2017-08-28 10:19:59'),(6152,'MAIN_HELP_DISABLELINK',0,'0','chaine',0,'','2017-08-28 10:19:59'),(6153,'MAIN_BUGTRACK_ENABLELINK',1,'0','chaine',0,'','2017-08-28 10:19:59'),(6353,'MAIN_MENU_STANDARD',1,'eldy_menu.php','chaine',0,'','2017-08-30 15:14:44'),(6354,'MAIN_MENU_SMARTPHONE',1,'eldy_menu.php','chaine',0,'','2017-08-30 15:14:44'),(6355,'MAIN_MENUFRONT_STANDARD',1,'eldy_menu.php','chaine',0,'','2017-08-30 15:14:44'),(6356,'MAIN_MENUFRONT_SMARTPHONE',1,'eldy_menu.php','chaine',0,'','2017-08-30 15:14:44'),(6377,'COMMANDE_SAPHIR_MASK',1,'{yy}{mm}{000}{ttt}','chaine',0,'','2017-09-06 07:56:25'),(6461,'MAIN_INFO_SOCIETE_COUNTRY',1,'117:IN:India','chaine',0,'','2017-09-06 08:51:11'),(6462,'MAIN_INFO_SOCIETE_NOM',1,'MyBigCompany','chaine',0,'','2017-09-06 08:51:11'),(6463,'MAIN_INFO_SOCIETE_ADDRESS',1,'21 Jump street..ll..ee \"','chaine',0,'','2017-09-06 08:51:11'),(6464,'MAIN_INFO_SOCIETE_TOWN',1,'MyTown','chaine',0,'','2017-09-06 08:51:12'),(6465,'MAIN_INFO_SOCIETE_ZIP',1,'75500','chaine',0,'','2017-09-06 08:51:12'),(6466,'MAIN_INFO_SOCIETE_STATE',1,'290','chaine',0,'','2017-09-06 08:51:12'),(6467,'MAIN_MONNAIE',1,'EUR','chaine',0,'','2017-09-06 08:51:12'),(6468,'MAIN_INFO_SOCIETE_TEL',1,'09123123','chaine',0,'','2017-09-06 08:51:12'),(6469,'MAIN_INFO_SOCIETE_FAX',1,'09123124','chaine',0,'','2017-09-06 08:51:12'),(6470,'MAIN_INFO_SOCIETE_MAIL',1,'myemail@mybigcompany.com','chaine',0,'','2017-09-06 08:51:12'),(6471,'MAIN_INFO_SOCIETE_WEB',1,'https://www.dolibarr.org','chaine',0,'','2017-09-06 08:51:12'),(6472,'MAIN_INFO_SOCIETE_NOTE',1,'This is note about my company\r\n\"ee\"','chaine',0,'','2017-09-06 08:51:12'),(6473,'MAIN_INFO_SOCIETE_GENCOD',1,'1234567890','chaine',0,'','2017-09-06 08:51:12'),(6474,'MAIN_INFO_SOCIETE_MANAGERS',1,'Zack Zeceo','chaine',0,'','2017-09-06 08:51:12'),(6475,'MAIN_INFO_CAPITAL',1,'10000','chaine',0,'','2017-09-06 08:51:12'),(6476,'MAIN_INFO_SOCIETE_FORME_JURIDIQUE',1,'0','chaine',0,'','2017-09-06 08:51:12'),(6477,'MAIN_INFO_SIREN',1,'123456','chaine',0,'','2017-09-06 08:51:12'),(6478,'MAIN_INFO_SIRET',1,'1','chaine',0,'','2017-09-06 08:51:12'),(6479,'MAIN_INFO_APE',1,'1','chaine',0,'','2017-09-06 08:51:12'),(6480,'MAIN_INFO_RCS',1,'1','chaine',0,'','2017-09-06 08:51:12'),(6481,'MAIN_INFO_PROFID5',1,'1','chaine',0,'','2017-09-06 08:51:12'),(6482,'MAIN_INFO_TVAINTRA',1,'FR1234567','chaine',0,'','2017-09-06 08:51:12'),(6483,'MAIN_INFO_SOCIETE_OBJECT',1,'A company demo to show how Dolibarr ERP CRM is wonderfull','chaine',0,'','2017-09-06 08:51:12'),(6484,'SOCIETE_FISCAL_MONTH_START',1,'4','chaine',0,'','2017-09-06 08:51:12'),(6485,'FACTURE_TVAOPTION',1,'1','chaine',0,'','2017-09-06 08:51:12'),(6486,'FACTURE_LOCAL_TAX1_OPTION',1,'localtax1on','chaine',0,'','2017-09-06 08:51:12'),(6487,'FACTURE_LOCAL_TAX2_OPTION',1,'localtax2on','chaine',0,'','2017-09-06 08:51:12'),(6488,'MAIN_INFO_VALUE_LOCALTAX1',1,'0','chaine',0,'','2017-09-06 08:51:12'),(6489,'MAIN_INFO_LOCALTAX_CALC1',1,'0','chaine',0,'','2017-09-06 08:51:12'),(6490,'MAIN_INFO_VALUE_LOCALTAX2',1,'0','chaine',0,'','2017-09-06 08:51:12'),(6491,'MAIN_INFO_LOCALTAX_CALC2',1,'0','chaine',0,'','2017-09-06 08:51:12'),(6518,'GOOGLE_DUPLICATE_INTO_THIRDPARTIES',1,'1','chaine',0,'','2017-09-06 19:43:57'),(6519,'GOOGLE_DUPLICATE_INTO_CONTACTS',1,'0','chaine',0,'','2017-09-06 19:43:57'),(6520,'GOOGLE_TAG_PREFIX',1,'Dolibarr (Thirdparties)','chaine',0,'','2017-09-06 19:43:57'),(6521,'GOOGLE_TAG_PREFIX_CONTACTS',1,'Dolibarr (Contacts/Addresses)','chaine',0,'','2017-09-06 19:43:57'),(6522,'GOOGLE_ENABLE_AGENDA',1,'1','chaine',0,'','2017-09-06 19:44:12'),(6523,'GOOGLE_AGENDA_COLOR1',1,'1B887A','chaine',0,'','2017-09-06 19:44:12'),(6524,'GOOGLE_AGENDA_COLOR2',1,'7A367A','chaine',0,'','2017-09-06 19:44:12'),(6525,'GOOGLE_AGENDA_COLOR3',1,'7A367A','chaine',0,'','2017-09-06 19:44:12'),(6526,'GOOGLE_AGENDA_COLOR4',1,'7A367A','chaine',0,'','2017-09-06 19:44:12'),(6527,'GOOGLE_AGENDA_COLOR5',1,'7A367A','chaine',0,'','2017-09-06 19:44:12'),(6528,'GOOGLE_AGENDA_TIMEZONE',1,'Europe/Paris','chaine',0,'','2017-09-06 19:44:12'),(6529,'GOOGLE_AGENDA_NB',1,'5','chaine',0,'','2017-09-06 19:44:12'),(6543,'MAIN_SMS_DEBUG',0,'1','chaine',1,'This is to enable OVH SMS debug','2017-09-06 19:44:34'),(6562,'BLOCKEDLOG_ENTITY_FINGERPRINT',1,'b63e359ffca54d5c2bab869916eaf23d4a736703028ccbf77ce1167c5f830e7b','chaine',0,'Numeric Unique Fingerprint','2018-01-19 11:27:15'),(6564,'BLOCKEDLOG_DISABLE_NOT_ALLOWED_FOR_COUNTRY',1,'FR','chaine',0,'This is list of country code where the module may be mandatory','2018-01-19 11:27:15'),(6565,'MAIN_MODULE_BOOKMARK',1,'1',NULL,0,'{\"authorid\":\"12\",\"ip\":\"82.240.38.230\"}','2018-01-19 11:27:34'),(6566,'MAIN_MODULE_ADHERENT',1,'1',NULL,0,'{\"authorid\":\"12\",\"ip\":\"82.240.38.230\"}','2018-01-19 11:27:56'),(6567,'ADHERENT_ADDON_PDF',1,'standard','chaine',0,'Name of PDF model of member','2018-01-19 11:27:56'),(6569,'MAIN_MODULE_STRIPE',1,'1',NULL,0,'{\"authorid\":\"12\",\"ip\":\"82.240.38.230\"}','2018-01-19 11:28:17'),(6587,'MAIN_MODULE_BLOCKEDLOG',1,'1',NULL,0,'{\"authorid\":\"12\",\"ip\":\"127.0.0.1\"}','2018-03-16 09:57:24'),(6590,'MAIN_MODULE_ACCOUNTING',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:15'),(6591,'MAIN_MODULE_AGENDA',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:15'),(6592,'MAIN_MODULE_BARCODE',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:15'),(6593,'MAIN_MODULE_CRON',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:16'),(6594,'MAIN_MODULE_COMMANDE',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:16'),(6595,'MAIN_MODULE_DON',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:17'),(6596,'MAIN_MODULE_ECM',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:17'),(6597,'MAIN_MODULE_FACTURE',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:17'),(6598,'MAIN_MODULE_FOURNISSEUR',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:18'),(6599,'MAIN_MODULE_HOLIDAY',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6600,'MAIN_MODULE_OPENSURVEY',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6601,'MAIN_MODULE_PRINTING',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6602,'MAIN_MODULE_SALARIES',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6603,'MAIN_MODULE_SYSLOG',0,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6604,'MAIN_MODULE_SOCIETE',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:19'),(6605,'MAIN_MODULE_SERVICE',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:20'),(6606,'MAIN_MODULE_USER',0,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:20'),(6607,'MAIN_MODULE_VARIANTS',1,'1','string',0,'{\"authorid\":0,\"ip\":\"127.0.0.1\"}','2018-11-23 11:58:21'),(6608,'MAIN_VERSION_LAST_UPGRADE',0,'9.0.0-beta','chaine',0,'Dolibarr version for last upgrade','2018-11-23 11:58:23'); +/*!40000 ALTER TABLE `llx_const` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_contrat` +-- + +DROP TABLE IF EXISTS `llx_contrat`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_contrat` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_supplier` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_contrat` datetime DEFAULT NULL, + `statut` smallint(6) DEFAULT '0', + `mise_en_service` datetime DEFAULT NULL, + `fin_validite` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `fk_projet` int(11) DEFAULT NULL, + `fk_commercial_signature` int(11) DEFAULT NULL, + `fk_commercial_suivi` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL DEFAULT '0', + `fk_user_mise_en_service` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_customer` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_contrat_ref` (`ref`,`entity`), + KEY `idx_contrat_fk_soc` (`fk_soc`), + KEY `idx_contrat_fk_user_author` (`fk_user_author`), + CONSTRAINT `fk_contrat_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_contrat_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_contrat` +-- + +LOCK TABLES `llx_contrat` WRITE; +/*!40000 ALTER TABLE `llx_contrat` DISABLE KEYS */; +INSERT INTO `llx_contrat` VALUES (1,'CONTRACT1',NULL,NULL,1,'2010-07-08 23:53:55','2010-07-09 01:53:25','2010-07-09 00:00:00',1,NULL,NULL,NULL,3,NULL,2,2,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,'CONTRAT1',NULL,NULL,1,'2010-07-10 16:18:16','2010-07-10 18:13:37','2010-07-10 00:00:00',1,NULL,NULL,NULL,2,NULL,2,2,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'CT1303-0001',NULL,NULL,1,'2013-03-06 09:05:07','2013-03-06 10:04:57','2013-03-06 00:00:00',1,NULL,NULL,NULL,19,NULL,1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_contrat` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_contrat_extrafields` +-- + +DROP TABLE IF EXISTS `llx_contrat_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_contrat_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_contrat_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_contrat_extrafields` +-- + +LOCK TABLES `llx_contrat_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_contrat_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_contrat_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_contratdet` +-- + +DROP TABLE IF EXISTS `llx_contratdet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_contratdet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_contrat` int(11) NOT NULL, + `fk_product` int(11) DEFAULT NULL, + `statut` smallint(6) DEFAULT '0', + `label` text COLLATE utf8_unicode_ci, + `description` text COLLATE utf8_unicode_ci, + `fk_remise_except` int(11) DEFAULT NULL, + `date_commande` datetime DEFAULT NULL, + `date_ouverture_prevue` datetime DEFAULT NULL, + `date_ouverture` datetime DEFAULT NULL, + `date_fin_validite` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double NOT NULL, + `remise_percent` double DEFAULT '0', + `subprice` double(24,8) DEFAULT '0.00000000', + `price_ht` double DEFAULT NULL, + `remise` double DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '1', + `info_bits` int(11) DEFAULT '0', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `fk_user_author` int(11) NOT NULL DEFAULT '0', + `fk_user_ouverture` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `commentaire` text COLLATE utf8_unicode_ci, + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `idx_contratdet_fk_contrat` (`fk_contrat`), + KEY `idx_contratdet_fk_product` (`fk_product`), + KEY `idx_contratdet_date_ouverture_prevue` (`date_ouverture_prevue`), + KEY `idx_contratdet_date_ouverture` (`date_ouverture`), + KEY `idx_contratdet_date_fin_validite` (`date_fin_validite`), + KEY `fk_contratdet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_contratdet_fk_contrat` FOREIGN KEY (`fk_contrat`) REFERENCES `llx_contrat` (`rowid`), + CONSTRAINT `fk_contratdet_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_contratdet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_contratdet` +-- + +LOCK TABLES `llx_contratdet` WRITE; +/*!40000 ALTER TABLE `llx_contratdet` DISABLE KEYS */; +INSERT INTO `llx_contratdet` VALUES (1,'2013-03-06 09:00:00',1,3,4,'','',NULL,NULL,'2010-07-09 00:00:00','2010-07-09 12:00:00','2013-03-15 00:00:00',NULL,0.000,'',0.000,'',0.000,'',1,0,0.00000000,0,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,0,0,0.00000000,0,1,1,'',NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(2,'2010-07-10 16:14:14',2,NULL,0,'','Abonnement annuel assurance',NULL,NULL,'2010-07-10 00:00:00',NULL,'2011-07-10 00:00:00',NULL,1.000,'',0.000,'',0.000,'',1,0,10.00000000,10,0,10.00000000,0.10000000,0.00000000,0.00000000,10.10000000,1,0,NULL,0.00000000,0,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(3,'2013-03-05 10:20:58',2,3,5,'','gdfg',NULL,NULL,'2010-07-10 00:00:00','2010-07-10 12:00:00','2011-07-09 00:00:00','2013-03-06 12:00:00',4.000,'',0.000,'',0.000,'',1,0,0.00000000,0,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,1,0,0,0.00000000,0,1,1,'',NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(4,'2012-12-08 13:11:17',2,3,0,'','',NULL,NULL,'2010-07-10 00:00:00',NULL,NULL,NULL,0.000,'',0.000,'',0.000,'',1,10,40.00000000,40,NULL,36.00000000,0.00000000,0.00000000,0.00000000,36.00000000,1,0,NULL,0.00000000,0,NULL,1,'',NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(5,'2013-03-06 09:05:40',3,NULL,4,'','gfdg',NULL,NULL,NULL,'2013-03-06 12:00:00','2013-03-07 12:00:00',NULL,0.000,'',0.000,'',0.000,'',1,0,10.00000000,10,NULL,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,1,0,0,0.00000000,0,1,1,'',NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000); +/*!40000 ALTER TABLE `llx_contratdet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_contratdet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_contratdet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_contratdet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_contratdet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_contratdet_extrafields` +-- + +LOCK TABLES `llx_contratdet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_contratdet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_contratdet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_contratdet_log` +-- + +DROP TABLE IF EXISTS `llx_contratdet_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_contratdet_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_contratdet` int(11) NOT NULL, + `date` datetime NOT NULL, + `statut` smallint(6) NOT NULL, + `fk_user_author` int(11) NOT NULL, + `commentaire` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_contratdet_log_fk_contratdet` (`fk_contratdet`), + KEY `idx_contratdet_log_date` (`date`), + CONSTRAINT `fk_contratdet_log_fk_contratdet` FOREIGN KEY (`fk_contratdet`) REFERENCES `llx_contratdet` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_contratdet_log` +-- + +LOCK TABLES `llx_contratdet_log` WRITE; +/*!40000 ALTER TABLE `llx_contratdet_log` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_contratdet_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_cotisation` +-- + +DROP TABLE IF EXISTS `llx_cotisation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_cotisation` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `dateadh` datetime DEFAULT NULL, + `datef` date DEFAULT NULL, + `cotisation` double DEFAULT NULL, + `fk_bank` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_cotisation` (`fk_adherent`,`dateadh`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_cotisation` +-- + +LOCK TABLES `llx_cotisation` WRITE; +/*!40000 ALTER TABLE `llx_cotisation` DISABLE KEYS */; +INSERT INTO `llx_cotisation` VALUES (1,'2010-07-10 13:05:30','2010-07-10 15:05:30',2,'2010-07-10 00:00:00','2011-07-10',20,NULL,'Adhésion/cotisation 2010'),(2,'2010-07-11 14:20:00','2010-07-11 16:20:00',2,'2011-07-11 00:00:00','2012-07-10',10,NULL,'Adhésion/cotisation 2011'),(3,'2010-07-18 10:20:33','2010-07-18 12:20:33',2,'2012-07-11 00:00:00','2013-07-17',10,NULL,'Adhésion/cotisation 2012'),(4,'2013-03-06 15:43:37','2013-03-06 16:43:37',2,'2013-07-18 00:00:00','2014-07-17',10,NULL,'Adhésion/cotisation 2013'),(5,'2013-03-06 15:44:12','2013-03-06 16:44:12',2,'2014-07-18 00:00:00','2015-07-17',11,NULL,'Adhésion/cotisation 2014'),(6,'2013-03-06 15:47:48','2013-03-06 16:47:48',2,'2015-07-18 00:00:00','2016-07-17',10,NULL,'Adhésion/cotisation 2015'),(7,'2013-03-06 15:48:16','2013-03-06 16:48:16',2,'2016-07-18 00:00:00','2017-07-17',20,22,'Adhésion/cotisation 2016'),(8,'2013-03-20 13:17:57','2013-03-20 14:17:57',1,'2010-07-10 00:00:00','2011-07-09',10,NULL,'Adhésion/cotisation 2010'),(10,'2013-03-20 13:30:11','2013-03-20 14:30:11',1,'2011-07-10 00:00:00','2012-07-09',10,23,'Adhésion/cotisation 2011'); +/*!40000 ALTER TABLE `llx_cotisation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_cronjob` +-- + +DROP TABLE IF EXISTS `llx_cronjob`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_cronjob` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `jobtype` varchar(10) COLLATE utf8_unicode_ci NOT NULL, + `label` text COLLATE utf8_unicode_ci NOT NULL, + `command` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `classesname` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `objectname` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `methodename` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `params` text COLLATE utf8_unicode_ci, + `md5params` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `module_name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `priority` int(11) DEFAULT '0', + `datelastrun` datetime DEFAULT NULL, + `datenextrun` datetime DEFAULT NULL, + `datestart` datetime DEFAULT NULL, + `dateend` datetime DEFAULT NULL, + `datelastresult` datetime DEFAULT NULL, + `lastresult` text COLLATE utf8_unicode_ci, + `lastoutput` text COLLATE utf8_unicode_ci, + `unitfrequency` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '3600', + `frequency` int(11) NOT NULL DEFAULT '0', + `nbrun` int(11) DEFAULT NULL, + `status` int(11) NOT NULL DEFAULT '1', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `libname` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT '0', + `maxrun` int(11) NOT NULL DEFAULT '0', + `autodelete` int(11) DEFAULT '0', + `fk_mailing` int(11) DEFAULT NULL, + `test` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `processing` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_cronjob` +-- + +LOCK TABLES `llx_cronjob` WRITE; +/*!40000 ALTER TABLE `llx_cronjob` DISABLE KEYS */; +INSERT INTO `llx_cronjob` VALUES (1,'2013-03-23 18:18:39','2013-03-23 19:18:39','command','aaa','aaaa','','','','','','',0,NULL,NULL,'2013-03-23 19:18:00',NULL,NULL,NULL,NULL,'3600',3600,0,0,1,1,'',NULL,0,0,0,NULL,'1',0),(40,'2018-11-23 11:58:15','2018-11-23 12:58:15','method','SendEmailsReminders',NULL,'comm/action/class/actioncomm.class.php','ActionComm','sendEmailsReminder',NULL,NULL,'agenda',10,NULL,NULL,'2018-11-23 12:58:15',NULL,NULL,NULL,NULL,'60',10,NULL,1,NULL,NULL,'SendEMailsReminder',NULL,1,0,0,NULL,'$conf->agenda->enabled',0),(41,'2018-11-23 11:58:16','2018-11-23 12:58:16','method','PurgeDeleteTemporaryFilesShort',NULL,'core/class/utils.class.php','Utils','purgeFiles',NULL,NULL,'cron',50,NULL,NULL,'2018-11-23 12:58:16',NULL,NULL,NULL,NULL,'604800',2,NULL,1,NULL,NULL,'PurgeDeleteTemporaryFiles',NULL,0,0,0,NULL,'1',0),(42,'2018-11-23 11:58:16','2018-11-23 12:58:16','method','MakeLocalDatabaseDumpShort',NULL,'core/class/utils.class.php','Utils','dumpDatabase','none,auto,1,auto,10',NULL,'cron',90,NULL,NULL,'2018-11-23 12:58:16',NULL,NULL,NULL,NULL,'604800',1,NULL,0,NULL,NULL,'MakeLocalDatabaseDump',NULL,0,0,0,NULL,'1',0),(43,'2018-11-23 11:58:17','2018-11-23 12:58:17','method','RecurringInvoices',NULL,'compta/facture/class/facture-rec.class.php','FactureRec','createRecurringInvoices',NULL,NULL,'facture',50,NULL,NULL,'2018-11-23 23:00:00',NULL,NULL,NULL,NULL,'86400',1,NULL,1,NULL,NULL,'Generate recurring invoices',NULL,1,0,0,NULL,'$conf->facture->enabled',0),(44,'2018-11-23 11:58:19','2018-11-23 12:58:19','method','CompressSyslogs',NULL,'core/class/utils.class.php','Utils','compressSyslogs',NULL,NULL,'syslog',50,NULL,NULL,'2018-11-23 12:58:19',NULL,NULL,NULL,NULL,'86400',1,NULL,0,NULL,NULL,'Compress and archive log files. Warning: batch must be run with same account than your web server to avoid to get log files with different owner than required by web server. Another solution is to set web server Operating System group as the group of directory documents and set GROUP permission \"rws\" on this directory so log files will always have the group and permissions of the web server Operating System group',NULL,1,0,0,NULL,'1',0); +/*!40000 ALTER TABLE `llx_cronjob` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_default_values` +-- + +DROP TABLE IF EXISTS `llx_default_values`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_default_values` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `user_id` int(11) NOT NULL DEFAULT '0', + `page` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `param` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `value` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_default_values` (`type`,`entity`,`user_id`,`page`,`param`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_default_values` +-- + +LOCK TABLES `llx_default_values` WRITE; +/*!40000 ALTER TABLE `llx_default_values` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_default_values` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_deplacement` +-- + +DROP TABLE IF EXISTS `llx_deplacement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_deplacement` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dated` datetime DEFAULT NULL, + `fk_user` int(11) NOT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `type` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `fk_statut` int(11) NOT NULL DEFAULT '1', + `km` double DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT '0', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_deplacement` +-- + +LOCK TABLES `llx_deplacement` WRITE; +/*!40000 ALTER TABLE `llx_deplacement` DISABLE KEYS */; +INSERT INTO `llx_deplacement` VALUES (1,NULL,1,'2010-07-09 01:58:04','2010-07-08 23:58:18','2010-07-09 12:00:00',2,1,NULL,'TF_LUNCH',1,10,2,1,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_deplacement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_document_model` +-- + +DROP TABLE IF EXISTS `llx_document_model`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_document_model` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `nom` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `type` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_document_model` (`nom`,`type`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=305 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_document_model` +-- + +LOCK TABLES `llx_document_model` WRITE; +/*!40000 ALTER TABLE `llx_document_model` DISABLE KEYS */; +INSERT INTO `llx_document_model` VALUES (9,'merou',1,'shipping',NULL,NULL),(181,'generic_invoice_odt',1,'invoice','ODT templates','FACTURE_ADDON_PDF_ODT_PATH'),(193,'canelle2',1,'invoice_supplier','canelle2',NULL),(195,'canelle',1,'invoice_supplier','canelle',NULL),(198,'azur',2,'propal',NULL,NULL),(199,'html_cerfafr',2,'donation',NULL,NULL),(200,'crabe',2,'invoice',NULL,NULL),(201,'generic_odt',1,'company','ODT templates','COMPANY_ADDON_PDF_ODT_PATH'),(250,'baleine',1,'project',NULL,NULL),(255,'soleil',1,'ficheinter',NULL,NULL),(256,'azur',1,'propal',NULL,NULL),(270,'aurore',1,'supplier_proposal',NULL,NULL),(273,'beluga',1,'project','beluga',NULL),(274,'rouget',1,'shipping',NULL,NULL),(275,'typhon',1,'delivery',NULL,NULL),(278,'standard',1,'expensereport',NULL,NULL),(281,'sepamandate',1,'bankaccount','sepamandate',NULL),(299,'standard',1,'member',NULL,NULL),(300,'einstein',1,'order',NULL,NULL),(302,'crabe',1,'invoice',NULL,NULL),(303,'muscadet',1,'order_supplier',NULL,NULL),(304,'html_cerfafr',1,'donation',NULL,NULL); +/*!40000 ALTER TABLE `llx_document_model` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_don` +-- + +DROP TABLE IF EXISTS `llx_don`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_don` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `datec` datetime DEFAULT NULL, + `datedon` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_payment` int(11) DEFAULT NULL, + `paid` smallint(6) NOT NULL DEFAULT '0', + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `societe` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` text COLLATE utf8_unicode_ci, + `zip` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `country` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) NOT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_mobile` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `public` smallint(6) NOT NULL DEFAULT '1', + `fk_projet` int(11) DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_don` +-- + +LOCK TABLES `llx_don` WRITE; +/*!40000 ALTER TABLE `llx_don` DISABLE KEYS */; +INSERT INTO `llx_don` VALUES (1,NULL,1,'2010-07-08 23:57:17',1,'2010-07-09 01:55:33','2010-07-09 12:00:00',10.00000000,1,0,'Donator','','Guest company','','','','France',0,'',NULL,NULL,1,1,1,1,'',NULL,'html_cerfafr',NULL,NULL,NULL),(2,NULL,1,'2017-02-06 04:05:29',0,'2017-02-06 08:05:29','2017-02-06 12:00:00',100.00000000,NULL,0,'','','','','','',NULL,0,'','','',1,NULL,12,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,NULL,1,'2017-09-06 16:18:19',2,'2017-09-06 20:05:17','2017-09-06 12:00:00',10.00000000,NULL,0,'','','','','','',NULL,0,'','','',1,NULL,12,12,NULL,NULL,'html_cerfafr',NULL,NULL,NULL),(4,NULL,1,'2017-09-06 16:07:07',1,'2017-09-06 20:06:59','2017-09-06 12:00:00',10.00000000,NULL,0,'','','','','','',NULL,117,'','','',1,NULL,12,12,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_don` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_don_extrafields` +-- + +DROP TABLE IF EXISTS `llx_don_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_don_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_don_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_don_extrafields` +-- + +LOCK TABLES `llx_don_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_don_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_don_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ecm_directories` +-- + +DROP TABLE IF EXISTS `llx_ecm_directories`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ecm_directories` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_parent` int(11) DEFAULT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `cachenbofdoc` int(11) NOT NULL DEFAULT '0', + `fullpath` varchar(750) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_c` datetime DEFAULT NULL, + `date_m` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_c` int(11) DEFAULT NULL, + `fk_user_m` int(11) DEFAULT NULL, + `acl` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ecm_directories` (`label`,`fk_parent`,`entity`), + KEY `idx_ecm_directories_fk_user_c` (`fk_user_c`), + KEY `idx_ecm_directories_fk_user_m` (`fk_user_m`), + CONSTRAINT `fk_ecm_directories_fk_user_c` FOREIGN KEY (`fk_user_c`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_ecm_directories_fk_user_m` FOREIGN KEY (`fk_user_m`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ecm_directories` +-- + +LOCK TABLES `llx_ecm_directories` WRITE; +/*!40000 ALTER TABLE `llx_ecm_directories` DISABLE KEYS */; +INSERT INTO `llx_ecm_directories` VALUES (8,'Administrative documents',1,0,'Directory to store administrative contacts',0,NULL,NULL,'2016-07-30 16:54:41','2016-07-30 12:54:41',12,NULL,NULL),(9,'Images',1,0,'',34,NULL,NULL,'2016-07-30 16:55:33','2016-07-30 13:24:41',12,NULL,NULL); +/*!40000 ALTER TABLE `llx_ecm_directories` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ecm_files` +-- + +DROP TABLE IF EXISTS `llx_ecm_files`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ecm_files` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `share` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `filename` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `filepath` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fullpath_orig` varchar(750) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `keywords` text COLLATE utf8_unicode_ci, + `cover` text COLLATE utf8_unicode_ci, + `gen_or_uploaded` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_c` datetime DEFAULT NULL, + `date_m` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_c` int(11) DEFAULT NULL, + `fk_user_m` int(11) DEFAULT NULL, + `acl` text COLLATE utf8_unicode_ci, + `position` int(11) DEFAULT NULL, + `keyword` varchar(750) COLLATE utf8_unicode_ci DEFAULT NULL, + `src_object_type` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `src_object_id` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ecm_files` (`filepath`,`filename`,`entity`), + KEY `idx_ecm_files_label` (`label`) +) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ecm_files` +-- + +LOCK TABLES `llx_ecm_files` WRITE; +/*!40000 ALTER TABLE `llx_ecm_files` DISABLE KEYS */; +INSERT INTO `llx_ecm_files` VALUES (1,NULL,'6ff09d1c53ef83fe622b02a320bcfa52',NULL,1,'FA1107-0019.pdf','facture/FA1107-0019','/home/ldestailleur/git/dolibarr_6.0/documents/facture/FA1107-0019/FA1107-0019.pdf','',NULL,NULL,'unknown',NULL,'2017-08-30 15:53:34','2017-08-30 11:53:34',18,NULL,NULL,1,NULL,NULL,NULL),(2,NULL,'a6c8a0f04af73e4dfc059006d7a5f55a',NULL,1,'FA1107-0019_invoice.odt','facture/FA1107-0019','/home/ldestailleur/git/dolibarr_6.0/documents/facture/FA1107-0019/FA1107-0019_invoice.odt','',NULL,NULL,'unknown',NULL,'2017-08-30 15:53:34','2017-08-30 11:53:34',18,NULL,NULL,2,NULL,NULL,NULL),(3,NULL,'24e96a4a0da25d1ac5049ea46d031d3a',NULL,1,'FA1107-0019-depotFacture-1418-INH-N000289-20170720.pdf','facture/FA1107-0019','depotFacture-1418-INH-N000289-20170720.pdf','',NULL,NULL,'uploaded',NULL,'2017-08-30 15:54:45','2017-08-30 11:54:45',18,NULL,NULL,3,NULL,NULL,NULL),(4,NULL,'91a42a4e2c77e826562c83fa84f6fccd',NULL,1,'CO7001-0027-acces-coopinfo.txt','commande/CO7001-0027','acces-coopinfo.txt','',NULL,NULL,'uploaded',NULL,'2017-08-30 16:02:33','2017-08-30 12:02:33',18,NULL,NULL,1,NULL,NULL,NULL),(5,'5fe17a68b2f6a73e6326f77fa7b6586c','a60cad66c6da948eb08d5b939f3516ff',NULL,1,'FA1601-0024.pdf','facture/FA1601-0024','','',NULL,NULL,'generated',NULL,'2017-08-30 16:23:01','2018-03-16 09:59:31',12,12,NULL,1,NULL,NULL,NULL),(6,NULL,'24e96a4a0da25d1ac5049ea46d031d3a',NULL,1,'FA1601-0024-depotFacture-1418-INH-N000289-20170720.pdf','facture/FA1601-0024','depotFacture-1418-INH-N000289-20170720.pdf','',NULL,NULL,'uploaded',NULL,'2017-08-30 16:23:14','2017-08-30 12:23:14',12,NULL,NULL,2,NULL,NULL,NULL),(7,NULL,'d41d8cd98f00b204e9800998ecf8427e',NULL,1,'Exxxqqqw','produit/COMP-XP4523','/home/ldestailleur/git/dolibarr_6.0/documents/produit/COMP-XP4523/Exxxqqqw','',NULL,NULL,'unknown',NULL,'2017-08-30 19:03:15','2017-08-30 15:04:02',12,NULL,NULL,2,NULL,NULL,NULL),(8,NULL,'8245ba8e8e345655f06cd904d7d54f73',NULL,1,'compxp4523product.jpg','produit/COMP-XP4523','/home/ldestailleur/git/dolibarr_6.0/documents/produit/COMP-XP4523/compxp4523product.jpg','',NULL,NULL,'unknown',NULL,'2017-08-30 19:03:15','2017-08-30 15:04:02',12,NULL,NULL,1,NULL,NULL,NULL),(9,NULL,'d32552ee874c82b9f0ccab4f309b4b61',NULL,1,'dolihelp.ico','produit/COMP-XP4523','/home/ldestailleur/git/dolibarr_6.0/documents/produit/COMP-XP4523/dolihelp.ico','',NULL,NULL,'unknown',NULL,'2017-08-30 19:03:15','2017-08-30 15:03:15',12,NULL,NULL,3,NULL,NULL,NULL),(10,'afef987559622d6334fdc4a9a134c435','ccd46bbf3ab6c78588a0ba775106258f',NULL,1,'rolluproduct.jpg','produit/ROLLUPABC','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/ROLLUPABC/rolluproduct.jpg','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(11,'a8bbc6c6daea9a4dd58d6fb37a77a030','2f1f2ea4b1b4eb9f25ba440c7870ffcd',NULL,1,'dolicloud_logo.png','produit/DOLICLOUD','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/DOLICLOUD/dolicloud_logo.png','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(12,'bd0951e23023b22ad1cd21fe33ee46bf','03f0be1249e56fd0b3dd02d5545e3675',NULL,1,'applepieproduct.jpg','produit/CAKECONTRIB','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/CAKECONTRIB/applepieproduct.jpg','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(13,'e9e029e2d2bbd014162c0b385ab8739a','b7446fb7b54a3085ff7167e2c5b370fd',NULL,1,'pearpieproduct.jpg','produit/PEARPIE','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/PEARPIE/pearpieproduct.jpg','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(14,'14eea962fb99dc6dd8ca4474c519f837','973b1603b5eb01aac97eb2d911f4c341',NULL,1,'pinkdressproduct.jpg','produit/PINKDRESS','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/PINKDRESS/pinkdressproduct.jpg','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(15,'83616b4ec45e835526144ce114979f49','2adadd910fe97a07bd5be0f1f27f2d28',NULL,1,'dolidroid_114x114.png','produit/DOLIDROID','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/DOLIDROID/dolidroid_114x114.png','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL),(16,'6b11123918f12440cac5fa3c3190d2d6','8a0bc12d0e579a5a56e299a1a128ba80',NULL,1,'dolidroid_512x512_en.png','produit/DOLIDROID','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/DOLIDROID/dolidroid_512x512_en.png','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,2,NULL,NULL,NULL),(17,'5c0ceed2d113af84868710c940e1a921','246708ef260d601dcfa367a6b3258ecf',NULL,1,'dolidroid_screenshot_home_720x1280.png','produit/DOLIDROID','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/DOLIDROID/dolidroid_screenshot_home_720x1280.png','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,3,NULL,NULL,NULL),(18,'1972b3da7908b3e08247e6e23bb7bdc3','03f0be1249e56fd0b3dd02d5545e3675',NULL,1,'applepieproduct.jpg','produit/APPLEPIE','/home/dolibarr/demo.dolibarr.org/dolibarr_documents/produit/APPLEPIE/applepieproduct.jpg','',NULL,NULL,'unknown',NULL,'2018-01-19 11:23:16','2018-01-19 11:23:16',12,NULL,NULL,1,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_ecm_files` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ecommerce_category` +-- + +DROP TABLE IF EXISTS `llx_ecommerce_category`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ecommerce_category` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` tinyint(4) NOT NULL DEFAULT '1', + `description` text COLLATE utf8_unicode_ci, + `fk_category` int(11) NOT NULL, + `fk_site` int(11) NOT NULL, + `remote_id` int(11) NOT NULL, + `remote_parent_id` int(11) DEFAULT NULL, + `last_update` datetime DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ecommerce_category_fk_site_fk_category` (`fk_site`,`fk_category`), + KEY `idx_ecommerce_category_fk_category` (`fk_category`), + KEY `idx_ecommerce_category_fk_site` (`fk_site`) +) ENGINE=InnoDB AUTO_INCREMENT=2268 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Table transition remote site - Dolibarr'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ecommerce_category` +-- + +LOCK TABLES `llx_ecommerce_category` WRITE; +/*!40000 ALTER TABLE `llx_ecommerce_category` DISABLE KEYS */; +INSERT INTO `llx_ecommerce_category` VALUES (2260,'Default Category',0,'',35,2,2,1,'2015-09-22 14:46:27'),(2261,'categ1',0,'',36,2,3,2,'2015-09-23 14:53:15'),(2262,'categ1-a',0,'',37,2,6,3,'2016-09-25 15:11:47'),(2263,'categ1-b',0,'',38,2,7,3,'2015-09-23 14:45:50'),(2264,'categ2',0,'',39,2,4,1,'2015-09-23 14:45:54'),(2265,'categxxx',0,'',40,2,8,4,'2015-09-23 16:53:22'),(2266,'root2',0,'',41,2,9,1,'2015-09-23 16:53:31'),(2267,'root2-b',0,'',42,2,10,9,'2015-09-23 16:53:41'); +/*!40000 ALTER TABLE `llx_ecommerce_category` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_element_contact` +-- + +DROP TABLE IF EXISTS `llx_element_contact`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_element_contact` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datecreate` datetime DEFAULT NULL, + `statut` smallint(6) DEFAULT '5', + `element_id` int(11) NOT NULL, + `fk_c_type_contact` int(11) NOT NULL, + `fk_socpeople` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_element_contact_idx1` (`element_id`,`fk_c_type_contact`,`fk_socpeople`), + KEY `fk_element_contact_fk_c_type_contact` (`fk_c_type_contact`), + KEY `idx_element_contact_fk_socpeople` (`fk_socpeople`), + CONSTRAINT `fk_element_contact_fk_c_type_contact` FOREIGN KEY (`fk_c_type_contact`) REFERENCES `llx_c_type_contact` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_element_contact` +-- + +LOCK TABLES `llx_element_contact` WRITE; +/*!40000 ALTER TABLE `llx_element_contact` DISABLE KEYS */; +INSERT INTO `llx_element_contact` VALUES (1,'2010-07-09 00:49:43',4,1,160,1),(2,'2010-07-09 00:49:56',4,2,160,1),(3,'2010-07-09 00:50:19',4,3,160,1),(4,'2010-07-09 00:50:42',4,4,160,1),(5,'2010-07-09 01:52:36',4,1,120,1),(6,'2010-07-09 01:53:25',4,1,10,2),(7,'2010-07-09 01:53:25',4,1,11,2),(8,'2010-07-10 18:13:37',4,2,10,2),(9,'2010-07-10 18:13:37',4,2,11,2),(11,'2010-07-11 16:22:36',4,5,160,1),(12,'2010-07-11 16:23:53',4,2,180,1),(13,'2013-01-23 15:04:27',4,19,200,5),(14,'2013-01-23 16:06:37',4,19,210,2),(15,'2013-01-23 16:12:43',4,19,220,2),(16,'2013-03-06 10:04:57',4,3,10,1),(17,'2013-03-06 10:04:57',4,3,11,1),(18,'2014-12-21 13:52:41',4,3,180,1),(19,'2014-12-21 13:55:39',4,4,180,1),(20,'2014-12-21 14:16:58',4,5,180,1),(21,'2016-07-30 15:29:07',4,6,160,12),(22,'2016-07-30 15:29:48',4,7,160,12),(23,'2016-07-30 15:30:25',4,8,160,12),(24,'2016-07-30 15:33:27',4,6,180,12),(25,'2016-07-30 15:33:39',4,7,180,12),(26,'2016-07-30 15:33:54',4,8,180,12),(27,'2016-07-30 15:34:09',4,9,180,12),(28,'2016-07-31 18:27:20',4,9,160,12); +/*!40000 ALTER TABLE `llx_element_contact` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_element_element` +-- + +DROP TABLE IF EXISTS `llx_element_element`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_element_element` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_source` int(11) NOT NULL, + `sourcetype` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_target` int(11) NOT NULL, + `targettype` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_element_element_idx1` (`fk_source`,`sourcetype`,`fk_target`,`targettype`), + KEY `idx_element_element_fk_target` (`fk_target`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_element_element` +-- + +LOCK TABLES `llx_element_element` WRITE; +/*!40000 ALTER TABLE `llx_element_element` DISABLE KEYS */; +INSERT INTO `llx_element_element` VALUES (4,1,'order_supplier',20,'invoice_supplier'),(12,1,'shipping',217,'facture'),(5,2,'cabinetmed_cabinetmedcons',216,'facture'),(1,2,'contrat',2,'facture'),(2,2,'propal',1,'commande'),(3,5,'commande',1,'shipping'),(13,5,'commande',217,'facture'),(11,25,'propal',92,'commande'),(9,28,'propal',90,'commande'),(10,29,'propal',91,'commande'),(6,75,'commande',2,'shipping'); +/*!40000 ALTER TABLE `llx_element_element` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_element_lock` +-- + +DROP TABLE IF EXISTS `llx_element_lock`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_element_lock` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_element` int(11) NOT NULL, + `elementtype` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `datel` datetime DEFAULT NULL, + `datem` datetime DEFAULT NULL, + `sessionid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_element_lock` +-- + +LOCK TABLES `llx_element_lock` WRITE; +/*!40000 ALTER TABLE `llx_element_lock` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_element_lock` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_element_resources` +-- + +DROP TABLE IF EXISTS `llx_element_resources`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_element_resources` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `element_id` int(11) DEFAULT NULL, + `element_type` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `resource_id` int(11) DEFAULT NULL, + `resource_type` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `busy` int(11) DEFAULT NULL, + `mandatory` int(11) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `duree` double DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_element_resources_idx1` (`resource_id`,`resource_type`,`element_id`,`element_type`), + KEY `idx_element_element_element_id` (`element_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_element_resources` +-- + +LOCK TABLES `llx_element_resources` WRITE; +/*!40000 ALTER TABLE `llx_element_resources` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_element_resources` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_element_tag` +-- + +DROP TABLE IF EXISTS `llx_element_tag`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_element_tag` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `lang` varchar(5) COLLATE utf8_unicode_ci NOT NULL, + `tag` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `fk_element` int(11) NOT NULL, + `element` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_element_tag` (`entity`,`lang`,`tag`,`fk_element`,`element`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_element_tag` +-- + +LOCK TABLES `llx_element_tag` WRITE; +/*!40000 ALTER TABLE `llx_element_tag` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_element_tag` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_eleves` +-- + +DROP TABLE IF EXISTS `llx_eleves`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_eleves` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_eleves_rowid` (`rowid`), + KEY `idx_eleves_ref` (`ref`), + KEY `idx_eleves_entity` (`entity`), + KEY `idx_eleves_status` (`status`), + KEY `idx_eleves_import_key` (`import_key`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_eleves` +-- + +LOCK TABLES `llx_eleves` WRITE; +/*!40000 ALTER TABLE `llx_eleves` DISABLE KEYS */; +INSERT INTO `llx_eleves` VALUES (1,'ggg',1,'hh',10.00000000,NULL,'2017-09-06 00:33:15','2017-09-06 00:33:15',1,NULL,NULL); +/*!40000 ALTER TABLE `llx_eleves` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_eleves_extrafields` +-- + +DROP TABLE IF EXISTS `llx_eleves_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_eleves_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_eleves_extrafields` +-- + +LOCK TABLES `llx_eleves_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_eleves_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_eleves_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_emailcollector_emailcollector` +-- + +DROP TABLE IF EXISTS `llx_emailcollector_emailcollector`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_emailcollector_emailcollector` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(128) NOT NULL, + `label` varchar(255) DEFAULT NULL, + `description` text, + `host` varchar(255) DEFAULT NULL, + `user` varchar(128) DEFAULT NULL, + `password` varchar(128) DEFAULT NULL, + `source_directory` varchar(255) DEFAULT NULL, + `filter` text, + `actiontodo` varchar(255) DEFAULT NULL, + `target_directory` varchar(255) DEFAULT NULL, + `datelastresult` datetime DEFAULT NULL, + `lastresult` varchar(255) DEFAULT NULL, + `note_public` text, + `note_private` text, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + `codelastresult` varchar(16) DEFAULT NULL, + `position` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_emailcollector_rowid` (`rowid`), + KEY `idx_emailcollector_entity` (`entity`), + KEY `idx_emailcollector_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_emailcollector_emailcollector` +-- + +LOCK TABLES `llx_emailcollector_emailcollector` WRITE; +/*!40000 ALTER TABLE `llx_emailcollector_emailcollector` DISABLE KEYS */; +INSERT INTO `llx_emailcollector_emailcollector` VALUES (1,1,'MyEmailCollector1','My email collector 1','aaa','imap.gmail.com','testldr10@gmail.com','testldr10-10','INBOX','','','aftercollect','2018-11-19 15:21:07','1 emails analyzed, 1 emails successfuly processed (for 3 record/actions done) by collector',NULL,NULL,'2018-10-31 18:08:05','2018-10-31 17:08:05',12,12,NULL,1,'OK',0); +/*!40000 ALTER TABLE `llx_emailcollector_emailcollector` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_emailcollector_emailcollectoraction` +-- + +DROP TABLE IF EXISTS `llx_emailcollector_emailcollectoraction`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_emailcollector_emailcollectoraction` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_emailcollector` int(11) NOT NULL, + `type` varchar(128) NOT NULL, + `actionparam` varchar(255) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + `position` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_emailcollector_emailcollectoraction` (`fk_emailcollector`,`type`), + KEY `idx_emailcollector_fk_emailcollector` (`fk_emailcollector`), + CONSTRAINT `fk_emailcollectoraction_fk_emailcollector` FOREIGN KEY (`fk_emailcollector`) REFERENCES `llx_emailcollector_emailcollector` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_emailcollector_emailcollectoraction` +-- + +LOCK TABLES `llx_emailcollector_emailcollectoraction` WRITE; +/*!40000 ALTER TABLE `llx_emailcollector_emailcollectoraction` DISABLE KEYS */; +INSERT INTO `llx_emailcollector_emailcollectoraction` VALUES (6,1,'recordevent',NULL,'2018-11-07 18:01:53','2018-11-19 19:54:46',12,NULL,NULL,1,2),(7,1,'project',NULL,'2018-11-15 11:11:13','2018-11-19 19:54:37',12,NULL,NULL,1,3),(14,1,'loadandcreatethirdparty','REGEX:body:Nom:\\s([^\\s]*)','2018-11-19 13:03:58','2018-11-19 19:54:46',12,NULL,NULL,1,1); +/*!40000 ALTER TABLE `llx_emailcollector_emailcollectoraction` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_emailcollector_emailcollectorfilter` +-- + +DROP TABLE IF EXISTS `llx_emailcollector_emailcollectorfilter`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_emailcollector_emailcollectorfilter` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_emailcollector` int(11) NOT NULL, + `type` varchar(128) NOT NULL, + `rulevalue` varchar(255) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_emailcollector_emailcollectorfilter` (`fk_emailcollector`,`type`,`rulevalue`), + KEY `idx_emailcollector_fk_emailcollector` (`fk_emailcollector`), + CONSTRAINT `fk_emailcollector_fk_emailcollector` FOREIGN KEY (`fk_emailcollector`) REFERENCES `llx_emailcollector_emailcollector` (`rowid`), + CONSTRAINT `fk_emailcollectorfilter_fk_emailcollector` FOREIGN KEY (`fk_emailcollector`) REFERENCES `llx_emailcollector_emailcollector` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_emailcollector_emailcollectorfilter` +-- + +LOCK TABLES `llx_emailcollector_emailcollectorfilter` WRITE; +/*!40000 ALTER TABLE `llx_emailcollector_emailcollectorfilter` DISABLE KEYS */; +INSERT INTO `llx_emailcollector_emailcollectorfilter` VALUES (18,1,'withouttrackingid',NULL,'2018-11-16 15:10:27','2018-11-16 14:10:27',12,NULL,NULL,1),(19,1,'from','support@dolicloud.com','2018-11-16 16:03:10','2018-11-16 15:03:10',12,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_emailcollector_emailcollectorfilter` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_emailsenderprofile` +-- + +DROP TABLE IF EXISTS `llx_emailsenderprofile`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_emailsenderprofile` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_emailsenderprofile_rowid` (`rowid`), + KEY `idx_emailsenderprofile_ref` (`ref`), + KEY `idx_emailsenderprofile_entity` (`entity`), + KEY `idx_emailsenderprofile_import_key` (`import_key`), + KEY `idx_emailsenderprofile_status` (`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_emailsenderprofile` +-- + +LOCK TABLES `llx_emailsenderprofile` WRITE; +/*!40000 ALTER TABLE `llx_emailsenderprofile` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_emailsenderprofile` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_emailsenderprofile_extrafields` +-- + +DROP TABLE IF EXISTS `llx_emailsenderprofile_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_emailsenderprofile_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_emailsenderprofile_extrafields` +-- + +LOCK TABLES `llx_emailsenderprofile_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_emailsenderprofile_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_emailsenderprofile_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_entity_extrafields` +-- + +DROP TABLE IF EXISTS `llx_entity_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_entity_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_entity_extrafields` +-- + +LOCK TABLES `llx_entity_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_entity_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_entity_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_entity_thirdparty` +-- + +DROP TABLE IF EXISTS `llx_entity_thirdparty`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_entity_thirdparty` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_entity` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_entity_thirdparty_fk_soc` (`entity`,`fk_entity`,`fk_soc`), + KEY `fk_entity_thirdparty_fk_entity` (`fk_entity`), + KEY `fk_entity_thirdparty_fk_soc` (`fk_soc`), + CONSTRAINT `fk_entity_thirdparty_fk_entity` FOREIGN KEY (`fk_entity`) REFERENCES `llx_entity` (`rowid`), + CONSTRAINT `fk_entity_thirdparty_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_entity_thirdparty` +-- + +LOCK TABLES `llx_entity_thirdparty` WRITE; +/*!40000 ALTER TABLE `llx_entity_thirdparty` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_entity_thirdparty` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_entrepot` +-- + +DROP TABLE IF EXISTS `llx_entrepot`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_entrepot` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `description` text COLLATE utf8_unicode_ci, + `lieu` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_departement` int(11) DEFAULT NULL, + `fk_pays` int(11) DEFAULT '0', + `statut` tinyint(4) DEFAULT '1', + `fk_user_author` int(11) DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_parent` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_entrepot_label` (`ref`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_entrepot` +-- + +LOCK TABLES `llx_entrepot` WRITE; +/*!40000 ALTER TABLE `llx_entrepot` DISABLE KEYS */; +INSERT INTO `llx_entrepot` VALUES (1,'2010-07-09 00:31:22','2010-07-08 22:40:36','WAREHOUSEHOUSTON',1,'Warehouse located at Houston','Warehouse houston','','','Houston',NULL,11,1,1,NULL,NULL,0),(2,'2010-07-09 00:41:03','2010-07-08 22:41:03','WAREHOUSEPARIS',1,'
','Warehouse Paris','','75000','Paris',NULL,1,1,1,NULL,NULL,0),(3,'2010-07-11 16:18:59','2016-07-30 13:52:08','Stock personnel Dupont',1,'Cet entrepôt représente le stock personnel de Alain Dupont','','','','',NULL,2,1,1,NULL,NULL,0),(9,'2015-10-03 11:47:41','2015-10-03 09:47:41','Personal stock Marie Curie',1,'This warehouse represents personal stock of Marie Curie','','','','',NULL,1,1,1,NULL,NULL,0),(10,'2015-10-05 09:07:52','2016-07-30 13:52:24','Personal stock Alex Theceo',1,'This warehouse represents personal stock of Alex Theceo','','','','',NULL,3,1,1,NULL,NULL,0),(12,'2015-10-05 21:29:35','2015-10-05 19:29:35','Personal stock Charly Commery',1,'This warehouse represents personal stock of Charly Commery','','','','',NULL,1,1,11,NULL,NULL,0),(13,'2015-10-05 21:33:33','2016-07-30 13:51:38','Personal stock Sam Scientol',1,'This warehouse represents personal stock of Sam Scientol','','','7500','Paris',NULL,1,0,11,NULL,NULL,0),(18,'2016-01-22 17:27:02','2016-01-22 16:27:02','Personal stock Laurent Destailleur',1,'This warehouse represents personal stock of Laurent Destailleur','','','','',NULL,1,1,12,NULL,NULL,0),(19,'2016-07-30 16:50:23','2016-07-30 12:50:23','Personal stock Eldy',1,'This warehouse represents personal stock of Eldy','','','','',NULL,14,1,12,NULL,NULL,0),(20,'2017-02-02 03:55:45','2017-02-01 23:55:45','Personal stock Alex Boston',1,'This warehouse represents personal stock of Alex Boston','','','','',NULL,14,1,12,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_entrepot` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_equipement_factory` +-- + +DROP TABLE IF EXISTS `llx_equipement_factory`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_equipement_factory` ( + `fk_equipement` int(11) NOT NULL DEFAULT '0', + `fk_factory` int(11) NOT NULL DEFAULT '0', + UNIQUE KEY `uk_factory_equipement` (`fk_equipement`,`fk_factory`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_equipement_factory` +-- + +LOCK TABLES `llx_equipement_factory` WRITE; +/*!40000 ALTER TABLE `llx_equipement_factory` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_equipement_factory` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_establishment` +-- + +DROP TABLE IF EXISTS `llx_establishment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_establishment` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `name` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_state` int(11) DEFAULT '0', + `fk_country` int(11) DEFAULT '0', + `profid1` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `profid2` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `profid3` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) NOT NULL, + `fk_user_mod` int(11) DEFAULT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `status` tinyint(4) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_establishment` +-- + +LOCK TABLES `llx_establishment` WRITE; +/*!40000 ALTER TABLE `llx_establishment` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_establishment` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_event_element` +-- + +DROP TABLE IF EXISTS `llx_event_element`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_event_element` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_source` int(11) NOT NULL, + `fk_target` int(11) NOT NULL, + `targettype` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_event_element` +-- + +LOCK TABLES `llx_event_element` WRITE; +/*!40000 ALTER TABLE `llx_event_element` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_event_element` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_events` +-- + +DROP TABLE IF EXISTS `llx_events`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_events` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `type` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `dateevent` datetime DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `description` varchar(250) COLLATE utf8_unicode_ci NOT NULL, + `ip` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `user_agent` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_object` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_events_dateevent` (`dateevent`) +) ENGINE=InnoDB AUTO_INCREMENT=879 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_events` +-- + +LOCK TABLES `llx_events` WRITE; +/*!40000 ALTER TABLE `llx_events` DISABLE KEYS */; +INSERT INTO `llx_events` VALUES (30,'2011-07-18 18:23:06','USER_LOGOUT',1,'2011-07-18 20:23:06',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(31,'2011-07-18 18:23:12','USER_LOGIN_FAILED',1,'2011-07-18 20:23:12',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(32,'2011-07-18 18:23:17','USER_LOGIN',1,'2011-07-18 20:23:17',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(33,'2011-07-18 20:10:51','USER_LOGIN_FAILED',1,'2011-07-18 22:10:51',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(34,'2011-07-18 20:10:55','USER_LOGIN',1,'2011-07-18 22:10:55',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(35,'2011-07-18 21:18:57','USER_LOGIN',1,'2011-07-18 23:18:57',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(36,'2011-07-20 10:34:10','USER_LOGIN',1,'2011-07-20 12:34:10',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(37,'2011-07-20 12:36:44','USER_LOGIN',1,'2011-07-20 14:36:44',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(38,'2011-07-20 13:20:51','USER_LOGIN_FAILED',1,'2011-07-20 15:20:51',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(39,'2011-07-20 13:20:54','USER_LOGIN',1,'2011-07-20 15:20:54',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(40,'2011-07-20 15:03:46','USER_LOGIN_FAILED',1,'2011-07-20 17:03:46',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(41,'2011-07-20 15:03:55','USER_LOGIN',1,'2011-07-20 17:03:55',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(42,'2011-07-20 18:05:05','USER_LOGIN_FAILED',1,'2011-07-20 20:05:05',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(43,'2011-07-20 18:05:08','USER_LOGIN',1,'2011-07-20 20:05:08',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(44,'2011-07-20 21:08:53','USER_LOGIN_FAILED',1,'2011-07-20 23:08:53',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(45,'2011-07-20 21:08:56','USER_LOGIN',1,'2011-07-20 23:08:56',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(46,'2011-07-21 01:26:12','USER_LOGIN',1,'2011-07-21 03:26:12',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(47,'2011-07-21 22:35:45','USER_LOGIN_FAILED',1,'2011-07-22 00:35:45',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(48,'2011-07-21 22:35:49','USER_LOGIN',1,'2011-07-22 00:35:49',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(49,'2011-07-26 23:09:47','USER_LOGIN_FAILED',1,'2011-07-27 01:09:47',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(50,'2011-07-26 23:09:50','USER_LOGIN',1,'2011-07-27 01:09:50',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(51,'2011-07-27 17:02:27','USER_LOGIN_FAILED',1,'2011-07-27 19:02:27',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(52,'2011-07-27 17:02:32','USER_LOGIN',1,'2011-07-27 19:02:32',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(53,'2011-07-27 23:33:37','USER_LOGIN_FAILED',1,'2011-07-28 01:33:37',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(54,'2011-07-27 23:33:41','USER_LOGIN',1,'2011-07-28 01:33:41',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(55,'2011-07-28 18:20:36','USER_LOGIN_FAILED',1,'2011-07-28 20:20:36',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(56,'2011-07-28 18:20:38','USER_LOGIN',1,'2011-07-28 20:20:38',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(57,'2011-07-28 20:13:30','USER_LOGIN_FAILED',1,'2011-07-28 22:13:30',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(58,'2011-07-28 20:13:34','USER_LOGIN',1,'2011-07-28 22:13:34',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(59,'2011-07-28 20:22:51','USER_LOGIN',1,'2011-07-28 22:22:51',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(60,'2011-07-28 23:05:06','USER_LOGIN',1,'2011-07-29 01:05:06',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(61,'2011-07-29 20:15:50','USER_LOGIN_FAILED',1,'2011-07-29 22:15:50',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(62,'2011-07-29 20:15:53','USER_LOGIN',1,'2011-07-29 22:15:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(68,'2011-07-29 20:51:01','USER_LOGOUT',1,'2011-07-29 22:51:01',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(69,'2011-07-29 20:51:05','USER_LOGIN',1,'2011-07-29 22:51:05',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(70,'2011-07-30 08:46:20','USER_LOGIN_FAILED',1,'2011-07-30 10:46:20',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(71,'2011-07-30 08:46:38','USER_LOGIN_FAILED',1,'2011-07-30 10:46:38',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(72,'2011-07-30 08:46:42','USER_LOGIN',1,'2011-07-30 10:46:42',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(73,'2011-07-30 10:05:12','USER_LOGIN_FAILED',1,'2011-07-30 12:05:12',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(74,'2011-07-30 10:05:15','USER_LOGIN',1,'2011-07-30 12:05:15',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(75,'2011-07-30 12:15:46','USER_LOGIN',1,'2011-07-30 14:15:46',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(76,'2011-07-31 22:19:30','USER_LOGIN',1,'2011-08-01 00:19:30',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(77,'2011-07-31 23:32:52','USER_LOGIN',1,'2011-08-01 01:32:52',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(78,'2011-08-01 01:24:50','USER_LOGIN_FAILED',1,'2011-08-01 03:24:50',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(79,'2011-08-01 01:24:54','USER_LOGIN',1,'2011-08-01 03:24:54',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(80,'2011-08-01 19:31:36','USER_LOGIN_FAILED',1,'2011-08-01 21:31:35',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(81,'2011-08-01 19:31:39','USER_LOGIN',1,'2011-08-01 21:31:39',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(82,'2011-08-01 20:01:36','USER_LOGIN',1,'2011-08-01 22:01:36',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(83,'2011-08-01 20:52:54','USER_LOGIN_FAILED',1,'2011-08-01 22:52:54',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(84,'2011-08-01 20:52:58','USER_LOGIN',1,'2011-08-01 22:52:58',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(85,'2011-08-01 21:17:28','USER_LOGIN_FAILED',1,'2011-08-01 23:17:28',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(86,'2011-08-01 21:17:31','USER_LOGIN',1,'2011-08-01 23:17:31',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(87,'2011-08-04 11:55:17','USER_LOGIN',1,'2011-08-04 13:55:17',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(88,'2011-08-04 20:19:03','USER_LOGIN_FAILED',1,'2011-08-04 22:19:03',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(89,'2011-08-04 20:19:07','USER_LOGIN',1,'2011-08-04 22:19:07',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(90,'2011-08-05 17:51:42','USER_LOGIN_FAILED',1,'2011-08-05 19:51:42',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(91,'2011-08-05 17:51:47','USER_LOGIN',1,'2011-08-05 19:51:47',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(92,'2011-08-05 17:56:03','USER_LOGIN',1,'2011-08-05 19:56:03',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(93,'2011-08-05 17:59:10','USER_LOGIN',1,'2011-08-05 19:59:10',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.100 Safari/534.30',NULL),(94,'2011-08-05 18:01:58','USER_LOGIN',1,'2011-08-05 20:01:58',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.100 Safari/534.30',NULL),(95,'2011-08-05 19:59:56','USER_LOGIN',1,'2011-08-05 21:59:56',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(96,'2011-08-06 18:33:22','USER_LOGIN',1,'2011-08-06 20:33:22',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(97,'2011-08-07 00:56:59','USER_LOGIN',1,'2011-08-07 02:56:59',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(98,'2011-08-07 22:49:14','USER_LOGIN',1,'2011-08-08 00:49:14',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(99,'2011-08-07 23:05:18','USER_LOGOUT',1,'2011-08-08 01:05:18',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(105,'2011-08-08 00:41:09','USER_LOGIN',1,'2011-08-08 02:41:09',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(106,'2011-08-08 11:58:55','USER_LOGIN',1,'2011-08-08 13:58:55',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(107,'2011-08-08 14:35:48','USER_LOGIN',1,'2011-08-08 16:35:48',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(108,'2011-08-08 14:36:31','USER_LOGOUT',1,'2011-08-08 16:36:31',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(109,'2011-08-08 14:38:28','USER_LOGIN',1,'2011-08-08 16:38:28',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(110,'2011-08-08 14:39:02','USER_LOGOUT',1,'2011-08-08 16:39:02',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(111,'2011-08-08 14:39:10','USER_LOGIN',1,'2011-08-08 16:39:10',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(112,'2011-08-08 14:39:28','USER_LOGOUT',1,'2011-08-08 16:39:28',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(113,'2011-08-08 14:39:37','USER_LOGIN',1,'2011-08-08 16:39:37',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(114,'2011-08-08 14:50:02','USER_LOGOUT',1,'2011-08-08 16:50:02',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(115,'2011-08-08 14:51:45','USER_LOGIN_FAILED',1,'2011-08-08 16:51:45',NULL,'Identifiants login ou mot de passe incorrects - login=','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(116,'2011-08-08 14:51:52','USER_LOGIN',1,'2011-08-08 16:51:52',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(117,'2011-08-08 15:09:54','USER_LOGOUT',1,'2011-08-08 17:09:54',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(118,'2011-08-08 15:10:19','USER_LOGIN_FAILED',1,'2011-08-08 17:10:19',NULL,'Identifiants login ou mot de passe incorrects - login=','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(119,'2011-08-08 15:10:28','USER_LOGIN',1,'2011-08-08 17:10:28',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(121,'2011-08-08 15:14:58','USER_LOGOUT',1,'2011-08-08 17:14:58',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(122,'2011-08-08 15:15:00','USER_LOGIN_FAILED',1,'2011-08-08 17:15:00',NULL,'Identifiants login ou mot de passe incorrects - login=','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(123,'2011-08-08 15:17:57','USER_LOGIN',1,'2011-08-08 17:17:57',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(124,'2011-08-08 15:35:56','USER_LOGOUT',1,'2011-08-08 17:35:56',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(125,'2011-08-08 15:36:05','USER_LOGIN',1,'2011-08-08 17:36:05',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(126,'2011-08-08 17:32:42','USER_LOGIN',1,'2011-08-08 19:32:42',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0',NULL),(127,'2012-12-08 13:49:37','USER_LOGOUT',1,'2012-12-08 14:49:37',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(128,'2012-12-08 13:49:42','USER_LOGIN',1,'2012-12-08 14:49:42',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(129,'2012-12-08 13:50:12','USER_LOGOUT',1,'2012-12-08 14:50:12',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(130,'2012-12-08 13:50:14','USER_LOGIN',1,'2012-12-08 14:50:14',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(131,'2012-12-08 13:50:17','USER_LOGOUT',1,'2012-12-08 14:50:17',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(132,'2012-12-08 13:52:47','USER_LOGIN',1,'2012-12-08 14:52:47',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(133,'2012-12-08 13:53:08','USER_MODIFY',1,'2012-12-08 14:53:08',1,'User admin modified','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(134,'2012-12-08 14:08:45','USER_LOGOUT',1,'2012-12-08 15:08:45',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(135,'2012-12-08 14:09:09','USER_LOGIN',1,'2012-12-08 15:09:09',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(136,'2012-12-08 14:11:43','USER_LOGOUT',1,'2012-12-08 15:11:43',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(137,'2012-12-08 14:11:45','USER_LOGIN',1,'2012-12-08 15:11:45',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(138,'2012-12-08 14:22:53','USER_LOGOUT',1,'2012-12-08 15:22:53',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(139,'2012-12-08 14:22:54','USER_LOGIN',1,'2012-12-08 15:22:54',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(140,'2012-12-08 14:23:10','USER_LOGOUT',1,'2012-12-08 15:23:10',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(141,'2012-12-08 14:23:11','USER_LOGIN',1,'2012-12-08 15:23:11',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(142,'2012-12-08 14:23:49','USER_LOGOUT',1,'2012-12-08 15:23:49',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(143,'2012-12-08 14:23:50','USER_LOGIN',1,'2012-12-08 15:23:50',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(144,'2012-12-08 14:28:08','USER_LOGOUT',1,'2012-12-08 15:28:08',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(145,'2012-12-08 14:35:15','USER_LOGIN',1,'2012-12-08 15:35:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(146,'2012-12-08 14:35:18','USER_LOGOUT',1,'2012-12-08 15:35:18',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(147,'2012-12-08 14:36:07','USER_LOGIN',1,'2012-12-08 15:36:07',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(148,'2012-12-08 14:36:09','USER_LOGOUT',1,'2012-12-08 15:36:09',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(149,'2012-12-08 14:36:41','USER_LOGIN',1,'2012-12-08 15:36:41',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(150,'2012-12-08 15:59:13','USER_LOGIN',1,'2012-12-08 16:59:13',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(151,'2012-12-09 11:49:52','USER_LOGIN',1,'2012-12-09 12:49:52',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(152,'2012-12-09 13:46:31','USER_LOGIN',1,'2012-12-09 14:46:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(153,'2012-12-09 19:03:14','USER_LOGIN',1,'2012-12-09 20:03:14',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(154,'2012-12-10 00:16:31','USER_LOGIN',1,'2012-12-10 01:16:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(170,'2012-12-11 22:03:31','USER_LOGIN',1,'2012-12-11 23:03:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(171,'2012-12-12 00:32:39','USER_LOGIN',1,'2012-12-12 01:32:39',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(172,'2012-12-12 10:49:59','USER_LOGIN',1,'2012-12-12 11:49:59',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(175,'2012-12-12 10:57:40','USER_MODIFY',1,'2012-12-12 11:57:40',1,'Modification utilisateur admin','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(176,'2012-12-12 13:29:15','USER_LOGIN',1,'2012-12-12 14:29:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(177,'2012-12-12 13:30:15','USER_LOGIN',1,'2012-12-12 14:30:15',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(178,'2012-12-12 13:40:08','USER_LOGOUT',1,'2012-12-12 14:40:08',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(179,'2012-12-12 13:40:10','USER_LOGIN',1,'2012-12-12 14:40:10',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(180,'2012-12-12 13:40:26','USER_MODIFY',1,'2012-12-12 14:40:26',1,'Modification utilisateur admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(181,'2012-12-12 13:40:34','USER_LOGOUT',1,'2012-12-12 14:40:34',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(182,'2012-12-12 13:42:23','USER_LOGIN',1,'2012-12-12 14:42:23',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(183,'2012-12-12 13:43:02','USER_NEW_PASSWORD',1,'2012-12-12 14:43:02',NULL,'Changement mot de passe de admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(184,'2012-12-12 13:43:25','USER_LOGOUT',1,'2012-12-12 14:43:25',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(185,'2012-12-12 13:43:27','USER_LOGIN_FAILED',1,'2012-12-12 14:43:27',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(186,'2012-12-12 13:43:30','USER_LOGIN',1,'2012-12-12 14:43:30',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(187,'2012-12-12 14:52:11','USER_LOGIN',1,'2012-12-12 15:52:11',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11',NULL),(188,'2012-12-12 17:53:00','USER_LOGIN_FAILED',1,'2012-12-12 18:53:00',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(189,'2012-12-12 17:53:07','USER_LOGIN_FAILED',1,'2012-12-12 18:53:07',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(190,'2012-12-12 17:53:51','USER_NEW_PASSWORD',1,'2012-12-12 18:53:51',NULL,'Changement mot de passe de admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(191,'2012-12-12 17:54:00','USER_LOGIN',1,'2012-12-12 18:54:00',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(192,'2012-12-12 17:54:10','USER_NEW_PASSWORD',1,'2012-12-12 18:54:10',1,'Changement mot de passe de admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(193,'2012-12-12 17:54:10','USER_MODIFY',1,'2012-12-12 18:54:10',1,'Modification utilisateur admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(194,'2012-12-12 18:57:09','USER_LOGIN',1,'2012-12-12 19:57:09',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(195,'2012-12-12 23:04:08','USER_LOGIN',1,'2012-12-13 00:04:08',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(196,'2012-12-17 20:03:14','USER_LOGIN',1,'2012-12-17 21:03:14',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(197,'2012-12-17 21:18:45','USER_LOGIN',1,'2012-12-17 22:18:45',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(198,'2012-12-17 22:30:08','USER_LOGIN',1,'2012-12-17 23:30:08',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(199,'2012-12-18 23:32:03','USER_LOGIN',1,'2012-12-19 00:32:03',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(200,'2012-12-19 09:38:03','USER_LOGIN',1,'2012-12-19 10:38:03',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(201,'2012-12-19 11:23:35','USER_LOGIN',1,'2012-12-19 12:23:35',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(202,'2012-12-19 12:46:22','USER_LOGIN',1,'2012-12-19 13:46:22',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(214,'2012-12-19 19:11:31','USER_LOGIN',1,'2012-12-19 20:11:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(215,'2012-12-21 16:36:57','USER_LOGIN',1,'2012-12-21 17:36:57',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(216,'2012-12-21 16:38:43','USER_NEW_PASSWORD',1,'2012-12-21 17:38:43',1,'Changement mot de passe de adupont','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(217,'2012-12-21 16:38:43','USER_MODIFY',1,'2012-12-21 17:38:43',1,'Modification utilisateur adupont','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(218,'2012-12-21 16:38:51','USER_LOGOUT',1,'2012-12-21 17:38:51',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(219,'2012-12-21 16:38:55','USER_LOGIN',1,'2012-12-21 17:38:55',3,'(UserLogged,adupont)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(220,'2012-12-21 16:48:18','USER_LOGOUT',1,'2012-12-21 17:48:18',3,'(UserLogoff,adupont)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(221,'2012-12-21 16:48:20','USER_LOGIN',1,'2012-12-21 17:48:20',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(222,'2012-12-26 18:28:18','USER_LOGIN',1,'2012-12-26 19:28:18',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(223,'2012-12-26 20:00:24','USER_LOGIN',1,'2012-12-26 21:00:24',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(224,'2012-12-27 01:10:27','USER_LOGIN',1,'2012-12-27 02:10:27',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(225,'2012-12-28 19:12:08','USER_LOGIN',1,'2012-12-28 20:12:08',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(226,'2012-12-28 20:16:58','USER_LOGIN',1,'2012-12-28 21:16:58',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(227,'2012-12-29 14:35:46','USER_LOGIN',1,'2012-12-29 15:35:46',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(228,'2012-12-29 14:37:59','USER_LOGOUT',1,'2012-12-29 15:37:59',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(229,'2012-12-29 14:38:00','USER_LOGIN',1,'2012-12-29 15:38:00',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(230,'2012-12-29 17:16:48','USER_LOGIN',1,'2012-12-29 18:16:48',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(231,'2012-12-31 12:02:59','USER_LOGIN',1,'2012-12-31 13:02:59',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(232,'2013-01-02 20:32:51','USER_LOGIN',1,'2013-01-02 21:32:51',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:17.0) Gecko/20100101 Firefox/17.0',NULL),(233,'2013-01-02 20:58:59','USER_LOGIN',1,'2013-01-02 21:58:59',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(234,'2013-01-03 09:25:07','USER_LOGIN',1,'2013-01-03 10:25:07',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(235,'2013-01-03 19:39:31','USER_LOGIN',1,'2013-01-03 20:39:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(236,'2013-01-04 22:40:19','USER_LOGIN',1,'2013-01-04 23:40:19',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(237,'2013-01-05 12:59:59','USER_LOGIN',1,'2013-01-05 13:59:59',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(238,'2013-01-05 15:28:52','USER_LOGIN',1,'2013-01-05 16:28:52',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(239,'2013-01-05 17:02:08','USER_LOGIN',1,'2013-01-05 18:02:08',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(240,'2013-01-06 12:13:33','USER_LOGIN',1,'2013-01-06 13:13:33',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(241,'2013-01-07 01:21:15','USER_LOGIN',1,'2013-01-07 02:21:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(242,'2013-01-07 01:46:31','USER_LOGOUT',1,'2013-01-07 02:46:31',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(243,'2013-01-07 19:54:50','USER_LOGIN',1,'2013-01-07 20:54:50',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(244,'2013-01-08 21:55:01','USER_LOGIN',1,'2013-01-08 22:55:01',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(245,'2013-01-09 11:13:28','USER_LOGIN',1,'2013-01-09 12:13:28',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(246,'2013-01-10 18:30:46','USER_LOGIN',1,'2013-01-10 19:30:46',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(247,'2013-01-11 18:03:26','USER_LOGIN',1,'2013-01-11 19:03:26',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(248,'2013-01-12 11:15:04','USER_LOGIN',1,'2013-01-12 12:15:04',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(249,'2013-01-12 14:42:44','USER_LOGIN',1,'2013-01-12 15:42:44',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(250,'2013-01-13 12:07:17','USER_LOGIN',1,'2013-01-13 13:07:17',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(251,'2013-01-13 17:37:58','USER_LOGIN',1,'2013-01-13 18:37:58',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(252,'2013-01-13 19:24:21','USER_LOGIN',1,'2013-01-13 20:24:21',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(253,'2013-01-13 19:29:19','USER_LOGOUT',1,'2013-01-13 20:29:19',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(254,'2013-01-13 21:39:39','USER_LOGIN',1,'2013-01-13 22:39:39',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(255,'2013-01-14 00:52:21','USER_LOGIN',1,'2013-01-14 01:52:21',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11',NULL),(256,'2013-01-16 11:34:31','USER_LOGIN',1,'2013-01-16 12:34:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(257,'2013-01-16 15:36:21','USER_LOGIN',1,'2013-01-16 16:36:21',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(258,'2013-01-16 19:17:36','USER_LOGIN',1,'2013-01-16 20:17:36',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(259,'2013-01-16 19:48:08','GROUP_CREATE',1,'2013-01-16 20:48:08',1,'Création groupe ggg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(260,'2013-01-16 21:48:53','USER_LOGIN',1,'2013-01-16 22:48:53',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(261,'2013-01-17 19:55:53','USER_LOGIN',1,'2013-01-17 20:55:53',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(262,'2013-01-18 09:48:01','USER_LOGIN',1,'2013-01-18 10:48:01',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(263,'2013-01-18 13:22:36','USER_LOGIN',1,'2013-01-18 14:22:36',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(264,'2013-01-18 16:10:23','USER_LOGIN',1,'2013-01-18 17:10:22',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(265,'2013-01-18 17:41:40','USER_LOGIN',1,'2013-01-18 18:41:40',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(266,'2013-01-19 14:33:48','USER_LOGIN',1,'2013-01-19 15:33:48',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(267,'2013-01-19 16:47:43','USER_LOGIN',1,'2013-01-19 17:47:43',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(268,'2013-01-19 16:59:43','USER_LOGIN',1,'2013-01-19 17:59:43',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(269,'2013-01-19 17:00:22','USER_LOGIN',1,'2013-01-19 18:00:22',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(270,'2013-01-19 17:04:16','USER_LOGOUT',1,'2013-01-19 18:04:16',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(271,'2013-01-19 17:04:18','USER_LOGIN',1,'2013-01-19 18:04:18',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(272,'2013-01-20 00:34:19','USER_LOGIN',1,'2013-01-20 01:34:19',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(273,'2013-01-21 11:54:17','USER_LOGIN',1,'2013-01-21 12:54:17',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(274,'2013-01-21 13:48:15','USER_LOGIN',1,'2013-01-21 14:48:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(275,'2013-01-21 14:30:22','USER_LOGIN',1,'2013-01-21 15:30:22',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(276,'2013-01-21 15:10:46','USER_LOGIN',1,'2013-01-21 16:10:46',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(277,'2013-01-21 17:27:43','USER_LOGIN',1,'2013-01-21 18:27:43',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(278,'2013-01-21 21:48:15','USER_LOGIN',1,'2013-01-21 22:48:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(279,'2013-01-21 21:50:42','USER_LOGIN',1,'2013-01-21 22:50:42',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17',NULL),(280,'2013-01-23 09:28:26','USER_LOGIN',1,'2013-01-23 10:28:26',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(281,'2013-01-23 13:21:57','USER_LOGIN',1,'2013-01-23 14:21:57',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(282,'2013-01-23 16:52:00','USER_LOGOUT',1,'2013-01-23 17:52:00',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(283,'2013-01-23 16:52:05','USER_LOGIN_FAILED',1,'2013-01-23 17:52:05',NULL,'Bad value for login or password - login=bbb','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(284,'2013-01-23 16:52:09','USER_LOGIN',1,'2013-01-23 17:52:09',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(285,'2013-01-23 16:52:27','USER_CREATE',1,'2013-01-23 17:52:27',1,'Création utilisateur aaa','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(286,'2013-01-23 16:52:27','USER_NEW_PASSWORD',1,'2013-01-23 17:52:27',1,'Changement mot de passe de aaa','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(287,'2013-01-23 16:52:37','USER_CREATE',1,'2013-01-23 17:52:37',1,'Création utilisateur bbb','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(288,'2013-01-23 16:52:37','USER_NEW_PASSWORD',1,'2013-01-23 17:52:37',1,'Changement mot de passe de bbb','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(289,'2013-01-23 16:53:15','USER_LOGOUT',1,'2013-01-23 17:53:15',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(290,'2013-01-23 16:53:20','USER_LOGIN',1,'2013-01-23 17:53:20',4,'(UserLogged,aaa)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(291,'2013-01-23 19:16:58','USER_LOGIN',1,'2013-01-23 20:16:58',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(292,'2013-01-26 10:54:07','USER_LOGIN',1,'2013-01-26 11:54:07',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(293,'2013-01-29 10:15:36','USER_LOGIN',1,'2013-01-29 11:15:36',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(294,'2013-01-30 17:42:50','USER_LOGIN',1,'2013-01-30 18:42:50',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17',NULL),(295,'2013-02-01 08:49:55','USER_LOGIN',1,'2013-02-01 09:49:55',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(296,'2013-02-01 08:51:57','USER_LOGOUT',1,'2013-02-01 09:51:57',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(297,'2013-02-01 08:52:39','USER_LOGIN',1,'2013-02-01 09:52:39',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(298,'2013-02-01 21:03:01','USER_LOGIN',1,'2013-02-01 22:03:01',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(299,'2013-02-10 19:48:39','USER_LOGIN',1,'2013-02-10 20:48:39',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(300,'2013-02-10 20:46:48','USER_LOGIN',1,'2013-02-10 21:46:48',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(301,'2013-02-10 21:39:23','USER_LOGIN',1,'2013-02-10 22:39:23',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(302,'2013-02-11 19:00:13','USER_LOGIN',1,'2013-02-11 20:00:13',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(303,'2013-02-11 19:43:44','USER_LOGIN_FAILED',1,'2013-02-11 20:43:44',NULL,'Unknown column \'u.fk_user\' in \'field list\'','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(304,'2013-02-11 19:44:01','USER_LOGIN',1,'2013-02-11 20:44:01',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(305,'2013-02-12 00:27:35','USER_LOGIN',1,'2013-02-12 01:27:35',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(306,'2013-02-12 00:27:38','USER_LOGOUT',1,'2013-02-12 01:27:38',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(307,'2013-02-12 00:28:07','USER_LOGIN',1,'2013-02-12 01:28:07',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(308,'2013-02-12 00:28:09','USER_LOGOUT',1,'2013-02-12 01:28:09',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(309,'2013-02-12 00:28:26','USER_LOGIN',1,'2013-02-12 01:28:26',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(310,'2013-02-12 00:28:30','USER_LOGOUT',1,'2013-02-12 01:28:30',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(311,'2013-02-12 12:42:15','USER_LOGIN',1,'2013-02-12 13:42:15',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17',NULL),(312,'2013-02-12 13:46:16','USER_LOGIN',1,'2013-02-12 14:46:16',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(313,'2013-02-12 14:54:28','USER_LOGIN',1,'2013-02-12 15:54:28',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(314,'2013-02-12 16:04:46','USER_LOGIN',1,'2013-02-12 17:04:46',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(315,'2013-02-13 14:02:43','USER_LOGIN',1,'2013-02-13 15:02:43',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(316,'2013-02-13 14:48:30','USER_LOGIN',1,'2013-02-13 15:48:30',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(317,'2013-02-13 17:44:53','USER_LOGIN',1,'2013-02-13 18:44:53',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(318,'2013-02-15 08:44:36','USER_LOGIN',1,'2013-02-15 09:44:36',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(319,'2013-02-15 08:53:20','USER_LOGIN',1,'2013-02-15 09:53:20',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(320,'2013-02-16 19:10:28','USER_LOGIN',1,'2013-02-16 20:10:28',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(321,'2013-02-16 19:22:40','USER_CREATE',1,'2013-02-16 20:22:40',1,'Création utilisateur aaab','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(322,'2013-02-16 19:22:40','USER_NEW_PASSWORD',1,'2013-02-16 20:22:40',1,'Changement mot de passe de aaab','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(323,'2013-02-16 19:48:15','USER_CREATE',1,'2013-02-16 20:48:15',1,'Création utilisateur zzz','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(324,'2013-02-16 19:48:15','USER_NEW_PASSWORD',1,'2013-02-16 20:48:15',1,'Changement mot de passe de zzz','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(325,'2013-02-16 19:50:08','USER_CREATE',1,'2013-02-16 20:50:08',1,'Création utilisateur zzzg','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(326,'2013-02-16 19:50:08','USER_NEW_PASSWORD',1,'2013-02-16 20:50:08',1,'Changement mot de passe de zzzg','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(327,'2013-02-16 21:20:03','USER_LOGIN',1,'2013-02-16 22:20:03',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(328,'2013-02-17 14:30:51','USER_LOGIN',1,'2013-02-17 15:30:51',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(329,'2013-02-17 17:21:22','USER_LOGIN',1,'2013-02-17 18:21:22',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(330,'2013-02-17 17:48:43','USER_MODIFY',1,'2013-02-17 18:48:43',1,'Modification utilisateur aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(331,'2013-02-17 17:48:47','USER_MODIFY',1,'2013-02-17 18:48:47',1,'Modification utilisateur aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(332,'2013-02-17 17:48:51','USER_MODIFY',1,'2013-02-17 18:48:51',1,'Modification utilisateur aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(333,'2013-02-17 17:48:56','USER_MODIFY',1,'2013-02-17 18:48:56',1,'Modification utilisateur aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(334,'2013-02-18 22:00:01','USER_LOGIN',1,'2013-02-18 23:00:01',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(335,'2013-02-19 08:19:52','USER_LOGIN',1,'2013-02-19 09:19:52',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(336,'2013-02-19 22:00:52','USER_LOGIN',1,'2013-02-19 23:00:52',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(337,'2013-02-20 09:34:52','USER_LOGIN',1,'2013-02-20 10:34:52',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(338,'2013-02-20 13:12:28','USER_LOGIN',1,'2013-02-20 14:12:28',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(339,'2013-02-20 17:19:44','USER_LOGIN',1,'2013-02-20 18:19:44',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(340,'2013-02-20 19:07:21','USER_MODIFY',1,'2013-02-20 20:07:21',1,'Modification utilisateur adupont','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(341,'2013-02-20 19:47:17','USER_LOGIN',1,'2013-02-20 20:47:17',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(342,'2013-02-20 19:48:01','USER_MODIFY',1,'2013-02-20 20:48:01',1,'Modification utilisateur aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(343,'2013-02-21 08:27:07','USER_LOGIN',1,'2013-02-21 09:27:07',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(344,'2013-02-23 13:34:13','USER_LOGIN',1,'2013-02-23 14:34:13',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.69 Safari/537.17',NULL),(345,'2013-02-24 01:06:41','USER_LOGIN_FAILED',1,'2013-02-24 02:06:41',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(346,'2013-02-24 01:06:45','USER_LOGIN_FAILED',1,'2013-02-24 02:06:45',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(347,'2013-02-24 01:06:55','USER_LOGIN_FAILED',1,'2013-02-24 02:06:55',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(348,'2013-02-24 01:07:03','USER_LOGIN_FAILED',1,'2013-02-24 02:07:03',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(349,'2013-02-24 01:07:21','USER_LOGIN_FAILED',1,'2013-02-24 02:07:21',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(350,'2013-02-24 01:08:12','USER_LOGIN_FAILED',1,'2013-02-24 02:08:12',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(351,'2013-02-24 01:08:42','USER_LOGIN_FAILED',1,'2013-02-24 02:08:42',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(352,'2013-02-24 01:08:50','USER_LOGIN_FAILED',1,'2013-02-24 02:08:50',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(353,'2013-02-24 01:09:08','USER_LOGIN_FAILED',1,'2013-02-24 02:09:08',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(354,'2013-02-24 01:09:42','USER_LOGIN_FAILED',1,'2013-02-24 02:09:42',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(355,'2013-02-24 01:09:50','USER_LOGIN_FAILED',1,'2013-02-24 02:09:50',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(356,'2013-02-24 01:10:05','USER_LOGIN_FAILED',1,'2013-02-24 02:10:05',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(357,'2013-02-24 01:10:22','USER_LOGIN_FAILED',1,'2013-02-24 02:10:22',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(358,'2013-02-24 01:10:30','USER_LOGIN_FAILED',1,'2013-02-24 02:10:30',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(359,'2013-02-24 01:10:56','USER_LOGIN_FAILED',1,'2013-02-24 02:10:56',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(360,'2013-02-24 01:11:26','USER_LOGIN_FAILED',1,'2013-02-24 02:11:26',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(361,'2013-02-24 01:12:06','USER_LOGIN_FAILED',1,'2013-02-24 02:12:06',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(362,'2013-02-24 01:21:14','USER_LOGIN_FAILED',1,'2013-02-24 02:21:14',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(363,'2013-02-24 01:21:25','USER_LOGIN_FAILED',1,'2013-02-24 02:21:25',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(364,'2013-02-24 01:21:54','USER_LOGIN_FAILED',1,'2013-02-24 02:21:54',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(365,'2013-02-24 01:22:14','USER_LOGIN_FAILED',1,'2013-02-24 02:22:14',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(366,'2013-02-24 01:22:37','USER_LOGIN_FAILED',1,'2013-02-24 02:22:37',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(367,'2013-02-24 01:23:01','USER_LOGIN_FAILED',1,'2013-02-24 02:23:01',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(368,'2013-02-24 01:23:39','USER_LOGIN_FAILED',1,'2013-02-24 02:23:39',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(369,'2013-02-24 01:24:04','USER_LOGIN_FAILED',1,'2013-02-24 02:24:04',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(370,'2013-02-24 01:24:39','USER_LOGIN_FAILED',1,'2013-02-24 02:24:39',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(371,'2013-02-24 01:25:01','USER_LOGIN_FAILED',1,'2013-02-24 02:25:01',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(372,'2013-02-24 01:25:12','USER_LOGIN_FAILED',1,'2013-02-24 02:25:12',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(373,'2013-02-24 01:27:30','USER_LOGIN_FAILED',1,'2013-02-24 02:27:30',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(374,'2013-02-24 01:28:00','USER_LOGIN_FAILED',1,'2013-02-24 02:28:00',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(375,'2013-02-24 01:28:35','USER_LOGIN_FAILED',1,'2013-02-24 02:28:35',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(376,'2013-02-24 01:29:03','USER_LOGIN_FAILED',1,'2013-02-24 02:29:03',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(377,'2013-02-24 01:29:55','USER_LOGIN_FAILED',1,'2013-02-24 02:29:55',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(378,'2013-02-24 01:32:40','USER_LOGIN_FAILED',1,'2013-02-24 02:32:40',NULL,'Bad value for login or password - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(379,'2013-02-24 01:39:33','USER_LOGIN_FAILED',1,'2013-02-24 02:39:33',NULL,'Identifiants login ou mot de passe incorrects - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(380,'2013-02-24 01:39:38','USER_LOGIN_FAILED',1,'2013-02-24 02:39:38',NULL,'Identifiants login ou mot de passe incorrects - login=aa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(381,'2013-02-24 01:39:47','USER_LOGIN_FAILED',1,'2013-02-24 02:39:47',NULL,'Identifiants login ou mot de passe incorrects - login=lmkm','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(382,'2013-02-24 01:40:54','USER_LOGIN_FAILED',1,'2013-02-24 02:40:54',NULL,'Identifiants login ou mot de passe incorrects - login=lmkm','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(383,'2013-02-24 01:47:57','USER_LOGIN_FAILED',1,'2013-02-24 02:47:57',NULL,'Identifiants login ou mot de passe incorrects - login=lmkm','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(384,'2013-02-24 01:48:05','USER_LOGIN_FAILED',1,'2013-02-24 02:48:05',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(385,'2013-02-24 01:48:07','USER_LOGIN_FAILED',1,'2013-02-24 02:48:07',NULL,'Unknown column \'u.lastname\' in \'field list\'','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(386,'2013-02-24 01:48:35','USER_LOGIN',1,'2013-02-24 02:48:35',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(387,'2013-02-24 01:56:32','USER_LOGIN',1,'2013-02-24 02:56:32',1,'(UserLogged,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1',NULL),(388,'2013-02-24 02:05:55','USER_LOGOUT',1,'2013-02-24 03:05:55',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(389,'2013-02-24 02:39:52','USER_LOGIN',1,'2013-02-24 03:39:52',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(390,'2013-02-24 02:51:10','USER_LOGOUT',1,'2013-02-24 03:51:10',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(391,'2013-02-24 12:46:41','USER_LOGIN',1,'2013-02-24 13:46:41',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(392,'2013-02-24 12:46:52','USER_LOGOUT',1,'2013-02-24 13:46:52',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(393,'2013-02-24 12:46:56','USER_LOGIN',1,'2013-02-24 13:46:56',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(394,'2013-02-24 12:47:56','USER_LOGOUT',1,'2013-02-24 13:47:56',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(395,'2013-02-24 12:48:00','USER_LOGIN',1,'2013-02-24 13:48:00',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(396,'2013-02-24 12:48:11','USER_LOGOUT',1,'2013-02-24 13:48:11',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(397,'2013-02-24 12:48:32','USER_LOGIN',1,'2013-02-24 13:48:32',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(398,'2013-02-24 12:52:22','USER_LOGOUT',1,'2013-02-24 13:52:22',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(399,'2013-02-24 12:52:27','USER_LOGIN',1,'2013-02-24 13:52:27',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(400,'2013-02-24 12:52:54','USER_LOGOUT',1,'2013-02-24 13:52:54',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(401,'2013-02-24 12:52:59','USER_LOGIN',1,'2013-02-24 13:52:59',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(402,'2013-02-24 12:55:39','USER_LOGOUT',1,'2013-02-24 13:55:39',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(403,'2013-02-24 12:55:59','USER_LOGIN',1,'2013-02-24 13:55:59',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(404,'2013-02-24 12:56:07','USER_LOGOUT',1,'2013-02-24 13:56:07',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(405,'2013-02-24 12:56:23','USER_LOGIN',1,'2013-02-24 13:56:23',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(406,'2013-02-24 12:56:46','USER_LOGOUT',1,'2013-02-24 13:56:46',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(407,'2013-02-24 12:58:30','USER_LOGIN',1,'2013-02-24 13:58:30',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(408,'2013-02-24 12:58:33','USER_LOGOUT',1,'2013-02-24 13:58:33',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(409,'2013-02-24 12:58:51','USER_LOGIN',1,'2013-02-24 13:58:51',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(410,'2013-02-24 12:58:58','USER_LOGOUT',1,'2013-02-24 13:58:58',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(411,'2013-02-24 13:18:53','USER_LOGIN',1,'2013-02-24 14:18:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(412,'2013-02-24 13:19:52','USER_LOGOUT',1,'2013-02-24 14:19:52',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(413,'2013-02-24 15:39:31','USER_LOGIN_FAILED',1,'2013-02-24 16:39:31',NULL,'ErrorBadValueForCode - login=admin','127.0.0.1',NULL,NULL),(414,'2013-02-24 15:42:07','USER_LOGIN',1,'2013-02-24 16:42:07',1,'(UserLogged,admin)','127.0.0.1',NULL,NULL),(415,'2013-02-24 15:42:52','USER_LOGOUT',1,'2013-02-24 16:42:52',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7',NULL),(416,'2013-02-24 16:04:21','USER_LOGIN',1,'2013-02-24 17:04:21',1,'(UserLogged,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1',NULL),(417,'2013-02-24 16:11:28','USER_LOGIN_FAILED',1,'2013-02-24 17:11:28',NULL,'ErrorBadValueForCode - login=admin','127.0.0.1','Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7',NULL),(418,'2013-02-24 16:11:37','USER_LOGIN',1,'2013-02-24 17:11:37',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7',NULL),(419,'2013-02-24 16:36:52','USER_LOGOUT',1,'2013-02-24 17:36:52',1,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1',NULL),(420,'2013-02-24 16:40:37','USER_LOGIN',1,'2013-02-24 17:40:37',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(421,'2013-02-24 16:57:16','USER_LOGIN',1,'2013-02-24 17:57:16',1,'(UserLogged,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 - 2131034114',NULL),(422,'2013-02-24 17:01:30','USER_LOGOUT',1,'2013-02-24 18:01:30',1,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 - 2131034114',NULL),(423,'2013-02-24 17:02:33','USER_LOGIN',1,'2013-02-24 18:02:33',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(424,'2013-02-24 17:14:22','USER_LOGOUT',1,'2013-02-24 18:14:22',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(425,'2013-02-24 17:15:07','USER_LOGIN_FAILED',1,'2013-02-24 18:15:07',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(426,'2013-02-24 17:15:20','USER_LOGIN',1,'2013-02-24 18:15:20',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(427,'2013-02-24 17:20:14','USER_LOGIN',1,'2013-02-24 18:20:14',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(428,'2013-02-24 17:20:51','USER_LOGIN',1,'2013-02-24 18:20:51',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(429,'2013-02-24 17:20:54','USER_LOGOUT',1,'2013-02-24 18:20:54',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(430,'2013-02-24 17:21:19','USER_LOGIN',1,'2013-02-24 18:21:19',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(431,'2013-02-24 17:32:35','USER_LOGIN',1,'2013-02-24 18:32:35',1,'(UserLogged,admin)','192.168.0.254','Mozilla/5.0 (Linux; U; Android 2.2; en-us; sdk Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 - 2131034114',NULL),(432,'2013-02-24 18:28:48','USER_LOGIN',1,'2013-02-24 19:28:48',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(433,'2013-02-24 18:29:27','USER_LOGOUT',1,'2013-02-24 19:29:27',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7',NULL),(434,'2013-02-24 18:29:32','USER_LOGIN',1,'2013-02-24 19:29:32',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7',NULL),(435,'2013-02-24 20:13:13','USER_LOGOUT',1,'2013-02-24 21:13:13',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(436,'2013-02-24 20:13:17','USER_LOGIN',1,'2013-02-24 21:13:17',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(437,'2013-02-25 08:57:16','USER_LOGIN',1,'2013-02-25 09:57:16',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(438,'2013-02-25 08:57:59','USER_LOGOUT',1,'2013-02-25 09:57:59',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(439,'2013-02-25 09:15:02','USER_LOGIN',1,'2013-02-25 10:15:02',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(440,'2013-02-25 09:15:50','USER_LOGOUT',1,'2013-02-25 10:15:50',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(441,'2013-02-25 09:15:57','USER_LOGIN',1,'2013-02-25 10:15:57',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(442,'2013-02-25 09:16:12','USER_LOGOUT',1,'2013-02-25 10:16:12',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(443,'2013-02-25 09:16:19','USER_LOGIN',1,'2013-02-25 10:16:19',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(444,'2013-02-25 09:16:25','USER_LOGOUT',1,'2013-02-25 10:16:25',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(445,'2013-02-25 09:16:39','USER_LOGIN_FAILED',1,'2013-02-25 10:16:39',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(446,'2013-02-25 09:16:42','USER_LOGIN_FAILED',1,'2013-02-25 10:16:42',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(447,'2013-02-25 09:16:54','USER_LOGIN_FAILED',1,'2013-02-25 10:16:54',NULL,'Identificadors d'usuari o contrasenya incorrectes - login=gfdg','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(448,'2013-02-25 09:17:53','USER_LOGIN',1,'2013-02-25 10:17:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(449,'2013-02-25 09:18:37','USER_LOGOUT',1,'2013-02-25 10:18:37',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(450,'2013-02-25 09:18:41','USER_LOGIN',1,'2013-02-25 10:18:41',4,'(UserLogged,aaa)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(451,'2013-02-25 09:18:47','USER_LOGOUT',1,'2013-02-25 10:18:47',4,'(UserLogoff,aaa)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(452,'2013-02-25 10:05:34','USER_LOGIN',1,'2013-02-25 11:05:34',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(453,'2013-02-26 21:51:40','USER_LOGIN',1,'2013-02-26 22:51:40',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(454,'2013-02-26 23:30:06','USER_LOGIN',1,'2013-02-27 00:30:06',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(455,'2013-02-27 14:13:11','USER_LOGIN',1,'2013-02-27 15:13:11',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(456,'2013-02-27 18:12:06','USER_LOGIN_FAILED',1,'2013-02-27 19:12:06',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(457,'2013-02-27 18:12:10','USER_LOGIN',1,'2013-02-27 19:12:10',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(458,'2013-02-27 20:20:08','USER_LOGIN',1,'2013-02-27 21:20:08',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(459,'2013-03-01 22:12:03','USER_LOGIN',1,'2013-03-01 23:12:03',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(460,'2013-03-02 11:45:50','USER_LOGIN',1,'2013-03-02 12:45:50',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(461,'2013-03-02 15:53:51','USER_LOGIN_FAILED',1,'2013-03-02 16:53:51',NULL,'Identifiants login ou mot de passe incorrects - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(462,'2013-03-02 15:53:53','USER_LOGIN',1,'2013-03-02 16:53:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(463,'2013-03-02 18:32:32','USER_LOGIN',1,'2013-03-02 19:32:32',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(464,'2013-03-02 22:59:36','USER_LOGIN',1,'2013-03-02 23:59:36',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(465,'2013-03-03 16:26:26','USER_LOGIN',1,'2013-03-03 17:26:26',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(466,'2013-03-03 22:50:27','USER_LOGIN',1,'2013-03-03 23:50:27',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(467,'2013-03-04 08:29:27','USER_LOGIN',1,'2013-03-04 09:29:27',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(468,'2013-03-04 18:27:28','USER_LOGIN',1,'2013-03-04 19:27:28',1,'(UserLogged,admin)','192.168.0.254','Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; NP06)',NULL),(469,'2013-03-04 19:27:23','USER_LOGIN',1,'2013-03-04 20:27:23',1,'(UserLogged,admin)','192.168.0.254','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)',NULL),(470,'2013-03-04 19:35:14','USER_LOGIN',1,'2013-03-04 20:35:14',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(471,'2013-03-04 19:55:49','USER_LOGIN',1,'2013-03-04 20:55:49',1,'(UserLogged,admin)','192.168.0.254','Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',NULL),(472,'2013-03-04 21:16:13','USER_LOGIN',1,'2013-03-04 22:16:13',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(473,'2013-03-05 10:17:30','USER_LOGIN',1,'2013-03-05 11:17:30',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(474,'2013-03-05 11:02:43','USER_LOGIN',1,'2013-03-05 12:02:43',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(475,'2013-03-05 23:14:39','USER_LOGIN',1,'2013-03-06 00:14:39',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(476,'2013-03-06 08:58:57','USER_LOGIN',1,'2013-03-06 09:58:57',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(477,'2013-03-06 14:29:40','USER_LOGIN',1,'2013-03-06 15:29:40',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(478,'2013-03-06 21:53:02','USER_LOGIN',1,'2013-03-06 22:53:02',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(479,'2013-03-07 21:14:39','USER_LOGIN',1,'2013-03-07 22:14:39',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(480,'2013-03-08 00:06:05','USER_LOGIN',1,'2013-03-08 01:06:05',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(481,'2013-03-08 01:38:13','USER_LOGIN',1,'2013-03-08 02:38:13',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(482,'2013-03-08 08:59:50','USER_LOGIN',1,'2013-03-08 09:59:50',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(483,'2013-03-09 12:08:51','USER_LOGIN',1,'2013-03-09 13:08:51',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(484,'2013-03-09 15:19:53','USER_LOGIN',1,'2013-03-09 16:19:53',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(495,'2013-03-09 18:06:21','USER_LOGIN',1,'2013-03-09 19:06:21',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(496,'2013-03-09 20:01:24','USER_LOGIN',1,'2013-03-09 21:01:24',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(497,'2013-03-09 23:36:45','USER_LOGIN',1,'2013-03-10 00:36:45',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(498,'2013-03-10 14:37:13','USER_LOGIN',1,'2013-03-10 15:37:13',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(499,'2013-03-10 17:54:12','USER_LOGIN',1,'2013-03-10 18:54:12',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(500,'2013-03-11 08:57:09','USER_LOGIN',1,'2013-03-11 09:57:09',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(501,'2013-03-11 22:05:13','USER_LOGIN',1,'2013-03-11 23:05:13',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(502,'2013-03-12 08:34:27','USER_LOGIN',1,'2013-03-12 09:34:27',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(503,'2013-03-13 09:11:02','USER_LOGIN',1,'2013-03-13 10:11:02',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(504,'2013-03-13 10:02:11','USER_LOGIN',1,'2013-03-13 11:02:11',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(505,'2013-03-13 13:20:58','USER_LOGIN',1,'2013-03-13 14:20:58',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(506,'2013-03-13 16:19:28','USER_LOGIN',1,'2013-03-13 17:19:28',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(507,'2013-03-13 18:34:30','USER_LOGIN',1,'2013-03-13 19:34:30',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(508,'2013-03-14 08:25:02','USER_LOGIN',1,'2013-03-14 09:25:02',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(509,'2013-03-14 19:15:22','USER_LOGIN',1,'2013-03-14 20:15:22',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(510,'2013-03-14 21:58:53','USER_LOGIN',1,'2013-03-14 22:58:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(511,'2013-03-14 21:58:59','USER_LOGOUT',1,'2013-03-14 22:58:59',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(512,'2013-03-14 21:59:07','USER_LOGIN',1,'2013-03-14 22:59:07',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(513,'2013-03-14 22:58:22','USER_LOGOUT',1,'2013-03-14 23:58:22',1,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(514,'2013-03-14 23:00:25','USER_LOGIN',1,'2013-03-15 00:00:25',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(515,'2013-03-16 12:14:28','USER_LOGIN',1,'2013-03-16 13:14:28',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(516,'2013-03-16 16:09:01','USER_LOGIN',1,'2013-03-16 17:09:01',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(517,'2013-03-16 16:57:11','USER_LOGIN',1,'2013-03-16 17:57:11',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(518,'2013-03-16 19:31:31','USER_LOGIN',1,'2013-03-16 20:31:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',NULL),(519,'2013-03-17 17:44:39','USER_LOGIN',1,'2013-03-17 18:44:39',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(520,'2013-03-17 20:40:57','USER_LOGIN',1,'2013-03-17 21:40:57',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(521,'2013-03-17 23:14:05','USER_LOGIN',1,'2013-03-18 00:14:05',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(522,'2013-03-17 23:28:47','USER_LOGOUT',1,'2013-03-18 00:28:47',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(523,'2013-03-17 23:28:54','USER_LOGIN',1,'2013-03-18 00:28:54',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(524,'2013-03-18 17:37:30','USER_LOGIN',1,'2013-03-18 18:37:30',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(525,'2013-03-18 18:11:37','USER_LOGIN',1,'2013-03-18 19:11:37',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(526,'2013-03-19 08:35:08','USER_LOGIN',1,'2013-03-19 09:35:08',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(527,'2013-03-19 09:20:23','USER_LOGIN',1,'2013-03-19 10:20:23',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(528,'2013-03-20 13:17:13','USER_LOGIN',1,'2013-03-20 14:17:13',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(529,'2013-03-20 14:44:31','USER_LOGIN',1,'2013-03-20 15:44:31',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(530,'2013-03-20 18:24:25','USER_LOGIN',1,'2013-03-20 19:24:25',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(531,'2013-03-20 19:15:54','USER_LOGIN',1,'2013-03-20 20:15:54',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(532,'2013-03-21 18:40:47','USER_LOGIN',1,'2013-03-21 19:40:47',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(533,'2013-03-21 21:42:24','USER_LOGIN',1,'2013-03-21 22:42:24',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(534,'2013-03-22 08:39:23','USER_LOGIN',1,'2013-03-22 09:39:23',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(535,'2013-03-23 13:04:55','USER_LOGIN',1,'2013-03-23 14:04:55',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(536,'2013-03-23 15:47:43','USER_LOGIN',1,'2013-03-23 16:47:43',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(537,'2013-03-23 22:56:36','USER_LOGIN',1,'2013-03-23 23:56:36',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(538,'2013-03-24 01:22:32','USER_LOGIN',1,'2013-03-24 02:22:32',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(539,'2013-03-24 14:40:42','USER_LOGIN',1,'2013-03-24 15:40:42',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(540,'2013-03-24 15:30:26','USER_LOGOUT',1,'2013-03-24 16:30:26',1,'(UserLogoff,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(541,'2013-03-24 15:30:29','USER_LOGIN',1,'2013-03-24 16:30:29',2,'(UserLogged,demo)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(542,'2013-03-24 15:49:40','USER_LOGOUT',1,'2013-03-24 16:49:40',2,'(UserLogoff,demo)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(543,'2013-03-24 15:49:48','USER_LOGIN',1,'2013-03-24 16:49:48',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(544,'2013-03-24 15:52:35','USER_MODIFY',1,'2013-03-24 16:52:35',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(545,'2013-03-24 15:52:52','USER_MODIFY',1,'2013-03-24 16:52:52',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(546,'2013-03-24 15:53:09','USER_MODIFY',1,'2013-03-24 16:53:09',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(547,'2013-03-24 15:53:23','USER_MODIFY',1,'2013-03-24 16:53:23',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(548,'2013-03-24 16:00:04','USER_MODIFY',1,'2013-03-24 17:00:04',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(549,'2013-03-24 16:01:50','USER_MODIFY',1,'2013-03-24 17:01:50',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(550,'2013-03-24 16:10:14','USER_MODIFY',1,'2013-03-24 17:10:14',1,'Modification utilisateur zzzg','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(551,'2013-03-24 16:55:13','USER_LOGIN',1,'2013-03-24 17:55:13',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(552,'2013-03-24 17:44:29','USER_LOGIN',1,'2013-03-24 18:44:29',1,'(UserLogged,admin)','::1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',NULL),(553,'2013-09-08 23:06:26','USER_LOGIN',1,'2013-09-09 01:06:26',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.57 Safari/537.36',NULL),(554,'2013-10-21 22:32:28','USER_LOGIN',1,'2013-10-22 00:32:28',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.66 Safari/537.36',NULL),(555,'2013-10-21 22:32:48','USER_LOGIN',1,'2013-10-22 00:32:48',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.66 Safari/537.36',NULL),(556,'2013-11-07 00:01:51','USER_LOGIN',1,'2013-11-07 01:01:51',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.114 Safari/537.36',NULL),(557,'2014-03-02 15:21:07','USER_LOGIN',1,'2014-03-02 16:21:07',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36',NULL),(558,'2014-03-02 15:36:53','USER_LOGIN',1,'2014-03-02 16:36:53',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36',NULL),(559,'2014-03-02 18:54:23','USER_LOGIN',1,'2014-03-02 19:54:23',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36',NULL),(560,'2014-03-02 19:11:17','USER_LOGIN',1,'2014-03-02 20:11:17',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36',NULL),(561,'2014-03-03 18:19:24','USER_LOGIN',1,'2014-03-03 19:19:24',1,'(UserLogged,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36',NULL),(562,'2014-12-21 12:51:38','USER_LOGIN',1,'2014-12-21 13:51:38',1,'(UserLogged,admin) - TZ=1;TZString=CET;Screen=1920x969','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36',NULL),(563,'2014-12-21 19:52:09','USER_LOGIN',1,'2014-12-21 20:52:09',1,'(UserLogged,admin) - TZ=1;TZString=CET;Screen=1920x969','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36',NULL),(566,'2015-10-03 08:49:43','USER_NEW_PASSWORD',1,'2015-10-03 10:49:43',1,'Password change for admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(567,'2015-10-03 08:49:43','USER_MODIFY',1,'2015-10-03 10:49:43',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(568,'2015-10-03 09:03:12','USER_MODIFY',1,'2015-10-03 11:03:12',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(569,'2015-10-03 09:03:42','USER_MODIFY',1,'2015-10-03 11:03:42',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(570,'2015-10-03 09:07:36','USER_MODIFY',1,'2015-10-03 11:07:36',1,'User demo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(571,'2015-10-03 09:08:58','USER_NEW_PASSWORD',1,'2015-10-03 11:08:58',1,'Password change for pcurie','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(572,'2015-10-03 09:08:58','USER_MODIFY',1,'2015-10-03 11:08:58',1,'User pcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(573,'2015-10-03 09:09:23','USER_MODIFY',1,'2015-10-03 11:09:23',1,'User pcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(574,'2015-10-03 09:11:04','USER_NEW_PASSWORD',1,'2015-10-03 11:11:04',1,'Password change for athestudent','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(575,'2015-10-03 09:11:04','USER_MODIFY',1,'2015-10-03 11:11:04',1,'User athestudent modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(576,'2015-10-03 09:11:53','USER_MODIFY',1,'2015-10-03 11:11:53',1,'User abookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(577,'2015-10-03 09:42:12','USER_LOGIN_FAILED',1,'2015-10-03 11:42:11',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(578,'2015-10-03 09:42:19','USER_LOGIN_FAILED',1,'2015-10-03 11:42:19',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(579,'2015-10-03 09:42:42','USER_LOGIN_FAILED',1,'2015-10-03 11:42:42',NULL,'Bad value for login or password - login=aeinstein','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(580,'2015-10-03 09:43:50','USER_LOGIN',1,'2015-10-03 11:43:50',1,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x788','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(581,'2015-10-03 09:44:44','GROUP_MODIFY',1,'2015-10-03 11:44:44',1,'Group Sale representatives modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(582,'2015-10-03 09:46:25','GROUP_CREATE',1,'2015-10-03 11:46:25',1,'Group Management created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(583,'2015-10-03 09:46:46','GROUP_CREATE',1,'2015-10-03 11:46:46',1,'Group Scientists created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(584,'2015-10-03 09:47:41','USER_CREATE',1,'2015-10-03 11:47:41',1,'User mcurie created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(585,'2015-10-03 09:47:41','USER_NEW_PASSWORD',1,'2015-10-03 11:47:41',1,'Password change for mcurie','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(586,'2015-10-03 09:47:53','USER_MODIFY',1,'2015-10-03 11:47:53',1,'User mcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(587,'2015-10-03 09:48:32','USER_DELETE',1,'2015-10-03 11:48:32',1,'User bbb removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(588,'2015-10-03 09:48:52','USER_MODIFY',1,'2015-10-03 11:48:52',1,'User bookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(589,'2015-10-03 10:01:28','USER_MODIFY',1,'2015-10-03 12:01:28',1,'User bookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(590,'2015-10-03 10:01:39','USER_MODIFY',1,'2015-10-03 12:01:39',1,'User bookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(591,'2015-10-05 06:32:38','USER_LOGIN_FAILED',1,'2015-10-05 08:32:38',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(592,'2015-10-05 06:32:44','USER_LOGIN',1,'2015-10-05 08:32:44',1,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(593,'2015-10-05 07:07:52','USER_CREATE',1,'2015-10-05 09:07:52',1,'User atheceo created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(594,'2015-10-05 07:07:52','USER_NEW_PASSWORD',1,'2015-10-05 09:07:52',1,'Password change for atheceo','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(595,'2015-10-05 07:09:08','USER_NEW_PASSWORD',1,'2015-10-05 09:09:08',1,'Password change for aeinstein','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(596,'2015-10-05 07:09:08','USER_MODIFY',1,'2015-10-05 09:09:08',1,'User aeinstein modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(597,'2015-10-05 07:09:46','USER_CREATE',1,'2015-10-05 09:09:46',1,'User admin created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(598,'2015-10-05 07:09:46','USER_NEW_PASSWORD',1,'2015-10-05 09:09:46',1,'Password change for admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(599,'2015-10-05 07:10:20','USER_MODIFY',1,'2015-10-05 09:10:20',1,'User demo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(600,'2015-10-05 07:10:48','USER_MODIFY',1,'2015-10-05 09:10:48',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(601,'2015-10-05 07:11:22','USER_NEW_PASSWORD',1,'2015-10-05 09:11:22',1,'Password change for bbookkeeper','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(602,'2015-10-05 07:11:22','USER_MODIFY',1,'2015-10-05 09:11:22',1,'User bbookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(603,'2015-10-05 07:12:37','USER_MODIFY',1,'2015-10-05 09:12:37',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(604,'2015-10-05 07:13:27','USER_MODIFY',1,'2015-10-05 09:13:27',1,'User demo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(605,'2015-10-05 07:13:52','USER_MODIFY',1,'2015-10-05 09:13:52',1,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(606,'2015-10-05 07:14:35','USER_LOGOUT',1,'2015-10-05 09:14:35',1,'(UserLogoff,aeinstein)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(607,'2015-10-05 07:14:40','USER_LOGIN_FAILED',1,'2015-10-05 09:14:40',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(608,'2015-10-05 07:14:44','USER_LOGIN_FAILED',1,'2015-10-05 09:14:44',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(609,'2015-10-05 07:14:49','USER_LOGIN',1,'2015-10-05 09:14:49',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(610,'2015-10-05 07:57:18','USER_MODIFY',1,'2015-10-05 09:57:18',12,'User aeinstein modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(611,'2015-10-05 08:06:54','USER_LOGOUT',1,'2015-10-05 10:06:54',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(612,'2015-10-05 08:07:03','USER_LOGIN',1,'2015-10-05 10:07:03',11,'(UserLogged,atheceo) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(613,'2015-10-05 19:18:46','USER_LOGIN',1,'2015-10-05 21:18:46',11,'(UserLogged,atheceo) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(614,'2015-10-05 19:29:35','USER_CREATE',1,'2015-10-05 21:29:35',11,'User ccommercy created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(615,'2015-10-05 19:29:35','USER_NEW_PASSWORD',1,'2015-10-05 21:29:35',11,'Password change for ccommercy','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(616,'2015-10-05 19:30:13','GROUP_CREATE',1,'2015-10-05 21:30:13',11,'Group Commercial created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(617,'2015-10-05 19:31:37','USER_NEW_PASSWORD',1,'2015-10-05 21:31:37',11,'Password change for admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(618,'2015-10-05 19:31:37','USER_MODIFY',1,'2015-10-05 21:31:37',11,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(619,'2015-10-05 19:32:00','USER_MODIFY',1,'2015-10-05 21:32:00',11,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(620,'2015-10-05 19:33:33','USER_CREATE',1,'2015-10-05 21:33:33',11,'User sscientol created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(621,'2015-10-05 19:33:33','USER_NEW_PASSWORD',1,'2015-10-05 21:33:33',11,'Password change for sscientol','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(622,'2015-10-05 19:33:47','USER_NEW_PASSWORD',1,'2015-10-05 21:33:47',11,'Password change for mcurie','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(623,'2015-10-05 19:33:47','USER_MODIFY',1,'2015-10-05 21:33:47',11,'User mcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(624,'2015-10-05 19:34:23','USER_NEW_PASSWORD',1,'2015-10-05 21:34:23',11,'Password change for pcurie','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(625,'2015-10-05 19:34:23','USER_MODIFY',1,'2015-10-05 21:34:23',11,'User pcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(626,'2015-10-05 19:34:42','USER_MODIFY',1,'2015-10-05 21:34:42',11,'User aeinstein modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(627,'2015-10-05 19:36:06','USER_NEW_PASSWORD',1,'2015-10-05 21:36:06',11,'Password change for ccommercy','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(628,'2015-10-05 19:36:06','USER_MODIFY',1,'2015-10-05 21:36:06',11,'User ccommercy modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(629,'2015-10-05 19:36:57','USER_NEW_PASSWORD',1,'2015-10-05 21:36:57',11,'Password change for atheceo','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(630,'2015-10-05 19:36:57','USER_MODIFY',1,'2015-10-05 21:36:57',11,'User atheceo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(631,'2015-10-05 19:37:27','USER_LOGOUT',1,'2015-10-05 21:37:27',11,'(UserLogoff,atheceo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(632,'2015-10-05 19:37:35','USER_LOGIN_FAILED',1,'2015-10-05 21:37:35',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(633,'2015-10-05 19:37:39','USER_LOGIN_FAILED',1,'2015-10-05 21:37:39',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(634,'2015-10-05 19:37:44','USER_LOGIN_FAILED',1,'2015-10-05 21:37:44',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(635,'2015-10-05 19:37:49','USER_LOGIN_FAILED',1,'2015-10-05 21:37:49',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(636,'2015-10-05 19:38:12','USER_LOGIN_FAILED',1,'2015-10-05 21:38:12',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(637,'2015-10-05 19:40:48','USER_LOGIN_FAILED',1,'2015-10-05 21:40:48',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(638,'2015-10-05 19:40:55','USER_LOGIN',1,'2015-10-05 21:40:55',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(639,'2015-10-05 19:43:34','USER_MODIFY',1,'2015-10-05 21:43:34',12,'User aeinstein modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(640,'2015-10-05 19:45:43','USER_CREATE',1,'2015-10-05 21:45:43',12,'User aaa created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(641,'2015-10-05 19:45:43','USER_NEW_PASSWORD',1,'2015-10-05 21:45:43',12,'Password change for aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(642,'2015-10-05 19:46:18','USER_DELETE',1,'2015-10-05 21:46:18',12,'User aaa removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(643,'2015-10-05 19:47:09','USER_MODIFY',1,'2015-10-05 21:47:09',12,'User demo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(644,'2015-10-05 19:47:22','USER_MODIFY',1,'2015-10-05 21:47:22',12,'User demo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(645,'2015-10-05 19:52:05','USER_MODIFY',1,'2015-10-05 21:52:05',12,'User sscientol modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(646,'2015-10-05 19:52:23','USER_MODIFY',1,'2015-10-05 21:52:23',12,'User bbookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(647,'2015-10-05 19:54:54','USER_NEW_PASSWORD',1,'2015-10-05 21:54:54',12,'Password change for zzeceo','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(648,'2015-10-05 19:54:54','USER_MODIFY',1,'2015-10-05 21:54:54',12,'User zzeceo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(649,'2015-10-05 19:57:02','USER_MODIFY',1,'2015-10-05 21:57:02',12,'User zzeceo modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(650,'2015-10-05 19:57:57','USER_NEW_PASSWORD',1,'2015-10-05 21:57:57',12,'Password change for pcurie','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(651,'2015-10-05 19:57:57','USER_MODIFY',1,'2015-10-05 21:57:57',12,'User pcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(652,'2015-10-05 19:59:42','USER_NEW_PASSWORD',1,'2015-10-05 21:59:42',12,'Password change for admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(653,'2015-10-05 19:59:42','USER_MODIFY',1,'2015-10-05 21:59:42',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(654,'2015-10-05 20:00:21','USER_MODIFY',1,'2015-10-05 22:00:21',12,'User adminx modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(655,'2015-10-05 20:05:36','USER_MODIFY',1,'2015-10-05 22:05:36',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(656,'2015-10-05 20:06:25','USER_MODIFY',1,'2015-10-05 22:06:25',12,'User ccommercy modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(657,'2015-10-05 20:07:18','USER_MODIFY',1,'2015-10-05 22:07:18',12,'User mcurie modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(658,'2015-10-05 20:07:36','USER_MODIFY',1,'2015-10-05 22:07:36',12,'User aeinstein modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(659,'2015-10-05 20:08:34','USER_MODIFY',1,'2015-10-05 22:08:34',12,'User bbookkeeper modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(660,'2015-10-05 20:47:52','USER_CREATE',1,'2015-10-05 22:47:52',12,'User cc1 created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(661,'2015-10-05 20:47:52','USER_NEW_PASSWORD',1,'2015-10-05 22:47:52',12,'Password change for cc1','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(662,'2015-10-05 20:47:55','USER_LOGOUT',1,'2015-10-05 22:47:55',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(663,'2015-10-05 20:48:08','USER_LOGIN',1,'2015-10-05 22:48:08',11,'(UserLogged,zzeceo) - TZ=1;TZString=Europe/Berlin;Screen=1590x434','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(664,'2015-10-05 20:48:39','USER_CREATE',1,'2015-10-05 22:48:39',11,'User cc2 created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(665,'2015-10-05 20:48:39','USER_NEW_PASSWORD',1,'2015-10-05 22:48:39',11,'Password change for cc2','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(666,'2015-10-05 20:48:59','USER_NEW_PASSWORD',1,'2015-10-05 22:48:59',11,'Password change for cc1','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(667,'2015-10-05 20:48:59','USER_MODIFY',1,'2015-10-05 22:48:59',11,'User cc1 modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(668,'2015-10-05 21:06:36','USER_LOGOUT',1,'2015-10-05 23:06:35',11,'(UserLogoff,zzeceo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(669,'2015-10-05 21:06:44','USER_LOGIN_FAILED',1,'2015-10-05 23:06:44',NULL,'Bad value for login or password - login=cc1','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(670,'2015-10-05 21:07:12','USER_LOGIN_FAILED',1,'2015-10-05 23:07:12',NULL,'Bad value for login or password - login=cc1','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(671,'2015-10-05 21:07:19','USER_LOGIN_FAILED',1,'2015-10-05 23:07:19',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(672,'2015-10-05 21:07:27','USER_LOGIN_FAILED',1,'2015-10-05 23:07:27',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(673,'2015-10-05 21:07:32','USER_LOGIN',1,'2015-10-05 23:07:32',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(674,'2015-10-05 21:12:28','USER_NEW_PASSWORD',1,'2015-10-05 23:12:28',12,'Password change for cc1','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(675,'2015-10-05 21:12:28','USER_MODIFY',1,'2015-10-05 23:12:28',12,'User cc1 modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(676,'2015-10-05 21:13:00','USER_CREATE',1,'2015-10-05 23:13:00',12,'User aaa created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(677,'2015-10-05 21:13:00','USER_NEW_PASSWORD',1,'2015-10-05 23:13:00',12,'Password change for aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(678,'2015-10-05 21:13:40','USER_DELETE',1,'2015-10-05 23:13:40',12,'User aaa removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(679,'2015-10-05 21:14:47','USER_LOGOUT',1,'2015-10-05 23:14:47',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(680,'2015-10-05 21:14:56','USER_LOGIN',1,'2015-10-05 23:14:56',16,'(UserLogged,cc1) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(681,'2015-10-05 21:15:56','USER_LOGOUT',1,'2015-10-05 23:15:56',16,'(UserLogoff,cc1)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(682,'2015-10-05 21:16:06','USER_LOGIN',1,'2015-10-05 23:16:06',17,'(UserLogged,cc2) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(683,'2015-10-05 21:37:25','USER_LOGOUT',1,'2015-10-05 23:37:25',17,'(UserLogoff,cc2)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(684,'2015-10-05 21:37:31','USER_LOGIN',1,'2015-10-05 23:37:31',16,'(UserLogged,cc1) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(685,'2015-10-05 21:43:53','USER_LOGOUT',1,'2015-10-05 23:43:53',16,'(UserLogoff,cc1)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(686,'2015-10-05 21:44:00','USER_LOGIN',1,'2015-10-05 23:44:00',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(687,'2015-10-05 21:46:17','USER_LOGOUT',1,'2015-10-05 23:46:17',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(688,'2015-10-05 21:46:24','USER_LOGIN',1,'2015-10-05 23:46:24',16,'(UserLogged,cc1) - TZ=1;TZString=Europe/Berlin;Screen=1590x767','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',NULL),(689,'2015-11-04 15:17:06','USER_LOGIN',1,'2015-11-04 16:17:06',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(690,'2015-11-15 22:04:04','USER_LOGIN',1,'2015-11-15 23:04:04',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(691,'2015-11-15 22:23:45','USER_MODIFY',1,'2015-11-15 23:23:45',12,'User ccommercy modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(692,'2015-11-15 22:24:22','USER_MODIFY',1,'2015-11-15 23:24:22',12,'User cc1 modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(693,'2015-11-15 22:24:53','USER_MODIFY',1,'2015-11-15 23:24:53',12,'User cc2 modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(694,'2015-11-15 22:25:17','USER_MODIFY',1,'2015-11-15 23:25:17',12,'User cc1 modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(695,'2015-11-15 22:45:37','USER_LOGOUT',1,'2015-11-15 23:45:37',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(696,'2015-11-18 13:41:02','USER_LOGIN',1,'2015-11-18 14:41:02',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(697,'2015-11-18 14:23:35','USER_LOGIN',1,'2015-11-18 15:23:35',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(698,'2015-11-18 15:15:46','USER_LOGOUT',1,'2015-11-18 16:15:46',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(699,'2015-11-18 15:15:51','USER_LOGIN',1,'2015-11-18 16:15:51',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(700,'2015-11-30 17:52:08','USER_LOGIN',1,'2015-11-30 18:52:08',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(701,'2016-01-10 16:45:43','USER_LOGIN',1,'2016-01-10 17:45:43',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(702,'2016-01-10 16:45:52','USER_LOGOUT',1,'2016-01-10 17:45:52',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(703,'2016-01-10 16:46:06','USER_LOGIN',1,'2016-01-10 17:46:06',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(704,'2016-01-16 14:53:47','USER_LOGIN',1,'2016-01-16 15:53:47',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(705,'2016-01-16 15:04:29','USER_LOGOUT',1,'2016-01-16 16:04:29',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(706,'2016-01-16 15:04:40','USER_LOGIN',1,'2016-01-16 16:04:40',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(707,'2016-01-22 09:33:26','USER_LOGIN',1,'2016-01-22 10:33:26',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(708,'2016-01-22 09:35:19','USER_LOGOUT',1,'2016-01-22 10:35:19',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(709,'2016-01-22 09:35:29','USER_LOGIN',1,'2016-01-22 10:35:29',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(710,'2016-01-22 10:47:34','USER_CREATE',1,'2016-01-22 11:47:34',12,'User aaa created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(711,'2016-01-22 10:47:34','USER_NEW_PASSWORD',1,'2016-01-22 11:47:34',12,'Password change for aaa','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(712,'2016-01-22 12:07:56','USER_LOGIN',1,'2016-01-22 13:07:56',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(713,'2016-01-22 12:36:25','USER_NEW_PASSWORD',1,'2016-01-22 13:36:25',12,'Password change for admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(714,'2016-01-22 12:36:25','USER_MODIFY',1,'2016-01-22 13:36:25',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(715,'2016-01-22 12:56:32','USER_MODIFY',1,'2016-01-22 13:56:32',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(716,'2016-01-22 12:58:05','USER_MODIFY',1,'2016-01-22 13:58:05',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(717,'2016-01-22 13:01:02','USER_MODIFY',1,'2016-01-22 14:01:02',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(718,'2016-01-22 13:01:18','USER_MODIFY',1,'2016-01-22 14:01:18',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(719,'2016-01-22 13:13:42','USER_MODIFY',1,'2016-01-22 14:13:42',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(720,'2016-01-22 13:15:20','USER_DELETE',1,'2016-01-22 14:15:20',12,'User aaa removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(721,'2016-01-22 13:19:21','USER_LOGOUT',1,'2016-01-22 14:19:21',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(722,'2016-01-22 13:19:32','USER_LOGIN',1,'2016-01-22 14:19:32',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(723,'2016-01-22 13:19:51','USER_LOGOUT',1,'2016-01-22 14:19:51',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(724,'2016-01-22 13:20:01','USER_LOGIN',1,'2016-01-22 14:20:01',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(725,'2016-01-22 13:28:22','USER_LOGOUT',1,'2016-01-22 14:28:22',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(726,'2016-01-22 13:28:35','USER_LOGIN',1,'2016-01-22 14:28:35',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(727,'2016-01-22 13:33:54','USER_LOGOUT',1,'2016-01-22 14:33:54',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(728,'2016-01-22 13:34:05','USER_LOGIN',1,'2016-01-22 14:34:05',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(729,'2016-01-22 13:51:46','USER_MODIFY',1,'2016-01-22 14:51:46',12,'User ccommercy modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',NULL),(730,'2016-01-22 16:20:12','USER_LOGIN',1,'2016-01-22 17:20:12',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(731,'2016-01-22 16:20:22','USER_LOGOUT',1,'2016-01-22 17:20:22',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(732,'2016-01-22 16:20:36','USER_LOGIN',1,'2016-01-22 17:20:36',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(733,'2016-01-22 16:27:02','USER_CREATE',1,'2016-01-22 17:27:02',12,'User ldestailleur created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(734,'2016-01-22 16:27:02','USER_NEW_PASSWORD',1,'2016-01-22 17:27:02',12,'Password change for ldestailleur','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(735,'2016-01-22 16:28:34','USER_MODIFY',1,'2016-01-22 17:28:34',12,'User ldestailleur modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(736,'2016-01-22 16:30:01','USER_ENABLEDISABLE',1,'2016-01-22 17:30:01',12,'User cc2 activated','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(737,'2016-01-22 17:11:06','USER_LOGIN',1,'2016-01-22 18:11:06',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=1600x790','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(738,'2016-01-22 18:00:02','USER_DELETE',1,'2016-01-22 19:00:02',12,'User zzz removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(739,'2016-01-22 18:01:40','USER_DELETE',1,'2016-01-22 19:01:40',12,'User aaab removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(740,'2016-01-22 18:01:52','USER_DELETE',1,'2016-01-22 19:01:52',12,'User zzzg removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36',NULL),(741,'2016-03-13 10:54:59','USER_LOGIN',1,'2016-03-13 14:54:59',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x971','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36',NULL),(742,'2016-07-30 11:13:10','USER_LOGIN',1,'2016-07-30 15:13:10',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(743,'2016-07-30 12:50:23','USER_CREATE',1,'2016-07-30 16:50:23',12,'User eldy created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(744,'2016-07-30 12:50:23','USER_CREATE',1,'2016-07-30 16:50:23',12,'User eldy created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(745,'2016-07-30 12:50:23','USER_NEW_PASSWORD',1,'2016-07-30 16:50:23',12,'Password change for eldy','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(746,'2016-07-30 12:50:38','USER_MODIFY',1,'2016-07-30 16:50:38',12,'User eldy modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(747,'2016-07-30 12:50:54','USER_DELETE',1,'2016-07-30 16:50:54',12,'User eldy removed','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(748,'2016-07-30 12:51:23','USER_NEW_PASSWORD',1,'2016-07-30 16:51:23',12,'Password change for ldestailleur','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(749,'2016-07-30 12:51:23','USER_MODIFY',1,'2016-07-30 16:51:23',12,'User ldestailleur modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(750,'2016-07-30 18:26:58','USER_LOGIN',1,'2016-07-30 22:26:58',18,'(UserLogged,ldestailleur) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(751,'2016-07-30 18:27:40','USER_LOGOUT',1,'2016-07-30 22:27:40',18,'(UserLogoff,ldestailleur)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(752,'2016-07-30 18:27:47','USER_LOGIN',1,'2016-07-30 22:27:47',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(753,'2016-07-30 19:00:00','USER_LOGOUT',1,'2016-07-30 23:00:00',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(754,'2016-07-30 19:00:04','USER_LOGIN',1,'2016-07-30 23:00:04',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(755,'2016-07-30 19:00:14','USER_LOGOUT',1,'2016-07-30 23:00:14',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(756,'2016-07-30 19:00:19','USER_LOGIN',1,'2016-07-30 23:00:19',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(757,'2016-07-30 19:00:43','USER_LOGOUT',1,'2016-07-30 23:00:43',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(758,'2016-07-30 19:00:48','USER_LOGIN',1,'2016-07-30 23:00:48',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(759,'2016-07-30 19:03:52','USER_LOGOUT',1,'2016-07-30 23:03:52',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(760,'2016-07-30 19:03:57','USER_LOGIN_FAILED',1,'2016-07-30 23:03:57',NULL,'Bad value for login or password - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(761,'2016-07-30 19:03:59','USER_LOGIN',1,'2016-07-30 23:03:59',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(762,'2016-07-30 19:04:13','USER_LOGOUT',1,'2016-07-30 23:04:13',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(763,'2016-07-30 19:04:17','USER_LOGIN',1,'2016-07-30 23:04:17',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(764,'2016-07-30 19:04:26','USER_LOGOUT',1,'2016-07-30 23:04:26',2,'(UserLogoff,demo)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(765,'2016-07-30 19:04:31','USER_LOGIN',1,'2016-07-30 23:04:31',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(766,'2016-07-30 19:10:50','USER_LOGOUT',1,'2016-07-30 23:10:50',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(767,'2016-07-30 19:10:54','USER_LOGIN',1,'2016-07-30 23:10:54',2,'(UserLogged,demo) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(768,'2016-07-31 10:15:52','USER_LOGIN',1,'2016-07-31 14:15:52',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Lynx/2.8.8pre.4 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/2.12.23',NULL),(769,'2016-07-31 10:16:27','USER_LOGIN',1,'2016-07-31 14:16:27',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(770,'2016-07-31 10:32:14','USER_LOGIN',1,'2016-07-31 14:32:14',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Lynx/2.8.8pre.4 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/2.12.23',NULL),(771,'2016-07-31 10:36:28','USER_LOGIN',1,'2016-07-31 14:36:28',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Links (2.8; Linux 3.19.0-46-generic x86_64; GNU C 4.8.2; text)',NULL),(772,'2016-07-31 10:40:10','USER_LOGIN',1,'2016-07-31 14:40:10',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Links (2.8; Linux 3.19.0-46-generic x86_64; GNU C 4.8.2; text)',NULL),(773,'2016-07-31 10:54:16','USER_LOGIN',1,'2016-07-31 14:54:16',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Lynx/2.8.8pre.4 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/2.12.23',NULL),(774,'2016-07-31 12:52:52','USER_LOGIN',1,'2016-07-31 16:52:52',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x592','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(775,'2016-07-31 13:25:33','USER_LOGOUT',1,'2016-07-31 17:25:33',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(776,'2016-07-31 13:26:32','USER_LOGIN',1,'2016-07-31 17:26:32',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1280x751','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(777,'2016-07-31 14:13:57','USER_LOGOUT',1,'2016-07-31 18:13:57',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(778,'2016-07-31 14:14:04','USER_LOGIN',1,'2016-07-31 18:14:04',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(779,'2016-07-31 16:04:35','USER_LOGIN',1,'2016-07-31 20:04:34',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(780,'2016-07-31 21:14:14','USER_LOGIN',1,'2016-08-01 01:14:14',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36',NULL),(781,'2017-01-29 15:14:05','USER_LOGOUT',1,'2017-01-29 19:14:05',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(782,'2017-01-29 15:34:43','USER_LOGIN',1,'2017-01-29 19:34:43',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x571','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(783,'2017-01-29 15:35:04','USER_LOGOUT',1,'2017-01-29 19:35:04',12,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(784,'2017-01-29 15:35:12','USER_LOGIN',1,'2017-01-29 19:35:12',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(785,'2017-01-29 15:36:43','USER_LOGOUT',1,'2017-01-29 19:36:43',12,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(786,'2017-01-29 15:41:21','USER_LOGIN',1,'2017-01-29 19:41:21',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x571','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(787,'2017-01-29 15:41:41','USER_LOGOUT',1,'2017-01-29 19:41:41',12,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(788,'2017-01-29 15:42:43','USER_LOGIN',1,'2017-01-29 19:42:43',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x571','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(789,'2017-01-29 15:43:18','USER_LOGOUT',1,'2017-01-29 19:43:18',12,'(UserLogoff,admin)','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(790,'2017-01-29 15:46:31','USER_LOGIN',1,'2017-01-29 19:46:31',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x571','192.168.0.254','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(791,'2017-01-29 16:18:56','USER_LOGIN',1,'2017-01-29 20:18:56',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Berlin;Screen=360x526','192.168.0.254','Mozilla/5.0 (Linux; Android 6.0; LG-H818 Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/55.0.2883.91 Mobile Safari/537.36 - DoliDroid - Android client pour Dolibarr ERP-CRM',NULL),(792,'2017-01-29 17:20:59','USER_LOGIN',1,'2017-01-29 21:20:59',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(793,'2017-01-30 11:19:40','USER_LOGIN',1,'2017-01-30 15:19:40',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(794,'2017-01-31 16:49:39','USER_LOGIN',1,'2017-01-31 20:49:39',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x520','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(795,'2017-02-01 10:55:23','USER_LOGIN',1,'2017-02-01 14:55:23',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(796,'2017-02-01 13:34:31','USER_LOGIN',1,'2017-02-01 17:34:31',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(797,'2017-02-01 14:41:26','USER_LOGIN',1,'2017-02-01 18:41:26',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(798,'2017-02-01 23:51:48','USER_LOGIN_FAILED',1,'2017-02-02 03:51:48',NULL,'Bad value for login or password - login=autologin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(799,'2017-02-01 23:52:55','USER_LOGIN',1,'2017-02-02 03:52:55',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(800,'2017-02-01 23:55:45','USER_CREATE',1,'2017-02-02 03:55:45',12,'User aboston created','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(801,'2017-02-01 23:55:45','USER_NEW_PASSWORD',1,'2017-02-02 03:55:45',12,'Password change for aboston','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(802,'2017-02-01 23:56:38','USER_MODIFY',1,'2017-02-02 03:56:38',12,'User aboston modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(803,'2017-02-01 23:56:50','USER_MODIFY',1,'2017-02-02 03:56:50',12,'User aboston modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(804,'2017-02-02 01:14:44','USER_LOGIN',1,'2017-02-02 05:14:44',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',NULL),(805,'2017-02-03 10:27:18','USER_LOGIN',1,'2017-02-03 14:27:18',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(806,'2017-02-04 10:22:34','USER_LOGIN',1,'2017-02-04 14:22:34',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x489','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(807,'2017-02-06 04:01:31','USER_LOGIN',1,'2017-02-06 08:01:31',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(808,'2017-02-06 10:21:32','USER_LOGIN',1,'2017-02-06 14:21:32',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(809,'2017-02-06 19:09:27','USER_LOGIN',1,'2017-02-06 23:09:27',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(810,'2017-02-06 23:39:17','USER_LOGIN',1,'2017-02-07 03:39:17',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(811,'2017-02-07 11:36:34','USER_LOGIN',1,'2017-02-07 15:36:34',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x676','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(812,'2017-02-07 18:51:53','USER_LOGIN',1,'2017-02-07 22:51:53',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(813,'2017-02-07 23:13:40','USER_LOGIN',1,'2017-02-08 03:13:40',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(814,'2017-02-08 09:29:12','USER_LOGIN',1,'2017-02-08 13:29:12',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(815,'2017-02-08 17:33:12','USER_LOGIN',1,'2017-02-08 21:33:12',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(816,'2017-02-09 17:30:34','USER_LOGIN',1,'2017-02-09 21:30:34',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(817,'2017-02-10 09:30:02','USER_LOGIN',1,'2017-02-10 13:30:02',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(818,'2017-02-10 16:16:14','USER_LOGIN',1,'2017-02-10 20:16:14',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(819,'2017-02-10 17:28:15','USER_LOGIN',1,'2017-02-10 21:28:15',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(820,'2017-02-11 12:54:03','USER_LOGIN',1,'2017-02-11 16:54:03',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(821,'2017-02-11 17:23:52','USER_LOGIN',1,'2017-02-11 21:23:52',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(822,'2017-02-12 12:44:03','USER_LOGIN',1,'2017-02-12 16:44:03',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(823,'2017-02-12 16:42:13','USER_LOGIN',1,'2017-02-12 20:42:13',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(824,'2017-02-12 19:14:18','USER_LOGIN',1,'2017-02-12 23:14:18',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(825,'2017-02-15 17:17:00','USER_LOGIN',1,'2017-02-15 21:17:00',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(826,'2017-02-15 22:02:40','USER_LOGIN',1,'2017-02-16 02:02:40',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(827,'2017-02-16 22:13:27','USER_LOGIN',1,'2017-02-17 02:13:27',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x619','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(828,'2017-02-16 23:54:04','USER_LOGIN',1,'2017-02-17 03:54:04',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(829,'2017-02-17 09:14:27','USER_LOGIN',1,'2017-02-17 13:14:27',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(830,'2017-02-17 12:07:05','USER_LOGIN',1,'2017-02-17 16:07:05',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(831,'2017-02-19 21:22:20','USER_LOGIN',1,'2017-02-20 01:22:20',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(832,'2017-02-20 09:26:47','USER_LOGIN',1,'2017-02-20 13:26:47',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(833,'2017-02-20 16:39:55','USER_LOGIN',1,'2017-02-20 20:39:55',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(834,'2017-02-20 16:49:00','USER_MODIFY',1,'2017-02-20 20:49:00',12,'Modification utilisateur ccommerson','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(835,'2017-02-20 17:57:15','USER_LOGIN',1,'2017-02-20 21:57:14',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(836,'2017-02-20 19:43:48','USER_LOGIN',1,'2017-02-20 23:43:48',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(837,'2017-02-21 00:04:05','USER_LOGIN',1,'2017-02-21 04:04:05',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(838,'2017-02-21 10:23:13','USER_LOGIN',1,'2017-02-21 14:23:13',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(839,'2017-02-21 10:30:17','USER_LOGOUT',1,'2017-02-21 14:30:17',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(840,'2017-02-21 10:30:22','USER_LOGIN',1,'2017-02-21 14:30:22',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(841,'2017-02-21 11:44:05','USER_LOGIN',1,'2017-02-21 15:44:05',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',NULL),(842,'2017-05-12 09:02:48','USER_LOGIN',1,'2017-05-12 13:02:48',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36',NULL),(843,'2017-08-27 13:29:16','USER_LOGIN',1,'2017-08-27 17:29:16',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(844,'2017-08-28 09:11:07','USER_LOGIN',1,'2017-08-28 13:11:07',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(845,'2017-08-28 10:08:58','USER_LOGIN',1,'2017-08-28 14:08:58',12,'(UserLogged,admin) - TZ=;TZString=;Screen=x','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(846,'2017-08-28 10:12:46','USER_MODIFY',1,'2017-08-28 14:12:46',12,'User admin modified','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(847,'2017-08-28 10:28:25','USER_LOGIN',1,'2017-08-28 14:28:25',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(848,'2017-08-28 10:28:36','USER_LOGOUT',1,'2017-08-28 14:28:36',12,'(UserLogoff,admin)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(849,'2017-08-28 10:34:50','USER_LOGIN',1,'2017-08-28 14:34:50',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(850,'2017-08-28 11:59:02','USER_LOGIN',1,'2017-08-28 15:59:02',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',NULL),(851,'2017-08-29 09:57:34','USER_LOGIN',1,'2017-08-29 13:57:34',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(852,'2017-08-29 11:05:51','USER_LOGIN',1,'2017-08-29 15:05:51',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(853,'2017-08-29 14:15:58','USER_LOGIN',1,'2017-08-29 18:15:58',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(854,'2017-08-29 17:49:28','USER_LOGIN',1,'2017-08-29 21:49:28',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(855,'2017-08-30 11:53:25','USER_LOGIN',1,'2017-08-30 15:53:25',18,'(UserLogged,ldestailleur) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(856,'2017-08-30 12:19:31','USER_MODIFY',1,'2017-08-30 16:19:31',18,'Modification utilisateur ldestailleur - UserRemovedFromGroup','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(857,'2017-08-30 12:19:32','USER_MODIFY',1,'2017-08-30 16:19:32',18,'Modification utilisateur ldestailleur - UserRemovedFromGroup','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(858,'2017-08-30 12:19:33','USER_MODIFY',1,'2017-08-30 16:19:33',18,'Modification utilisateur ldestailleur - UserRemovedFromGroup','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(859,'2017-08-30 12:21:42','USER_LOGOUT',1,'2017-08-30 16:21:42',18,'(UserLogoff,ldestailleur)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(860,'2017-08-30 12:21:48','USER_LOGIN',1,'2017-08-30 16:21:48',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(861,'2017-08-30 15:02:06','USER_LOGIN',1,'2017-08-30 19:02:06',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(862,'2017-08-31 09:25:42','USER_LOGIN',1,'2017-08-31 13:25:42',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(863,'2017-09-04 07:51:21','USER_LOGIN',1,'2017-09-04 11:51:21',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x577','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(864,'2017-09-04 09:17:09','USER_LOGIN',1,'2017-09-04 13:17:09',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(865,'2017-09-04 13:40:28','USER_LOGIN',1,'2017-09-04 17:40:28',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(866,'2017-09-06 07:55:30','USER_LOGIN',1,'2017-09-06 11:55:30',18,'(UserLogged,ldestailleur) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(867,'2017-09-06 07:55:33','USER_LOGOUT',1,'2017-09-06 11:55:33',18,'(UserLogoff,ldestailleur)','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(868,'2017-09-06 07:55:38','USER_LOGIN',1,'2017-09-06 11:55:38',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(869,'2017-09-06 16:03:38','USER_LOGIN',1,'2017-09-06 20:03:38',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(870,'2017-09-06 19:43:07','USER_LOGIN',1,'2017-09-06 23:43:07',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x937','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36',NULL),(871,'2018-01-19 11:18:08','USER_LOGOUT',1,'2018-01-19 11:18:08',12,'(UserLogoff,admin)','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36',NULL),(872,'2018-01-19 11:18:47','USER_LOGIN',1,'2018-01-19 11:18:47',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x965','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36',NULL),(873,'2018-01-19 11:21:41','USER_LOGIN',1,'2018-01-19 11:21:41',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x926','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0',NULL),(874,'2018-01-19 11:24:18','USER_NEW_PASSWORD',1,'2018-01-19 11:24:18',12,'Password change for admin','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0',NULL),(875,'2018-01-19 11:24:18','USER_MODIFY',1,'2018-01-19 11:24:18',12,'User admin modified','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0',NULL),(876,'2018-01-19 11:28:45','USER_LOGOUT',1,'2018-01-19 11:28:45',12,'(UserLogoff,admin)','82.240.38.230','Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0',NULL),(877,'2018-03-16 09:54:15','USER_LOGIN_FAILED',1,'2018-03-16 13:54:15',NULL,'Identifiant ou mot de passe incorrect - login=admin','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36',NULL),(878,'2018-03-16 09:54:23','USER_LOGIN',1,'2018-03-16 13:54:23',12,'(UserLogged,admin) - TZ=1;TZString=Europe/Paris;Screen=1920x936','127.0.0.1','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36',NULL); +/*!40000 ALTER TABLE `llx_events` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expedition` +-- + +DROP TABLE IF EXISTS `llx_expedition`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expedition` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_customer` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `fk_projet` int(11) DEFAULT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `date_expedition` datetime DEFAULT NULL, + `date_delivery` datetime DEFAULT NULL, + `fk_address` int(11) DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `tracking_number` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_statut` smallint(6) DEFAULT '0', + `height` float DEFAULT NULL, + `height_unit` int(11) DEFAULT NULL, + `width` float DEFAULT NULL, + `size_units` int(11) DEFAULT NULL, + `size` float DEFAULT NULL, + `weight_units` int(11) DEFAULT NULL, + `weight` float DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `billed` smallint(6) DEFAULT '0', + `fk_user_modif` int(11) DEFAULT NULL, + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_expedition_uk_ref` (`ref`,`entity`), + KEY `idx_expedition_fk_soc` (`fk_soc`), + KEY `idx_expedition_fk_user_author` (`fk_user_author`), + KEY `idx_expedition_fk_user_valid` (`fk_user_valid`), + KEY `idx_expedition_fk_shipping_method` (`fk_shipping_method`), + CONSTRAINT `fk_expedition_fk_shipping_method` FOREIGN KEY (`fk_shipping_method`) REFERENCES `llx_c_shipment_mode` (`rowid`), + CONSTRAINT `fk_expedition_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_expedition_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_expedition_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expedition` +-- + +LOCK TABLES `llx_expedition` WRITE; +/*!40000 ALTER TABLE `llx_expedition` DISABLE KEYS */; +INSERT INTO `llx_expedition` VALUES (1,'2016-01-22 17:33:03','SH1302-0001',1,NULL,1,NULL,NULL,NULL,'2011-08-08 03:05:34',1,'2013-02-17 18:22:51',1,NULL,'2011-08-09 00:00:00',NULL,NULL,'',1,NULL,NULL,NULL,0,NULL,0,NULL,NULL,NULL,'merou',NULL,NULL,NULL,NULL,0,NULL,NULL),(2,'2017-02-15 23:11:35','(PROV2)',1,NULL,4,NULL,NULL,NULL,'2017-02-16 03:11:35',12,NULL,NULL,NULL,NULL,NULL,1,'',0,NULL,NULL,NULL,0,NULL,0,NULL,NULL,NULL,'merou',0,'',NULL,NULL,0,NULL,NULL); +/*!40000 ALTER TABLE `llx_expedition` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expedition_extrafields` +-- + +DROP TABLE IF EXISTS `llx_expedition_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expedition_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_expedition_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expedition_extrafields` +-- + +LOCK TABLES `llx_expedition_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_expedition_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_expedition_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expedition_methode` +-- + +DROP TABLE IF EXISTS `llx_expedition_methode`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expedition_methode` ( + `rowid` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `libelle` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `active` tinyint(4) DEFAULT '0', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expedition_methode` +-- + +LOCK TABLES `llx_expedition_methode` WRITE; +/*!40000 ALTER TABLE `llx_expedition_methode` DISABLE KEYS */; +INSERT INTO `llx_expedition_methode` VALUES (1,'2010-07-08 11:18:00','CATCH','Catch','Catch by client',1),(2,'2010-07-08 11:18:00','TRANS','Transporter','Generic transporter',1),(3,'2010-07-08 11:18:01','COLSUI','Colissimo Suivi','Colissimo Suivi',0); +/*!40000 ALTER TABLE `llx_expedition_methode` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expeditiondet` +-- + +DROP TABLE IF EXISTS `llx_expeditiondet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expeditiondet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_expedition` int(11) NOT NULL, + `fk_origin_line` int(11) DEFAULT NULL, + `fk_entrepot` int(11) DEFAULT NULL, + `qty` double DEFAULT NULL, + `rang` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_expeditiondet_fk_expedition` (`fk_expedition`), + CONSTRAINT `fk_expeditiondet_fk_expedition` FOREIGN KEY (`fk_expedition`) REFERENCES `llx_expedition` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expeditiondet` +-- + +LOCK TABLES `llx_expeditiondet` WRITE; +/*!40000 ALTER TABLE `llx_expeditiondet` DISABLE KEYS */; +INSERT INTO `llx_expeditiondet` VALUES (1,1,10,3,1,0),(2,2,226,19,2,0); +/*!40000 ALTER TABLE `llx_expeditiondet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expeditiondet_batch` +-- + +DROP TABLE IF EXISTS `llx_expeditiondet_batch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expeditiondet_batch` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_expeditiondet` int(11) NOT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0', + `fk_origin_stock` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_fk_expeditiondet` (`fk_expeditiondet`), + CONSTRAINT `fk_expeditiondet_batch_fk_expeditiondet` FOREIGN KEY (`fk_expeditiondet`) REFERENCES `llx_expeditiondet` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expeditiondet_batch` +-- + +LOCK TABLES `llx_expeditiondet_batch` WRITE; +/*!40000 ALTER TABLE `llx_expeditiondet_batch` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_expeditiondet_batch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expeditiondet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_expeditiondet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expeditiondet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_expeditiondet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expeditiondet_extrafields` +-- + +LOCK TABLES `llx_expeditiondet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_expeditiondet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_expeditiondet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expensereport` +-- + +DROP TABLE IF EXISTS `llx_expensereport`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expensereport` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_number_int` int(11) DEFAULT NULL, + `ref_ext` int(11) DEFAULT NULL, + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `date_debut` date NOT NULL, + `date_fin` date NOT NULL, + `date_create` datetime NOT NULL, + `date_valid` datetime DEFAULT NULL, + `date_approve` datetime DEFAULT NULL, + `date_refuse` datetime DEFAULT NULL, + `date_cancel` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_author` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_validator` int(11) DEFAULT NULL, + `fk_user_approve` int(11) DEFAULT NULL, + `fk_user_refuse` int(11) DEFAULT NULL, + `fk_user_cancel` int(11) DEFAULT NULL, + `fk_statut` int(11) NOT NULL, + `fk_c_paiement` int(11) DEFAULT NULL, + `paid` smallint(6) NOT NULL DEFAULT '0', + `note_public` text COLLATE utf8_unicode_ci, + `note_private` text COLLATE utf8_unicode_ci, + `detail_refuse` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `detail_cancel` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `integration_compta` int(11) DEFAULT NULL, + `fk_bank_account` int(11) DEFAULT NULL, + `model_pdf` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_expensereport_uk_ref` (`ref`,`entity`), + KEY `idx_expensereport_date_debut` (`date_debut`), + KEY `idx_expensereport_date_fin` (`date_fin`), + KEY `idx_expensereport_fk_statut` (`fk_statut`), + KEY `idx_expensereport_fk_user_author` (`fk_user_author`), + KEY `idx_expensereport_fk_user_valid` (`fk_user_valid`), + KEY `idx_expensereport_fk_user_approve` (`fk_user_approve`), + KEY `idx_expensereport_fk_refuse` (`fk_user_approve`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expensereport` +-- + +LOCK TABLES `llx_expensereport` WRITE; +/*!40000 ALTER TABLE `llx_expensereport` DISABLE KEYS */; +INSERT INTO `llx_expensereport` VALUES (1,'ADMIN-ER00002-150101',1,2,NULL,8.33000000,1.67000000,0.00000000,0.00000000,10.00000000,'2015-01-01','2015-01-03','2016-01-22 19:03:37','2016-01-22 19:06:50','2017-02-16 02:12:40',NULL,NULL,'2017-02-15 22:12:40',12,NULL,12,12,12,NULL,NULL,5,NULL,0,'Holidays',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL),(2,'(PROV2)',1,NULL,NULL,141.67000000,28.33000000,0.00000000,0.00000000,170.00000000,'2015-02-01','2015-02-28','2016-01-22 19:04:44','2015-02-28 00:00:00',NULL,NULL,NULL,'2018-03-16 10:00:54',12,12,NULL,12,NULL,NULL,NULL,0,NULL,0,'Work on projet X','','',NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL),(3,'(PROV3)',1,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,'2017-02-02','2017-02-02','2017-02-02 03:57:03','2017-02-02 00:00:00',NULL,NULL,NULL,'2018-03-16 10:00:54',19,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL); +/*!40000 ALTER TABLE `llx_expensereport` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expensereport_det` +-- + +DROP TABLE IF EXISTS `llx_expensereport_det`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expensereport_det` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_expensereport` int(11) NOT NULL, + `docnumber` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_c_type_fees` int(11) NOT NULL, + `fk_projet` int(11) DEFAULT NULL, + `comments` text COLLATE utf8_unicode_ci NOT NULL, + `product_type` int(11) DEFAULT '-1', + `qty` double NOT NULL, + `value_unit` double NOT NULL, + `remise_percent` double DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT NULL, + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `total_ht` double(24,8) NOT NULL DEFAULT '0.00000000', + `total_tva` double(24,8) NOT NULL DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) NOT NULL DEFAULT '0.00000000', + `date` date NOT NULL, + `info_bits` int(11) DEFAULT '0', + `special_code` int(11) DEFAULT '0', + `rang` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_facture` int(11) DEFAULT '0', + `fk_code_ventilation` int(11) DEFAULT '0', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `rule_warning_message` text COLLATE utf8_unicode_ci, + `fk_c_exp_tax_cat` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expensereport_det` +-- + +LOCK TABLES `llx_expensereport_det` WRITE; +/*!40000 ALTER TABLE `llx_expensereport_det` DISABLE KEYS */; +INSERT INTO `llx_expensereport_det` VALUES (1,1,NULL,3,1,'',-1,1,10,NULL,20.000,0.000,NULL,0.000,NULL,8.33000000,1.67000000,0.00000000,0.00000000,10.00000000,'2015-01-01',0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,0,'',NULL,NULL),(2,2,NULL,3,4,'',-1,1,20,NULL,20.000,0.000,NULL,0.000,NULL,16.67000000,3.33000000,0.00000000,0.00000000,20.00000000,'2015-01-07',0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,0,'',NULL,NULL),(3,2,NULL,2,5,'Train',-1,1,150,NULL,20.000,0.000,NULL,0.000,NULL,125.00000000,25.00000000,0.00000000,0.00000000,150.00000000,'2015-02-05',0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,0,'',NULL,NULL); +/*!40000 ALTER TABLE `llx_expensereport_det` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expensereport_extrafields` +-- + +DROP TABLE IF EXISTS `llx_expensereport_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expensereport_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_expensereport_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expensereport_extrafields` +-- + +LOCK TABLES `llx_expensereport_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_expensereport_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_expensereport_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expensereport_ik` +-- + +DROP TABLE IF EXISTS `llx_expensereport_ik`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expensereport_ik` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_c_exp_tax_cat` int(11) NOT NULL DEFAULT '0', + `fk_range` int(11) NOT NULL DEFAULT '0', + `coef` double NOT NULL DEFAULT '0', + `ikoffset` double NOT NULL DEFAULT '0', + `active` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expensereport_ik` +-- + +LOCK TABLES `llx_expensereport_ik` WRITE; +/*!40000 ALTER TABLE `llx_expensereport_ik` DISABLE KEYS */; +INSERT INTO `llx_expensereport_ik` VALUES (1,NULL,'2018-01-19 11:09:35',4,1,0.41,0,1),(2,NULL,'2018-01-19 11:09:35',4,2,0.244,824,1),(3,NULL,'2018-01-19 11:09:35',4,3,0.286,0,1),(4,NULL,'2018-01-19 11:09:35',5,4,0.493,0,1),(5,NULL,'2018-01-19 11:09:35',5,5,0.277,1082,1),(6,NULL,'2018-01-19 11:09:35',5,6,0.332,0,1),(7,NULL,'2018-01-19 11:09:35',6,7,0.543,0,1),(8,NULL,'2018-01-19 11:09:35',6,8,0.305,1180,1),(9,NULL,'2018-01-19 11:09:35',6,9,0.364,0,1),(10,NULL,'2018-01-19 11:09:35',7,10,0.568,0,1),(11,NULL,'2018-01-19 11:09:35',7,11,0.32,1244,1),(12,NULL,'2018-01-19 11:09:35',7,12,0.382,0,1),(13,NULL,'2018-01-19 11:09:35',8,13,0.595,0,1),(14,NULL,'2018-01-19 11:09:35',8,14,0.337,1288,1),(15,NULL,'2018-01-19 11:09:35',8,15,0.401,0,1); +/*!40000 ALTER TABLE `llx_expensereport_ik` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_expensereport_rules` +-- + +DROP TABLE IF EXISTS `llx_expensereport_rules`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_expensereport_rules` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dates` datetime NOT NULL, + `datee` datetime NOT NULL, + `amount` double(24,8) DEFAULT NULL, + `restrictive` tinyint(4) NOT NULL, + `fk_user` int(11) DEFAULT NULL, + `fk_usergroup` int(11) DEFAULT NULL, + `fk_c_type_fees` int(11) NOT NULL, + `code_expense_rules_type` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `is_for_all` tinyint(4) DEFAULT '0', + `entity` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_expensereport_rules` +-- + +LOCK TABLES `llx_expensereport_rules` WRITE; +/*!40000 ALTER TABLE `llx_expensereport_rules` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_expensereport_rules` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_export_compta` +-- + +DROP TABLE IF EXISTS `llx_export_compta`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_export_compta` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(12) COLLATE utf8_unicode_ci NOT NULL, + `date_export` datetime NOT NULL, + `fk_user` int(11) NOT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_export_compta` +-- + +LOCK TABLES `llx_export_compta` WRITE; +/*!40000 ALTER TABLE `llx_export_compta` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_export_compta` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_export_model` +-- + +DROP TABLE IF EXISTS `llx_export_model`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_export_model` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL DEFAULT '0', + `label` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `type` varchar(20) COLLATE utf8_unicode_ci NOT NULL, + `field` text COLLATE utf8_unicode_ci NOT NULL, + `filter` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_export_model` (`label`,`type`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_export_model` +-- + +LOCK TABLES `llx_export_model` WRITE; +/*!40000 ALTER TABLE `llx_export_model` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_export_model` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_extrafields` +-- + +DROP TABLE IF EXISTS `llx_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `elementtype` varchar(64) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'member', + `name` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `type` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL, + `size` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL, + `pos` int(11) DEFAULT '0', + `alwayseditable` int(11) DEFAULT '0', + `param` text COLLATE utf8_unicode_ci, + `fieldunique` int(11) DEFAULT '0', + `fieldrequired` int(11) DEFAULT '0', + `perms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `list` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `totalizable` tinyint(1) DEFAULT '0', + `ishidden` int(11) DEFAULT '0', + `fieldcomputed` text COLLATE utf8_unicode_ci, + `fielddefault` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `langs` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `enabled` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `help` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_extrafields_name` (`name`,`entity`,`elementtype`) +) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_extrafields` +-- + +LOCK TABLES `llx_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_extrafields` DISABLE KEYS */; +INSERT INTO `llx_extrafields` VALUES (2,'adherent','zzz',1,'2018-01-19 11:17:49','zzz','varchar','255',0,0,NULL,0,0,NULL,'1',0,0,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL),(27,'projet','priority',1,'2018-01-19 11:17:49','Priority','select','',0,1,'a:1:{s:7:\"options\";a:5:{i:1;s:1:\"1\";i:2;s:1:\"2\";i:3;s:1:\"3\";i:4;s:1:\"4\";i:5;s:1:\"5\";}}',0,0,NULL,'1',0,0,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL); +/*!40000 ALTER TABLE `llx_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_factory` +-- + +DROP TABLE IF EXISTS `llx_factory`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_factory` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) NOT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_entrepot` int(11) NOT NULL, + `description` text, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `date_start_planned` datetime DEFAULT NULL, + `date_start_made` datetime DEFAULT NULL, + `date_end_planned` datetime DEFAULT NULL, + `date_end_made` datetime DEFAULT NULL, + `duration_planned` double DEFAULT NULL, + `duration_made` double DEFAULT NULL, + `qty_planned` double DEFAULT NULL, + `qty_made` double DEFAULT NULL, + `note_public` text, + `note_private` text, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_close` int(11) DEFAULT NULL, + `model_pdf` varchar(255) DEFAULT NULL, + `fk_statut` smallint(6) DEFAULT '0', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_factory` +-- + +LOCK TABLES `llx_factory` WRITE; +/*!40000 ALTER TABLE `llx_factory` DISABLE KEYS */; +INSERT INTO `llx_factory` VALUES (1,'OF1410-0001',27,1,'test','2014-10-14 20:08:55','2014-10-14 00:00:00','2014-10-14 23:59:59','2014-10-16 06:00:00','2014-10-16 00:00:00',NULL,NULL,2,2,NULL,NULL,1,NULL,NULL,NULL,2),(2,'OF1410-0002',26,1,'','2014-10-14 20:23:01','0000-00-00 00:00:00','2014-10-14 23:59:59','0000-00-00 00:00:00',NULL,NULL,NULL,1,1,NULL,NULL,1,NULL,NULL,'capucin',2); +/*!40000 ALTER TABLE `llx_factory` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_factory_extrafields` +-- + +DROP TABLE IF EXISTS `llx_factory_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_factory_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_factory_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_factory_extrafields` +-- + +LOCK TABLES `llx_factory_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_factory_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_factory_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_factorydet` +-- + +DROP TABLE IF EXISTS `llx_factorydet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_factorydet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_factory` int(11) NOT NULL DEFAULT '0', + `fk_product` int(11) NOT NULL DEFAULT '0', + `qty_unit` double DEFAULT NULL, + `qty_planned` double DEFAULT NULL, + `qty_used` double DEFAULT NULL, + `qty_deleted` double DEFAULT NULL, + `pmp` double(24,8) DEFAULT '0.00000000', + `price` double(24,8) DEFAULT '0.00000000', + `fk_mvtstockplanned` int(11) NOT NULL DEFAULT '0', + `fk_mvtstockused` int(11) NOT NULL DEFAULT '0', + `fk_mvtstockother` int(11) NOT NULL DEFAULT '0', + `note_public` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_factorydet` (`fk_factory`,`fk_product`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_factorydet` +-- + +LOCK TABLES `llx_factorydet` WRITE; +/*!40000 ALTER TABLE `llx_factorydet` DISABLE KEYS */; +INSERT INTO `llx_factorydet` VALUES (1,1,26,2,4,4,0,0.00000000,0.00000000,13,0,0,NULL),(2,2,25,3,3,3,0,0.00000000,0.00000000,15,0,0,NULL); +/*!40000 ALTER TABLE `llx_factorydet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture` +-- + +DROP TABLE IF EXISTS `llx_facture`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `facnumber` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` smallint(6) NOT NULL DEFAULT '0', + `ref_client` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `increment` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `datef` date DEFAULT NULL, + `date_valid` date DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `paye` smallint(6) NOT NULL DEFAULT '0', + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `close_code` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `close_note` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `revenuestamp` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_facture_source` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) NOT NULL DEFAULT '1', + `fk_mode_reglement` int(11) DEFAULT NULL, + `date_lim_reglement` date DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `situation_cycle_ref` smallint(6) DEFAULT NULL, + `situation_counter` smallint(6) DEFAULT NULL, + `situation_final` smallint(6) DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_pointoftax` date DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_fac_rec_source` int(11) DEFAULT NULL, + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `module_source` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `pos_source` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_facture_uk_facnumber` (`facnumber`,`entity`), + KEY `idx_facture_fk_soc` (`fk_soc`), + KEY `idx_facture_fk_user_author` (`fk_user_author`), + KEY `idx_facture_fk_user_valid` (`fk_user_valid`), + KEY `idx_facture_fk_facture_source` (`fk_facture_source`), + KEY `idx_facture_fk_projet` (`fk_projet`), + KEY `idx_facture_fk_account` (`fk_account`), + KEY `idx_facture_fk_currency` (`fk_currency`), + KEY `idx_facture_fk_statut` (`fk_statut`), + CONSTRAINT `fk_facture_fk_facture_source` FOREIGN KEY (`fk_facture_source`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_facture_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_facture_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_facture_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_facture_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=218 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture` +-- + +LOCK TABLES `llx_facture` WRITE; +/*!40000 ALTER TABLE `llx_facture` DISABLE KEYS */; +INSERT INTO `llx_facture` VALUES (2,'FA1007-0002',1,NULL,NULL,0,NULL,NULL,2,'2010-07-10 18:20:13','2016-07-10',NULL,'2016-07-30 15:13:20',1,10.00000000,NULL,NULL,0,NULL,NULL,0.10000000,0.00000000,0.00000000,0.00000000,46.00000000,46.10000000,2,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2016-07-10',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(3,'FA1107-0006',1,NULL,NULL,0,NULL,NULL,10,'2011-07-18 20:33:35','2016-07-18',NULL,'2016-07-30 15:13:20',1,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,15.00000000,15.00000000,2,1,NULL,1,NULL,1,NULL,NULL,1,0,'2016-07-18',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(5,'FA1108-0003',1,NULL,NULL,0,NULL,NULL,7,'2011-08-01 03:34:11','2015-08-01',NULL,'2016-07-30 15:12:32',1,0.00000000,NULL,NULL,0,NULL,NULL,0.63000000,0.00000000,0.00000000,0.00000000,5.00000000,5.63000000,2,1,NULL,1,NULL,NULL,NULL,NULL,0,6,'2015-08-01',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(6,'FA1108-0004',1,NULL,NULL,0,NULL,NULL,7,'2011-08-06 20:33:53','2015-08-06',NULL,'2016-07-30 15:12:32',1,0.00000000,NULL,NULL,0,NULL,NULL,0.98000000,0.00000000,0.00000000,0.00000000,5.00000000,5.98000000,2,1,NULL,1,NULL,NULL,NULL,NULL,0,4,'2015-08-06','Cash\nReceived : 6 EUR\nRendu : 0.02 EUR\n\n--------------------------------------',NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(8,'FA1108-0005',1,NULL,NULL,3,NULL,NULL,2,'2011-08-08 02:41:44','2015-08-08',NULL,'2016-07-30 15:12:32',1,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,2,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-08-08',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(9,'FA1108-0007',1,NULL,NULL,3,NULL,NULL,10,'2011-08-08 02:55:14','2015-08-08',NULL,'2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,NULL,NULL,1.96000000,0.00000000,0.00000000,0.00000000,10.00000000,11.96000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-08-08',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(10,'AV1212-0001',1,NULL,NULL,2,NULL,NULL,10,'2012-12-08 17:45:20','2015-12-08','2015-12-08','2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,NULL,NULL,-0.63000000,0.00000000,0.00000000,0.00000000,-11.00000000,-11.63000000,1,1,NULL,1,3,NULL,NULL,NULL,0,0,'2015-12-08',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(12,'AV1212-0002',1,NULL,NULL,2,NULL,NULL,10,'2012-12-08 18:20:14','2015-12-08','2015-12-08','2016-07-30 15:12:32',1,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,-5.00000000,-5.00000000,2,1,NULL,1,3,NULL,NULL,NULL,0,0,'2015-12-08',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(13,'FA1212-0011',1,NULL,NULL,0,NULL,NULL,7,'2012-12-09 20:04:19','2015-12-09','2016-02-12','2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,NULL,NULL,2.74000000,0.00000000,0.00000000,0.00000000,14.00000000,16.74000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-12-09',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(32,'FA1212-0021',1,NULL,NULL,0,NULL,NULL,1,'2012-12-11 09:34:23','2015-12-11','2016-03-24','2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,NULL,NULL,90.00000000,0.00000000,0.00000000,0.60000000,520.00000000,610.60000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-12-11','This is a comment (private)','This is a comment (public)','crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(33,'FA1212-0023',1,NULL,NULL,0,NULL,NULL,1,'2012-12-11 09:34:23','2015-12-11','2017-03-03','2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,'abandon',NULL,0.24000000,0.00000000,0.00000000,0.00000000,2.48000000,2.72000000,3,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-12-11','This is a comment (private)','This is a comment (public)','crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(55,'FA1212-0009',1,NULL,NULL,0,NULL,NULL,1,'2012-12-11 09:35:51','2015-12-11','2015-12-12','2016-07-30 15:12:32',0,0.00000000,NULL,NULL,0,NULL,NULL,0.24000000,0.00000000,0.00000000,0.00000000,2.48000000,2.72000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2015-12-11','This is a comment (private)','This is a comment (public)','generic_invoice_odt:/home/ldestailleur/git/dolibarr_3.8/documents/doctemplates/invoices/template_invoice.odt',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(148,'FS1301-0001',1,NULL,NULL,0,NULL,NULL,1,'2013-01-19 18:22:48','2016-01-19','2016-01-19','2016-07-30 15:13:20',0,0.00000000,NULL,NULL,0,NULL,NULL,0.63000000,0.00000000,0.00000000,0.00000000,5.00000000,5.63000000,1,1,NULL,1,NULL,NULL,NULL,NULL,0,1,'2016-01-19',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(149,'FA1601-0024',1,NULL,NULL,0,NULL,NULL,1,'2013-01-19 18:30:05','2016-01-19','2017-08-29','2018-03-16 09:59:31',0,0.00000000,NULL,NULL,0,NULL,NULL,1.80000000,0.90000000,0.90000000,0.00000000,20.00000000,23.60000000,1,1,NULL,12,NULL,NULL,NULL,NULL,0,0,'2016-01-19',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,20.00000000,1.80000000,23.60000000,NULL,'facture/FA1601-0024/FA1601-0024.pdf',NULL,NULL),(150,'FA6801-0010',1,NULL,NULL,0,NULL,NULL,1,'2013-01-19 18:31:10','2016-01-19','2016-01-19','2016-07-30 15:13:20',1,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,2,1,NULL,1,NULL,NULL,NULL,NULL,0,1,'2016-01-19',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(151,'FS1301-0002',1,NULL,NULL,0,NULL,NULL,1,'2013-01-19 18:31:58','2016-01-19','2016-01-19','2016-07-30 15:13:20',1,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,2,1,NULL,1,NULL,NULL,NULL,NULL,0,1,'2016-01-19',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(160,'FA1507-0015',1,NULL,NULL,0,NULL,NULL,12,'2013-03-06 16:47:48','2016-07-18','2014-03-06','2016-07-30 15:13:20',0,0.00000000,NULL,NULL,0,NULL,NULL,1.11000000,0.00000000,0.00000000,0.00000000,8.89000000,10.00000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2016-07-18',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(210,'FA1107-0019',1,NULL,NULL,0,NULL,NULL,10,'2013-03-20 14:30:11','2016-07-10','2018-03-20','2016-07-30 15:13:20',0,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,0,'2016-07-10',NULL,NULL,'generic_invoice_odt:/home/ldestailleur/git/dolibarr_3.8/documents/doctemplates/invoices/template_invoice.odt',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(211,'FA1303-0020',1,NULL,NULL,0,NULL,NULL,19,'2013-03-22 09:40:10','2016-03-22','2017-03-02','2017-02-06 04:11:17',0,0.00000000,NULL,NULL,0,NULL,NULL,17.64000000,0.00000000,0.00000000,0.40000000,340.00000000,358.04000000,1,1,NULL,1,NULL,NULL,NULL,NULL,1,3,'2016-03-22',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(213,'AV1303-0003',1,NULL,NULL,2,NULL,NULL,1,'2014-03-03 19:22:03','2016-03-03','2017-03-03','2016-07-30 15:13:20',0,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,-1000.00000000,-1000.00000000,1,1,NULL,1,32,NULL,NULL,NULL,0,0,'2016-03-03',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(216,'(PROV216)',1,NULL,NULL,0,NULL,NULL,26,'2017-02-12 23:21:27','2017-02-12',NULL,'2017-02-12 19:21:27',0,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,12,NULL,NULL,NULL,NULL,NULL,NULL,1,0,'2017-02-12',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,0,0,'',NULL,0,'EUR',1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL,NULL),(217,'(PROV217)',1,NULL,NULL,0,NULL,NULL,1,'2017-08-31 13:26:17','2017-08-31',NULL,'2017-08-31 09:26:17',0,0.00000000,NULL,NULL,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,0,12,NULL,NULL,NULL,NULL,NULL,NULL,1,0,'2017-08-31',NULL,NULL,'crabe',NULL,NULL,NULL,NULL,0,0,'',NULL,1,'EUR',1.00000000,10.00000000,0.00000000,10.00000000,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_facture` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facture_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facture_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_extrafields` +-- + +LOCK TABLES `llx_facture_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facture_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facture_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_fourn` +-- + +DROP TABLE IF EXISTS `llx_facture_fourn`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_fourn` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `ref_supplier` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` smallint(6) NOT NULL DEFAULT '0', + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `datef` date DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `paye` smallint(6) NOT NULL DEFAULT '0', + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `remise` double(24,8) DEFAULT '0.00000000', + `close_code` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `close_note` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_facture_source` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `date_lim_reglement` date DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_pointoftax` date DEFAULT NULL, + `date_valid` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_facture_fourn_ref` (`ref`,`entity`), + UNIQUE KEY `uk_facture_fourn_ref_supplier` (`ref_supplier`,`fk_soc`,`entity`), + KEY `idx_facture_fourn_date_lim_reglement` (`date_lim_reglement`), + KEY `idx_facture_fourn_fk_soc` (`fk_soc`), + KEY `idx_facture_fourn_fk_user_author` (`fk_user_author`), + KEY `idx_facture_fourn_fk_user_valid` (`fk_user_valid`), + KEY `idx_facture_fourn_fk_projet` (`fk_projet`), + CONSTRAINT `fk_facture_fourn_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_facture_fourn_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_facture_fourn_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_facture_fourn_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_fourn` +-- + +LOCK TABLES `llx_facture_fourn` WRITE; +/*!40000 ALTER TABLE `llx_facture_fourn` DISABLE KEYS */; +INSERT INTO `llx_facture_fourn` VALUES (16,'SI1601-0001','FR70813',1,NULL,0,1,'2012-12-19 15:24:11','2003-04-11','2017-02-06 04:08:22','OVH FR70813',0,0.00000000,0.00000000,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,829.00000000,162.48000000,991.48000000,1,1,NULL,12,NULL,NULL,NULL,1,NULL,'2003-04-11','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL),(17,'SI1601-0002','FR81385',1,NULL,0,1,'2013-02-13 17:19:35','2003-06-04','2017-02-06 04:08:31','OVH FR81385',0,0.00000000,0.00000000,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,26.00000000,5.10000000,31.10000000,0,1,NULL,NULL,NULL,NULL,NULL,1,NULL,'2003-06-04','','','canelle',NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL),(18,'SI1601-0003','FR81385',1,NULL,0,2,'2013-02-13 17:20:25','2003-06-04','2017-02-06 04:08:35','OVH FR81385',0,0.00000000,0.00000000,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,26.00000000,5.10000000,31.10000000,0,1,NULL,NULL,NULL,NULL,NULL,1,NULL,'2003-06-04','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL),(19,'SI1601-0004','FR813852',1,NULL,0,2,'2013-03-16 17:59:02','2013-03-16','2017-02-06 04:08:38','OVH FR81385',0,0.00000000,0.00000000,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,26.00000000,5.10000000,31.10000000,0,1,NULL,NULL,NULL,NULL,NULL,1,NULL,NULL,'','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,NULL),(20,'SI1702-0001','INV-AE56ER08',1,NULL,0,13,'2017-02-01 19:00:31','2017-02-01','2017-02-01 15:05:28','',0,0.00000000,0.00000000,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,200.00000000,39.20000000,239.20000000,1,12,NULL,12,NULL,5,NULL,1,0,'2017-02-01','The customer has called us the 24th april. He agree us to not pay the remain of invoice due to default.
\r\nLet\'s see with our book keeper, if we must cancel invoice or ask the supplier a credit note...',NULL,'canelle',NULL,NULL,0,'',0,'EUR',1.00000000,200.00000000,39.20000000,239.20000000,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_facture_fourn` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_fourn_det` +-- + +DROP TABLE IF EXISTS `llx_facture_fourn_det`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_fourn_det` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture_fourn` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `pu_ht` double(24,8) DEFAULT NULL, + `pu_ttc` double(24,8) DEFAULT NULL, + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `tva_tx` double(6,3) DEFAULT NULL, + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `total_ht` double(24,8) DEFAULT NULL, + `tva` double(24,8) DEFAULT NULL, + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT NULL, + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_code_ventilation` int(11) NOT NULL DEFAULT '0', + `special_code` int(11) DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `idx_facture_fourn_det_fk_facture` (`fk_facture_fourn`), + KEY `fk_facture_fourn_det_fk_unit` (`fk_unit`), + KEY `idx_facture_fourn_det_fk_code_ventilation` (`fk_code_ventilation`), + KEY `idx_facture_fourn_det_fk_product` (`fk_product`), + CONSTRAINT `fk_facture_fourn_det_fk_facture` FOREIGN KEY (`fk_facture_fourn`) REFERENCES `llx_facture_fourn` (`rowid`), + CONSTRAINT `fk_facture_fourn_det_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=54 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_fourn_det` +-- + +LOCK TABLES `llx_facture_fourn_det` WRITE; +/*!40000 ALTER TABLE `llx_facture_fourn_det` DISABLE KEYS */; +INSERT INTO `llx_facture_fourn_det` VALUES (44,16,NULL,NULL,NULL,NULL,'ref :sd.loc.sp.512.6
6 mois - Location de SuperPlan avec la connexion 512kbs
Du 11/04/2003 à 11/10/2003',414.00000000,495.14400000,1,0,19.600,'',0.000,'',0.000,'',414.00000000,81.14000000,0.00000000,0.00000000,495.14000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(45,16,NULL,NULL,NULL,NULL,'ref :sd.loc.sp.512.6
6 mois - Location de SuperPlan avec la connexion 512kbs
Du 11/10/2003 à 11/04/2004',414.00000000,495.14400000,1,0,19.600,'',0.000,'',0.000,'',414.00000000,81.14000000,0.00000000,0.00000000,495.14000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(46,16,NULL,NULL,NULL,NULL,'ref :sd.installation.annuel
Frais de mise en service d\'un serveur dédié pour un paiement annuel
',1.00000000,1.19600000,1,0,19.600,'',0.000,'',0.000,'',1.00000000,0.20000000,0.00000000,0.00000000,1.20000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(47,17,NULL,NULL,NULL,NULL,'ref :bk.full250.creation
Création du compte backup ftp 250Mo.
',1.00000000,1.19600000,1,0,19.600,'',0.000,'',0.000,'',1.00000000,0.20000000,0.00000000,0.00000000,1.20000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(48,17,NULL,NULL,NULL,NULL,'ref :bk.full250.12
Redevance pour un backup de 250Mo sur 12 mois
',25.00000000,29.90000000,1,0,19.600,'',0.000,'',0.000,'',25.00000000,4.90000000,0.00000000,0.00000000,29.90000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(49,18,NULL,NULL,NULL,NULL,'ref :bk.full250.creation
Création du compte backup ftp 250Mo.
',1.00000000,1.19600000,1,0,19.600,'',0.000,'',0.000,'',1.00000000,0.20000000,0.00000000,0.00000000,1.20000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(50,18,NULL,NULL,NULL,NULL,'ref :bk.full250.12
Redevance pour un backup de 250Mo sur 12 mois
',25.00000000,29.90000000,1,0,19.600,'',0.000,'',0.000,'',25.00000000,4.90000000,0.00000000,0.00000000,29.90000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(51,19,NULL,NULL,NULL,NULL,'ref :bk.full250.creation
Création du compte backup ftp 250Mo.
',1.00000000,1.19600000,1,0,19.600,'',0.000,'0',0.000,'0',1.00000000,0.20000000,0.00000000,0.00000000,1.20000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(52,19,NULL,NULL,NULL,NULL,'ref :bk.full250.12
Redevance pour un backup de 250Mo sur 12 mois
',25.00000000,29.90000000,1,0,19.600,'',0.000,'0',0.000,'0',25.00000000,4.90000000,0.00000000,0.00000000,29.90000000,0,NULL,NULL,0,NULL,0,0,0,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(53,20,NULL,NULL,NULL,NULL,'Chips',20.00000000,23.92000000,10,0,19.600,'',0.000,'0',0.000,'0',200.00000000,39.20000000,0.00000000,0.00000000,239.20000000,0,NULL,NULL,0,NULL,0,0,0,NULL,0,'EUR',20.00000000,200.00000000,39.20000000,239.20000000); +/*!40000 ALTER TABLE `llx_facture_fourn_det` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_fourn_det_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facture_fourn_det_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_fourn_det_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facture_fourn_det_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_fourn_det_extrafields` +-- + +LOCK TABLES `llx_facture_fourn_det_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facture_fourn_det_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facture_fourn_det_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_fourn_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facture_fourn_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_fourn_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facture_fourn_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_fourn_extrafields` +-- + +LOCK TABLES `llx_facture_fourn_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facture_fourn_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facture_fourn_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_rec` +-- + +DROP TABLE IF EXISTS `llx_facture_rec`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_rec` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `titre` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `remise` double DEFAULT '0', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_user_author` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT '0', + `fk_mode_reglement` int(11) DEFAULT '0', + `date_lim_reglement` date DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `modelpdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `last_gen` varchar(7) COLLATE utf8_unicode_ci DEFAULT NULL, + `unit_frequency` varchar(2) COLLATE utf8_unicode_ci DEFAULT 'd', + `date_when` datetime DEFAULT NULL, + `date_last_gen` datetime DEFAULT NULL, + `nb_gen_done` int(11) DEFAULT NULL, + `nb_gen_max` int(11) DEFAULT NULL, + `frequency` int(11) DEFAULT NULL, + `usenewprice` int(11) DEFAULT '0', + `revenuestamp` double(24,8) DEFAULT '0.00000000', + `auto_validate` int(11) DEFAULT '0', + `generate_pdf` int(11) DEFAULT '1', + `fk_account` int(11) DEFAULT '0', + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_user_modif` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `suspended` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_facture_rec_uk_titre` (`titre`,`entity`), + KEY `idx_facture_rec_fk_soc` (`fk_soc`), + KEY `idx_facture_rec_fk_user_author` (`fk_user_author`), + KEY `idx_facture_rec_fk_projet` (`fk_projet`), + CONSTRAINT `fk_facture_rec_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_facture_rec_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_facture_rec_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_rec` +-- + +LOCK TABLES `llx_facture_rec` WRITE; +/*!40000 ALTER TABLE `llx_facture_rec` DISABLE KEYS */; +INSERT INTO `llx_facture_rec` VALUES (1,'fsdfsfsfsf',1,10,'2017-02-07 03:47:00',0.00000000,0,0,0,0.00000000,0.00000000,0.00000000,10.00000000,10.00000000,12,NULL,1,0,NULL,NULL,NULL,NULL,NULL,'m',NULL,NULL,0,0,0,0,0.00000000,0,1,3,NULL,NULL,1.00000000,10.00000000,0.00000000,10.00000000,NULL,'2017-02-07 02:47:00','',0),(2,'fffff',1,10,'2017-02-07 03:47:58',0.00000000,0,0,0,0.00000000,0.00000000,0.00000000,5.00000000,5.00000000,12,6,1,2,NULL,NULL,NULL,NULL,NULL,'m',NULL,NULL,0,0,0,0,0.00000000,0,1,4,NULL,NULL,1.00000000,5.00000000,0.00000000,5.00000000,NULL,'2017-02-07 02:47:58','',0); +/*!40000 ALTER TABLE `llx_facture_rec` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facture_rec_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facture_rec_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facture_rec_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facture_rec_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facture_rec_extrafields` +-- + +LOCK TABLES `llx_facture_rec_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facture_rec_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facture_rec_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facturedet` +-- + +DROP TABLE IF EXISTS `llx_facturedet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facturedet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `tva_tx` double(6,3) DEFAULT NULL, + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `fk_remise_except` int(11) DEFAULT NULL, + `subprice` double(24,8) DEFAULT NULL, + `price` double(24,8) DEFAULT NULL, + `total_ht` double(24,8) DEFAULT NULL, + `total_tva` double(24,8) DEFAULT NULL, + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT NULL, + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `fk_code_ventilation` int(11) NOT NULL DEFAULT '0', + `special_code` int(10) unsigned DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_contract_line` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `situation_percent` double DEFAULT NULL, + `fk_prev_id` int(11) DEFAULT NULL, + `fk_unit` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_fk_remise_except` (`fk_remise_except`,`fk_facture`), + KEY `idx_facturedet_fk_facture` (`fk_facture`), + KEY `idx_facturedet_fk_product` (`fk_product`), + KEY `fk_facturedet_fk_unit` (`fk_unit`), + KEY `idx_facturedet_fk_code_ventilation` (`fk_code_ventilation`), + CONSTRAINT `fk_facturedet_fk_facture` FOREIGN KEY (`fk_facture`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_facturedet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=1031 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facturedet` +-- + +LOCK TABLES `llx_facturedet` WRITE; +/*!40000 ALTER TABLE `llx_facturedet` DISABLE KEYS */; +INSERT INTO `llx_facturedet` VALUES (3,2,NULL,3,NULL,'Service S1',0.000,'',0.000,'',0.000,'',1,10,4,NULL,40.00000000,36.00000000,36.00000000,0.00000000,0.00000000,0.00000000,36.00000000,1,'2010-07-10 00:00:00',NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(4,2,NULL,NULL,NULL,'Abonnement annuel assurance',1.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,10.00000000,0.10000000,0.00000000,0.00000000,10.10000000,0,'2010-07-10 00:00:00','2011-07-10 00:00:00',0,NULL,0.00000000,0,0,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(11,3,NULL,4,NULL,'afsdfsdfsdfsdf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(12,3,NULL,NULL,NULL,'dfdfd',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(13,5,NULL,4,NULL,'Decapsuleur',12.500,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,5.00000000,0.63000000,0.00000000,0.00000000,5.63000000,0,NULL,NULL,0,NULL,0.00000000,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(14,6,NULL,4,NULL,'Decapsuleur',19.600,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,5.00000000,0.98000000,0.00000000,0.00000000,5.98000000,0,NULL,NULL,0,NULL,0.00000000,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(21,8,NULL,NULL,NULL,'dddd',0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(22,9,NULL,NULL,NULL,'ggg',19.600,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,10.00000000,1.96000000,0.00000000,0.00000000,11.96000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(23,10,NULL,4,NULL,'',12.500,'',0.000,'',0.000,'',1,0,0,NULL,-5.00000000,NULL,-5.00000000,-0.63000000,0.00000000,0.00000000,-5.63000000,0,NULL,NULL,0,NULL,12.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(24,10,NULL,1,NULL,'A beatifull pink dress\r\nlkm',0.000,'',0.000,'',0.000,'',1,0,0,NULL,-6.00000000,NULL,-6.00000000,0.00000000,0.00000000,0.00000000,-6.00000000,0,NULL,NULL,0,0,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(26,12,NULL,1,NULL,'A beatifull pink dress\r\nhfghf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,-5.00000000,NULL,-5.00000000,0.00000000,0.00000000,0.00000000,-5.00000000,0,NULL,NULL,0,0,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(27,13,NULL,NULL,NULL,'gdfgdf',19.600,'',0.000,'',0.000,'',1.4,0,0,NULL,10.00000000,NULL,14.00000000,2.74000000,0.00000000,0.00000000,16.74000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(137,33,NULL,NULL,NULL,'Desc',10.000,'',0.000,'',0.000,'',1,0,0,NULL,1.24000000,NULL,1.24000000,0.12000000,0.00000000,0.00000000,1.36000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(138,33,NULL,NULL,NULL,'Desc',10.000,'',0.000,'',0.000,'',1,0,0,NULL,1.24000000,NULL,1.24000000,0.12000000,0.00000000,0.00000000,1.36000000,0,NULL,NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(256,55,NULL,NULL,NULL,'Desc',10.000,'',0.000,'',0.000,'',1,0,0,NULL,1.24000000,NULL,1.24000000,0.12000000,0.00000000,0.00000000,1.36000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(257,55,NULL,NULL,NULL,'Desc',10.000,'',0.000,'',0.000,'',1,0,0,NULL,1.24000000,NULL,1.24000000,0.12000000,0.00000000,0.00000000,1.36000000,0,NULL,NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(753,13,NULL,2,NULL,'(Pays d\'origine: Albanie)',0.000,'',0.000,'',0.000,'',1,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,0,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(754,148,NULL,11,NULL,'hfghf',0.000,'',0.000,'',0.000,'',1,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(755,148,NULL,4,NULL,'Decapsuleur',12.500,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,NULL,5.00000000,0.63000000,0.00000000,0.00000000,5.63000000,0,NULL,NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(757,150,NULL,2,NULL,'Product P1',12.500,'',0.000,'',0.000,'',1,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(758,151,NULL,2,NULL,'Product P1',12.500,'',0.000,'',0.000,'',1,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(768,32,NULL,NULL,NULL,'mlml',18.000,'',0.000,'',0.000,'',1,0,0,NULL,100.00000000,NULL,100.00000000,18.00000000,0.00000000,0.00000000,118.00000000,0,NULL,NULL,0,NULL,46.00000000,0,0,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(769,32,NULL,NULL,NULL,'mlkml',18.000,'',0.000,'',0.000,'',1,0,0,NULL,400.00000000,NULL,400.00000000,72.00000000,0.00000000,0.00000000,472.00000000,0,NULL,NULL,0,NULL,300.00000000,0,0,4,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(772,160,NULL,NULL,NULL,'Adhésion/cotisation 2015',12.500,'',0.000,'',0.000,'',1,0,0,NULL,8.88889000,NULL,8.89000000,1.11000000,0.00000000,0.00000000,10.00000000,1,'2015-07-18 00:00:00','2016-07-17 00:00:00',0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(776,32,NULL,NULL,NULL,'fsdfsdfds',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,NULL,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,5,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(777,32,NULL,NULL,NULL,'fsdfsdfds',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,NULL,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,6,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(779,32,NULL,NULL,NULL,'fsdfds',0.000,'',0.000,'0',0.000,'0',0,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,9,NULL,NULL,0,0,0.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(780,32,NULL,NULL,NULL,'ffsdf',0.000,'',0.000,'0',0.000,'0',0,0,0,NULL,0.00000000,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,9,NULL,NULL,0,NULL,0.00000000,0,1790,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(1022,210,NULL,NULL,NULL,'Adhésion/cotisation 2011',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,NULL,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,1,'2011-07-10 00:00:00','2012-07-09 00:00:00',0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(1023,211,NULL,NULL,NULL,'Samsung Android x4',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,250.00000000,NULL,250.00000000,0.00000000,0.00000000,0.00000000,250.00000000,0,NULL,NULL,0,NULL,200.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(1024,211,NULL,1,NULL,'A beatifull pink dress\r\nSize XXL',19.600,'',0.000,'0',0.000,'0',1,10,0,NULL,100.00000000,NULL,90.00000000,17.64000000,0.00000000,0.00000000,107.64000000,0,NULL,NULL,0,NULL,90.00000000,0,0,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(1026,213,NULL,1,NULL,'A beatifull pink dress',0.000,'',0.000,'0',0.000,'0',10,0,0,NULL,-100.00000000,NULL,-1000.00000000,0.00000000,0.00000000,0.00000000,-1000.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(1028,149,NULL,NULL,NULL,'opoo',0.000,'CGST+SGST',9.000,'1',9.000,'1',1,0,0,NULL,10.00000000,NULL,10.00000000,0.00000000,0.90000000,0.90000000,11.80000000,0,NULL,NULL,0,NULL,0.00000000,0,0,2,NULL,NULL,100,NULL,NULL,12,12,0,'',10.00000000,10.00000000,0.00000000,11.80000000),(1029,149,NULL,NULL,NULL,'gdgd',18.000,'IGST',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,NULL,10.00000000,1.80000000,0.00000000,0.00000000,11.80000000,0,NULL,NULL,0,NULL,0.00000000,0,0,3,NULL,NULL,100,NULL,NULL,12,12,0,'',10.00000000,10.00000000,1.80000000,11.80000000),(1030,217,NULL,NULL,NULL,'gfdgdf',0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,NULL,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,0,0,NULL,NULL,100,NULL,NULL,12,12,1,'EUR',10.00000000,10.00000000,0.00000000,10.00000000); +/*!40000 ALTER TABLE `llx_facturedet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facturedet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facturedet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facturedet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facturedet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facturedet_extrafields` +-- + +LOCK TABLES `llx_facturedet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facturedet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facturedet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facturedet_rec` +-- + +DROP TABLE IF EXISTS `llx_facturedet_rec`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facturedet_rec` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `product_type` int(11) DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `tva_tx` double(6,3) DEFAULT NULL, + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `subprice` double(24,8) DEFAULT NULL, + `price` double(24,8) DEFAULT NULL, + `total_ht` double(24,8) DEFAULT NULL, + `total_tva` double(24,8) DEFAULT NULL, + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `special_code` int(10) unsigned DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_contract_line` int(11) DEFAULT NULL, + `fk_unit` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `date_start_fill` int(11) DEFAULT '0', + `date_end_fill` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `fk_facturedet_rec_fk_unit` (`fk_unit`), + CONSTRAINT `fk_facturedet_rec_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facturedet_rec` +-- + +LOCK TABLES `llx_facturedet_rec` WRITE; +/*!40000 ALTER TABLE `llx_facturedet_rec` DISABLE KEYS */; +INSERT INTO `llx_facturedet_rec` VALUES (1,1,NULL,NULL,0,NULL,'ùkù',0.000,'',0.000,'0',0.000,'0',1,0,NULL,10.00000000,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,0),(3,2,NULL,NULL,0,NULL,'ddd',0.000,'',0.000,'0',0.000,'0',1,0,NULL,5.00000000,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,0,1,NULL,NULL,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0,0); +/*!40000 ALTER TABLE `llx_facturedet_rec` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_facturedet_rec_extrafields` +-- + +DROP TABLE IF EXISTS `llx_facturedet_rec_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_facturedet_rec_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_facturedet_rec_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_facturedet_rec_extrafields` +-- + +LOCK TABLES `llx_facturedet_rec_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_facturedet_rec_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_facturedet_rec_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_fichinter` +-- + +DROP TABLE IF EXISTS `llx_fichinter`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_fichinter` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) NOT NULL, + `fk_projet` int(11) DEFAULT '0', + `fk_contrat` int(11) DEFAULT '0', + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `datei` date DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_statut` smallint(6) DEFAULT '0', + `duree` double DEFAULT NULL, + `dateo` date DEFAULT NULL, + `datee` date DEFAULT NULL, + `datet` date DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_fichinter_ref` (`ref`,`entity`), + KEY `idx_fichinter_fk_soc` (`fk_soc`), + CONSTRAINT `fk_fichinter_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_fichinter` +-- + +LOCK TABLES `llx_fichinter` WRITE; +/*!40000 ALTER TABLE `llx_fichinter` DISABLE KEYS */; +INSERT INTO `llx_fichinter` VALUES (1,2,1,0,'FI1007-0001',1,'2016-01-22 17:39:37','2010-07-09 01:42:41','2016-01-22 18:39:37',NULL,1,NULL,12,1,10800,NULL,NULL,NULL,NULL,NULL,NULL,'soleil',NULL,NULL,NULL,NULL),(2,1,NULL,0,'FI1007-0002',1,'2012-12-08 13:11:07','2010-07-11 16:07:51',NULL,NULL,1,NULL,NULL,0,3600,NULL,NULL,NULL,'ferfrefeferf',NULL,NULL,'soleil',NULL,NULL,NULL,NULL),(3,2,NULL,0,'FI1511-0003',1,'2016-07-30 15:51:16','2015-11-18 15:57:34','2016-01-22 18:38:46',NULL,2,NULL,12,1,36000,NULL,NULL,NULL,NULL,NULL,NULL,'soleil',NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_fichinter` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_fichinter_extrafields` +-- + +DROP TABLE IF EXISTS `llx_fichinter_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_fichinter_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_ficheinter_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_fichinter_extrafields` +-- + +LOCK TABLES `llx_fichinter_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_fichinter_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_fichinter_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_fichinterdet` +-- + +DROP TABLE IF EXISTS `llx_fichinterdet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_fichinterdet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_fichinter` int(11) DEFAULT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `date` datetime DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `duree` int(11) DEFAULT NULL, + `rang` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_fichinterdet_fk_fichinter` (`fk_fichinter`), + CONSTRAINT `fk_fichinterdet_fk_fichinter` FOREIGN KEY (`fk_fichinter`) REFERENCES `llx_fichinter` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_fichinterdet` +-- + +LOCK TABLES `llx_fichinterdet` WRITE; +/*!40000 ALTER TABLE `llx_fichinterdet` DISABLE KEYS */; +INSERT INTO `llx_fichinterdet` VALUES (1,1,NULL,'2010-07-07 04:00:00','Intervention sur site',3600,0),(2,1,NULL,'2010-07-08 11:00:00','Other actions on client site.',7200,0),(3,2,NULL,'2010-07-11 05:00:00','Pres',3600,0),(5,3,NULL,'2015-11-18 09:00:00','Intervention on building windows 1',32400,0),(6,3,NULL,'2016-01-22 00:00:00','Intervention on building windows 2',3600,0); +/*!40000 ALTER TABLE `llx_fichinterdet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_fichinterdet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_fichinterdet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_fichinterdet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_ficheinterdet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_fichinterdet_extrafields` +-- + +LOCK TABLES `llx_fichinterdet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_fichinterdet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_fichinterdet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_holiday` +-- + +DROP TABLE IF EXISTS `llx_holiday`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_holiday` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `date_create` datetime NOT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `date_debut` date NOT NULL, + `date_fin` date NOT NULL, + `halfday` int(11) DEFAULT '0', + `statut` int(11) NOT NULL DEFAULT '1', + `fk_validator` int(11) NOT NULL, + `date_valid` datetime DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `date_refuse` datetime DEFAULT NULL, + `fk_user_refuse` int(11) DEFAULT NULL, + `date_cancel` datetime DEFAULT NULL, + `fk_user_cancel` int(11) DEFAULT NULL, + `detail_refuse` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `note` text COLLATE utf8_unicode_ci, + `fk_user_create` int(11) DEFAULT NULL, + `fk_type` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_holiday_fk_user` (`fk_user`), + KEY `idx_holiday_date_debut` (`date_debut`), + KEY `idx_holiday_date_fin` (`date_fin`), + KEY `idx_holiday_fk_user_create` (`fk_user_create`), + KEY `idx_holiday_date_create` (`date_create`), + KEY `idx_holiday_fk_validator` (`fk_validator`), + KEY `idx_holiday_entity` (`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_holiday` +-- + +LOCK TABLES `llx_holiday` WRITE; +/*!40000 ALTER TABLE `llx_holiday` DISABLE KEYS */; +INSERT INTO `llx_holiday` VALUES (1,1,'2013-02-17 19:06:35','gdf','2013-02-10','2013-02-11',0,3,1,'2013-02-17 19:06:57',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,'2018-11-23 11:57:26',1,'1',NULL,NULL,NULL,NULL),(2,12,'2016-01-22 19:10:01','','2016-01-04','2016-01-08',0,1,11,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,12,5,'2018-11-23 11:57:26',1,'2',NULL,NULL,NULL,NULL),(3,13,'2016-01-22 19:10:29','','2016-01-11','2016-01-13',0,2,11,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,12,5,'2018-11-23 11:57:26',1,'3',NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_holiday` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_holiday_config` +-- + +DROP TABLE IF EXISTS `llx_holiday_config`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_holiday_config` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `value` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `name` (`name`), + UNIQUE KEY `idx_holiday_config` (`name`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_holiday_config` +-- + +LOCK TABLES `llx_holiday_config` WRITE; +/*!40000 ALTER TABLE `llx_holiday_config` DISABLE KEYS */; +INSERT INTO `llx_holiday_config` VALUES (1,'userGroup','1'),(2,'lastUpdate','20170829181921'),(3,'nbUser',''),(4,'delayForRequest','31'),(5,'AlertValidatorDelay','0'),(6,'AlertValidatorSolde','0'),(7,'nbHolidayDeducted','1'),(8,'nbHolidayEveryMonth','2.08334'); +/*!40000 ALTER TABLE `llx_holiday_config` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_holiday_logs` +-- + +DROP TABLE IF EXISTS `llx_holiday_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_holiday_logs` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_action` datetime NOT NULL, + `fk_user_action` int(11) NOT NULL, + `fk_user_update` int(11) NOT NULL, + `type_action` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `prev_solde` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `new_solde` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `fk_type` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=195 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_holiday_logs` +-- + +LOCK TABLES `llx_holiday_logs` WRITE; +/*!40000 ALTER TABLE `llx_holiday_logs` DISABLE KEYS */; +INSERT INTO `llx_holiday_logs` VALUES (1,'2013-01-17 21:03:15',1,1,'Event : Mise à jour mensuelle','0.00','2.08',1),(2,'2013-01-17 21:03:15',1,2,'Event : Mise à jour mensuelle','0.00','2.08',1),(3,'2013-01-17 21:03:15',1,3,'Event : Mise à jour mensuelle','0.00','2.08',1),(4,'2013-02-01 09:53:26',1,1,'Event : Mise à jour mensuelle','2.08','4.16',1),(5,'2013-02-01 09:53:26',1,2,'Event : Mise à jour mensuelle','2.08','4.16',1),(6,'2013-02-01 09:53:26',1,3,'Event : Mise à jour mensuelle','2.08','4.16',1),(7,'2013-02-01 09:53:26',1,1,'Event : Mise à jour mensuelle','4.17','6.25',1),(8,'2013-02-01 09:53:26',1,2,'Event : Mise à jour mensuelle','4.17','6.25',1),(9,'2013-02-01 09:53:26',1,3,'Event : Mise à jour mensuelle','4.17','6.25',1),(10,'2013-02-01 09:53:26',1,4,'Event : Mise à jour mensuelle','0.00','2.08',1),(11,'2013-02-01 09:53:31',1,1,'Event : Mise à jour mensuelle','6.25','8.33',1),(12,'2013-02-01 09:53:31',1,2,'Event : Mise à jour mensuelle','6.25','8.33',1),(13,'2013-02-01 09:53:31',1,3,'Event : Mise à jour mensuelle','6.25','8.33',1),(14,'2013-02-01 09:53:31',1,4,'Event : Mise à jour mensuelle','2.08','4.16',1),(15,'2013-02-01 09:53:31',1,1,'Event : Mise à jour mensuelle','8.33','10.41',1),(16,'2013-02-01 09:53:31',1,2,'Event : Mise à jour mensuelle','8.33','10.41',1),(17,'2013-02-01 09:53:31',1,3,'Event : Mise à jour mensuelle','8.33','10.41',1),(18,'2013-02-01 09:53:31',1,4,'Event : Mise à jour mensuelle','4.17','6.25',1),(19,'2013-02-01 09:53:33',1,1,'Event : Mise à jour mensuelle','10.42','12.50',1),(20,'2013-02-01 09:53:33',1,2,'Event : Mise à jour mensuelle','10.42','12.50',1),(21,'2013-02-01 09:53:33',1,3,'Event : Mise à jour mensuelle','10.42','12.50',1),(22,'2013-02-01 09:53:33',1,4,'Event : Mise à jour mensuelle','6.25','8.33',1),(23,'2013-02-01 09:53:34',1,1,'Event : Mise à jour mensuelle','12.50','14.58',1),(24,'2013-02-01 09:53:34',1,2,'Event : Mise à jour mensuelle','12.50','14.58',1),(25,'2013-02-01 09:53:34',1,3,'Event : Mise à jour mensuelle','12.50','14.58',1),(26,'2013-02-01 09:53:34',1,4,'Event : Mise à jour mensuelle','8.33','10.41',1),(27,'2013-02-01 09:53:34',1,1,'Event : Mise à jour mensuelle','14.58','16.66',1),(28,'2013-02-01 09:53:34',1,2,'Event : Mise à jour mensuelle','14.58','16.66',1),(29,'2013-02-01 09:53:34',1,3,'Event : Mise à jour mensuelle','14.58','16.66',1),(30,'2013-02-01 09:53:34',1,4,'Event : Mise à jour mensuelle','10.42','12.50',1),(31,'2013-02-01 09:53:36',1,1,'Event : Mise à jour mensuelle','16.67','18.75',1),(32,'2013-02-01 09:53:36',1,2,'Event : Mise à jour mensuelle','16.67','18.75',1),(33,'2013-02-01 09:53:36',1,3,'Event : Mise à jour mensuelle','16.67','18.75',1),(34,'2013-02-01 09:53:36',1,4,'Event : Mise à jour mensuelle','12.50','14.58',1),(35,'2013-02-01 09:53:36',1,1,'Event : Mise à jour mensuelle','18.75','20.83',1),(36,'2013-02-01 09:53:36',1,2,'Event : Mise à jour mensuelle','18.75','20.83',1),(37,'2013-02-01 09:53:36',1,3,'Event : Mise à jour mensuelle','18.75','20.83',1),(38,'2013-02-01 09:53:36',1,4,'Event : Mise à jour mensuelle','14.58','16.66',1),(39,'2013-02-01 09:53:37',1,1,'Event : Mise à jour mensuelle','20.83','22.91',1),(40,'2013-02-01 09:53:37',1,2,'Event : Mise à jour mensuelle','20.83','22.91',1),(41,'2013-02-01 09:53:37',1,3,'Event : Mise à jour mensuelle','20.83','22.91',1),(42,'2013-02-01 09:53:37',1,4,'Event : Mise à jour mensuelle','16.67','18.75',1),(43,'2013-02-01 09:53:37',1,1,'Event : Mise à jour mensuelle','22.92','25.00',1),(44,'2013-02-01 09:53:37',1,2,'Event : Mise à jour mensuelle','22.92','25.00',1),(45,'2013-02-01 09:53:37',1,3,'Event : Mise à jour mensuelle','22.92','25.00',1),(46,'2013-02-01 09:53:37',1,4,'Event : Mise à jour mensuelle','18.75','20.83',1),(47,'2013-02-01 09:53:44',1,1,'Event : Mise à jour mensuelle','25.00','27.08',1),(48,'2013-02-01 09:53:44',1,2,'Event : Mise à jour mensuelle','25.00','27.08',1),(49,'2013-02-01 09:53:44',1,3,'Event : Mise à jour mensuelle','25.00','27.08',1),(50,'2013-02-01 09:53:44',1,4,'Event : Mise à jour mensuelle','20.83','22.91',1),(51,'2013-02-01 09:53:47',1,1,'Event : Mise à jour mensuelle','27.08','29.16',1),(52,'2013-02-01 09:53:47',1,2,'Event : Mise à jour mensuelle','27.08','29.16',1),(53,'2013-02-01 09:53:47',1,3,'Event : Mise à jour mensuelle','27.08','29.16',1),(54,'2013-02-01 09:53:47',1,4,'Event : Mise à jour mensuelle','22.92','25.00',1),(55,'2013-02-01 09:53:47',1,1,'Event : Mise à jour mensuelle','29.17','31.25',1),(56,'2013-02-01 09:53:47',1,2,'Event : Mise à jour mensuelle','29.17','31.25',1),(57,'2013-02-01 09:53:47',1,3,'Event : Mise à jour mensuelle','29.17','31.25',1),(58,'2013-02-01 09:53:47',1,4,'Event : Mise à jour mensuelle','25.00','27.08',1),(59,'2013-02-01 09:53:49',1,1,'Event : Mise à jour mensuelle','31.25','33.33',1),(60,'2013-02-01 09:53:49',1,2,'Event : Mise à jour mensuelle','31.25','33.33',1),(61,'2013-02-01 09:53:49',1,3,'Event : Mise à jour mensuelle','31.25','33.33',1),(62,'2013-02-01 09:53:49',1,4,'Event : Mise à jour mensuelle','27.08','29.16',1),(63,'2013-02-01 09:53:52',1,1,'Event : Mise à jour mensuelle','33.33','35.41',1),(64,'2013-02-01 09:53:52',1,2,'Event : Mise à jour mensuelle','33.33','35.41',1),(65,'2013-02-01 09:53:52',1,3,'Event : Mise à jour mensuelle','33.33','35.41',1),(66,'2013-02-01 09:53:52',1,4,'Event : Mise à jour mensuelle','29.17','31.25',1),(67,'2013-02-01 09:53:52',1,1,'Event : Mise à jour mensuelle','35.42','37.50',1),(68,'2013-02-01 09:53:52',1,2,'Event : Mise à jour mensuelle','35.42','37.50',1),(69,'2013-02-01 09:53:52',1,3,'Event : Mise à jour mensuelle','35.42','37.50',1),(70,'2013-02-01 09:53:52',1,4,'Event : Mise à jour mensuelle','31.25','33.33',1),(71,'2013-02-01 09:53:53',1,1,'Event : Mise à jour mensuelle','37.50','39.58',1),(72,'2013-02-01 09:53:53',1,2,'Event : Mise à jour mensuelle','37.50','39.58',1),(73,'2013-02-01 09:53:53',1,3,'Event : Mise à jour mensuelle','37.50','39.58',1),(74,'2013-02-01 09:53:53',1,4,'Event : Mise à jour mensuelle','33.33','35.41',1),(75,'2013-02-01 09:53:54',1,1,'Event : Mise à jour mensuelle','39.58','41.66',1),(76,'2013-02-01 09:53:54',1,2,'Event : Mise à jour mensuelle','39.58','41.66',1),(77,'2013-02-01 09:53:54',1,3,'Event : Mise à jour mensuelle','39.58','41.66',1),(78,'2013-02-01 09:53:54',1,4,'Event : Mise à jour mensuelle','35.42','37.50',1),(79,'2013-02-01 09:53:54',1,1,'Event : Mise à jour mensuelle','41.67','43.75',1),(80,'2013-02-01 09:53:54',1,2,'Event : Mise à jour mensuelle','41.67','43.75',1),(81,'2013-02-01 09:53:54',1,3,'Event : Mise à jour mensuelle','41.67','43.75',1),(82,'2013-02-01 09:53:54',1,4,'Event : Mise à jour mensuelle','37.50','39.58',1),(83,'2013-02-01 09:55:49',1,1,'Event : Mise à jour mensuelle','43.75','45.83',1),(84,'2013-02-01 09:55:49',1,2,'Event : Mise à jour mensuelle','43.75','45.83',1),(85,'2013-02-01 09:55:49',1,3,'Event : Mise à jour mensuelle','43.75','45.83',1),(86,'2013-02-01 09:55:49',1,4,'Event : Mise à jour mensuelle','39.58','41.66',1),(87,'2013-02-01 09:55:56',1,1,'Event : Mise à jour mensuelle','45.83','47.91',1),(88,'2013-02-01 09:55:56',1,2,'Event : Mise à jour mensuelle','45.83','47.91',1),(89,'2013-02-01 09:55:56',1,3,'Event : Mise à jour mensuelle','45.83','47.91',1),(90,'2013-02-01 09:55:56',1,4,'Event : Mise à jour mensuelle','41.67','43.75',1),(91,'2013-02-01 09:56:01',1,1,'Event : Mise à jour mensuelle','47.92','50.00',1),(92,'2013-02-01 09:56:01',1,2,'Event : Mise à jour mensuelle','47.92','50.00',1),(93,'2013-02-01 09:56:01',1,3,'Event : Mise à jour mensuelle','47.92','50.00',1),(94,'2013-02-01 09:56:01',1,4,'Event : Mise à jour mensuelle','43.75','45.83',1),(95,'2013-02-01 09:56:01',1,1,'Event : Mise à jour mensuelle','50.00','52.08',1),(96,'2013-02-01 09:56:01',1,2,'Event : Mise à jour mensuelle','50.00','52.08',1),(97,'2013-02-01 09:56:01',1,3,'Event : Mise à jour mensuelle','50.00','52.08',1),(98,'2013-02-01 09:56:01',1,4,'Event : Mise à jour mensuelle','45.83','47.91',1),(99,'2013-02-01 09:56:03',1,1,'Event : Mise à jour mensuelle','52.08','54.16',1),(100,'2013-02-01 09:56:03',1,2,'Event : Mise à jour mensuelle','52.08','54.16',1),(101,'2013-02-01 09:56:03',1,3,'Event : Mise à jour mensuelle','52.08','54.16',1),(102,'2013-02-01 09:56:03',1,4,'Event : Mise à jour mensuelle','47.92','50.00',1),(103,'2013-02-01 09:56:03',1,1,'Event : Mise à jour mensuelle','54.17','56.25',1),(104,'2013-02-01 09:56:03',1,2,'Event : Mise à jour mensuelle','54.17','56.25',1),(105,'2013-02-01 09:56:03',1,3,'Event : Mise à jour mensuelle','54.17','56.25',1),(106,'2013-02-01 09:56:03',1,4,'Event : Mise à jour mensuelle','50.00','52.08',1),(107,'2013-02-01 09:56:05',1,1,'Event : Mise à jour mensuelle','56.25','58.33',1),(108,'2013-02-01 09:56:05',1,2,'Event : Mise à jour mensuelle','56.25','58.33',1),(109,'2013-02-01 09:56:05',1,3,'Event : Mise à jour mensuelle','56.25','58.33',1),(110,'2013-02-01 09:56:05',1,4,'Event : Mise à jour mensuelle','52.08','54.16',1),(111,'2013-02-01 09:56:06',1,1,'Event : Mise à jour mensuelle','58.33','60.41',1),(112,'2013-02-01 09:56:06',1,2,'Event : Mise à jour mensuelle','58.33','60.41',1),(113,'2013-02-01 09:56:06',1,3,'Event : Mise à jour mensuelle','58.33','60.41',1),(114,'2013-02-01 09:56:06',1,4,'Event : Mise à jour mensuelle','54.17','56.25',1),(115,'2013-02-01 09:56:06',1,1,'Event : Mise à jour mensuelle','60.42','62.50',1),(116,'2013-02-01 09:56:06',1,2,'Event : Mise à jour mensuelle','60.42','62.50',1),(117,'2013-02-01 09:56:06',1,3,'Event : Mise à jour mensuelle','60.42','62.50',1),(118,'2013-02-01 09:56:06',1,4,'Event : Mise à jour mensuelle','56.25','58.33',1),(119,'2013-02-01 09:56:07',1,1,'Event : Mise à jour mensuelle','62.50','64.58',1),(120,'2013-02-01 09:56:07',1,2,'Event : Mise à jour mensuelle','62.50','64.58',1),(121,'2013-02-01 09:56:07',1,3,'Event : Mise à jour mensuelle','62.50','64.58',1),(122,'2013-02-01 09:56:07',1,4,'Event : Mise à jour mensuelle','58.33','60.41',1),(123,'2013-02-01 09:56:07',1,1,'Event : Mise à jour mensuelle','64.58','66.66',1),(124,'2013-02-01 09:56:07',1,2,'Event : Mise à jour mensuelle','64.58','66.66',1),(125,'2013-02-01 09:56:07',1,3,'Event : Mise à jour mensuelle','64.58','66.66',1),(126,'2013-02-01 09:56:07',1,4,'Event : Mise à jour mensuelle','60.42','62.50',1),(127,'2013-02-01 09:56:50',1,1,'Event : Mise à jour mensuelle','66.67','68.75',1),(128,'2013-02-01 09:56:50',1,2,'Event : Mise à jour mensuelle','66.67','68.75',1),(129,'2013-02-01 09:56:50',1,3,'Event : Mise à jour mensuelle','66.67','68.75',1),(130,'2013-02-01 09:56:50',1,4,'Event : Mise à jour mensuelle','62.50','64.58',1),(131,'2013-02-01 09:56:50',1,1,'Event : Mise à jour mensuelle','68.75','70.83',1),(132,'2013-02-01 09:56:50',1,2,'Event : Mise à jour mensuelle','68.75','70.83',1),(133,'2013-02-01 09:56:50',1,3,'Event : Mise à jour mensuelle','68.75','70.83',1),(134,'2013-02-01 09:56:50',1,4,'Event : Mise à jour mensuelle','64.58','66.66',1),(135,'2013-02-17 18:49:21',1,1,'Event : Mise à jour mensuelle','70.83','72.91',1),(136,'2013-02-17 18:49:21',1,2,'Event : Mise à jour mensuelle','70.83','72.91',1),(137,'2013-02-17 18:49:21',1,3,'Event : Mise à jour mensuelle','70.83','72.91',1),(138,'2013-02-17 18:49:21',1,4,'Event : Mise à jour mensuelle','66.67','68.75',1),(139,'2013-02-17 19:06:57',1,1,'Event : Holiday','72.92','71.92',1),(140,'2013-03-01 23:12:31',1,1,'Event : Mise à jour mensuelle','71.92','74.00',1),(141,'2013-03-01 23:12:31',1,2,'Event : Mise à jour mensuelle','72.92','75.00',1),(142,'2013-03-01 23:12:31',1,3,'Event : Mise à jour mensuelle','72.92','75.00',1),(143,'2013-03-01 23:12:31',1,4,'Event : Mise à jour mensuelle','68.75','70.83',1),(145,'2015-07-19 15:44:57',1,1,'Monthly update','0','2.08334',4),(146,'2015-07-19 15:44:57',1,2,'Monthly update','0','2.08334',4),(147,'2015-07-19 15:44:57',1,3,'Monthly update','0','2.08334',4),(148,'2015-07-19 15:44:57',1,4,'Monthly update','0','2.08334',4),(151,'2015-07-19 15:44:57',1,1,'Monthly update','0','2.08334',5),(152,'2015-07-19 15:44:57',1,2,'Monthly update','0','2.08334',5),(153,'2015-07-19 15:44:57',1,3,'Monthly update','0','2.08334',5),(154,'2015-07-19 15:44:57',1,4,'Monthly update','0','2.08334',5),(157,'2015-07-19 15:44:57',1,1,'Monthly update','0','2.08334',9),(158,'2015-07-19 15:44:57',1,2,'Monthly update','0','2.08334',9),(159,'2015-07-19 15:44:57',1,3,'Monthly update','0','2.08334',9),(160,'2015-07-19 15:44:57',1,4,'Monthly update','0','2.08334',9),(163,'2016-01-22 18:59:06',12,1,'Monthly update','0','2.08334',4),(164,'2016-01-22 18:59:06',12,2,'Monthly update','0','2.08334',4),(165,'2016-01-22 18:59:06',12,3,'Monthly update','0','2.08334',4),(166,'2016-01-22 18:59:06',12,4,'Monthly update','0','2.08334',4),(168,'2016-01-22 18:59:06',12,1,'Monthly update','0','2.08334',5),(169,'2016-01-22 18:59:06',12,2,'Monthly update','0','2.08334',5),(170,'2016-01-22 18:59:06',12,3,'Monthly update','0','2.08334',5),(171,'2016-01-22 18:59:06',12,4,'Monthly update','0','2.08334',5),(173,'2016-01-22 18:59:06',12,1,'Monthly update','0','2.08334',9),(174,'2016-01-22 18:59:06',12,2,'Monthly update','0','2.08334',9),(175,'2016-01-22 18:59:06',12,3,'Monthly update','0','2.08334',9),(176,'2016-01-22 18:59:06',12,4,'Monthly update','0','2.08334',9),(178,'2016-01-22 18:59:38',12,18,'Manual update','0','10',5),(179,'2016-01-22 18:59:42',12,16,'Manual update','0','10',5),(180,'2016-01-22 18:59:45',12,12,'Manual update','0','10',5),(181,'2016-01-22 18:59:49',12,1,'Manual update','0','10',5),(182,'2016-01-22 18:59:52',12,2,'Manual update','0','10',5),(183,'2016-01-22 18:59:55',12,3,'Manual update','0','5',5),(184,'2016-07-30 19:45:49',12,1,'Manual update','0','25',3),(185,'2016-07-30 19:45:52',12,2,'Manual update','0','23',3),(186,'2016-07-30 19:45:54',12,3,'Manual update','0','10',3),(187,'2016-07-30 19:45:57',12,4,'Manual update','0','-4',3),(188,'2016-07-30 19:46:02',12,10,'Manual update','0','20',3),(189,'2016-07-30 19:46:04',12,11,'Manual update','0','30',3),(190,'2016-07-30 19:46:07',12,12,'Manual update','0','15',3),(191,'2016-07-30 19:46:09',12,13,'Manual update','0','11',3),(192,'2016-07-30 19:46:12',12,14,'Manual update','0','4',3),(193,'2016-07-30 19:46:14',12,16,'Manual update','0','5',3),(194,'2016-07-30 19:46:16',12,18,'Manual update','0','22',3); +/*!40000 ALTER TABLE `llx_holiday_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_holiday_users` +-- + +DROP TABLE IF EXISTS `llx_holiday_users`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_holiday_users` ( + `fk_user` int(11) NOT NULL, + `nb_holiday` double NOT NULL DEFAULT '0', + `fk_type` int(11) NOT NULL DEFAULT '1', + UNIQUE KEY `uk_holiday_users` (`fk_user`,`fk_type`,`nb_holiday`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_holiday_users` +-- + +LOCK TABLES `llx_holiday_users` WRITE; +/*!40000 ALTER TABLE `llx_holiday_users` DISABLE KEYS */; +INSERT INTO `llx_holiday_users` VALUES (0,0,1),(1,74.00334000000001,1),(1,25,3),(1,10,5),(2,75.00024000000003,1),(2,23,3),(2,10,5),(3,75.00024000000003,1),(3,10,3),(3,5,5),(4,70.83356000000002,1),(4,-4,3),(5,2.08334,1),(6,0,1),(10,20,3),(11,30,3),(12,15,3),(12,10,5),(13,11,3),(14,4,3),(16,5,3),(16,10,5),(18,22,3),(18,10,5); +/*!40000 ALTER TABLE `llx_holiday_users` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_import_model` +-- + +DROP TABLE IF EXISTS `llx_import_model`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_import_model` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL DEFAULT '0', + `label` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `type` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `field` text COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_import_model` (`label`,`type`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_import_model` +-- + +LOCK TABLES `llx_import_model` WRITE; +/*!40000 ALTER TABLE `llx_import_model` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_import_model` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_inventory` +-- + +DROP TABLE IF EXISTS `llx_inventory`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_inventory` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_warehouse` int(11) DEFAULT NULL, + `date_inventory` date DEFAULT NULL, + `title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `date_validation` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_inventory_ref` (`ref`,`entity`), + KEY `idx_inventory_rowid` (`rowid`), + KEY `idx_inventory_ref` (`ref`), + KEY `idx_inventory_entity` (`entity`), + KEY `idx_inventory_fk_warehouse` (`fk_warehouse`), + KEY `idx_inventory_status` (`status`), + KEY `idx_inventory_import_key` (`import_key`), + KEY `idx_inventory_tms` (`tms`), + KEY `idx_inventory_datec` (`datec`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_inventory` +-- + +LOCK TABLES `llx_inventory` WRITE; +/*!40000 ALTER TABLE `llx_inventory` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_inventory` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_inventory_extrafields` +-- + +DROP TABLE IF EXISTS `llx_inventory_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_inventory_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_inventory_extrafields` +-- + +LOCK TABLES `llx_inventory_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_inventory_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_inventory_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_inventorydet` +-- + +DROP TABLE IF EXISTS `llx_inventorydet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_inventorydet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_inventory` int(11) DEFAULT '0', + `fk_warehouse` int(11) DEFAULT '0', + `fk_product` int(11) DEFAULT '0', + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty_view` double DEFAULT NULL, + `qty_stock` double DEFAULT NULL, + `qty_regulated` double DEFAULT NULL, + `pmp` double DEFAULT '0', + `pa` double DEFAULT '0', + `new_pmp` double DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_inventorydet_tms` (`tms`), + KEY `idx_inventorydet_datec` (`datec`), + KEY `idx_inventorydet_fk_inventory` (`fk_inventory`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_inventorydet` +-- + +LOCK TABLES `llx_inventorydet` WRITE; +/*!40000 ALTER TABLE `llx_inventorydet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_inventorydet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_lead` +-- + +DROP TABLE IF EXISTS `llx_lead`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_lead` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '0', + `ref_ext` mediumtext COLLATE utf8_unicode_ci, + `ref_int` mediumtext COLLATE utf8_unicode_ci, + `fk_soc` int(11) NOT NULL, + `fk_c_status` int(11) NOT NULL, + `fk_c_type` int(11) NOT NULL, + `date_closure` datetime NOT NULL, + `amount_prosp` double(24,8) NOT NULL, + `fk_user_resp` int(11) NOT NULL, + `description` mediumtext COLLATE utf8_unicode_ci, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `fk_user_author` int(11) NOT NULL, + `datec` datetime NOT NULL, + `fk_user_mod` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_llx_lead_fk_c_status` (`fk_c_status`), + KEY `idx_llx_lead_fk_c_type` (`fk_c_type`), + KEY `idx_llx_lead_fk_soc` (`fk_soc`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_lead` +-- + +LOCK TABLES `llx_lead` WRITE; +/*!40000 ALTER TABLE `llx_lead` DISABLE KEYS */; +INSERT INTO `llx_lead` VALUES (1,'LEA-1506-0001',1,NULL,'50',27,6,1,'2015-07-27 00:00:00',2000.00000000,1,NULL,NULL,NULL,1,'2015-06-27 13:44:33',1,'2015-06-27 21:53:05'); +/*!40000 ALTER TABLE `llx_lead` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_lead_extrafields` +-- + +DROP TABLE IF EXISTS `llx_lead_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_lead_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idxlead_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_lead_extrafields` +-- + +LOCK TABLES `llx_lead_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_lead_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_lead_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_links` +-- + +DROP TABLE IF EXISTS `llx_links`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_links` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datea` datetime NOT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `objecttype` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `objectid` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_links` (`objectid`,`label`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_links` +-- + +LOCK TABLES `llx_links` WRITE; +/*!40000 ALTER TABLE `llx_links` DISABLE KEYS */; +INSERT INTO `llx_links` VALUES (1,1,'2016-01-16 16:45:35','http://www.dolicloud.com','The DoliCoud service','societe',10),(2,1,'2016-01-16 17:14:35','https://www.dolistore.com/en/tools-documentation/12-SVG-file-for-85cm-x-200cm-rollup.html','Link to rollup file on dolistore.com','product',11),(3,1,'2016-01-22 17:40:23','http://www.nltechno.com','NLtechno portal','societe',10),(4,1,'2016-01-22 18:32:31','https://play.google.com/store/apps/details?id=com.nltechno.dolidroidpro','Link on Google Play','product',5); +/*!40000 ALTER TABLE `llx_links` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_livraison` +-- + +DROP TABLE IF EXISTS `llx_livraison`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_livraison` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_customer` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `date_delivery` datetime DEFAULT NULL, + `fk_address` int(11) DEFAULT NULL, + `fk_statut` smallint(6) DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_livraison_uk_ref` (`ref`,`entity`), + KEY `idx_livraison_fk_soc` (`fk_soc`), + KEY `idx_livraison_fk_user_author` (`fk_user_author`), + KEY `idx_livraison_fk_user_valid` (`fk_user_valid`), + CONSTRAINT `fk_livraison_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_livraison_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_livraison_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_livraison` +-- + +LOCK TABLES `llx_livraison` WRITE; +/*!40000 ALTER TABLE `llx_livraison` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_livraison` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_livraison_extrafields` +-- + +DROP TABLE IF EXISTS `llx_livraison_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_livraison_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_livraison_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_livraison_extrafields` +-- + +LOCK TABLES `llx_livraison_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_livraison_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_livraison_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_livraisondet` +-- + +DROP TABLE IF EXISTS `llx_livraisondet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_livraisondet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_livraison` int(11) DEFAULT NULL, + `fk_origin_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `qty` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `rang` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_livraisondet_fk_expedition` (`fk_livraison`), + CONSTRAINT `fk_livraisondet_fk_livraison` FOREIGN KEY (`fk_livraison`) REFERENCES `llx_livraison` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_livraisondet` +-- + +LOCK TABLES `llx_livraisondet` WRITE; +/*!40000 ALTER TABLE `llx_livraisondet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_livraisondet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_livraisondet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_livraisondet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_livraisondet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_livraisondet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_livraisondet_extrafields` +-- + +LOCK TABLES `llx_livraisondet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_livraisondet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_livraisondet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_loan` +-- + +DROP TABLE IF EXISTS `llx_loan`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_loan` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(80) COLLATE utf8_unicode_ci NOT NULL, + `fk_bank` int(11) DEFAULT NULL, + `capital` double(24,8) DEFAULT NULL, + `datestart` date DEFAULT NULL, + `dateend` date DEFAULT NULL, + `nbterm` double DEFAULT NULL, + `rate` double NOT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `capital_position` double(24,8) DEFAULT NULL, + `date_position` date DEFAULT NULL, + `paid` smallint(6) NOT NULL DEFAULT '0', + `accountancy_account_capital` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_account_insurance` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_account_interest` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `active` tinyint(4) NOT NULL DEFAULT '1', + `fk_projet` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_loan` +-- + +LOCK TABLES `llx_loan` WRITE; +/*!40000 ALTER TABLE `llx_loan` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_loan` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_loan_schedule` +-- + +DROP TABLE IF EXISTS `llx_loan_schedule`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_loan_schedule` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_loan` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount_capital` double(24,8) DEFAULT NULL, + `amount_insurance` double(24,8) DEFAULT NULL, + `amount_interest` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_loan_schedule` +-- + +LOCK TABLES `llx_loan_schedule` WRITE; +/*!40000 ALTER TABLE `llx_loan_schedule` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_loan_schedule` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_localtax` +-- + +DROP TABLE IF EXISTS `llx_localtax`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_localtax` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `localtaxtype` tinyint(4) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `amount` double NOT NULL DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_localtax` +-- + +LOCK TABLES `llx_localtax` WRITE; +/*!40000 ALTER TABLE `llx_localtax` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_localtax` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_mailing` +-- + +DROP TABLE IF EXISTS `llx_mailing`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_mailing` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `statut` smallint(6) DEFAULT '0', + `titre` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `sujet` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `body` mediumtext COLLATE utf8_unicode_ci, + `bgcolor` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL, + `bgimage` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cible` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `nbemail` int(11) DEFAULT NULL, + `email_from` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_replyto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_errorsto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `tag` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creat` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_appro` datetime DEFAULT NULL, + `date_envoi` datetime DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_appro` int(11) DEFAULT NULL, + `joined_file1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file4` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_mailing` +-- + +LOCK TABLES `llx_mailing` WRITE; +/*!40000 ALTER TABLE `llx_mailing` DISABLE KEYS */; +INSERT INTO `llx_mailing` VALUES (3,2,'Commercial emailing January',1,'Buy my product','
\"\"
\r\n\"Seguici\"Seguici\"Seguici\"Seguici
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

DoliCloud is the service to provide you a web hosting solution of Dolibarr ERP CRM in one click. Just enter your email to create your instance and you are ready to work. Backup and full access is to data (SFTP, Mysql) are provided.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Test Dolibarr ERP CRM on Dolicloud →
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
DoliCloud team
\r\n Unsubscribe   |   View on web browser
\r\n
\r\n
','','',NULL,26,'dolibarr@domain.com','','',NULL,'2010-07-11 13:15:59','2017-01-29 21:33:11',NULL,'2017-01-29 21:36:40',1,12,NULL,NULL,NULL,NULL,NULL,NULL),(4,0,'Commercial emailing February',1,'Buy my product','This is a new éEéé\"Mailing content
\r\n
\r\n\r\nYou can adit it with the WYSIWYG editor.
\r\nIt is\r\n
    \r\n
  • \r\n Fast
  • \r\n
  • \r\n Easy to use
  • \r\n
  • \r\n Pretty
  • \r\n
','','',NULL,NULL,'dolibarr@domain.com','','',NULL,'2011-07-18 20:44:33',NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,1,'Commercial emailing March',1,'Buy my product','
\"\"
\r\n\"Seguici\"Seguici\"Seguici\"Seguici
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

DoliCloud is the service to provide you a web hosting solution __EMAIL__ of Dolibarr ERP CRM in one click. Just enter your email to create your instance and you are ready to work. Backup and full access is to data (SFTP, Mysql) are provided.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Test Dolibarr ERP CRM on Dolicloud →
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
DoliCloud team
\r\n Unsubscribe   |   View on web browser
\r\n
\r\n
','','',NULL,28,'dolibarr@domain.com','','',NULL,'2017-01-29 21:47:37','2017-01-29 21:54:55',NULL,NULL,12,12,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_mailing` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_mailing_cibles` +-- + +DROP TABLE IF EXISTS `llx_mailing_cibles`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_mailing_cibles` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_mailing` int(11) NOT NULL, + `fk_contact` int(11) NOT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(160) COLLATE utf8_unicode_ci NOT NULL, + `other` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `tag` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `source_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `source_id` int(11) DEFAULT NULL, + `source_type` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_envoi` datetime DEFAULT NULL, + `error_text` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_mailing_cibles` (`fk_mailing`,`email`), + KEY `idx_mailing_cibles_email` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=60 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_mailing_cibles` +-- + +LOCK TABLES `llx_mailing_cibles` WRITE; +/*!40000 ALTER TABLE `llx_mailing_cibles` DISABLE KEYS */; +INSERT INTO `llx_mailing_cibles` VALUES (1,1,0,'Dupont','Alain','toto@aa.com','Date fin=10/07/2011',NULL,0,'0',NULL,NULL,NULL,NULL),(2,2,0,'Swiss customer supplier','','abademail@aa.com','',NULL,0,'0',NULL,NULL,NULL,NULL),(3,2,0,'Smith Vick','','vsmith@email.com','',NULL,0,'0',NULL,NULL,NULL,NULL),(4,3,0,'Swiss customer supplier','','abademail@aa.com','',NULL,1,'0',NULL,NULL,'2017-01-29 21:36:40',NULL),(5,3,0,'Smith Vick','','vsmith@email.com','',NULL,1,'0',NULL,NULL,'2017-01-29 21:36:40',NULL),(7,3,0,'Name 2','Firstname 2','emailtest2@example.com','','522b79aedf231576db576d246d82a0d7',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(8,3,0,'Name 3','Firstname 3','emailtest3@example.com','','f3e74e96a64068093af469b6826a75bf',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(9,3,0,'Name 4','Firstname 4','emailtest4@example.com','','fdacf67090698e0216f5c9a449e7404a',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(10,3,0,'Name 5','Firstname 5','emailtest5@example.com','','38b4e4895bf5e7f9969c9ad9bbcd0dce',3,'',NULL,'file','2017-01-29 21:36:40',NULL),(11,3,0,'Name 1','Firstname 1','emailtest1@example.com','','b2543a771e2a10c694fc6437859e29ae',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(12,3,0,'Do','John','johndoe@example.com','','bdb70b6835ca053b113e7ac53c83efbe',-1,'',NULL,'file','2017-01-29 21:36:40','Invalid email'),(13,3,0,'Smith,Alan','','alan.smith@example.com','','326b9fb6d83f58b7ce5ca28a51022c83',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(15,3,0,'Bowl','Kathy','kathy.bowl@example.com','','0848d51a04ad29adf28de7d6efe63091',2,'',NULL,'file','2017-01-29 21:36:40',NULL),(16,3,0,'Ducanseen','Herbert','herbert@example.com','','0585f4366c7b0c8bab592acb7256a409',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(17,3,0,'Djay','Djay','djay@example.com','','fad171648dcd8449d6e2f8246724f153',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(18,3,0,'','','alice.bigo@example.com','','86b03b13caec209e9a9d96979b7154b8',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(19,3,0,'','','bob.markus@example.com','','06df0b2b930718949a5afee280f04e6b',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(20,3,0,'Customer 1','','mycustomer1@example.com','','cac0a5a38fa9e67ed63d0753e08cd919',1,'',NULL,'file','2017-01-29 21:36:40',NULL),(21,3,0,'Customer 2','','mycustomer2@example.com','','19b631ee27e7036684675f2db35c54f0',0,'',NULL,'file',NULL,NULL),(22,3,0,'Customer 3','','mycustomer3@example.com','','bfd49e2db7c511e2d5bde30eda7db07a',0,'',NULL,'file',NULL,NULL),(23,3,0,'Customer 4','','mycustomer4@example.com','','de4640d0684c62dd83ffc27ff20d5938',0,'',NULL,'file',NULL,NULL),(24,3,0,'Customer 5','','mycustomer5@example.com','','2eb5786291928fd23ca0354ac261ec9b',0,'',NULL,'file',NULL,NULL),(25,3,0,'Customer 6','','mycustomer6@example.com','','c50c85b7f3370232c1d1335e17f953ca',0,'',NULL,'file',NULL,NULL),(26,3,0,'Prospect 1','','myprospect1@example.com','','553b1f7417f7c96290cdec5ca4c560f7',0,'',NULL,'file',NULL,NULL),(27,3,0,'Prospect 2','','myprospect2@example.com','','de45e526168546315ff4fedb54e63102',0,'',NULL,'file',NULL,NULL),(28,3,0,'Prospect 3','','myprospect3@example.com','','466d946e7c46881334f4abe427d382fa',0,'',NULL,'file',NULL,NULL),(29,3,0,'Prospect 4','','myprospect4@example.com','','619d1ec47318842971db7fa266b6d74a',0,'',NULL,'file',NULL,NULL),(30,3,0,'Prospect 5','','myprospect5@example.com','','e301713dcbf58d33ef1ae540dee58ad7',0,'',NULL,'file',NULL,NULL),(31,3,0,'Prospect 6','','myprospect6@example.com','','26fcbd0c641a535bfc14a80a867a61f2',0,'',NULL,'file',NULL,NULL),(32,5,0,'Swiss customer supplier','','abademail@aa.com','','0e7d20e3c9b1612a75eab5d12da84060',0,'0',NULL,'',NULL,NULL),(33,5,0,'Smith Vick','','vsmith@email.com','','cab14f12668ccb2c92843969819c6c6e',0,'0',NULL,'',NULL,NULL),(34,5,0,'Name 2','Firstname 2','emailtest2@example.com','','1b6adeceaac7e2b9c399c877f8b1a616',0,'',NULL,'file',NULL,NULL),(35,5,0,'Name 3','Firstname 3','emailtest3@example.com','','c9f6f80ba118c378aef4974e17b01a07',0,'',NULL,'file',NULL,NULL),(36,5,0,'Name 4','Firstname 4','emailtest4@example.com','','75a3051301db736a2bb7722de7b4ece1',0,'',NULL,'file',NULL,NULL),(37,5,0,'Name 5','Firstname 5','emailtest5@example.com','','a9e292e70ec11ed58718c9f5da58f870',0,'',NULL,'file',NULL,NULL),(38,5,0,'Name 1','Firstname 1','emailtest1@example.com','','0243e796981c9e82cc23d8a6a5a23570',0,'',NULL,'file',NULL,NULL),(39,5,0,'Do','John','johndoe@example.com','','7db6219748fbad348b1aa89f2014d529',0,'',NULL,'file',NULL,NULL),(40,5,0,'Smith,Alan','','alan.smith@example.com','','5006f91f3bd97918460b6dc3edf4cd7f',0,'',NULL,'file',NULL,NULL),(41,5,0,'Bowl','Kathy','kathy.bowl@example.com','','377ac5b241f2d5bf421a7162c60bf7b6',0,'',NULL,'file',NULL,NULL),(42,5,0,'Ducanseen','Herbert','herbert@example.com','','10e1b891a249ee8046f1686a0a44d773',0,'',NULL,'file',NULL,NULL),(43,5,0,'Djay','Djay','djay@example.com','','6cf76a2b74874caa6b8eced78f63bca1',0,'',NULL,'file',NULL,NULL),(44,5,0,'','','alice.bigo@example.com','','61651804afc02887a3934ab042285044',0,'',NULL,'file',NULL,NULL),(45,5,0,'','','bob.markus@example.com','','b6d3e934e4bc92d194b43041260564da',0,'',NULL,'file',NULL,NULL),(46,5,0,'Customer 1','','mycustomer1@example.com','','fa9ade908a5a420e7dc64e62d1d9eb65',0,'',NULL,'file',NULL,NULL),(47,5,0,'Customer 2','','mycustomer2@example.com','','5d502923487f0f4226ab9f5f71102857',0,'',NULL,'file',NULL,NULL),(48,5,0,'Customer 3','','mycustomer3@example.com','','0b7da54f9969554eee95684069173f23',0,'',NULL,'file',NULL,NULL),(49,5,0,'Customer 4','','mycustomer4@example.com','','b073cf47a6af4740c76620ab4442033c',0,'',NULL,'file',NULL,NULL),(50,5,0,'Customer 5','','mycustomer5@example.com','','468b7404027e91edf437c3980619c8f6',0,'',NULL,'file',NULL,NULL),(51,5,0,'Customer 6','','mycustomer6@example.com','','cb196086497f64cd23dd68aed2bf5cc8',0,'',NULL,'file',NULL,NULL),(52,5,0,'Prospect 1','','myprospect1@example.com','','9854ed6528267f30c8c22c24384b31ae',0,'',NULL,'file',NULL,NULL),(53,5,0,'Prospect 2','','myprospect2@example.com','','b37ed581bbc51b6d9a334e1626b5fe22',0,'',NULL,'file',NULL,NULL),(54,5,0,'Prospect 3','','myprospect3@example.com','','8bedd7821877a72841efae36691f7765',0,'',NULL,'file',NULL,NULL),(55,5,0,'Prospect 4','','myprospect4@example.com','','518353a5cfb1a628ada10874ac4e0098',0,'',NULL,'file',NULL,NULL),(56,5,0,'Prospect 5','','myprospect5@example.com','','de392a2999e262fec63c9de4a3fe7613',0,'',NULL,'file',NULL,NULL),(57,5,0,'Prospect 6','','myprospect6@example.com','','56256cc297c4870c514819cdb4e6b95c',0,'',NULL,'file',NULL,NULL),(58,5,0,'Prospect 7','','myprospect7@example.com','','d32512607d4e74d6f71d031538128721',0,'',NULL,'file',NULL,NULL),(59,5,0,'Prospect 8','','myprospect8@example.com','','427eeb75492ede5355996a8df998f9de',0,'',NULL,'file',NULL,NULL); +/*!40000 ALTER TABLE `llx_mailing_cibles` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_menu` +-- + +DROP TABLE IF EXISTS `llx_menu`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_menu` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `menu_handler` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `module` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(4) COLLATE utf8_unicode_ci NOT NULL, + `mainmenu` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + `fk_menu` int(11) NOT NULL, + `fk_leftmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_mainmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) NOT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `target` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `titre` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `langs` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `level` smallint(6) DEFAULT NULL, + `leftmenu` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL, + `perms` text COLLATE utf8_unicode_ci, + `enabled` varchar(255) COLLATE utf8_unicode_ci DEFAULT '1', + `usertype` int(11) NOT NULL DEFAULT '0', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_menu_uk_menu` (`menu_handler`,`fk_menu`,`position`,`url`,`entity`), + KEY `idx_menu_menuhandler_type` (`menu_handler`,`type`) +) ENGINE=InnoDB AUTO_INCREMENT=166517 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_menu` +-- + +LOCK TABLES `llx_menu` WRITE; +/*!40000 ALTER TABLE `llx_menu` DISABLE KEYS */; +INSERT INTO `llx_menu` VALUES (103094,'all',2,'agenda','top','agenda',0,NULL,NULL,100,'/comm/action/index.php','','Agenda','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103095,'all',2,'agenda','left','agenda',103094,NULL,NULL,100,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Actions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103096,'all',2,'agenda','left','agenda',103095,NULL,NULL,101,'/comm/action/card.php?mainmenu=agenda&leftmenu=agenda&action=create','','NewAction','commercial',NULL,NULL,'($user->rights->agenda->myactions->create||$user->rights->agenda->allactions->create)','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103097,'all',2,'agenda','left','agenda',103095,NULL,NULL,102,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Calendar','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103098,'all',2,'agenda','left','agenda',103097,NULL,NULL,103,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103099,'all',2,'agenda','left','agenda',103097,NULL,NULL,104,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103100,'all',2,'agenda','left','agenda',103097,NULL,NULL,105,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=todo','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103101,'all',2,'agenda','left','agenda',103097,NULL,NULL,106,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda&status=done','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103102,'all',2,'agenda','left','agenda',103095,NULL,NULL,112,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda','','List','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103103,'all',2,'agenda','left','agenda',103102,NULL,NULL,113,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103104,'all',2,'agenda','left','agenda',103102,NULL,NULL,114,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103105,'all',2,'agenda','left','agenda',103102,NULL,NULL,115,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=todo','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103106,'all',2,'agenda','left','agenda',103102,NULL,NULL,116,'/comm/action/listactions.php?mainmenu=agenda&leftmenu=agenda&status=done','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2013-03-13 15:29:19'),(103107,'all',2,'agenda','left','agenda',103095,NULL,NULL,120,'/comm/action/rapport/index.php?mainmenu=agenda&leftmenu=agenda','','Reportings','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$conf->agenda->enabled',2,'2013-03-13 15:29:19'),(103134,'all',2,'opensurvey','top','opensurvey',0,NULL,NULL,200,'/opensurvey/index.php','','Surveys','opensurvey',NULL,NULL,'$user->rights->opensurvey->survey->read','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103135,'all',2,'opensurvey','left','opensurvey',-1,NULL,'opensurvey',200,'/opensurvey/index.php?mainmenu=opensurvey&leftmenu=opensurvey','','Survey','opensurvey@opensurvey',NULL,'opensurvey','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103136,'all',2,'opensurvey','left','opensurvey',-1,'opensurvey','opensurvey',210,'/opensurvey/public/index.php','_blank','NewSurvey','opensurvey@opensurvey',NULL,'opensurvey_new','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(103137,'all',2,'opensurvey','left','opensurvey',-1,'opensurvey','opensurvey',220,'/opensurvey/list.php','','List','opensurvey@opensurvey',NULL,'opensurvey_list','','$conf->opensurvey->enabled',0,'2013-03-13 20:33:42'),(124179,'all',1,'cashdesk','top','cashdesk',0,NULL,NULL,100,'/cashdesk/index.php?user=__LOGIN__','pointofsale','CashDeskMenu','cashdesk',NULL,NULL,'$user->rights->cashdesk->use','$conf->cashdesk->enabled',0,'2015-11-15 22:38:33'),(124210,'all',1,'margins','left','accountancy',-1,NULL,'accountancy',100,'/margin/index.php','','Margins','margins',NULL,'margins','$user->rights->margins->liretous','$conf->margin->enabled',2,'2015-11-15 22:41:47'),(145086,'all',1,'supplier_proposal','left','commercial',-1,NULL,'commercial',300,'/supplier_proposal/index.php','','SupplierProposalsShort','supplier_proposal',NULL,'supplier_proposalsubmenu','$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145087,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',301,'/supplier_proposal/card.php?action=create&leftmenu=supplier_proposals','','SupplierProposalNew','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->creer','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145088,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',302,'/supplier_proposal/list.php?leftmenu=supplier_proposals','','List','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145089,'all',1,'supplier_proposal','left','commercial',-1,'supplier_proposalsubmenu','commercial',303,'/comm/propal/stats/index.php?leftmenu=supplier_proposals&mode=supplier','','Statistics','supplier_proposal',NULL,NULL,'$user->rights->supplier_proposal->lire','$conf->supplier_proposal->enabled',2,'2016-07-30 11:13:20'),(145090,'all',1,'resource','left','tools',-1,NULL,'tools',100,'/resource/list.php','','MenuResourceIndex','resource',NULL,'resource','$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145091,'all',1,'resource','left','tools',-1,'resource','tools',101,'/resource/add.php','','MenuResourceAdd','resource',NULL,NULL,'$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145092,'all',1,'resource','left','tools',-1,'resource','tools',102,'/resource/list.php','','List','resource',NULL,NULL,'$user->rights->resource->read','1',0,'2016-07-30 11:13:32'),(145127,'all',1,'printing','left','home',-1,'admintools','home',300,'/printing/index.php?mainmenu=home&leftmenu=admintools','','MenuDirectPrinting','printing',NULL,NULL,'$user->rights->printing->read','$conf->printing->enabled && $leftmenu==\'admintools\'',0,'2017-01-29 15:12:44'),(161088,'auguria',1,'','top','home',0,NULL,NULL,10,'/index.php?mainmenu=home&leftmenu=','','Home','',-1,'','','1',2,'2017-08-30 15:14:30'),(161089,'auguria',1,'societe|fournisseur','top','companies',0,NULL,NULL,20,'/societe/index.php?mainmenu=companies&leftmenu=','','ThirdParties','companies',-1,'','$user->rights->societe->lire || $user->rights->societe->contact->lire','( ! empty($conf->societe->enabled) && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))) || ! empty($conf->fournisseur->enabled)',2,'2017-08-30 15:14:30'),(161090,'auguria',1,'product|service','top','products',0,NULL,NULL,30,'/product/index.php?mainmenu=products&leftmenu=','','Products/Services','products',-1,'','$user->rights->produit->lire||$user->rights->service->lire','$conf->product->enabled || $conf->service->enabled',0,'2017-08-30 15:14:30'),(161092,'auguria',1,'propal|commande|fournisseur|contrat|ficheinter','top','commercial',0,NULL,NULL,40,'/comm/index.php?mainmenu=commercial&leftmenu=','','Commercial','commercial',-1,'','$user->rights->societe->lire || $user->rights->societe->contact->lire','$conf->propal->enabled || $conf->commande->enabled || $conf->supplier_order->enabled || $conf->contrat->enabled || $conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(161093,'auguria',1,'comptabilite|accounting|facture|don|tax|salaries|loan','top','accountancy',0,NULL,NULL,50,'/compta/index.php?mainmenu=accountancy&leftmenu=','','MenuFinancial','compta',-1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->plancompte->lire || $user->rights->facture->lire|| $user->rights->don->lire || $user->rights->tax->charges->lire || $user->rights->salaries->read || $user->rights->loan->read','$conf->comptabilite->enabled || $conf->accounting->enabled || $conf->facture->enabled || $conf->don->enabled || $conf->tax->enabled || $conf->salaries->enabled || $conf->supplier_invoice->enabled || $conf->loan->enabled',2,'2017-08-30 15:14:30'),(161094,'auguria',1,'projet','top','project',0,NULL,NULL,70,'/projet/index.php?mainmenu=project&leftmenu=','','Projects','projects',-1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(161095,'auguria',1,'mailing|export|import|opensurvey|resource','top','tools',0,NULL,NULL,90,'/core/tools.php?mainmenu=tools&leftmenu=','','Tools','other',-1,'','$user->rights->mailing->lire || $user->rights->export->lire || $user->rights->import->run || $user->rights->opensurvey->read || $user->rights->resource->read','$conf->mailing->enabled || $conf->export->enabled || $conf->import->enabled || $conf->opensurvey->enabled || $conf->resource->enabled',2,'2017-08-30 15:14:30'),(161101,'auguria',1,'banque|prelevement','top','bank',0,NULL,NULL,60,'/compta/bank/index.php?mainmenu=bank&leftmenu=bank','','MenuBankCash','banks',-1,'','$user->rights->banque->lire || $user->rights->prelevement->bons->lire','$conf->banque->enabled || $conf->prelevement->enabled',0,'2017-08-30 15:14:30'),(161102,'auguria',1,'hrm|holiday|deplacement|expensereport','top','hrm',0,NULL,NULL,80,'/hrm/index.php?mainmenu=hrm&leftmenu=','','HRM','holiday',-1,'','$user->rights->hrm->employee->read || $user->rights->holiday->write || $user->rights->deplacement->lire || $user->rights->expensereport->lire','$conf->hrm->enabled || $conf->holiday->enabled || $conf->deplacement->enabled || $conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(161177,'auguria',1,'','left','home',161088,NULL,NULL,0,'/index.php','','MyDashboard','',0,'','','1',2,'2017-08-30 15:14:30'),(161187,'auguria',1,'','left','home',161088,NULL,NULL,1,'/admin/index.php?leftmenu=setup','','Setup','admin',0,'setup','','$user->admin',2,'2017-08-30 15:14:30'),(161188,'auguria',1,'','left','home',161187,NULL,NULL,1,'/admin/company.php?leftmenu=setup','','MenuCompanySetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161189,'auguria',1,'','left','home',161187,NULL,NULL,4,'/admin/ihm.php?leftmenu=setup','','GUISetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161190,'auguria',1,'','left','home',161187,NULL,NULL,2,'/admin/modules.php?leftmenu=setup','','Modules','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161191,'auguria',1,'','left','home',161187,NULL,NULL,6,'/admin/boxes.php?leftmenu=setup','','Boxes','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161192,'auguria',1,'','left','home',161187,NULL,NULL,3,'/admin/menus.php?leftmenu=setup','','Menus','admin',1,'','','$leftmenu==\'setup\'',2,'2017-09-06 08:29:47'),(161193,'auguria',1,'','left','home',161187,NULL,NULL,7,'/admin/delais.php?leftmenu=setup','','Alerts','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161194,'auguria',1,'','left','home',161187,NULL,NULL,10,'/admin/pdf.php?leftmenu=setup','','PDF','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161195,'auguria',1,'','left','home',161187,NULL,NULL,8,'/admin/security_other.php?leftmenu=setup','','Security','admin',1,'','','$leftmenu==\'setup\'',2,'2017-09-06 08:29:36'),(161196,'auguria',1,'','left','home',161187,NULL,NULL,11,'/admin/mails.php?leftmenu=setup','','Emails','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161197,'auguria',1,'','left','home',161187,NULL,NULL,9,'/admin/limits.php?leftmenu=setup','','MenuLimits','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161198,'auguria',1,'','left','home',161187,NULL,NULL,13,'/admin/dict.php?leftmenu=setup','','Dictionary','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161199,'auguria',1,'','left','home',161187,NULL,NULL,14,'/admin/const.php?leftmenu=setup','','OtherSetup','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161200,'auguria',1,'','left','home',161187,NULL,NULL,12,'/admin/sms.php?leftmenu=setup','','SMS','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161201,'auguria',1,'','left','home',161187,NULL,NULL,4,'/admin/translation.php?leftmenu=setup','','Translation','admin',1,'','','$leftmenu==\"setup\"',2,'2017-08-30 15:14:30'),(161288,'auguria',1,'','left','home',161387,NULL,NULL,0,'/admin/system/dolibarr.php?leftmenu=admintools','','InfoDolibarr','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161289,'auguria',1,'','left','home',161288,NULL,NULL,2,'/admin/system/modules.php?leftmenu=admintools','','Modules','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161290,'auguria',1,'','left','home',161288,NULL,NULL,3,'/admin/triggers.php?leftmenu=admintools','','Triggers','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161291,'auguria',1,'','left','home',161288,NULL,NULL,4,'/admin/system/filecheck.php?leftmenu=admintools','','FileCheck','admin',2,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161292,'auguria',1,'','left','home',161387,NULL,NULL,1,'/admin/system/browser.php?leftmenu=admintools','','InfoBrowser','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161293,'auguria',1,'','left','home',161387,NULL,NULL,2,'/admin/system/os.php?leftmenu=admintools','','InfoOS','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161294,'auguria',1,'','left','home',161387,NULL,NULL,3,'/admin/system/web.php?leftmenu=admintools','','InfoWebServer','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161295,'auguria',1,'','left','home',161387,NULL,NULL,4,'/admin/system/phpinfo.php?leftmenu=admintools','','InfoPHP','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161297,'auguria',1,'','left','home',161387,NULL,NULL,5,'/admin/system/database.php?leftmenu=admintools','','InfoDatabase','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161387,'auguria',1,'','left','home',161088,NULL,NULL,2,'/admin/tools/index.php?leftmenu=admintools','','AdminTools','admin',0,'admintools','','$user->admin',2,'2017-08-30 15:14:30'),(161388,'auguria',1,'','left','home',161387,NULL,NULL,6,'/admin/tools/dolibarr_export.php?leftmenu=admintools','','Backup','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161389,'auguria',1,'','left','home',161387,NULL,NULL,7,'/admin/tools/dolibarr_import.php?leftmenu=admintools','','Restore','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161392,'auguria',1,'','left','home',161387,NULL,NULL,8,'/admin/tools/update.php?leftmenu=admintools','','MenuUpgrade','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161393,'auguria',1,'','left','home',161387,NULL,NULL,9,'/admin/tools/eaccelerator.php?leftmenu=admintools','','EAccelerator','admin',1,'','','$leftmenu==\"admintools\" && function_exists(\"eaccelerator_info\")',2,'2017-08-30 15:14:30'),(161394,'auguria',1,'','left','home',161387,NULL,NULL,10,'/admin/tools/listevents.php?leftmenu=admintools','','Audit','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161395,'auguria',1,'','left','home',161387,NULL,NULL,11,'/admin/tools/listsessions.php?leftmenu=admintools','','Sessions','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161396,'auguria',1,'','left','home',161387,NULL,NULL,12,'/admin/tools/purge.php?leftmenu=admintools','','Purge','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161398,'auguria',1,'','left','home',161387,NULL,NULL,14,'/admin/system/about.php?leftmenu=admintools','','ExternalResources','admin',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161407,'auguria',1,'','left','home',161387,NULL,NULL,15,'/product/admin/product_tools.php?mainmenu=home&leftmenu=admintools','','ProductVatMassChange','products',1,'','','$leftmenu==\"admintools\"',2,'2017-08-30 15:14:30'),(161487,'auguria',1,'','left','home',161088,NULL,NULL,4,'/user/home.php?leftmenu=users','','MenuUsersAndGroups','users',0,'users','','1',2,'2017-08-30 15:14:30'),(161488,'auguria',1,'','left','home',161487,NULL,NULL,0,'/user/index.php?leftmenu=users','','Users','users',1,'','$user->rights->user->user->lire || $user->admin','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161489,'auguria',1,'','left','home',161488,NULL,NULL,0,'/user/card.php?leftmenu=users&action=create','','NewUser','users',2,'','($user->rights->user->user->creer || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161490,'auguria',1,'','left','home',161487,NULL,NULL,1,'/user/group/index.php?leftmenu=users','','Groups','users',1,'','(($conf->global->MAIN_USE_ADVANCED_PERMS?$user->rights->user->group_advance->read:$user->rights->user->user->lire) || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161491,'auguria',1,'','left','home',161490,NULL,NULL,0,'/user/group/card.php?leftmenu=users&action=create','','NewGroup','users',2,'','(($conf->global->MAIN_USE_ADVANCED_PERMS?$user->rights->user->group_advance->write:$user->rights->user->user->creer) || $user->admin) && !(! empty($conf->multicompany->enabled) && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE)','$leftmenu==\"users\"',2,'2017-08-30 15:14:30'),(161587,'auguria',1,'','left','companies',161089,NULL,NULL,0,'/societe/index.php?leftmenu=thirdparties','','ThirdParty','companies',0,'thirdparties','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161588,'auguria',1,'','left','companies',161587,NULL,NULL,0,'/societe/card.php?action=create','','MenuNewThirdParty','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161589,'auguria',1,'','left','companies',161587,NULL,NULL,0,'/societe/list.php?action=create','','List','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161590,'auguria',1,'','left','companies',161587,NULL,NULL,5,'/societe/list.php?type=f&leftmenu=suppliers','','ListSuppliersShort','suppliers',1,'','$user->rights->societe->lire && $user->rights->fournisseur->lire','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161591,'auguria',1,'','left','companies',161590,NULL,NULL,0,'/societe/card.php?leftmenu=supplier&action=create&type=f','','NewSupplier','suppliers',2,'','$user->rights->societe->creer','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161593,'auguria',1,'','left','companies',161587,NULL,NULL,3,'/societe/list.php?type=p&leftmenu=prospects','','ListProspectsShort','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161594,'auguria',1,'','left','companies',161593,NULL,NULL,0,'/societe/card.php?leftmenu=prospects&action=create&type=p','','MenuNewProspect','companies',2,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161596,'auguria',1,'','left','companies',161587,NULL,NULL,4,'/societe/list.php?type=c&leftmenu=customers','','ListCustomersShort','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161597,'auguria',1,'','left','companies',161596,NULL,NULL,0,'/societe/card.php?leftmenu=customers&action=create&type=c','','MenuNewCustomer','companies',2,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161687,'auguria',1,'','left','companies',161089,NULL,NULL,1,'/contact/list.php?leftmenu=contacts','','ContactsAddresses','companies',0,'contacts','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161688,'auguria',1,'','left','companies',161687,NULL,NULL,0,'/contact/card.php?leftmenu=contacts&action=create','','NewContactAddress','companies',1,'','$user->rights->societe->creer','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161689,'auguria',1,'','left','companies',161687,NULL,NULL,1,'/contact/list.php?leftmenu=contacts','','List','companies',1,'','$user->rights->societe->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161691,'auguria',1,'','left','companies',161689,NULL,NULL,1,'/contact/list.php?leftmenu=contacts&type=p','','ThirdPartyProspects','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161692,'auguria',1,'','left','companies',161689,NULL,NULL,2,'/contact/list.php?leftmenu=contacts&type=c','','ThirdPartyCustomers','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161693,'auguria',1,'','left','companies',161689,NULL,NULL,3,'/contact/list.php?leftmenu=contacts&type=f','','ThirdPartySuppliers','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled && $conf->fournisseur->enabled',2,'2017-08-30 15:14:30'),(161694,'auguria',1,'','left','companies',161689,NULL,NULL,4,'/contact/list.php?leftmenu=contacts&type=o','','Others','companies',2,'','$user->rights->societe->contact->lire','$conf->societe->enabled',2,'2017-08-30 15:14:30'),(161737,'auguria',1,'','left','companies',161089,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=1','','SuppliersCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161738,'auguria',1,'','left','companies',161737,NULL,NULL,0,'/categories/card.php?action=create&type=1','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161747,'auguria',1,'','left','companies',161089,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=2','','CustomersProspectsCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->fournisseur->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161748,'auguria',1,'','left','companies',161747,NULL,NULL,0,'/categories/card.php?action=create&type=2','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->fournisseur->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161757,'auguria',1,'','left','companies',161089,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=4','','ContactCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(161758,'auguria',1,'','left','companies',161757,NULL,NULL,0,'/categories/card.php?action=create&type=4','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->societe->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(162187,'auguria',1,'','left','commercial',161092,NULL,NULL,4,'/comm/propal/index.php?leftmenu=propals','','Prop','propal',0,'propals','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162188,'auguria',1,'','left','commercial',162187,NULL,NULL,0,'/comm/propal/card.php?action=create&leftmenu=propals','','NewPropal','propal',1,'','$user->rights->propale->creer','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162189,'auguria',1,'','left','commercial',162187,NULL,NULL,1,'/comm/propal/list.php?leftmenu=propals','','List','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162190,'auguria',1,'','left','commercial',162189,NULL,NULL,2,'/comm/propal/list.php?leftmenu=propals&viewstatut=0','','PropalsDraft','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162191,'auguria',1,'','left','commercial',162189,NULL,NULL,3,'/comm/propal/list.php?leftmenu=propals&viewstatut=1','','PropalsOpened','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162192,'auguria',1,'','left','commercial',162189,NULL,NULL,4,'/comm/propal/list.php?leftmenu=propals&viewstatut=2','','PropalStatusSigned','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162193,'auguria',1,'','left','commercial',162189,NULL,NULL,5,'/comm/propal/list.php?leftmenu=propals&viewstatut=3','','PropalStatusNotSigned','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162194,'auguria',1,'','left','commercial',162189,NULL,NULL,6,'/comm/propal/list.php?leftmenu=propals&viewstatut=4','','PropalStatusBilled','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled && $leftmenu==\"propals\"',2,'2017-08-30 15:14:30'),(162197,'auguria',1,'','left','commercial',162187,NULL,NULL,4,'/comm/propal/stats/index.php?leftmenu=propals','','Statistics','propal',1,'','$user->rights->propale->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(162287,'auguria',1,'','left','commercial',161092,NULL,NULL,5,'/commande/index.php?leftmenu=orders','','CustomersOrders','orders',0,'orders','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162288,'auguria',1,'','left','commercial',162287,NULL,NULL,0,'/commande/card.php?action=create&leftmenu=orders','','NewOrder','orders',1,'','$user->rights->commande->creer','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162289,'auguria',1,'','left','commercial',162287,NULL,NULL,1,'/commande/list.php?leftmenu=orders','','List','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162290,'auguria',1,'','left','commercial',162289,NULL,NULL,2,'/commande/list.php?leftmenu=orders&viewstatut=0','','StatusOrderDraftShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162291,'auguria',1,'','left','commercial',162289,NULL,NULL,3,'/commande/list.php?leftmenu=orders&viewstatut=1','','StatusOrderValidated','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162292,'auguria',1,'','left','commercial',162289,NULL,NULL,4,'/commande/list.php?leftmenu=orders&viewstatut=2','','StatusOrderOnProcessShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162293,'auguria',1,'','left','commercial',162289,NULL,NULL,5,'/commande/list.php?leftmenu=orders&viewstatut=3','','StatusOrderToBill','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162294,'auguria',1,'','left','commercial',162289,NULL,NULL,6,'/commande/list.php?leftmenu=orders&viewstatut=4','','StatusOrderProcessed','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162295,'auguria',1,'','left','commercial',162289,NULL,NULL,7,'/commande/list.php?leftmenu=orders&viewstatut=-1','','StatusOrderCanceledShort','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled && $leftmenu==\"orders\"',2,'2017-08-30 15:14:30'),(162296,'auguria',1,'','left','commercial',162287,NULL,NULL,4,'/commande/stats/index.php?leftmenu=orders','','Statistics','orders',1,'','$user->rights->commande->lire','$conf->commande->enabled',2,'2017-08-30 15:14:30'),(162387,'auguria',1,'','left','commercial',161090,NULL,NULL,6,'/expedition/index.php?leftmenu=sendings','','Shipments','sendings',0,'sendings','$user->rights->expedition->lire','$conf->expedition->enabled',2,'2017-08-30 15:14:30'),(162388,'auguria',1,'','left','commercial',162387,NULL,NULL,0,'/expedition/card.php?action=create2&leftmenu=sendings','','NewSending','sendings',1,'','$user->rights->expedition->creer','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162389,'auguria',1,'','left','commercial',162387,NULL,NULL,1,'/expedition/list.php?leftmenu=sendings','','List','sendings',1,'','$user->rights->expedition->lire','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162390,'auguria',1,'','left','commercial',162387,NULL,NULL,2,'/expedition/stats/index.php?leftmenu=sendings','','Statistics','sendings',1,'','$user->rights->expedition->lire','$conf->expedition->enabled && $leftmenu==\"sendings\"',2,'2017-08-30 15:14:30'),(162487,'auguria',1,'','left','commercial',161092,NULL,NULL,7,'/contrat/index.php?leftmenu=contracts','','Contracts','contracts',0,'contracts','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162488,'auguria',1,'','left','commercial',162487,NULL,NULL,0,'/contrat/card.php?&action=create&leftmenu=contracts','','NewContract','contracts',1,'','$user->rights->contrat->creer','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162489,'auguria',1,'','left','commercial',162487,NULL,NULL,1,'/contrat/list.php?leftmenu=contracts','','List','contracts',1,'','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162490,'auguria',1,'','left','commercial',162487,NULL,NULL,2,'/contrat/services.php?leftmenu=contracts','','MenuServices','contracts',1,'','$user->rights->contrat->lire','$conf->contrat->enabled',2,'2017-08-30 15:14:30'),(162491,'auguria',1,'','left','commercial',162490,NULL,NULL,0,'/contrat/services.php?leftmenu=contracts&mode=0','','MenuInactiveServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162492,'auguria',1,'','left','commercial',162490,NULL,NULL,1,'/contrat/services.php?leftmenu=contracts&mode=4','','MenuRunningServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162493,'auguria',1,'','left','commercial',162490,NULL,NULL,2,'/contrat/services.php?leftmenu=contracts&mode=4&filter=expired','','MenuExpiredServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162494,'auguria',1,'','left','commercial',162490,NULL,NULL,3,'/contrat/services.php?leftmenu=contracts&mode=5','','MenuClosedServices','contracts',2,'','$user->rights->contrat->lire','$conf->contrat->enabled && $leftmenu==\"contracts\"',2,'2017-08-30 15:14:30'),(162587,'auguria',1,'','left','commercial',161092,NULL,NULL,8,'/fichinter/list.php?leftmenu=ficheinter','','Interventions','interventions',0,'ficheinter','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162588,'auguria',1,'','left','commercial',162587,NULL,NULL,0,'/fichinter/card.php?action=create&leftmenu=ficheinter','','NewIntervention','interventions',1,'','$user->rights->ficheinter->creer','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162589,'auguria',1,'','left','commercial',162587,NULL,NULL,1,'/fichinter/list.php?leftmenu=ficheinter','','List','interventions',1,'','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162590,'auguria',1,'','left','commercial',162587,NULL,NULL,2,'/fichinter/stats/index.php?leftmenu=ficheinter','','Statistics','interventions',1,'','$user->rights->ficheinter->lire','$conf->ficheinter->enabled',2,'2017-08-30 15:14:30'),(162687,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/fourn/facture/list.php?leftmenu=suppliers_bills','','BillsSuppliers','bills',0,'supplier_bills','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162688,'auguria',1,'','left','accountancy',162687,NULL,NULL,0,'/fourn/facture/card.php?action=create&leftmenu=suppliers_bills','','NewBill','bills',1,'','$user->rights->fournisseur->facture->creer','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162689,'auguria',1,'','left','accountancy',162687,NULL,NULL,1,'/fourn/facture/list.php?leftmenu=suppliers_bills','','List','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162690,'auguria',1,'','left','accountancy',162687,NULL,NULL,2,'/fourn/facture/paiement.php?leftmenu=suppliers_bills','','Payments','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162691,'auguria',1,'','left','accountancy',162687,NULL,NULL,8,'/compta/facture/stats/index.php?leftmenu=customers_bills&mode=supplier','','Statistics','bills',1,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162692,'auguria',1,'','left','accountancy',162690,NULL,NULL,1,'/fourn/facture/rapport.php?leftmenu=suppliers_bills','','Reporting','bills',2,'','$user->rights->fournisseur->facture->lire','$conf->supplier_invoice->enabled',2,'2017-08-30 15:14:30'),(162787,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/compta/facture/list.php?leftmenu=customers_bills','','BillsCustomers','bills',0,'customer_bills','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162788,'auguria',1,'','left','accountancy',162787,NULL,NULL,3,'/compta/facture/card.php?action=create&leftmenu=customers_bills','','NewBill','bills',1,'','$user->rights->facture->creer','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162789,'auguria',1,'','left','accountancy',162787,NULL,NULL,5,'/compta/facture/fiche-rec.php?leftmenu=customers_bills','','ListOfTemplates','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162791,'auguria',1,'','left','accountancy',162787,NULL,NULL,6,'/compta/paiement/list.php?leftmenu=customers_bills','','Payments','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162792,'auguria',1,'','left','accountancy',162787,NULL,NULL,4,'/compta/facture/list.php?leftmenu=customers_bills','','List','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162797,'auguria',1,'','left','accountancy',162791,NULL,NULL,1,'/compta/paiement/rapport.php?leftmenu=customers_bills','','Reportings','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162798,'auguria',1,'','left','accountancy',161101,NULL,NULL,9,'/compta/paiement/cheque/index.php?leftmenu=checks&mainmenu=bank','','MenuChequeDeposits','bills',0,'checks','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162799,'auguria',1,'','left','accountancy',162798,NULL,NULL,0,'/compta/paiement/cheque/card.php?leftmenu=checks&action=new','','NewCheckDeposit','compta',1,'','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162800,'auguria',1,'','left','accountancy',162798,NULL,NULL,1,'/compta/paiement/cheque/list.php?leftmenu=checks','','List','bills',1,'','$user->rights->banque->lire','empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && ! empty($conf->banque->enabled) && (! empty($conf->facture->enabled) || ! empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))',2,'2017-08-30 15:14:30'),(162801,'auguria',1,'','left','accountancy',162787,NULL,NULL,8,'/compta/facture/stats/index.php?leftmenu=customers_bills','','Statistics','bills',1,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162807,'auguria',1,'','left','accountancy',162792,NULL,NULL,1,'/compta/facture/list.php?leftmenu=customers_bills&search_status=0','','BillShortStatusDraft','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162808,'auguria',1,'','left','accountancy',162792,NULL,NULL,2,'/compta/facture/list.php?leftmenu=customers_bills&search_status=1','','BillShortStatusNotPaid','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162809,'auguria',1,'','left','accountancy',162792,NULL,NULL,3,'/compta/facture/list.php?leftmenu=customers_bills&search_status=2','','BillShortStatusPaid','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162810,'auguria',1,'','left','accountancy',162792,NULL,NULL,4,'/compta/facture/list.php?leftmenu=customers_bills&search_status=3','','BillShortStatusCanceled','bills',2,'','$user->rights->facture->lire','$conf->facture->enabled',2,'2017-08-30 15:14:30'),(162987,'auguria',1,'','left','accountancy',161093,NULL,NULL,3,'/commande/list.php?leftmenu=orders&viewstatut=3','','MenuOrdersToBill','orders',0,'orders','$user->rights->commande->lire','$conf->commande->enabled',0,'2017-08-30 15:14:30'),(163087,'auguria',1,'','left','accountancy',161093,NULL,NULL,4,'/don/index.php?leftmenu=donations&mainmenu=accountancy','','Donations','donations',0,'donations','$user->rights->don->lire','$conf->don->enabled',2,'2017-08-30 15:14:30'),(163088,'auguria',1,'','left','accountancy',163087,NULL,NULL,0,'/don/card.php?leftmenu=donations&mainmenu=accountancy&action=create','','NewDonation','donations',1,'','$user->rights->don->creer','$conf->don->enabled && $leftmenu==\"donations\"',2,'2017-08-30 15:14:30'),(163089,'auguria',1,'','left','accountancy',163087,NULL,NULL,1,'/don/list.php?leftmenu=donations&mainmenu=accountancy','','List','donations',1,'','$user->rights->don->lire','$conf->don->enabled && $leftmenu==\"donations\"',2,'2017-08-30 15:14:30'),(163187,'auguria',1,'','left','accountancy',161102,NULL,NULL,5,'/compta/deplacement/index.php?leftmenu=tripsandexpenses','','TripsAndExpenses','trips',0,'tripsandexpenses','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163188,'auguria',1,'','left','accountancy',163187,NULL,NULL,1,'/compta/deplacement/card.php?action=create&leftmenu=tripsandexpenses','','New','trips',1,'','$user->rights->deplacement->creer','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163189,'auguria',1,'','left','accountancy',163187,NULL,NULL,2,'/compta/deplacement/list.php?leftmenu=tripsandexpenses','','List','trips',1,'','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163190,'auguria',1,'','left','accountancy',163187,NULL,NULL,2,'/compta/deplacement/stats/index.php?leftmenu=tripsandexpenses','','Statistics','trips',1,'','$user->rights->deplacement->lire','$conf->deplacement->enabled',0,'2017-08-30 15:14:30'),(163287,'auguria',1,'','left','accountancy',161093,NULL,NULL,6,'/compta/charges/index.php?leftmenu=tax&mainmenu=accountancy','','MenuSpecialExpenses','compta',0,'tax','(! empty($conf->tax->enabled) && $user->rights->tax->charges->lire) || (! empty($conf->salaries->enabled) && $user->rights->salaries->read)','$conf->tax->enabled || $conf->salaries->enabled',0,'2017-08-30 15:14:30'),(163297,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/compta/salaries/index.php?leftmenu=tax_salary&mainmenu=accountancy','','Salaries','salaries',1,'tax_sal','$user->rights->salaries->payment->read','$conf->salaries->enabled',0,'2017-08-30 15:14:30'),(163298,'auguria',1,'','left','accountancy',163297,NULL,NULL,2,'/compta/salaries/card.php?leftmenu=tax_salary&action=create','','NewPayment','companies',2,'','$user->rights->salaries->payment->write','$conf->salaries->enabled && $leftmenu==\"tax_salary\"',0,'2017-08-30 15:14:30'),(163299,'auguria',1,'','left','accountancy',163297,NULL,NULL,3,'/compta/salaries/index.php?leftmenu=tax_salary','','Payments','companies',2,'','$user->rights->salaries->payment->read','$conf->salaries->enabled && $leftmenu==\"tax_salary\"',0,'2017-08-30 15:14:30'),(163307,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/loan/index.php?leftmenu=tax_loan&mainmenu=accountancy','','Loans','loan',1,'tax_loan','$user->rights->loan->read','$conf->loan->enabled',0,'2017-08-30 15:14:30'),(163308,'auguria',1,'','left','accountancy',163307,NULL,NULL,2,'/loan/card.php?leftmenu=tax_loan&action=create','','NewLoan','loan',2,'','$user->rights->loan->write','$conf->loan->enabled && $leftmenu==\"tax_loan\"',0,'2017-08-30 15:14:30'),(163310,'auguria',1,'','left','accountancy',163307,NULL,NULL,4,'/loan/calc.php?leftmenu=tax_loan','','Calculator','companies',2,'','$user->rights->loan->calc','$conf->loan->enabled && $leftmenu==\"tax_loan\" && ! empty($conf->global->LOAN_SHOW_CALCULATOR)',0,'2017-08-30 15:14:30'),(163337,'auguria',1,'','left','accountancy',163287,NULL,NULL,1,'/compta/sociales/index.php?leftmenu=tax_social','','SocialContributions','',1,'tax_social','$user->rights->tax->charges->lire','$conf->tax->enabled',0,'2017-08-30 15:14:30'),(163338,'auguria',1,'','left','accountancy',163337,NULL,NULL,2,'/compta/sociales/card.php?leftmenu=tax_social&action=create','','MenuNewSocialContribution','',2,'','$user->rights->tax->charges->creer','$conf->tax->enabled && $leftmenu==\"tax_social\"',0,'2017-08-30 15:14:30'),(163339,'auguria',1,'','left','accountancy',163337,NULL,NULL,3,'/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=accountancy&mode=sconly','','Payments','',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && $leftmenu==\"tax_social\"',0,'2017-08-30 15:14:30'),(163387,'auguria',1,'','left','accountancy',163287,NULL,NULL,7,'/compta/tva/index.php?leftmenu=tax_vat&mainmenu=accountancy','','VAT','companies',1,'tax_vat','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS)',0,'2017-08-30 15:14:30'),(163388,'auguria',1,'','left','accountancy',163387,NULL,NULL,0,'/compta/tva/card.php?leftmenu=tax_vat&action=create','','New','companies',2,'','$user->rights->tax->charges->creer','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163389,'auguria',1,'','left','accountancy',163387,NULL,NULL,1,'/compta/tva/reglement.php?leftmenu=tax_vat','','List','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163390,'auguria',1,'','left','accountancy',163387,NULL,NULL,2,'/compta/tva/clients.php?leftmenu=tax_vat','','ReportByCustomers','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163391,'auguria',1,'','left','accountancy',163387,NULL,NULL,3,'/compta/tva/quadri_detail.php?leftmenu=tax_vat','','ReportByQuarter','companies',2,'','$user->rights->tax->charges->lire','$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu==\"tax_vat\"',0,'2017-08-30 15:14:30'),(163487,'auguria',1,'','left','accountancy',161093,NULL,NULL,7,'/accountancy/index.php?leftmenu=accountancy','','MenuAccountancy','accountancy',0,'accounting','! empty($conf->accounting->enabled) || $user->rights->accounting->bind->write || $user->rights->accounting->bind->write || $user->rights->compta->resultat->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163488,'auguria',1,'','left','accountancy',163487,NULL,NULL,2,'/accountancy/customer/index.php?leftmenu=dispatch_customer','','CustomersVentilation','accountancy',1,'dispatch_customer','$user->rights->accounting->bind->write','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163489,'auguria',1,'','left','accountancy',163488,NULL,NULL,3,'/accountancy/customer/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $leftmenu==\"dispatch_customer\"',0,'2017-08-30 15:14:30'),(163490,'auguria',1,'','left','accountancy',163488,NULL,NULL,4,'/accountancy/customer/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $leftmenu==\"dispatch_customer\"',0,'2017-08-30 15:14:30'),(163497,'auguria',1,'','left','accountancy',163487,NULL,NULL,5,'/accountancy/supplier/index.php?leftmenu=dispatch_supplier','','SuppliersVentilation','accountancy',1,'ventil_supplier','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled',0,'2017-08-30 15:14:30'),(163498,'auguria',1,'','left','accountancy',163497,NULL,NULL,6,'/accountancy/supplier/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu==\"dispatch_supplier\"',0,'2017-08-30 15:14:30'),(163499,'auguria',1,'','left','accountancy',163497,NULL,NULL,7,'/accountancy/supplier/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu==\"dispatch_supplier\"',0,'2017-08-30 15:14:30'),(163507,'auguria',1,'','left','accountancy',163487,NULL,NULL,5,'/accountancy/expensereport/index.php?leftmenu=dispatch_expensereport','','ExpenseReportsVentilation','accountancy',1,'ventil_expensereport','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(163508,'auguria',1,'','left','accountancy',163507,NULL,NULL,6,'/accountancy/expensereport/list.php','','ToDispatch','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"dispatch_expensereport\"',0,'2017-08-30 15:14:30'),(163509,'auguria',1,'','left','accountancy',163507,NULL,NULL,7,'/accountancy/expensereport/lines.php','','Dispatched','accountancy',2,'','$user->rights->accounting->bind->write','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"dispatch_expensereport\"',0,'2017-08-30 15:14:30'),(163517,'auguria',1,'','left','accountancy',163487,NULL,NULL,15,'/accountancy/bookkeeping/list.php','','Bookkeeping','accountancy',1,'bookkeeping','$user->rights->accounting->mouvements->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163522,'auguria',1,'','left','accountancy',163487,NULL,NULL,16,'/accountancy/bookkeeping/balance.php','','AccountBalance','accountancy',1,'balance','$user->rights->accounting->mouvements->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163527,'auguria',1,'','left','accountancy',163487,NULL,NULL,17,'/accountancy/report/result.php?mainmenu=accountancy&leftmenu=accountancy','','Reportings','main',1,'report','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163528,'auguria',1,'','left','accountancy',163527,NULL,NULL,19,'/compta/resultat/index.php?mainmenu=accountancy&leftmenu=accountancy','','ReportInOut','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163529,'auguria',1,'','left','accountancy',163528,NULL,NULL,18,'/accountancy/report/result.php?mainmenu=accountancy&leftmenu=accountancy','','ByAccounts','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163530,'auguria',1,'','left','accountancy',163528,NULL,NULL,20,'/compta/resultat/clientfourn.php?mainmenu=accountancy&leftmenu=accountancy','','ByCompanies','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163531,'auguria',1,'','left','accountancy',163527,NULL,NULL,21,'/compta/stats/index.php?mainmenu=accountancy&leftmenu=accountancy','','ReportTurnover','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163532,'auguria',1,'','left','accountancy',163531,NULL,NULL,22,'/compta/stats/casoc.php?mainmenu=accountancy&leftmenu=accountancy','','ByCompanies','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163533,'auguria',1,'','left','accountancy',163531,NULL,NULL,23,'/compta/stats/cabyuser.php?mainmenu=accountancy&leftmenu=accountancy','','ByUsers','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163534,'auguria',1,'','left','accountancy',163531,NULL,NULL,24,'/compta/stats/cabyprodserv.php?mainmenu=accountancy&leftmenu=accountancy','','ByProductsAndServices','main',3,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled && $leftmenu==\"accountancy\"',0,'2017-08-30 15:14:30'),(163537,'auguria',1,'','left','accountancy',163538,NULL,NULL,80,'/accountancy/admin/fiscalyear.php?mainmenu=accountancy&leftmenu=accountancy_admin','','FiscalPeriod','admin',1,'accountancy_admin_period','','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\" && $conf->global->MAIN_FEATURES_LEVEL > 0',2,'2017-08-30 15:14:30'),(163538,'auguria',1,'','left','accountancy',163487,NULL,NULL,1,'/accountancy/index.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Setup','accountancy',1,'accountancy_admin','$user->rights->accounting->chartofaccount','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163541,'auguria',1,'','left','accountancy',163538,NULL,NULL,10,'/accountancy/admin/journals_list.php?id=35&mainmenu=accountancy&leftmenu=accountancy_admin','','AccountingJournals','accountancy',2,'accountancy_admin_journal','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163542,'auguria',1,'','left','accountancy',163538,NULL,NULL,20,'/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Pcg_version','accountancy',2,'accountancy_admin_chartmodel','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163543,'auguria',1,'','left','accountancy',163538,NULL,NULL,30,'/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin','','Chartofaccounts','accountancy',2,'accountancy_admin_chart','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163544,'auguria',1,'','left','accountancy',163538,NULL,NULL,40,'/accountancy/admin/categories_list.php?id=32&mainmenu=accountancy&leftmenu=accountancy_admin','','AccountingCategory','accountancy',2,'accountancy_admin_chart_group','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163545,'auguria',1,'','left','accountancy',163538,NULL,NULL,50,'/accountancy/admin/defaultaccounts.php?mainmenu=accountancy&leftmenu=accountancy_admin','','MenuDefaultAccounts','accountancy',2,'accountancy_admin_default','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163546,'auguria',1,'','left','accountancy',163538,NULL,NULL,60,'/admin/dict.php?id=10&from=accountancy&search_country_id=__MYCOUNTRYID__&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuVatAccounts','accountancy',2,'accountancy_admin_vat','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163547,'auguria',1,'','left','accountancy',163538,NULL,NULL,70,'/admin/dict.php?id=7&from=accountancy&search_country_id=__MYCOUNTRYID__&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuTaxAccounts','accountancy',2,'accountancy_admin_tax','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163548,'auguria',1,'','left','accountancy',163538,NULL,NULL,80,'/admin/dict.php?id=17&from=accountancy&mainmenu=accountancy&leftmenu=accountancy_admin','','MenuExpenseReportAccounts','accountancy',2,'accountancy_admin_expensereport','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $conf->expensereport->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163549,'auguria',1,'','left','accountancy',163538,NULL,NULL,90,'/accountancy/admin/productaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin','','MenuProductsAccounts','accountancy',2,'accountancy_admin_product','$user->rights->accounting->chartofaccount','$conf->accounting->enabled && $leftmenu==\"accountancy_admin\"',0,'2017-08-30 15:14:30'),(163587,'auguria',1,'','left','accountancy',161101,NULL,NULL,9,'/compta/prelevement/index.php?leftmenu=withdraw&mainmenu=bank','','StandingOrders','withdrawals',0,'withdraw','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled',2,'2017-08-30 15:14:30'),(163589,'auguria',1,'','left','accountancy',163587,NULL,NULL,0,'/compta/prelevement/create.php?leftmenu=withdraw','','NewStandingOrder','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163590,'auguria',1,'','left','accountancy',163587,NULL,NULL,2,'/compta/prelevement/bons.php?leftmenu=withdraw','','WithdrawalsReceipts','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163591,'auguria',1,'','left','accountancy',163587,NULL,NULL,3,'/compta/prelevement/list.php?leftmenu=withdraw','','WithdrawalsLines','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163593,'auguria',1,'','left','accountancy',163587,NULL,NULL,5,'/compta/prelevement/rejets.php?leftmenu=withdraw','','Rejects','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163594,'auguria',1,'','left','accountancy',163587,NULL,NULL,6,'/compta/prelevement/stats.php?leftmenu=withdraw','','Statistics','withdrawals',1,'','$user->rights->prelevement->bons->lire','$conf->prelevement->enabled && $leftmenu==\"withdraw\"',2,'2017-08-30 15:14:30'),(163687,'auguria',1,'','left','accountancy',161101,NULL,NULL,1,'/compta/bank/index.php?leftmenu=bank&mainmenu=bank','','MenuBankCash','banks',0,'bank','$user->rights->banque->lire','$conf->banque->enabled',0,'2017-08-30 15:14:30'),(163688,'auguria',1,'','left','accountancy',163687,NULL,NULL,0,'/compta/bank/card.php?action=create&leftmenu=bank','','MenuNewFinancialAccount','banks',1,'','$user->rights->banque->configurer','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163690,'auguria',1,'','left','accountancy',163687,NULL,NULL,2,'/compta/bank/bankentries.php?leftmenu=bank','','ListTransactions','banks',1,'','$user->rights->banque->lire','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163691,'auguria',1,'','left','accountancy',163687,NULL,NULL,3,'/compta/bank/budget.php?leftmenu=bank','','ListTransactionsByCategory','banks',1,'','$user->rights->banque->lire','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163693,'auguria',1,'','left','accountancy',163687,NULL,NULL,5,'/compta/bank/transfer.php?leftmenu=bank','','BankTransfers','banks',1,'','$user->rights->banque->transfer','$conf->banque->enabled && ($leftmenu==\"bank\" || $leftmenu==\"checks\" || $leftmenu==\"withdraw\")',0,'2017-08-30 15:14:30'),(163737,'auguria',1,'','left','accountancy',161101,NULL,NULL,4,'/categories/index.php?leftmenu=bank&type=5','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(163738,'auguria',1,'','left','accountancy',163737,NULL,NULL,0,'/categories/card.php?leftmenu=bank&action=create&type=5','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(163787,'auguria',1,'','left','accountancy',161093,NULL,NULL,11,'/compta/resultat/index.php?leftmenu=ca&mainmenu=accountancy','','Reportings','main',0,'ca','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled',0,'2017-08-30 15:14:30'),(163792,'auguria',1,'','left','accountancy',163487,NULL,NULL,1,'','','Journalization','main',1,'','$user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163793,'auguria',1,'','left','accountancy',163792,NULL,NULL,4,'/accountancy/journal/sellsjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=1','','SellsJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163794,'auguria',1,'','left','accountancy',163792,NULL,NULL,1,'/accountancy/journal/bankjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=3','','BankJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163795,'auguria',1,'','left','accountancy',163792,NULL,NULL,2,'/accountancy/journal/expensereportsjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=6','','ExpenseReportJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163796,'auguria',1,'','left','accountancy',163792,NULL,NULL,3,'/accountancy/journal/purchasesjournal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal=2','','PurchasesJournal','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->accounting->enabled',0,'2017-08-30 15:14:30'),(163798,'auguria',1,'','left','accountancy',163787,NULL,NULL,0,'/compta/resultat/index.php?leftmenu=ca','','ReportInOut','main',1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163799,'auguria',1,'','left','accountancy',163788,NULL,NULL,0,'/compta/resultat/clientfourn.php?leftmenu=ca','','ByCompanies','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163800,'auguria',1,'','left','accountancy',163787,NULL,NULL,1,'/compta/stats/index.php?leftmenu=ca','','ReportTurnover','main',1,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163801,'auguria',1,'','left','accountancy',163790,NULL,NULL,0,'/compta/stats/casoc.php?leftmenu=ca','','ByCompanies','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163802,'auguria',1,'','left','accountancy',163790,NULL,NULL,1,'/compta/stats/cabyuser.php?leftmenu=ca','','ByUsers','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163803,'auguria',1,'','left','accountancy',163790,NULL,NULL,1,'/compta/stats/cabyprodserv.php?leftmenu=ca','','ByProductsAndServices','main',2,'','$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire','$conf->comptabilite->enabled && $leftmenu==\"ca\"',0,'2017-08-30 15:14:30'),(163887,'auguria',1,'','left','products',161090,NULL,NULL,0,'/product/index.php?leftmenu=product&type=0','','Products','products',0,'product','$user->rights->produit->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163888,'auguria',1,'','left','products',163887,NULL,NULL,0,'/product/card.php?leftmenu=product&action=create&type=0','','NewProduct','products',1,'','$user->rights->produit->creer','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163889,'auguria',1,'','left','products',163887,NULL,NULL,1,'/product/list.php?leftmenu=product&type=0','','List','products',1,'','$user->rights->produit->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163890,'auguria',1,'','left','products',163887,NULL,NULL,4,'/product/reassort.php?type=0','','Stocks','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->product->enabled',2,'2017-08-30 15:14:30'),(163891,'auguria',1,'','left','products',163887,NULL,NULL,7,'/product/stats/card.php?id=all&leftmenu=stats&type=0','','Statistics','main',1,'','$user->rights->produit->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(163892,'auguria',1,'','left','products',163887,NULL,NULL,5,'/product/reassortlot.php?type=0','','StocksByLotSerial','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->productbatch->enabled',2,'2017-08-30 15:14:30'),(163893,'auguria',1,'','left','products',163887,NULL,NULL,6,'/product/stock/productlot_list.php','','LotSerial','products',1,'','$user->rights->produit->lire && $user->rights->stock->lire','$conf->productbatch->enabled',2,'2017-08-30 15:14:30'),(163987,'auguria',1,'','left','products',161090,NULL,NULL,1,'/product/index.php?leftmenu=service&type=1','','Services','products',0,'service','$user->rights->service->lire','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163988,'auguria',1,'','left','products',163987,NULL,NULL,0,'/product/card.php?leftmenu=service&action=create&type=1','','NewService','products',1,'','$user->rights->service->creer','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163989,'auguria',1,'','left','products',163987,NULL,NULL,1,'/product/list.php?leftmenu=service&type=1','','List','products',1,'','$user->rights->service->lire','$conf->service->enabled',2,'2017-08-30 15:14:30'),(163990,'auguria',1,'','left','products',163987,NULL,NULL,5,'/product/stats/card.php?id=all&leftmenu=stats&type=1','','Statistics','main',1,'','$user->rights->service->lire','$conf->propal->enabled',2,'2017-08-30 15:14:30'),(164187,'auguria',1,'','left','products',161090,NULL,NULL,3,'/product/stock/index.php?leftmenu=stock','','Stock','stocks',0,'stock','$user->rights->stock->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164188,'auguria',1,'','left','products',164187,NULL,NULL,0,'/product/stock/card.php?action=create','','MenuNewWarehouse','stocks',1,'','$user->rights->stock->creer','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164189,'auguria',1,'','left','products',164187,NULL,NULL,1,'/product/stock/list.php','','List','stocks',1,'','$user->rights->stock->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164191,'auguria',1,'','left','products',164187,NULL,NULL,3,'/product/stock/mouvement.php','','Movements','stocks',1,'','$user->rights->stock->mouvement->lire','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164192,'auguria',1,'','left','products',164187,NULL,NULL,4,'/product/stock/replenish.php','','Replenishments','stocks',1,'','$user->rights->stock->mouvement->creer && $user->rights->fournisseur->lire','$conf->stock->enabled && $conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(164193,'auguria',1,'','left','products',164187,NULL,NULL,5,'/product/stock/massstockmove.php','','MassStockTransferShort','stocks',1,'','$user->rights->stock->mouvement->creer','$conf->stock->enabled',2,'2017-08-30 15:14:30'),(164287,'auguria',1,'','left','products',161090,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=0','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164288,'auguria',1,'','left','products',164287,NULL,NULL,0,'/categories/card.php?action=create&type=0','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164487,'auguria',1,'','left','project',161094,NULL,NULL,3,'/projet/activity/perweek.php?leftmenu=projects','','NewTimeSpent','projects',0,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164687,'auguria',1,'','left','project',161094,NULL,NULL,0,'/projet/index.php?leftmenu=projects','','Projects','projects',0,'projects','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164688,'auguria',1,'','left','project',164687,NULL,NULL,1,'/projet/card.php?leftmenu=projects&action=create','','NewProject','projects',1,'','$user->rights->projet->creer','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164689,'auguria',1,'','left','project',164687,NULL,NULL,2,'/projet/list.php?leftmenu=projects','','List','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164690,'auguria',1,'','left','project',164687,NULL,NULL,3,'/projet/stats/index.php?leftmenu=projects','','Statistics','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled',2,'2017-08-30 15:14:30'),(164787,'auguria',1,'','left','project',161094,NULL,NULL,0,'/projet/activity/index.php?leftmenu=projects','','Activities','projects',0,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164788,'auguria',1,'','left','project',164787,NULL,NULL,1,'/projet/tasks.php?leftmenu=projects&action=create','','NewTask','projects',1,'','$user->rights->projet->creer','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164789,'auguria',1,'','left','project',164787,NULL,NULL,2,'/projet/tasks/list.php?leftmenu=projects','','List','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164791,'auguria',1,'','left','project',164787,NULL,NULL,4,'/projet/tasks/stats/index.php?leftmenu=projects','','Statistics','projects',1,'','$user->rights->projet->lire','$conf->projet->enabled && $conf->global->PROJECT_USE_TASKS',2,'2017-08-30 15:14:30'),(164891,'auguria',1,'','left','project',161094,NULL,NULL,4,'/categories/index.php?leftmenu=cat&type=6','','Categories','categories',0,'cat','$user->rights->categorie->lire','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164892,'auguria',1,'','left','project',164891,NULL,NULL,0,'/categories/card.php?action=create&type=6','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->categorie->enabled',2,'2017-08-30 15:14:30'),(164987,'auguria',1,'','left','tools',161095,NULL,NULL,0,'/comm/mailing/index.php?leftmenu=mailing','','EMailings','mails',0,'mailing','$user->rights->mailing->lire','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(164988,'auguria',1,'','left','tools',164987,NULL,NULL,0,'/comm/mailing/card.php?leftmenu=mailing&action=create','','NewMailing','mails',1,'','$user->rights->mailing->creer','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(164989,'auguria',1,'','left','tools',164987,NULL,NULL,1,'/comm/mailing/list.php?leftmenu=mailing','','List','mails',1,'','$user->rights->mailing->lire','$conf->mailing->enabled',0,'2017-08-30 15:14:30'),(165187,'auguria',1,'','left','tools',161095,NULL,NULL,2,'/exports/index.php?leftmenu=export','','FormatedExport','exports',0,'export','$user->rights->export->lire','$conf->export->enabled',2,'2017-08-30 15:14:30'),(165188,'auguria',1,'','left','tools',165187,NULL,NULL,0,'/exports/export.php?leftmenu=export','','NewExport','exports',1,'','$user->rights->export->creer','$conf->export->enabled',2,'2017-08-30 15:14:30'),(165217,'auguria',1,'','left','tools',161095,NULL,NULL,2,'/imports/index.php?leftmenu=import','','FormatedImport','exports',0,'import','$user->rights->import->run','$conf->import->enabled',2,'2017-08-30 15:14:30'),(165218,'auguria',1,'','left','tools',165217,NULL,NULL,0,'/imports/import.php?leftmenu=import','','NewImport','exports',1,'','$user->rights->import->run','$conf->import->enabled',2,'2017-08-30 15:14:30'),(165287,'auguria',1,'','left','members',161100,NULL,NULL,0,'/adherents/index.php?leftmenu=members&mainmenu=members','','Members','members',0,'members','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165288,'auguria',1,'','left','members',165287,NULL,NULL,0,'/adherents/card.php?leftmenu=members&action=create','','NewMember','members',1,'','$user->rights->adherent->creer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165289,'auguria',1,'','left','members',165287,NULL,NULL,1,'/adherents/list.php','','List','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165290,'auguria',1,'','left','members',165289,NULL,NULL,2,'/adherents/list.php?leftmenu=members&statut=-1','','MenuMembersToValidate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165291,'auguria',1,'','left','members',165289,NULL,NULL,3,'/adherents/list.php?leftmenu=members&statut=1','','MenuMembersValidated','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165292,'auguria',1,'','left','members',165289,NULL,NULL,4,'/adherents/list.php?leftmenu=members&statut=1&filter=outofdate','','MenuMembersNotUpToDate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165293,'auguria',1,'','left','members',165289,NULL,NULL,5,'/adherents/list.php?leftmenu=members&statut=1&filter=uptodate','','MenuMembersUpToDate','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165294,'auguria',1,'','left','members',165289,NULL,NULL,6,'/adherents/list.php?leftmenu=members&statut=0','','MenuMembersResiliated','members',2,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165295,'auguria',1,'','left','members',165287,NULL,NULL,7,'/adherents/stats/geo.php?leftmenu=members&mode=memberbycountry','','MenuMembersStats','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165387,'auguria',1,'','left','members',161100,NULL,NULL,1,'/adherents/index.php?leftmenu=members&mainmenu=members','','Subscriptions','compta',0,'','$user->rights->adherent->cotisation->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165388,'auguria',1,'','left','members',165387,NULL,NULL,0,'/adherents/list.php?statut=-1&leftmenu=accountancy&mainmenu=members','','NewSubscription','compta',1,'','$user->rights->adherent->cotisation->creer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165389,'auguria',1,'','left','members',165387,NULL,NULL,1,'/adherents/subscription/list.php?leftmenu=members','','List','compta',1,'','$user->rights->adherent->cotisation->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165390,'auguria',1,'','left','members',165387,NULL,NULL,7,'/adherents/stats/index.php?leftmenu=members','','MenuMembersStats','members',1,'','$user->rights->adherent->lire','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165589,'auguria',1,'','left','members',165287,NULL,NULL,9,'/adherents/htpasswd.php?leftmenu=export','','Filehtpasswd','members',1,'','$user->rights->adherent->export','! empty($conf->global->MEMBER_LINK_TO_HTPASSWDFILE) && $conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165590,'auguria',1,'','left','members',165287,NULL,NULL,10,'/adherents/cartes/carte.php?leftmenu=export','','MembersCards','members',1,'','$user->rights->adherent->export','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165687,'auguria',1,'','left','hrm',161102,NULL,NULL,1,'/user/index.php?leftmenu=hrm&mode=employee','','Employees','hrm',0,'hrm','$user->rights->hrm->employee->read','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165688,'auguria',1,'','left','hrm',165687,NULL,NULL,1,'/user/card.php?action=create&employee=1','','NewEmployee','hrm',1,'','$user->rights->hrm->employee->write','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165689,'auguria',1,'','left','hrm',165687,NULL,NULL,2,'/user/index.php?$leftmenu=hrm&mode=employee&contextpage=employeelist','','List','hrm',1,'','$user->rights->hrm->employee->read','$conf->hrm->enabled',0,'2017-08-30 15:14:30'),(165787,'auguria',1,'','left','members',161100,NULL,NULL,5,'/adherents/type.php?leftmenu=setup&mainmenu=members','','MembersTypes','members',0,'setup','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165788,'auguria',1,'','left','members',165787,NULL,NULL,0,'/adherents/type.php?leftmenu=setup&mainmenu=members&action=create','','New','members',1,'','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(165789,'auguria',1,'','left','members',165787,NULL,NULL,1,'/adherents/type.php?leftmenu=setup&mainmenu=members','','List','members',1,'','$user->rights->adherent->configurer','$conf->adherent->enabled',2,'2017-08-30 15:14:30'),(166087,'auguria',1,'','left','hrm',161102,NULL,NULL,1,'/holiday/list.php?&leftmenu=hrm','','CPTitreMenu','holiday',0,'hrm','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166088,'auguria',1,'','left','hrm',166087,NULL,NULL,1,'/holiday/card.php?&action=request','','MenuAddCP','holiday',1,'','$user->rights->holiday->write','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166089,'auguria',1,'','left','hrm',166087,NULL,NULL,1,'/holiday/list.php?&leftmenu=hrm','','List','holiday',1,'','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166090,'auguria',1,'','left','hrm',166089,NULL,NULL,1,'/holiday/list.php?select_statut=2&leftmenu=hrm','','ListToApprove','trips',2,'','$user->rights->holiday->read','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166091,'auguria',1,'','left','hrm',166087,NULL,NULL,2,'/holiday/define_holiday.php?&action=request','','MenuConfCP','holiday',1,'','$user->rights->holiday->define_holiday','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166092,'auguria',1,'','left','hrm',166087,NULL,NULL,3,'/holiday/view_log.php?&action=request','','MenuLogCP','holiday',1,'','$user->rights->holiday->define_holiday','$conf->holiday->enabled',0,'2017-08-30 15:14:30'),(166187,'auguria',1,'','left','commercial',161092,NULL,NULL,6,'/fourn/commande/index.php?leftmenu=orders_suppliers','','SuppliersOrders','orders',0,'orders_suppliers','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166188,'auguria',1,'','left','commercial',166187,NULL,NULL,0,'/fourn/commande/card.php?action=create&leftmenu=orders_suppliers','','NewOrder','orders',1,'','$user->rights->fournisseur->commande->creer','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166189,'auguria',1,'','left','commercial',166187,NULL,NULL,1,'/fourn/commande/list.php?leftmenu=orders_suppliers&viewstatut=0','','List','orders',1,'','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166195,'auguria',1,'','left','commercial',166187,NULL,NULL,7,'/commande/stats/index.php?leftmenu=orders_suppliers&mode=supplier','','Statistics','orders',1,'','$user->rights->fournisseur->commande->lire','$conf->supplier_order->enabled',2,'2017-08-30 15:14:30'),(166287,'auguria',1,'','left','members',161100,NULL,NULL,3,'/categories/index.php?leftmenu=cat&type=3','','MembersCategoriesShort','categories',0,'cat','$user->rights->categorie->lire','$conf->adherent->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(166288,'auguria',1,'','left','members',166287,NULL,NULL,0,'/categories/card.php?action=create&type=3','','NewCategory','categories',1,'','$user->rights->categorie->creer','$conf->adherent->enabled && $conf->categorie->enabled',2,'2017-08-30 15:14:30'),(166387,'auguria',1,'','left','hrm',161102,NULL,NULL,5,'/expensereport/index.php?leftmenu=expensereport','','TripsAndExpenses','trips',0,'expensereport','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166388,'auguria',1,'','left','hrm',166387,NULL,NULL,1,'/expensereport/card.php?action=create&leftmenu=expensereport','','New','trips',1,'','$user->rights->expensereport->creer','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166389,'auguria',1,'','left','hrm',166387,NULL,NULL,2,'/expensereport/list.php?leftmenu=expensereport','','List','trips',1,'','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166390,'auguria',1,'','left','hrm',166389,NULL,NULL,2,'/expensereport/list.php?search_status=2&leftmenu=expensereport','','ListToApprove','trips',2,'','$user->rights->expensereport->approve','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166391,'auguria',1,'','left','hrm',166387,NULL,NULL,2,'/expensereport/stats/index.php?leftmenu=expensereport','','Statistics','trips',1,'','$user->rights->expensereport->lire','$conf->expensereport->enabled',0,'2017-08-30 15:14:30'),(166467,'all',1,'variants','left','products',-1,'product','products',100,'/variants/list.php','','VariantAttributes','products',NULL,'product','1','$conf->product->enabled',0,'2018-01-19 11:28:04'),(166492,'all',1,'blockedlog','left','tools',-1,NULL,'tools',200,'/blockedlog/admin/blockedlog_list.php?mainmenu=tools&leftmenu=blockedlogbrowser','','BrowseBlockedLog','blockedlog',NULL,'blockedlogbrowser','$user->rights->blockedlog->read','$conf->blockedlog->enabled',2,'2018-03-16 09:57:24'),(166493,'all',1,'agenda','top','agenda',0,NULL,NULL,15,'/comm/action/index.php','','TMenuAgenda','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166494,'all',1,'agenda','left','agenda',166493,NULL,NULL,100,'/comm/action/index.php?mainmenu=agenda&leftmenu=agenda','','Actions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166495,'all',1,'agenda','left','agenda',166494,NULL,NULL,101,'/comm/action/card.php?mainmenu=agenda&leftmenu=agenda&action=create','','NewAction','commercial',NULL,NULL,'($user->rights->agenda->myactions->create||$user->rights->agenda->allactions->create)','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166496,'all',1,'agenda','left','agenda',166494,NULL,NULL,140,'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda','','Calendar','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166497,'all',1,'agenda','left','agenda',166496,NULL,NULL,141,'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166498,'all',1,'agenda','left','agenda',166496,NULL,NULL,142,'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166499,'all',1,'agenda','left','agenda',166496,NULL,NULL,143,'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda&status=todo&filtert=-1','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-11-23 11:58:15'),(166500,'all',1,'agenda','left','agenda',166496,NULL,NULL,144,'/comm/action/index.php?action=default&mainmenu=agenda&leftmenu=agenda&status=done&filtert=-1','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-11-23 11:58:15'),(166501,'all',1,'agenda','left','agenda',166494,NULL,NULL,110,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda','','List','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166502,'all',1,'agenda','left','agenda',166501,NULL,NULL,111,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=todo&filter=mine','','MenuToDoMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166503,'all',1,'agenda','left','agenda',166501,NULL,NULL,112,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=done&filter=mine','','MenuDoneMyActions','agenda',NULL,NULL,'$user->rights->agenda->myactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166504,'all',1,'agenda','left','agenda',166501,NULL,NULL,113,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=todo&filtert=-1','','MenuToDoActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-11-23 11:58:15'),(166505,'all',1,'agenda','left','agenda',166501,NULL,NULL,114,'/comm/action/list.php?mainmenu=agenda&leftmenu=agenda&status=done&filtert=-1','','MenuDoneActions','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$user->rights->agenda->allactions->read',2,'2018-11-23 11:58:15'),(166506,'all',1,'agenda','left','agenda',166494,NULL,NULL,160,'/comm/action/rapport/index.php?mainmenu=agenda&leftmenu=agenda','','Reportings','agenda',NULL,NULL,'$user->rights->agenda->allactions->read','$conf->agenda->enabled',2,'2018-11-23 11:58:15'),(166507,'all',1,'barcode','left','tools',-1,NULL,'tools',200,'/barcode/printsheet.php?mainmenu=tools&leftmenu=barcodeprint','','BarCodePrintsheet','products',NULL,'barcodeprint','($conf->global->MAIN_USE_ADVANCED_PERMS && $user->rights->barcode->lire_advance) || (! $conf->global->MAIN_USE_ADVANCED_PERMS)','$conf->barcode->enabled',2,'2018-11-23 11:58:16'),(166508,'all',1,'barcode','left','home',-1,'admintools','home',300,'/barcode/codeinit.php?mainmenu=home&leftmenu=admintools','','MassBarcodeInit','products',NULL,NULL,'($conf->global->MAIN_USE_ADVANCED_PERMS && $user->rights->barcode->creer_advance) || (! $conf->global->MAIN_USE_ADVANCED_PERMS)','$conf->barcode->enabled && preg_match(\'/^(admintools|all)/\',$leftmenu)',0,'2018-11-23 11:58:16'),(166509,'all',1,'cron','left','home',-1,'admintools','home',200,'/cron/list.php?status=-2&leftmenu=admintools','','CronList','cron',NULL,NULL,'$user->rights->cron->read','$conf->cron->enabled && preg_match(\'/^(admintools|all)/\', $leftmenu)',2,'2018-11-23 11:58:16'),(166510,'all',1,'ecm','top','ecm',0,NULL,NULL,100,'/ecm/index.php','','MenuECM','ecm',NULL,NULL,'$user->rights->ecm->read || $user->rights->ecm->upload || $user->rights->ecm->setup','$conf->ecm->enabled',2,'2018-11-23 11:58:17'),(166511,'all',1,'ecm','left','ecm',-1,NULL,'ecm',101,'/ecm/index.php?mainmenu=ecm&leftmenu=ecm','','ECMArea','ecm',NULL,'ecm','$user->rights->ecm->read || $user->rights->ecm->upload','$user->rights->ecm->read || $user->rights->ecm->upload',2,'2018-11-23 11:58:17'),(166512,'all',1,'ecm','left','ecm',-1,'ecm','ecm',102,'/ecm/index.php?action=file_manager&mainmenu=ecm&leftmenu=ecm','','ECMSectionsManual','ecm',NULL,'ecm_manual','$user->rights->ecm->read || $user->rights->ecm->upload','$user->rights->ecm->read || $user->rights->ecm->upload',2,'2018-11-23 11:58:17'),(166513,'all',1,'ecm','left','ecm',-1,'ecm','ecm',103,'/ecm/index_auto.php?action=file_manager&mainmenu=ecm&leftmenu=ecm','','ECMSectionsAuto','ecm',NULL,NULL,'$user->rights->ecm->read || $user->rights->ecm->upload','($user->rights->ecm->read || $user->rights->ecm->upload) && ! empty($conf->global->ECM_AUTO_TREE_ENABLED)',2,'2018-11-23 11:58:17'),(166514,'all',1,'opensurvey','left','tools',-1,NULL,'tools',200,'/opensurvey/index.php?mainmenu=tools&leftmenu=opensurvey','','Survey','opensurvey',NULL,'opensurvey','$user->rights->opensurvey->read','$conf->opensurvey->enabled',0,'2018-11-23 11:58:19'),(166515,'all',1,'opensurvey','left','tools',-1,'opensurvey','tools',210,'/opensurvey/wizard/index.php','','NewSurvey','opensurvey',NULL,'opensurvey_new','$user->rights->opensurvey->write','$conf->opensurvey->enabled',0,'2018-11-23 11:58:19'),(166516,'all',1,'opensurvey','left','tools',-1,'opensurvey','tools',220,'/opensurvey/list.php','','List','opensurvey',NULL,'opensurvey_list','$user->rights->opensurvey->read','$conf->opensurvey->enabled',0,'2018-11-23 11:58:19'); +/*!40000 ALTER TABLE `llx_menu` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_abcdef` +-- + +DROP TABLE IF EXISTS `llx_monmodule_abcdef`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_abcdef` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_abcdef_rowid` (`rowid`), + KEY `idx_monmodule_abcdef_ref` (`ref`), + KEY `idx_monmodule_abcdef_entity` (`entity`), + KEY `idx_monmodule_abcdef_fk_soc` (`fk_soc`), + KEY `idx_monmodule_abcdef_status` (`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_abcdef` +-- + +LOCK TABLES `llx_monmodule_abcdef` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_abcdef` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_abcdef` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_abcdef_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_abcdef_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_abcdef_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_abcdef_extrafields` +-- + +LOCK TABLES `llx_monmodule_abcdef_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_abcdef_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_abcdef_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_actioncommreminder` +-- + +DROP TABLE IF EXISTS `llx_monmodule_actioncommreminder`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_actioncommreminder` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `status` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT '1', + `dateremind` datetime NOT NULL, + `typeremind` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_user` int(11) NOT NULL, + `offsetvalue` int(11) NOT NULL, + `offsetunit` varchar(1) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_actioncommreminder_rowid` (`rowid`), + KEY `idx_monmodule_actioncommreminder_status` (`status`), + KEY `idx_monmodule_actioncommreminder_dateremind` (`dateremind`), + KEY `idx_monmodule_actioncommreminder_fk_user` (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_actioncommreminder` +-- + +LOCK TABLES `llx_monmodule_actioncommreminder` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_actioncommreminder_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_actioncommreminder_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_actioncommreminder_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_actioncommreminder_extrafields` +-- + +LOCK TABLES `llx_monmodule_actioncommreminder_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_actioncommreminder_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_eleves` +-- + +DROP TABLE IF EXISTS `llx_monmodule_eleves`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_eleves` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_monmodule_eleves_rowid` (`rowid`), + KEY `idx_monmodule_eleves_ref` (`ref`), + KEY `idx_monmodule_eleves_entity` (`entity`), + KEY `idx_monmodule_eleves_fk_soc` (`fk_soc`), + KEY `idx_monmodule_eleves_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_eleves` +-- + +LOCK TABLES `llx_monmodule_eleves` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_eleves` DISABLE KEYS */; +INSERT INTO `llx_monmodule_eleves` VALUES (1,'aaa',1,'jjl',NULL,32,NULL,NULL,'2017-11-21 15:02:43','2017-11-21 15:02:43',12,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_monmodule_eleves` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monmodule_eleves_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monmodule_eleves_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monmodule_eleves_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monmodule_eleves_extrafields` +-- + +LOCK TABLES `llx_monmodule_eleves_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monmodule_eleves_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monmodule_eleves_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_monobj_extrafields` +-- + +DROP TABLE IF EXISTS `llx_monobj_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_monobj_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_monobj_extrafields` +-- + +LOCK TABLES `llx_monobj_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_monobj_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_monobj_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_multicurrency` +-- + +DROP TABLE IF EXISTS `llx_multicurrency`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_multicurrency` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_create` datetime DEFAULT NULL, + `code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT '1', + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_multicurrency` +-- + +LOCK TABLES `llx_multicurrency` WRITE; +/*!40000 ALTER TABLE `llx_multicurrency` DISABLE KEYS */; +INSERT INTO `llx_multicurrency` VALUES (1,'2017-02-15 21:17:16','EUR','Euros (€)',1,12); +/*!40000 ALTER TABLE `llx_multicurrency` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_multicurrency_rate` +-- + +DROP TABLE IF EXISTS `llx_multicurrency_rate`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_multicurrency_rate` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `date_sync` datetime DEFAULT NULL, + `rate` double NOT NULL DEFAULT '0', + `fk_multicurrency` int(11) NOT NULL, + `entity` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_multicurrency_rate` +-- + +LOCK TABLES `llx_multicurrency_rate` WRITE; +/*!40000 ALTER TABLE `llx_multicurrency_rate` DISABLE KEYS */; +INSERT INTO `llx_multicurrency_rate` VALUES (1,'2017-02-15 21:17:16',1,1,1); +/*!40000 ALTER TABLE `llx_multicurrency_rate` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_myobject` +-- + +DROP TABLE IF EXISTS `llx_myobject`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_myobject` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_othertable` int(11) NOT NULL, + `name` varchar(189) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_fk_othertable` (`fk_othertable`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_myobject` +-- + +LOCK TABLES `llx_myobject` WRITE; +/*!40000 ALTER TABLE `llx_myobject` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_myobject` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature` +-- + +DROP TABLE IF EXISTS `llx_nomenclature`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + `fk_object` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature_parent` int(11) NOT NULL DEFAULT '0', + `is_default` int(11) NOT NULL DEFAULT '0', + `qty_reference` double NOT NULL DEFAULT '0', + `totalPRCMO_PMP` double NOT NULL DEFAULT '0', + `totalPRCMO_OF` double NOT NULL DEFAULT '0', + `totalPRCMO` double NOT NULL DEFAULT '0', + `object_type` varchar(255) DEFAULT NULL, + `note_private` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `fk_nomenclature_parent` (`fk_nomenclature_parent`), + KEY `is_default` (`is_default`), + KEY `qty_reference` (`qty_reference`), + KEY `object_type` (`object_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature` +-- + +LOCK TABLES `llx_nomenclature` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature` DISABLE KEYS */; +INSERT INTO `llx_nomenclature` VALUES (1,'2018-11-18 16:22:02','2018-11-18 16:25:48','BOM 1',196,0,0,1,0,0,53.9,'product',''),(2,'2018-11-18 17:18:53','2018-11-18 17:20:45','BOM 2',195,0,0,1,0,0,22,'product',''); +/*!40000 ALTER TABLE `llx_nomenclature` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_coef` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_coef`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_coef` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `label` varchar(255) DEFAULT NULL, + `description` varchar(255) DEFAULT NULL, + `code_type` varchar(30) DEFAULT NULL, + `tx` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `code_type` (`code_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_coef` +-- + +LOCK TABLES `llx_nomenclature_coef` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_coef` DISABLE KEYS */; +INSERT INTO `llx_nomenclature_coef` VALUES (1,'2018-11-18 15:55:54','2018-11-18 15:55:54','Marge','Coef. de marge','coef_marge',1.1); +/*!40000 ALTER TABLE `llx_nomenclature_coef` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_coef_object` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_coef_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_coef_object` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_object` int(11) NOT NULL DEFAULT '0', + `type_object` varchar(50) DEFAULT NULL, + `code_type` varchar(30) DEFAULT NULL, + `tx_object` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `type_object` (`type_object`), + KEY `code_type` (`code_type`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_coef_object` +-- + +LOCK TABLES `llx_nomenclature_coef_object` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_coef_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_coef_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_workstation` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_workstation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_workstation` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature` int(11) NOT NULL DEFAULT '0', + `rang` int(11) NOT NULL DEFAULT '0', + `unifyRang` int(11) NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + `nb_days_before_beginning` double NOT NULL DEFAULT '0', + `note_private` longtext, + `code_type` varchar(30) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_workstation` (`fk_workstation`), + KEY `fk_nomenclature` (`fk_nomenclature`), + KEY `rang` (`rang`), + KEY `unifyRang` (`unifyRang`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_workstation` +-- + +LOCK TABLES `llx_nomenclature_workstation` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_workstation` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_workstation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclature_workstation_thm_object` +-- + +DROP TABLE IF EXISTS `llx_nomenclature_workstation_thm_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclature_workstation_thm_object` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `fk_object` int(11) NOT NULL DEFAULT '0', + `type_object` varchar(50) DEFAULT NULL, + `thm_object` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_object` (`fk_object`), + KEY `type_object` (`type_object`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclature_workstation_thm_object` +-- + +LOCK TABLES `llx_nomenclature_workstation_thm_object` WRITE; +/*!40000 ALTER TABLE `llx_nomenclature_workstation_thm_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_nomenclature_workstation_thm_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_nomenclaturedet` +-- + +DROP TABLE IF EXISTS `llx_nomenclaturedet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_nomenclaturedet` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `title` varchar(255) DEFAULT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_nomenclature` int(11) NOT NULL DEFAULT '0', + `is_imported` int(11) NOT NULL DEFAULT '0', + `rang` int(11) NOT NULL DEFAULT '0', + `unifyRang` int(11) NOT NULL DEFAULT '0', + `code_type` varchar(30) DEFAULT NULL, + `workstations` varchar(255) DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0', + `price` double NOT NULL DEFAULT '0', + `note_private` longtext, + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_product` (`fk_product`), + KEY `fk_nomenclature` (`fk_nomenclature`), + KEY `is_imported` (`is_imported`), + KEY `rang` (`rang`), + KEY `unifyRang` (`unifyRang`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_nomenclaturedet` +-- + +LOCK TABLES `llx_nomenclaturedet` WRITE; +/*!40000 ALTER TABLE `llx_nomenclaturedet` DISABLE KEYS */; +INSERT INTO `llx_nomenclaturedet` VALUES (1,'2018-11-18 16:22:25','2018-11-18 16:25:48','',192,1,0,0,0,'coef_marge','',2,0,'aaa'),(2,'2018-11-18 16:22:37','2018-11-18 16:25:48','',151,1,0,1,0,'coef_marge','',1,0,'bbb'),(3,'2018-11-18 16:25:42','2018-11-18 16:25:48','',10,1,0,2,0,'coef_marge','',1,0,'ccc'),(4,'2018-11-18 17:19:13','2018-11-18 17:20:45','',190,2,0,0,0,'coef_marge','',2,0,'aaa'),(5,'2018-11-18 17:20:19','2018-11-18 17:20:45','',11,2,0,1,0,'coef_marge','',1,0,'bbb'),(6,'2018-11-18 17:20:40','2018-11-18 17:20:45','',10,2,0,2,0,'coef_marge','',1,0,''); +/*!40000 ALTER TABLE `llx_nomenclaturedet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify` +-- + +DROP TABLE IF EXISTS `llx_notify`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `daten` datetime DEFAULT NULL, + `fk_action` int(11) NOT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `objet_type` varchar(24) COLLATE utf8_unicode_ci NOT NULL, + `objet_id` int(11) NOT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'email', + `type_target` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify` +-- + +LOCK TABLES `llx_notify` WRITE; +/*!40000 ALTER TABLE `llx_notify` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify_def` +-- + +DROP TABLE IF EXISTS `llx_notify_def`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify_def` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` date DEFAULT NULL, + `fk_action` int(11) NOT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `type` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'email', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify_def` +-- + +LOCK TABLES `llx_notify_def` WRITE; +/*!40000 ALTER TABLE `llx_notify_def` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify_def` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_notify_def_object` +-- + +DROP TABLE IF EXISTS `llx_notify_def_object`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_notify_def_object` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `objet_type` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `objet_id` int(11) NOT NULL, + `type_notif` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'browser', + `date_notif` datetime DEFAULT NULL, + `user_id` int(11) DEFAULT NULL, + `moreparam` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_notify_def_object` +-- + +LOCK TABLES `llx_notify_def_object` WRITE; +/*!40000 ALTER TABLE `llx_notify_def_object` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_notify_def_object` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_oauth_state` +-- + +DROP TABLE IF EXISTS `llx_oauth_state`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_oauth_state` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `service` varchar(36) COLLATE utf8_unicode_ci DEFAULT NULL, + `state` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_oauth_state` +-- + +LOCK TABLES `llx_oauth_state` WRITE; +/*!40000 ALTER TABLE `llx_oauth_state` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_oauth_state` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_oauth_token` +-- + +DROP TABLE IF EXISTS `llx_oauth_token`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_oauth_token` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `service` varchar(36) COLLATE utf8_unicode_ci DEFAULT NULL, + `token` text COLLATE utf8_unicode_ci, + `fk_user` int(11) DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + `tokenstring` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_oauth_token` +-- + +LOCK TABLES `llx_oauth_token` WRITE; +/*!40000 ALTER TABLE `llx_oauth_token` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_oauth_token` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_onlinesignature` +-- + +DROP TABLE IF EXISTS `llx_onlinesignature`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_onlinesignature` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `object_type` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `object_id` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `ip` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pathoffile` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_onlinesignature` +-- + +LOCK TABLES `llx_onlinesignature` WRITE; +/*!40000 ALTER TABLE `llx_onlinesignature` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_onlinesignature` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_comments` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_comments`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_comments` ( + `id_comment` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_sondage` char(16) COLLATE utf8_unicode_ci NOT NULL, + `comment` text COLLATE utf8_unicode_ci NOT NULL, + `usercomment` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`id_comment`), + KEY `idx_id_comment` (`id_comment`), + KEY `idx_id_sondage` (`id_sondage`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_comments` +-- + +LOCK TABLES `llx_opensurvey_comments` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_comments` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_comments` VALUES (2,'434dio8rxfljs3p1','aaa','aaa'),(5,'434dio8rxfljs3p1','aaa','aaa'),(6,'434dio8rxfljs3p1','gfh','jj'),(11,'434dio8rxfljs3p1','fsdf','fdsf'),(12,'3imby4hf7joiilsu','fsdf','aa'),(16,'3imby4hf7joiilsu','gdfg','gfdg'),(17,'3imby4hf7joiilsu','gfdgd','gdfgd'),(18,'om4e7azfiurnjtqe','fds','fdsf'),(26,'qgsfrgb922rqzocy','gfdg','gfdg'),(27,'qgsfrgb922rqzocy','gfdg','gfd'),(30,'ckanvbe7kt3rdb3h','hfgh','fdfds'); +/*!40000 ALTER TABLE `llx_opensurvey_comments` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_formquestions` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_formquestions`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_formquestions` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `id_sondage` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `question` text COLLATE utf8_unicode_ci, + `available_answers` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_formquestions` +-- + +LOCK TABLES `llx_opensurvey_formquestions` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_formquestions` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_opensurvey_formquestions` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_sondage` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_sondage`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_sondage` ( + `id_sondage` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `commentaires` text COLLATE utf8_unicode_ci, + `mail_admin` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `nom_admin` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_creat` int(11) NOT NULL, + `titre` text COLLATE utf8_unicode_ci NOT NULL, + `date_fin` datetime DEFAULT NULL, + `status` int(11) DEFAULT '1', + `format` varchar(2) COLLATE utf8_unicode_ci NOT NULL, + `mailsonde` tinyint(4) NOT NULL DEFAULT '0', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `entity` int(11) NOT NULL DEFAULT '1', + `allow_comments` tinyint(4) NOT NULL DEFAULT '1', + `allow_spy` tinyint(4) NOT NULL DEFAULT '1', + `sujet` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`id_sondage`), + KEY `idx_date_fin` (`date_fin`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_sondage` +-- + +LOCK TABLES `llx_opensurvey_sondage` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_sondage` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_sondage` VALUES ('m4467s2mtk6khmxc','What is your prefered date for a brunch','myemail@aaa.com','fdfds',0,'Date of next brunch','2013-03-07 00:00:00',1,'D',1,'2018-03-16 10:00:54',1,1,1,',1483473600'),('tim1dye8x5eeetxu','Please vote for the candidate you want to have for our new president this year.',NULL,NULL,12,'Election of new president','2017-02-26 04:00:00',1,'A',0,'2018-03-16 10:00:54',1,1,0,'Alan Candide@foragainst,Alex Candor@foragainst'); +/*!40000 ALTER TABLE `llx_opensurvey_sondage` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_user_formanswers` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_user_formanswers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_user_formanswers` ( + `fk_user_survey` int(11) NOT NULL, + `fk_question` int(11) NOT NULL, + `reponses` text COLLATE utf8_unicode_ci +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_user_formanswers` +-- + +LOCK TABLES `llx_opensurvey_user_formanswers` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_user_formanswers` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_opensurvey_user_formanswers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_opensurvey_user_studs` +-- + +DROP TABLE IF EXISTS `llx_opensurvey_user_studs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_opensurvey_user_studs` ( + `id_users` int(11) NOT NULL AUTO_INCREMENT, + `nom` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `id_sondage` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `reponses` varchar(100) COLLATE utf8_unicode_ci NOT NULL, + PRIMARY KEY (`id_users`), + KEY `idx_id_users` (`id_users`), + KEY `idx_nom` (`nom`), + KEY `idx_id_sondage` (`id_sondage`), + KEY `idx_opensurvey_user_studs_id_users` (`id_users`), + KEY `idx_opensurvey_user_studs_nom` (`nom`), + KEY `idx_opensurvey_user_studs_id_sondage` (`id_sondage`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_opensurvey_user_studs` +-- + +LOCK TABLES `llx_opensurvey_user_studs` WRITE; +/*!40000 ALTER TABLE `llx_opensurvey_user_studs` DISABLE KEYS */; +INSERT INTO `llx_opensurvey_user_studs` VALUES (1,'gfdgdf','om4e7azfiurnjtqe','01'),(2,'aa','3imby4hf7joiilsu','210'),(3,'fsdf','z2qcqjh5pm1q4p99','0110'),(5,'hfghf','z2qcqjh5pm1q4p99','1110'),(6,'qqqq','ah9xvaqu1ajjrqse','000111'),(7,'hjgh','ah9xvaqu1ajjrqse','000010'),(8,'bcvb','qgsfrgb922rqzocy','011000'),(9,'gdfg','ah9xvaqu1ajjrqse','001000'),(10,'ggg','ah9xvaqu1ajjrqse','000100'),(11,'gfdgd','ah9xvaqu1ajjrqse','001000'),(12,'hhhh','ah9xvaqu1ajjrqse','010000'),(13,'iii','ah9xvaqu1ajjrqse','000100'),(14,'kkk','ah9xvaqu1ajjrqse','001000'),(15,'lllll','ah9xvaqu1ajjrqse','000001'),(16,'kk','ah9xvaqu1ajjrqse','000001'),(17,'gggg','ah9xvaqu1ajjrqse','001000'),(18,'mmmm','ah9xvaqu1ajjrqse','000000'),(19,'jkjkj','ah9xvaqu1ajjrqse','000001'),(20,'azerty','8mcdnf2hgcntfibe','012'),(21,'hfghfg','8mcdnf2hgcntfibe','012'),(22,'fd','ckanvbe7kt3rdb3h','10'),(25,'John Doe','m4467s2mtk6khmxc','1'),(26,'Martial Bill','m4467s2mtk6khmxc','01'),(27,'Marissa Campbell','m4467s2mtk6khmxc','11'),(28,'Leonard Cast','m4467s2mtk6khmxc','01'),(29,'John Doe','tim1dye8x5eeetxu','01'),(30,'Eldy','tim1dye8x5eeetxu','11'); +/*!40000 ALTER TABLE `llx_opensurvey_user_studs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_overwrite_trans` +-- + +DROP TABLE IF EXISTS `llx_overwrite_trans`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_overwrite_trans` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `lang` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `transkey` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `transvalue` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_overwrite_trans` (`lang`,`transkey`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_overwrite_trans` +-- + +LOCK TABLES `llx_overwrite_trans` WRITE; +/*!40000 ALTER TABLE `llx_overwrite_trans` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_overwrite_trans` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_packages` +-- + +DROP TABLE IF EXISTS `llx_packages`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_packages` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `sqldump` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `srcfile3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `conffile1` mediumtext COLLATE utf8_unicode_ci, + `sqlafter` mediumtext COLLATE utf8_unicode_ci, + `crontoadd` mediumtext COLLATE utf8_unicode_ci, + `cliafter` text COLLATE utf8_unicode_ci, + `status` int(11) DEFAULT NULL, + `targetsrcfile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetsrcfile2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetsrcfile3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datafile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetdatafile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `targetconffile1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` mediumtext COLLATE utf8_unicode_ci, + `note_private` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_packages_rowid` (`rowid`), + KEY `idx_packages_ref` (`ref`), + KEY `idx_packages_entity` (`entity`), + KEY `idx_packages_import_key` (`import_key`), + KEY `idx_packages_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_packages` +-- + +LOCK TABLES `llx_packages` WRITE; +/*!40000 ALTER TABLE `llx_packages` DISABLE KEYS */; +INSERT INTO `llx_packages` VALUES (1,'Dolibarr',1,'Dolibarr ERP CRM','2017-09-23 20:27:03','2017-11-04 20:19:20',1,12,NULL,'a','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/htdocs','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/htdocs/install/doctemplates','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_dev/scripts','','UPDATE llx_user set pass_crypted = \'__APPPASSWORD0SALTED__\', email = \'__APPEMAIL__\' where login = \'admin\' AND (pass = \'admin\' OR pass_crypted = \'25edccd81ce2def41eae1317392fd106d8152a5b\');\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'CRON_KEY\', 0, \'__OSUSERNAME__\', \'chaine\', 0);\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'MAIN_INFO_SOCIETE_NOM\', 1, \'__APPORGNAME__\', \'chaine\', 0);\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'MAIN_INFO_SOCIETE_COUNTRY\', 1, \'__APPCOUNTRYIDCODELABEL__\', \'chaine\', 0);\r\nUPDATE llx_const set value = \'__APPEMAIL__\' where name = \'MAIN_MAIL_EMAIL_FROM\';\r\n\r\n','__INSTALLMINUTES__ __INSTALLHOURS__ * * * __OSUSERNAME__ __INSTANCEDIR__/scripts/cron/cron_run_jobs.php __OSUSERNAME__ firstadmin > __INSTANCEDIR__/documents/cron.log 2>&1','touch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents',1,'__INSTANCEDIR__/htdocs','__INSTANCEDIR__/documents/doctemplates','__INSTANCEDIR__/scripts','__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__','a','__INSTANCEDIR__/htdocs/conf/conf.php','',''),(5,'Dolibarr 6',1,'Dolibarr ERP CRM','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/htdocs','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/htdocs/install/doctemplates','__DOL_DATA_ROOT__/sellyoursaas/git/dolibarr_6.0/scripts','','UPDATE llx_user set pass_crypted = \'__APPPASSWORD0SALTED__\', email = \'__APPEMAIL__\' where login = \'admin\' AND (pass = \'admin\' OR pass_crypted = \'25edccd81ce2def41eae1317392fd106d8152a5b\');\r\nREPLACE INTO llx_const (name, entity, value, type, visible) values(\'CRON_KEY\', 0, \'__OSUSERNAME__\', \'chaine\', 0);','__INSTALLMINUTES__ __INSTALLHOURS__ * * * __OSUSERNAME__ __INSTANCEDIR__/scripts/cron/cron_run_jobs.php __OSUSERNAME__ firstadmin > __INSTANCEDIR__/documents/cron.log 2>&1','touch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents',1,'__INSTANCEDIR__/htdocs','__INSTANCEDIR__/documents/doctemplates','__INSTANCEDIR__/scripts','__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,'__INSTANCEDIR__/htdocs/conf/conf.php','',''),(6,'DoliPos',1,'Module POS','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/module_pos',NULL,NULL,NULL,NULL,NULL,'rm -fr __INSTANCEDIR__/documents/install.lock;\r\ncd __INSTANCEDIR__/htdocs/install/;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Societe;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Facture;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Commande;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Product;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Stock;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_Banque;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_POS;\r\ntouch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents;',1,'__INSTANCEDIR__/htdocs',NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,NULL,'',''),(7,'DoliMed',1,'Module DoliMed','2017-09-23 20:27:03','2017-11-04 20:19:20',12,12,NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/git/module_dolimed/htdocs',NULL,NULL,NULL,NULL,NULL,'rm -fr __INSTANCEDIR__/documents/install.lock;\r\ncd __INSTANCEDIR__/htdocs/install/;\r\nphp __INSTANCEDIR__/htdocs/install/upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_SOCIETE,MAIN_MODULE_CabinetMed;\r\ntouch __INSTANCEDIR__/documents/install.lock; \r\nchown -R __OSUSERNAME__.__OSUSERNAME__ __INSTANCEDIR__/documents;',1,'__INSTANCEDIR__/htdocs',NULL,NULL,'__DOL_DATA_ROOT__/sellyoursaas/packages/__PACKAGEREF__',NULL,NULL,'',''); +/*!40000 ALTER TABLE `llx_packages` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_packages_extrafields` +-- + +DROP TABLE IF EXISTS `llx_packages_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_packages_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_packages_extrafields` +-- + +LOCK TABLES `llx_packages_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_packages_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_packages_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiement` +-- + +DROP TABLE IF EXISTS `llx_paiement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiement` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL DEFAULT '', + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_paiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `fk_export_compta` int(11) NOT NULL DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + `ext_payment_id` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `ext_payment_site` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiement` +-- + +LOCK TABLES `llx_paiement` WRITE; +/*!40000 ALTER TABLE `llx_paiement` DISABLE KEYS */; +INSERT INTO `llx_paiement` VALUES (2,'',1,'2011-07-18 20:50:24','2016-07-30 15:13:20','2016-07-08 12:00:00',20.00000000,6,'','',5,1,NULL,0,0,0.00000000,NULL,NULL),(3,'',1,'2011-07-18 20:50:47','2016-07-30 15:13:20','2016-07-08 12:00:00',10.00000000,4,'','',6,1,NULL,0,0,0.00000000,NULL,NULL),(5,'',1,'2011-08-01 03:34:11','2016-07-30 15:12:32','2015-08-01 03:34:11',5.63000000,6,'','Payment Invoice FA1108-0003',8,1,NULL,0,0,0.00000000,NULL,NULL),(6,'',1,'2011-08-06 20:33:54','2016-07-30 15:12:32','2015-08-06 20:33:53',5.98000000,4,'','Payment Invoice FA1108-0004',13,1,NULL,0,0,0.00000000,NULL,NULL),(8,'',1,'2011-08-08 02:53:40','2016-07-30 15:12:32','2015-08-08 12:00:00',26.10000000,4,'','',14,1,NULL,0,0,0.00000000,NULL,NULL),(9,'',1,'2011-08-08 02:55:58','2016-07-30 15:12:32','2015-08-08 12:00:00',26.96000000,1,'','',15,1,NULL,0,0,0.00000000,NULL,NULL),(17,'',1,'2012-12-09 15:28:44','2016-07-30 15:12:32','2015-12-09 12:00:00',2.00000000,4,'','',16,1,NULL,0,0,0.00000000,NULL,NULL),(18,'',1,'2012-12-09 15:28:53','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',17,1,NULL,0,0,0.00000000,NULL,NULL),(19,'',1,'2012-12-09 17:35:55','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',18,1,NULL,0,0,0.00000000,NULL,NULL),(20,'',1,'2012-12-09 17:37:02','2016-07-30 15:12:32','2015-12-09 12:00:00',2.00000000,4,'','',19,1,NULL,0,0,0.00000000,NULL,NULL),(21,'',1,'2012-12-09 18:35:07','2016-07-30 15:12:32','2015-12-09 12:00:00',-2.00000000,4,'','',20,1,NULL,0,0,0.00000000,NULL,NULL),(23,'',1,'2012-12-12 18:54:33','2016-07-30 15:12:32','2015-12-12 12:00:00',1.00000000,1,'','',21,1,NULL,0,0,0.00000000,NULL,NULL),(24,'',1,'2013-03-06 16:48:16','2016-07-30 15:13:20','2016-03-06 00:00:00',20.00000000,4,'','Adhésion/cotisation 2016',22,1,NULL,0,0,0.00000000,NULL,NULL),(25,'',1,'2013-03-20 14:30:11','2016-07-30 15:13:20','2016-03-20 00:00:00',10.00000000,2,'','Adhésion/cotisation 2011',23,1,NULL,0,0,0.00000000,NULL,NULL),(26,'',1,'2014-03-02 19:57:58','2016-07-30 15:13:20','2016-07-09 12:00:00',605.00000000,2,'','',24,1,NULL,0,0,0.00000000,NULL,NULL),(29,'',1,'2014-03-02 20:01:39','2016-07-30 15:13:20','2016-03-19 12:00:00',500.00000000,4,'','',26,1,NULL,0,0,0.00000000,NULL,NULL),(30,'',1,'2014-03-02 20:02:06','2016-07-30 15:13:20','2016-03-21 12:00:00',400.00000000,2,'','',27,1,NULL,0,0,0.00000000,NULL,NULL),(32,'',1,'2014-03-03 19:22:32','2016-07-30 15:12:32','2015-10-03 12:00:00',-400.00000000,4,'','',28,1,NULL,0,0,0.00000000,NULL,NULL),(33,'',1,'2014-03-03 19:23:16','2016-07-30 15:13:20','2016-03-10 12:00:00',-300.00000000,4,'','',29,1,NULL,0,0,0.00000000,NULL,NULL),(34,'PAY1603-0001',1,'2017-02-06 08:10:24','2017-02-06 04:10:24','2016-03-22 12:00:00',150.00000000,7,'','',33,12,NULL,0,0,150.00000000,NULL,NULL),(35,'PAY1603-0002',1,'2017-02-06 08:10:50','2017-02-06 04:10:50','2016-03-25 12:00:00',140.00000000,3,'','',34,12,NULL,0,0,140.00000000,NULL,NULL),(36,'PAY1702-0003',1,'2017-02-21 16:07:43','2017-02-21 12:07:43','2017-02-21 12:00:00',50.00000000,3,'T170201','',37,12,NULL,0,0,50.00000000,NULL,NULL),(38,'PAY1803-0004',1,'2018-03-16 13:59:31','2018-03-16 09:59:31','2018-03-16 12:00:00',10.00000000,7,'','',39,12,NULL,0,0,10.00000000,NULL,NULL); +/*!40000 ALTER TABLE `llx_paiement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiement_facture` +-- + +DROP TABLE IF EXISTS `llx_paiement_facture`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiement_facture` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_paiement` int(11) DEFAULT NULL, + `fk_facture` int(11) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_paiement_facture` (`fk_paiement`,`fk_facture`), + KEY `idx_paiement_facture_fk_facture` (`fk_facture`), + KEY `idx_paiement_facture_fk_paiement` (`fk_paiement`), + CONSTRAINT `fk_paiement_facture_fk_facture` FOREIGN KEY (`fk_facture`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_paiement_facture_fk_paiement` FOREIGN KEY (`fk_paiement`) REFERENCES `llx_paiement` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=43 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiement_facture` +-- + +LOCK TABLES `llx_paiement_facture` WRITE; +/*!40000 ALTER TABLE `llx_paiement_facture` DISABLE KEYS */; +INSERT INTO `llx_paiement_facture` VALUES (2,2,2,20.00000000,0.00000000),(3,3,2,10.00000000,0.00000000),(5,5,5,5.63000000,0.00000000),(6,6,6,5.98000000,0.00000000),(9,8,2,16.10000000,0.00000000),(10,8,8,10.00000000,0.00000000),(11,9,3,15.00000000,0.00000000),(12,9,9,11.96000000,0.00000000),(24,20,9,1.00000000,0.00000000),(31,26,32,600.00000000,0.00000000),(36,29,32,500.00000000,0.00000000),(37,30,32,400.00000000,0.00000000),(38,34,211,150.00000000,150.00000000),(39,35,211,140.00000000,140.00000000),(40,36,211,50.00000000,50.00000000),(42,38,149,10.00000000,10.00000000); +/*!40000 ALTER TABLE `llx_paiement_facture` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementcharge` +-- + +DROP TABLE IF EXISTS `llx_paiementcharge`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementcharge` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_charge` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepaiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementcharge` +-- + +LOCK TABLES `llx_paiementcharge` WRITE; +/*!40000 ALTER TABLE `llx_paiementcharge` DISABLE KEYS */; +INSERT INTO `llx_paiementcharge` VALUES (4,4,'2011-08-05 23:11:37','2011-08-05 21:11:37','2011-08-05 12:00:00',10.00000000,2,'','',12,1,NULL); +/*!40000 ALTER TABLE `llx_paiementcharge` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementfourn` +-- + +DROP TABLE IF EXISTS `llx_paiementfourn`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementfourn` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_paiement` int(11) NOT NULL, + `num_paiement` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `statut` smallint(6) NOT NULL DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementfourn` +-- + +LOCK TABLES `llx_paiementfourn` WRITE; +/*!40000 ALTER TABLE `llx_paiementfourn` DISABLE KEYS */; +INSERT INTO `llx_paiementfourn` VALUES (1,'1',1,'2018-01-19 11:17:47','2016-01-22 18:56:34','2016-01-22 12:00:00',900.00000000,12,NULL,4,'','',30,0,0.00000000,NULL),(2,'SPAY1702-0001',1,'2017-02-01 15:02:45','2017-02-01 19:02:44','2017-02-01 12:00:00',200.00000000,12,NULL,4,'','',32,0,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_paiementfourn` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_paiementfourn_facturefourn` +-- + +DROP TABLE IF EXISTS `llx_paiementfourn_facturefourn`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_paiementfourn_facturefourn` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_paiementfourn` int(11) DEFAULT NULL, + `fk_facturefourn` int(11) DEFAULT NULL, + `amount` double DEFAULT '0', + `multicurrency_amount` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_paiementfourn_facturefourn` (`fk_paiementfourn`,`fk_facturefourn`), + KEY `idx_paiementfourn_facturefourn_fk_facture` (`fk_facturefourn`), + KEY `idx_paiementfourn_facturefourn_fk_paiement` (`fk_paiementfourn`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_paiementfourn_facturefourn` +-- + +LOCK TABLES `llx_paiementfourn_facturefourn` WRITE; +/*!40000 ALTER TABLE `llx_paiementfourn_facturefourn` DISABLE KEYS */; +INSERT INTO `llx_paiementfourn_facturefourn` VALUES (1,1,16,900,0.00000000),(2,2,20,200,200.00000000); +/*!40000 ALTER TABLE `llx_paiementfourn_facturefourn` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_donation` +-- + +DROP TABLE IF EXISTS `llx_payment_donation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_donation` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_donation` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_donation` +-- + +LOCK TABLES `llx_payment_donation` WRITE; +/*!40000 ALTER TABLE `llx_payment_donation` DISABLE KEYS */; +INSERT INTO `llx_payment_donation` VALUES (1,3,'2017-09-06 20:08:36','2017-09-06 16:08:36','2017-09-06 12:00:00',10.00000000,4,'','',38,12,NULL); +/*!40000 ALTER TABLE `llx_payment_donation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_expensereport` +-- + +DROP TABLE IF EXISTS `llx_payment_expensereport`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_expensereport` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_expensereport` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_expensereport` +-- + +LOCK TABLES `llx_payment_expensereport` WRITE; +/*!40000 ALTER TABLE `llx_payment_expensereport` DISABLE KEYS */; +INSERT INTO `llx_payment_expensereport` VALUES (1,1,'2017-02-16 02:13:13','2017-02-15 22:13:13','2017-02-16 12:00:00',5.00000000,7,'','',0,12,NULL),(2,1,'2017-02-16 02:22:09','2017-02-15 22:22:09','2017-02-16 12:00:00',1.00000000,7,'','',36,12,NULL); +/*!40000 ALTER TABLE `llx_payment_expensereport` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_loan` +-- + +DROP TABLE IF EXISTS `llx_payment_loan`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_loan` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_loan` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datep` datetime DEFAULT NULL, + `amount_capital` double(24,8) DEFAULT NULL, + `amount_insurance` double(24,8) DEFAULT NULL, + `amount_interest` double(24,8) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) NOT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_loan` +-- + +LOCK TABLES `llx_payment_loan` WRITE; +/*!40000 ALTER TABLE `llx_payment_loan` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_payment_loan` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_salary` +-- + +DROP TABLE IF EXISTS `llx_payment_salary`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_salary` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user` int(11) NOT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `salary` double(24,8) DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datesp` date DEFAULT NULL, + `dateep` date DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_payment_salary_ref` (`num_payment`), + KEY `idx_payment_salary_user` (`fk_user`,`entity`), + KEY `idx_payment_salary_datep` (`datep`), + KEY `idx_payment_salary_datesp` (`datesp`), + KEY `idx_payment_salary_dateep` (`dateep`), + CONSTRAINT `fk_payment_salary_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_salary` +-- + +LOCK TABLES `llx_payment_salary` WRITE; +/*!40000 ALTER TABLE `llx_payment_salary` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_payment_salary` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_payment_various` +-- + +DROP TABLE IF EXISTS `llx_payment_various`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_payment_various` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `sens` smallint(6) NOT NULL DEFAULT '0', + `amount` double(24,8) NOT NULL DEFAULT '0.00000000', + `fk_typepayment` int(11) NOT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_payment_various` +-- + +LOCK TABLES `llx_payment_various` WRITE; +/*!40000 ALTER TABLE `llx_payment_various` DISABLE KEYS */; +INSERT INTO `llx_payment_various` VALUES (2,NULL,'2017-07-14 14:46:19','2017-07-14 18:46:19','2017-07-14','2017-07-14',0,123.00000000,4,'','Miscellaneous payment','518',NULL,1,NULL,48,12,NULL); +/*!40000 ALTER TABLE `llx_payment_various` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_bons` +-- + +DROP TABLE IF EXISTS `llx_prelevement_bons`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_bons` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `statut` smallint(6) DEFAULT '0', + `credite` smallint(6) DEFAULT '0', + `note` text COLLATE utf8_unicode_ci, + `date_trans` datetime DEFAULT NULL, + `method_trans` smallint(6) DEFAULT NULL, + `fk_user_trans` int(11) DEFAULT NULL, + `date_credit` datetime DEFAULT NULL, + `fk_user_credit` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_prelevement_bons_ref` (`ref`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_bons` +-- + +LOCK TABLES `llx_prelevement_bons` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_bons` DISABLE KEYS */; +INSERT INTO `llx_prelevement_bons` VALUES (1,'T170201',1,'2017-02-21 15:53:46',50.00000000,2,0,NULL,'2017-02-21 12:00:00',0,12,'2017-02-21 12:00:00',12); +/*!40000 ALTER TABLE `llx_prelevement_bons` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_facture` +-- + +DROP TABLE IF EXISTS `llx_prelevement_facture`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_facture` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `fk_prelevement_lignes` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_prelevement_facture_fk_prelevement_lignes` (`fk_prelevement_lignes`), + CONSTRAINT `fk_prelevement_facture_fk_prelevement_lignes` FOREIGN KEY (`fk_prelevement_lignes`) REFERENCES `llx_prelevement_lignes` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_facture` +-- + +LOCK TABLES `llx_prelevement_facture` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_facture` DISABLE KEYS */; +INSERT INTO `llx_prelevement_facture` VALUES (1,211,1); +/*!40000 ALTER TABLE `llx_prelevement_facture` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_facture_demande` +-- + +DROP TABLE IF EXISTS `llx_prelevement_facture_demande`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_facture_demande` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_facture` int(11) NOT NULL, + `amount` double(24,8) DEFAULT NULL, + `date_demande` datetime NOT NULL, + `traite` smallint(6) DEFAULT '0', + `date_traite` datetime DEFAULT NULL, + `fk_prelevement_bons` int(11) DEFAULT NULL, + `fk_user_demande` int(11) NOT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_facture_demande` +-- + +LOCK TABLES `llx_prelevement_facture_demande` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_facture_demande` DISABLE KEYS */; +INSERT INTO `llx_prelevement_facture_demande` VALUES (1,211,50.00000000,'2017-02-06 08:11:17',1,'2017-02-21 15:53:46',1,12,'','','',''); +/*!40000 ALTER TABLE `llx_prelevement_facture_demande` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_lignes` +-- + +DROP TABLE IF EXISTS `llx_prelevement_lignes`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_lignes` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prelevement_bons` int(11) DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `statut` smallint(6) DEFAULT '0', + `client_nom` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_prelevement_lignes_fk_prelevement_bons` (`fk_prelevement_bons`), + CONSTRAINT `fk_prelevement_lignes_fk_prelevement_bons` FOREIGN KEY (`fk_prelevement_bons`) REFERENCES `llx_prelevement_bons` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_lignes` +-- + +LOCK TABLES `llx_prelevement_lignes` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_lignes` DISABLE KEYS */; +INSERT INTO `llx_prelevement_lignes` VALUES (1,1,19,2,'Magic Food Store',50.00000000,'','','','',NULL); +/*!40000 ALTER TABLE `llx_prelevement_lignes` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_prelevement_rejet` +-- + +DROP TABLE IF EXISTS `llx_prelevement_rejet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_prelevement_rejet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prelevement_lignes` int(11) DEFAULT NULL, + `date_rejet` datetime DEFAULT NULL, + `motif` int(11) DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `fk_user_creation` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `afacturer` tinyint(4) DEFAULT '0', + `fk_facture` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_prelevement_rejet` +-- + +LOCK TABLES `llx_prelevement_rejet` WRITE; +/*!40000 ALTER TABLE `llx_prelevement_rejet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_prelevement_rejet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printer_receipt` +-- + +DROP TABLE IF EXISTS `llx_printer_receipt`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printer_receipt` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_type` int(11) DEFAULT NULL, + `fk_profile` int(11) DEFAULT NULL, + `parameter` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printer_receipt` +-- + +LOCK TABLES `llx_printer_receipt` WRITE; +/*!40000 ALTER TABLE `llx_printer_receipt` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printer_receipt` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printer_receipt_template` +-- + +DROP TABLE IF EXISTS `llx_printer_receipt_template`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printer_receipt_template` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `template` text COLLATE utf8_unicode_ci, + `entity` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printer_receipt_template` +-- + +LOCK TABLES `llx_printer_receipt_template` WRITE; +/*!40000 ALTER TABLE `llx_printer_receipt_template` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printer_receipt_template` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_printing` +-- + +DROP TABLE IF EXISTS `llx_printing`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_printing` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `printer_name` text COLLATE utf8_unicode_ci NOT NULL, + `printer_location` text COLLATE utf8_unicode_ci NOT NULL, + `printer_id` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `copy` int(11) NOT NULL DEFAULT '1', + `module` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `driver` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `userid` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_printing` +-- + +LOCK TABLES `llx_printing` WRITE; +/*!40000 ALTER TABLE `llx_printing` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_printing` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product` +-- + +DROP TABLE IF EXISTS `llx_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `virtual` tinyint(4) NOT NULL DEFAULT '0', + `fk_parent` int(11) DEFAULT '0', + `ref` varchar(128) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `note` text COLLATE utf8_unicode_ci, + `customcode` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `tosell` tinyint(4) DEFAULT '1', + `tobuy` tinyint(4) DEFAULT '1', + `onportal` smallint(6) DEFAULT '0', + `tobatch` tinyint(4) NOT NULL DEFAULT '0', + `fk_product_type` int(11) DEFAULT '0', + `duration` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `seuil_stock_alerte` int(11) DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT NULL, + `accountancy_code_sell` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_sell_intra` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_sell_export` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code_buy` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `partnumber` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `weight` float DEFAULT NULL, + `weight_units` tinyint(4) DEFAULT NULL, + `length` float DEFAULT NULL, + `length_units` tinyint(4) DEFAULT NULL, + `surface` float DEFAULT NULL, + `surface_units` tinyint(4) DEFAULT NULL, + `volume` float DEFAULT NULL, + `volume_units` tinyint(4) DEFAULT NULL, + `stock` double DEFAULT NULL, + `pmp` double(24,8) NOT NULL DEFAULT '0.00000000', + `fifo` double(24,8) DEFAULT NULL, + `lifo` double(24,8) DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT 'default@product', + `finished` tinyint(4) DEFAULT NULL, + `hidden` tinyint(4) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `desiredstock` int(11) DEFAULT '0', + `fk_price_expression` int(11) DEFAULT NULL, + `fk_unit` int(11) DEFAULT NULL, + `cost_price` double(24,8) DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `price_autogen` smallint(6) DEFAULT '0', + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT '', + `width` float DEFAULT NULL, + `width_units` tinyint(4) DEFAULT NULL, + `height` float DEFAULT NULL, + `height_units` tinyint(4) DEFAULT NULL, + `fk_default_warehouse` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_ref` (`ref`,`entity`), + UNIQUE KEY `uk_product_barcode` (`barcode`,`fk_barcode_type`,`entity`), + KEY `idx_product_label` (`label`), + KEY `idx_product_barcode` (`barcode`), + KEY `idx_product_import_key` (`import_key`), + KEY `idx_product_fk_country` (`fk_country`), + KEY `idx_product_fk_user_author` (`fk_user_author`), + KEY `idx_product_fk_barcode_type` (`fk_barcode_type`), + KEY `fk_product_fk_unit` (`fk_unit`), + KEY `idx_product_seuil_stock_alerte` (`seuil_stock_alerte`), + KEY `fk_product_default_warehouse` (`fk_default_warehouse`), + CONSTRAINT `fk_product_barcode_type` FOREIGN KEY (`fk_barcode_type`) REFERENCES `llx_c_barcode_type` (`rowid`), + CONSTRAINT `fk_product_default_warehouse` FOREIGN KEY (`fk_default_warehouse`) REFERENCES `llx_entrepot` (`rowid`), + CONSTRAINT `fk_product_fk_country` FOREIGN KEY (`fk_country`) REFERENCES `llx_c_country` (`rowid`), + CONSTRAINT `fk_product_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product` +-- + +LOCK TABLES `llx_product` WRITE; +/*!40000 ALTER TABLE `llx_product` DISABLE KEYS */; +INSERT INTO `llx_product` VALUES (1,'2010-07-08 14:33:17','2016-01-16 16:30:35',0,0,'PINKDRESS',1,NULL,'Pink dress','A beatifull pink dress','','',NULL,100.00000000,112.50000000,90.00000000,101.25000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789066',2,'701PINKDRESS',NULL,NULL,'601PINKDRESS',NULL,670,-3,NULL,0,NULL,0,NULL,0,2,0.00000000,NULL,NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(2,'2010-07-09 00:30:01','2016-01-16 16:37:14',0,0,'PEARPIE',1,NULL,'Pear Pie','','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789077',2,'',NULL,NULL,'',NULL,NULL,0,NULL,0,NULL,0,NULL,0,998,0.00000000,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(3,'2010-07-09 00:30:25','2016-01-16 16:40:03',0,0,'CAKECONTRIB',1,NULL,'Cake making contribution','','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,1,'1m',NULL,NULL,'123456789088',2,'701CAKEM',NULL,NULL,'601CAKEM',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(4,'2010-07-10 14:44:06','2016-01-16 15:58:20',0,0,'APPLEPIE',1,NULL,'Apple Pie','Nice Bio Apple Pie.
\r\n ','','',NULL,5.00000000,5.62500000,0.00000000,0.00000000,'HT',12.500,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,NULL,'123456789034',2,'701',NULL,NULL,'601',NULL,500,-3,NULL,0,NULL,0,NULL,0,1001,10.00000000,NULL,NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(5,'2011-07-20 23:11:38','2016-01-16 16:18:24',0,0,'DOLIDROID',1,NULL,'DoliDroid, Android app for Dolibarr','DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

','','',NULL,10.00000000,11.96000000,0.00000000,0.00000000,'HT',19.600,0,0.000,'0',0.000,'0',1,NULL,1,1,0,0,0,'',NULL,'https://play.google.com/store/apps/details?id=com.nltechno.dolidroidpro','123456789023',2,'701',NULL,NULL,'601',NULL,NULL,0,NULL,0,NULL,0,NULL,0,NULL,0.00000000,NULL,NULL,'',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(10,'2008-12-31 00:00:00','2017-02-16 00:12:09',0,0,'COMP-XP4523',1,NULL,'Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.','USXP765',11,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,0,0.000,'0',0.000,'0',NULL,12,1,1,0,1,0,'',150,NULL,'123456789055',2,'701OLDC',NULL,NULL,'601OLDC',NULL,1.7,0,NULL,0,NULL,0,NULL,0,110,0.00000000,NULL,NULL,NULL,NULL,0,'20110729232310',200,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(11,'2013-01-13 20:24:42','2016-07-30 13:42:31',0,0,'ROLLUPABC',1,NULL,'Rollup Dolibarr','A nice rollup','','',NULL,0.00000000,0.00000000,0.00000000,0.00000000,'HT',0.000,0,0.000,'0',0.000,'0',1,12,0,0,0,0,0,'',NULL,NULL,'123456789044',2,'',NULL,NULL,'',NULL,2.5,0,NULL,0,2.34,0,NULL,0,-1,0.00000000,NULL,NULL,'',1,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(12,'2016-07-30 17:31:29','2016-07-30 13:35:02',0,0,'DOLICLOUD',1,NULL,'SaaS service of Dolibarr ERP CRM','Cloud hosting of Dolibarr ERP and CRM software','','',NULL,9.00000000,9.00000000,9.00000000,9.00000000,'HT',0.000,0,0.000,'0',0.000,'0',12,12,1,1,0,0,1,'',NULL,'http://www.dolicloud.com','123456789013',2,'',NULL,NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.00000000,NULL,NULL,'',0,0,NULL,NULL,NULL,NULL,8.50000000,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL),(13,'2017-02-16 03:49:00','2017-02-15 23:49:27',0,0,'COMP-XP4548',1,NULL,'Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.','USXP765',11,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,0,0.000,'0',0.000,'0',12,12,1,1,0,1,0,'',150,NULL,NULL,2,'',NULL,NULL,'',NULL,1.7,0,NULL,0,NULL,0,NULL,0,NULL,0.00000000,NULL,NULL,'',NULL,0,NULL,200,NULL,NULL,NULL,NULL,0,NULL,'',NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_association` +-- + +DROP TABLE IF EXISTS `llx_product_association`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_association` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_pere` int(11) NOT NULL DEFAULT '0', + `fk_product_fils` int(11) NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `incdec` int(11) DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_association` (`fk_product_pere`,`fk_product_fils`), + KEY `idx_product_association` (`fk_product_fils`), + KEY `idx_product_association_fils` (`fk_product_fils`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_association` +-- + +LOCK TABLES `llx_product_association` WRITE; +/*!40000 ALTER TABLE `llx_product_association` DISABLE KEYS */; +INSERT INTO `llx_product_association` VALUES (2,5,1,1,1),(3,4,3,5,1),(4,4,1,2,1); +/*!40000 ALTER TABLE `llx_product_association` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute` +-- + +DROP TABLE IF EXISTS `llx_product_attribute`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `rang` int(11) NOT NULL DEFAULT '0', + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_attribute_ref` (`ref`), + UNIQUE KEY `unique_ref` (`ref`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute` +-- + +LOCK TABLES `llx_product_attribute` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_combination` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_combination`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_combination` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_parent` int(11) NOT NULL, + `fk_product_child` int(11) NOT NULL, + `variation_price` float NOT NULL, + `variation_price_percentage` int(11) DEFAULT NULL, + `variation_weight` float NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_combination` +-- + +LOCK TABLES `llx_product_attribute_combination` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_combination` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_combination` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_combination2val` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_combination2val`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_combination2val` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_prod_combination` int(11) NOT NULL, + `fk_prod_attr` int(11) NOT NULL, + `fk_prod_attr_val` int(11) NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_combination2val` +-- + +LOCK TABLES `llx_product_attribute_combination2val` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_combination2val` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_combination2val` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_attribute_value` +-- + +DROP TABLE IF EXISTS `llx_product_attribute_value`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_attribute_value` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_attribute` int(11) NOT NULL, + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `value` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_attribute_value` (`fk_product_attribute`,`ref`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_attribute_value` +-- + +LOCK TABLES `llx_product_attribute_value` WRITE; +/*!40000 ALTER TABLE `llx_product_attribute_value` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_attribute_value` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_batch` +-- + +DROP TABLE IF EXISTS `llx_product_batch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_batch` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_batch` (`fk_product_stock`,`batch`), + KEY `idx_fk_product_stock` (`fk_product_stock`), + KEY `ix_fk_product_stock` (`fk_product_stock`), + KEY `idx_batch` (`batch`), + CONSTRAINT `fk_product_batch_fk_product_stock` FOREIGN KEY (`fk_product_stock`) REFERENCES `llx_product_stock` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_batch` +-- + +LOCK TABLES `llx_product_batch` WRITE; +/*!40000 ALTER TABLE `llx_product_batch` DISABLE KEYS */; +INSERT INTO `llx_product_batch` VALUES (1,'2016-07-30 13:40:39',8,NULL,NULL,'5599887766452',15,NULL),(2,'2016-07-30 13:40:12',8,NULL,NULL,'4494487766452',60,NULL),(3,'2017-02-16 00:12:09',9,NULL,NULL,'5599887766452',35,NULL); +/*!40000 ALTER TABLE `llx_product_batch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_customer_price` +-- + +DROP TABLE IF EXISTS `llx_product_customer_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_customer_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_customer_price_fk_product_fk_soc` (`fk_product`,`fk_soc`), + KEY `idx_product_customer_price_fk_user` (`fk_user`), + KEY `fk_customer_price_fk_soc` (`fk_soc`), + KEY `idx_product_customer_price_fk_soc` (`fk_soc`), + CONSTRAINT `fk_customer_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`) ON DELETE CASCADE, + CONSTRAINT `fk_customer_price_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) ON DELETE CASCADE, + CONSTRAINT `fk_product_customer_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_customer_price_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_product_customer_price_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_customer_price` +-- + +LOCK TABLES `llx_product_customer_price` WRITE; +/*!40000 ALTER TABLE `llx_product_customer_price` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_customer_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_customer_price_log` +-- + +DROP TABLE IF EXISTS `llx_product_customer_price_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_customer_price_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `fk_soc` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `price_min` double(24,8) DEFAULT '0.00000000', + `price_min_ttc` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_customer_price_log` +-- + +LOCK TABLES `llx_product_customer_price_log` WRITE; +/*!40000 ALTER TABLE `llx_product_customer_price_log` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_customer_price_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_extrafields` +-- + +DROP TABLE IF EXISTS `llx_product_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_extrafields` +-- + +LOCK TABLES `llx_product_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_product_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_factory` +-- + +DROP TABLE IF EXISTS `llx_product_factory`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_factory` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_father` int(11) NOT NULL DEFAULT '0', + `fk_product_children` int(11) NOT NULL DEFAULT '0', + `pmp` double(24,8) DEFAULT '0.00000000', + `price` double(24,8) DEFAULT '0.00000000', + `qty` double DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_factory` (`fk_product_father`,`fk_product_children`), + KEY `idx_product_factory_fils` (`fk_product_children`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_factory` +-- + +LOCK TABLES `llx_product_factory` WRITE; +/*!40000 ALTER TABLE `llx_product_factory` DISABLE KEYS */; +INSERT INTO `llx_product_factory` VALUES (2,26,25,0.00000000,0.00000000,3),(3,27,26,0.00000000,0.00000000,2); +/*!40000 ALTER TABLE `llx_product_factory` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_fournisseur_price` +-- + +DROP TABLE IF EXISTS `llx_product_fournisseur_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_fournisseur_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `ref_fourn` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `desc_fourn` text COLLATE utf8_unicode_ci, + `fk_availability` int(11) DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `quantity` double DEFAULT NULL, + `remise_percent` double NOT NULL DEFAULT '0', + `remise` double NOT NULL DEFAULT '0', + `unitprice` double(24,8) DEFAULT '0.00000000', + `charges` double(24,8) DEFAULT '0.00000000', + `tva_tx` double(6,3) NOT NULL DEFAULT '0.000', + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `info_bits` int(11) NOT NULL DEFAULT '0', + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_supplier_price_expression` int(11) DEFAULT NULL, + `fk_price_expression` int(11) DEFAULT NULL, + `delivery_time_days` int(11) DEFAULT NULL, + `supplier_reputation` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_unitprice` double(24,8) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_price` double(24,8) DEFAULT NULL, + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_fournisseur_price_ref` (`ref_fourn`,`fk_soc`,`quantity`,`entity`), + KEY `idx_product_fournisseur_price_fk_user` (`fk_user`), + KEY `idx_product_fourn_price_fk_product` (`fk_product`,`entity`), + KEY `idx_product_fourn_price_fk_soc` (`fk_soc`,`entity`), + CONSTRAINT `fk_product_fournisseur_price_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_fournisseur_price_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_fournisseur_price` +-- + +LOCK TABLES `llx_product_fournisseur_price` WRITE; +/*!40000 ALTER TABLE `llx_product_fournisseur_price` DISABLE KEYS */; +INSERT INTO `llx_product_fournisseur_price` VALUES (1,'2010-07-11 18:45:42','2012-12-08 13:11:08',4,1,'ABCD',NULL,NULL,10.00000000,1,0,0,10.00000000,0.00000000,0.000,NULL,0,1,NULL,1,NULL,NULL,NULL,NULL,1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'),(2,'2016-07-30 17:34:38','2016-07-30 13:34:38',12,10,'BASIC',NULL,0,9.00000000,1,0,0,9.00000000,0.00000000,0.000,NULL,0,12,NULL,1,NULL,NULL,NULL,'FAVORITE',1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'),(3,'2017-02-02 05:17:08','2017-02-02 01:17:08',1,10,'aaa',NULL,0,100.00000000,1,10,0,100.00000000,0.00000000,12.500,NULL,0,12,NULL,1,NULL,NULL,NULL,NULL,1.00000000,NULL,NULL,NULL,NULL,0.000,'0',0.000,'0'); +/*!40000 ALTER TABLE `llx_product_fournisseur_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_fournisseur_price_log` +-- + +DROP TABLE IF EXISTS `llx_product_fournisseur_price_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_fournisseur_price_log` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `fk_product_fournisseur` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `quantity` double DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price` double(24,8) DEFAULT NULL, + `multicurrency_unitprice` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_fournisseur_price_log` +-- + +LOCK TABLES `llx_product_fournisseur_price_log` WRITE; +/*!40000 ALTER TABLE `llx_product_fournisseur_price_log` DISABLE KEYS */; +INSERT INTO `llx_product_fournisseur_price_log` VALUES (1,'2010-07-11 18:45:42',1,10.00000000,1,1,NULL,NULL,1.00000000,NULL,NULL); +/*!40000 ALTER TABLE `llx_product_fournisseur_price_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lang` +-- + +DROP TABLE IF EXISTS `llx_product_lang`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lang` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL DEFAULT '0', + `lang` varchar(5) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `note` text COLLATE utf8_unicode_ci, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_lang` (`fk_product`,`lang`), + CONSTRAINT `fk_product_lang_fk_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lang` +-- + +LOCK TABLES `llx_product_lang` WRITE; +/*!40000 ALTER TABLE `llx_product_lang` DISABLE KEYS */; +INSERT INTO `llx_product_lang` VALUES (1,1,'en_US','Pink dress','A beatifull pink dress','',NULL),(2,2,'en_US','Pear Pie','','',NULL),(3,3,'en_US','Cake making contribution','','',NULL),(4,4,'fr_FR','Decapsuleur','','',NULL),(5,5,'en_US','DoliDroid, Android app for Dolibarr','DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

','',NULL),(9,11,'fr_FR','hfghf','','',NULL),(10,2,'fr_FR','Product P1','','',NULL),(11,4,'en_US','Apple Pie','Nice Bio Apple Pie.
\r\n ','',NULL),(12,11,'en_US','Rollup Dolibarr','A nice rollup','',NULL),(13,10,'en_US','Computer XP4523','A powerfull computer XP4523 ','This product is imported.
\r\nWarning: Delay to get it are not reliable.',NULL),(14,12,'en_US','SaaS hosting of Dolibarr ERP CRM','Cloud hosting of Dolibarr ERP and CRM software','',NULL),(15,12,'fr_FR','Service SaaS Hébergement Dolibarr ERP CRM','Service SaaS d'hébergement de la solution Dolibarr ERP CRM','',NULL),(16,13,'en_US','Computer XP4523','A powerfull computer XP4523 ',NULL,NULL),(17,13,'fr_FR','Computer XP4523','A powerfull computer XP4523 ',NULL,NULL); +/*!40000 ALTER TABLE `llx_product_lang` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lot` +-- + +DROP TABLE IF EXISTS `llx_product_lot`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lot` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_product` int(11) NOT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_lot` (`fk_product`,`batch`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lot` +-- + +LOCK TABLES `llx_product_lot` WRITE; +/*!40000 ALTER TABLE `llx_product_lot` DISABLE KEYS */; +INSERT INTO `llx_product_lot` VALUES (1,1,2,'123456','2016-07-07',NULL,'2016-07-21 20:55:19','2016-12-12 10:53:58',NULL,NULL,NULL),(2,1,2,'2222','2016-07-08','2016-07-07','2016-07-21 21:00:42','2016-12-12 10:53:58',NULL,NULL,NULL),(3,1,10,'5599887766452',NULL,NULL,'2016-07-30 17:39:31','2016-12-12 10:53:58',NULL,NULL,NULL),(4,1,10,'4494487766452',NULL,NULL,'2016-07-30 17:40:12','2016-12-12 10:53:58',NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_product_lot` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_lot_extrafields` +-- + +DROP TABLE IF EXISTS `llx_product_lot_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_lot_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_lot_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_lot_extrafields` +-- + +LOCK TABLES `llx_product_lot_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_product_lot_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_lot_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_price` +-- + +DROP TABLE IF EXISTS `llx_product_price`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_price` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `date_price` datetime DEFAULT NULL, + `price_level` smallint(6) DEFAULT '1', + `price` double(24,8) DEFAULT NULL, + `price_ttc` double(24,8) DEFAULT NULL, + `price_min` double(24,8) DEFAULT NULL, + `price_min_ttc` double(24,8) DEFAULT NULL, + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `tva_tx` double(6,3) NOT NULL, + `default_vat_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `recuperableonly` int(11) NOT NULL DEFAULT '0', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `fk_user_author` int(11) DEFAULT NULL, + `tosell` tinyint(4) DEFAULT '1', + `price_by_qty` int(11) NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_price_expression` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_price` double(24,8) DEFAULT '0.00000000', + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price_ttc` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_product_price_fk_user_author` (`fk_user_author`), + KEY `idx_product_price_fk_product` (`fk_product`), + CONSTRAINT `fk_product_price_product` FOREIGN KEY (`fk_product`) REFERENCES `llx_product` (`rowid`), + CONSTRAINT `fk_product_price_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_price` +-- + +LOCK TABLES `llx_product_price` WRITE; +/*!40000 ALTER TABLE `llx_product_price` DISABLE KEYS */; +INSERT INTO `llx_product_price` VALUES (1,1,'2010-07-08 12:33:17',1,'2010-07-08 14:33:17',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(2,1,'2010-07-08 22:30:01',2,'2010-07-09 00:30:01',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(3,1,'2010-07-08 22:30:25',3,'2010-07-09 00:30:25',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(4,1,'2010-07-10 12:44:06',4,'2010-07-10 14:44:06',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(5,1,'2011-07-20 21:11:38',5,'2011-07-20 23:11:38',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',19.600,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(6,1,'2011-07-27 17:02:59',5,'2011-07-27 19:02:59',1,10.00000000,11.96000000,0.00000000,0.00000000,'HT',19.600,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(10,1,'2011-07-31 22:34:27',4,'2011-08-01 00:34:27',1,5.00000000,5.62500000,0.00000000,0.00000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(12,1,'2013-01-13 19:24:59',11,'2013-01-13 20:24:59',1,0.00000000,0.00000000,0.00000000,0.00000000,'HT',0.000,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(13,1,'2013-03-12 09:30:24',1,'2013-03-12 10:30:24',1,100.00000000,112.50000000,90.00000000,101.25000000,'HT',12.500,NULL,0,0.000,'0',0.000,'0',1,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(14,1,'2016-07-30 13:31:29',12,'2016-07-30 17:31:29',1,9.00000000,9.00000000,9.00000000,9.00000000,'HT',0.000,NULL,0,0.000,'0',0.000,'0',12,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(15,1,'2017-02-15 23:49:00',13,'2017-02-16 03:49:00',1,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,NULL,0,0.000,'0',0.000,'0',12,0,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL),(16,1,'2017-08-30 15:04:04',10,'2017-08-30 19:04:04',1,100.00000000,110.00000000,0.00000000,0.00000000,'HT',10.000,NULL,0,0.000,'0',0.000,'0',12,1,0,NULL,NULL,NULL,NULL,0.00000000,1.00000000,NULL); +/*!40000 ALTER TABLE `llx_product_price` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_price_by_qty` +-- + +DROP TABLE IF EXISTS `llx_product_price_by_qty`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_price_by_qty` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product_price` int(11) NOT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `price_ttc` double(24,8) DEFAULT '0.00000000', + `remise_percent` double NOT NULL DEFAULT '0', + `remise` double NOT NULL DEFAULT '0', + `qty_min` double DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `quantity` double DEFAULT NULL, + `unitprice` double(24,8) DEFAULT '0.00000000', + `price_base_type` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'HT', + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_price` double(24,8) DEFAULT NULL, + `multicurrency_price_ttc` double(24,8) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_price_by_qty_level` (`fk_product_price`,`quantity`), + KEY `idx_product_price_by_qty_fk_product_price` (`fk_product_price`), + CONSTRAINT `fk_product_price_by_qty_fk_product_price` FOREIGN KEY (`fk_product_price`) REFERENCES `llx_product_price` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_price_by_qty` +-- + +LOCK TABLES `llx_product_price_by_qty` WRITE; +/*!40000 ALTER TABLE `llx_product_price_by_qty` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_price_by_qty` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_pricerules` +-- + +DROP TABLE IF EXISTS `llx_product_pricerules`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_pricerules` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `level` int(11) NOT NULL, + `fk_level` int(11) NOT NULL, + `var_percent` float NOT NULL, + `var_min_percent` float NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `unique_level` (`level`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_pricerules` +-- + +LOCK TABLES `llx_product_pricerules` WRITE; +/*!40000 ALTER TABLE `llx_product_pricerules` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_pricerules` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_stock` +-- + +DROP TABLE IF EXISTS `llx_product_stock`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_stock` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `reel` double DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_product_stock` (`fk_product`,`fk_entrepot`), + KEY `idx_product_stock_fk_product` (`fk_product`), + KEY `idx_product_stock_fk_entrepot` (`fk_entrepot`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_stock` +-- + +LOCK TABLES `llx_product_stock` WRITE; +/*!40000 ALTER TABLE `llx_product_stock` DISABLE KEYS */; +INSERT INTO `llx_product_stock` VALUES (1,'2010-07-08 22:43:51',2,2,1000,NULL),(3,'2010-07-10 23:02:20',4,2,1000,NULL),(4,'2013-01-19 17:22:48',4,1,1,NULL),(5,'2013-01-19 17:22:48',1,1,2,NULL),(6,'2013-01-19 17:22:48',11,1,-1,NULL),(7,'2013-01-19 17:31:58',2,1,-2,NULL),(8,'2016-07-30 13:40:39',10,2,75,NULL),(9,'2017-02-16 00:12:09',10,1,35,NULL); +/*!40000 ALTER TABLE `llx_product_stock` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_subproduct` +-- + +DROP TABLE IF EXISTS `llx_product_subproduct`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_subproduct` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL, + `fk_product_subproduct` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `fk_product` (`fk_product`,`fk_product_subproduct`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_subproduct` +-- + +LOCK TABLES `llx_product_subproduct` WRITE; +/*!40000 ALTER TABLE `llx_product_subproduct` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_subproduct` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_product_warehouse_properties` +-- + +DROP TABLE IF EXISTS `llx_product_warehouse_properties`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_product_warehouse_properties` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `seuil_stock_alerte` int(11) DEFAULT '0', + `desiredstock` int(11) DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_product_warehouse_properties` +-- + +LOCK TABLES `llx_product_warehouse_properties` WRITE; +/*!40000 ALTER TABLE `llx_product_warehouse_properties` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_product_warehouse_properties` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet` +-- + +DROP TABLE IF EXISTS `llx_projet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dateo` date DEFAULT NULL, + `datee` date DEFAULT NULL, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `title` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_user_creat` int(11) NOT NULL, + `public` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `fk_opp_status` int(11) DEFAULT NULL, + `opp_percent` double(5,2) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `budget_amount` double(24,8) DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `fk_user_close` int(11) DEFAULT NULL, + `opp_amount` double(24,8) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `bill_time` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_ref` (`ref`,`entity`), + KEY `idx_projet_fk_soc` (`fk_soc`), + CONSTRAINT `fk_projet_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet` +-- + +LOCK TABLES `llx_projet` WRITE; +/*!40000 ALTER TABLE `llx_projet` DISABLE KEYS */; +INSERT INTO `llx_projet` VALUES (1,11,'2010-07-09 00:00:00','2015-10-05 20:51:28','2010-07-09',NULL,'PROJ1',1,'Project One','',1,0,1,NULL,NULL,NULL,'gdfgdfg','baleine',NULL,NULL,NULL,NULL,NULL,NULL,0),(2,13,'2010-07-09 00:00:00','2015-10-05 20:51:51','2010-07-09',NULL,'PROJ2',1,'Project Two','',1,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(3,1,'2010-07-09 00:00:00','2017-02-01 11:55:08','2010-07-09',NULL,'PROJINDIAN',1,'Project for Indian company move','',1,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(4,NULL,'2010-07-09 00:00:00','2010-07-08 22:50:49','2010-07-09',NULL,'PROJSHARED',1,'The Global project','',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(5,NULL,'2010-07-11 00:00:00','2017-02-01 15:01:51','2010-07-11','2011-07-14','RMLL',1,'Project management RMLL','',1,1,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0),(6,10,'2016-07-30 00:00:00','2016-07-30 15:53:07','2016-07-30',NULL,'PJ1607-0001',1,'PROJALICE1','The Alice project number 1',12,0,1,2,20.00,NULL,NULL,NULL,5000.00000000,NULL,NULL,8000.00000000,NULL,NULL,0),(7,10,'2016-07-30 00:00:00','2017-02-01 12:24:37','2016-07-30',NULL,'PJ1607-0002',1,'PROJALICE2','The Alice project number 2',12,0,1,6,100.00,NULL,NULL,NULL,NULL,'2017-02-01 16:24:31',12,7000.00000000,NULL,NULL,0),(8,10,'2016-07-30 00:00:00','2016-07-30 15:53:23','2016-07-30',NULL,'PJ1607-0003',1,'PROJALICE2','The Alice project number 3',12,0,1,6,100.00,NULL,NULL,NULL,NULL,NULL,NULL,3550.00000000,NULL,NULL,0),(9,4,'2016-07-31 00:00:00','2016-07-31 14:27:26','2016-07-31',NULL,'PJ1607-0004',1,'Project Top X','',12,0,1,2,27.00,NULL,NULL,NULL,NULL,NULL,NULL,4000.00000000,NULL,NULL,0); +/*!40000 ALTER TABLE `llx_projet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_projet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `priority` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + KEY `idx_projet_extrafields` (`fk_object`) +) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_extrafields` +-- + +LOCK TABLES `llx_projet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_projet_extrafields` DISABLE KEYS */; +INSERT INTO `llx_projet_extrafields` VALUES (5,'2016-07-30 15:53:07',6,NULL,'3'),(7,'2016-07-30 15:53:23',8,NULL,'5'),(9,'2016-07-31 14:27:24',9,NULL,'0'),(13,'2017-02-01 11:55:08',3,NULL,'0'),(15,'2017-02-01 12:24:31',7,NULL,'1'),(16,'2017-02-01 15:01:51',5,NULL,'0'); +/*!40000 ALTER TABLE `llx_projet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task` +-- + +DROP TABLE IF EXISTS `llx_projet_task`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_projet` int(11) NOT NULL, + `fk_task_parent` int(11) NOT NULL DEFAULT '0', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `dateo` datetime DEFAULT NULL, + `datee` datetime DEFAULT NULL, + `datev` datetime DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `description` text COLLATE utf8_unicode_ci, + `duration_effective` double DEFAULT '0', + `planned_workload` double DEFAULT '0', + `progress` int(11) DEFAULT '0', + `priority` int(11) DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `rang` int(11) DEFAULT '0', + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_task_ref` (`ref`,`entity`), + KEY `idx_projet_task_fk_projet` (`fk_projet`), + KEY `idx_projet_task_fk_user_creat` (`fk_user_creat`), + KEY `idx_projet_task_fk_user_valid` (`fk_user_valid`), + CONSTRAINT `fk_projet_task_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_projet_task_fk_user_creat` FOREIGN KEY (`fk_user_creat`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_projet_task_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task` +-- + +LOCK TABLES `llx_projet_task` WRITE; +/*!40000 ALTER TABLE `llx_projet_task` DISABLE KEYS */; +INSERT INTO `llx_projet_task` VALUES (2,'2',1,5,0,'2010-07-11 16:23:53','2013-09-08 23:06:14','2010-07-11 12:00:00','2011-07-14 12:00:00',NULL,'Heberger site RMLL','',0,0,0,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(3,'TK1007-0001',1,1,0,'2014-12-21 13:52:41','2016-07-30 11:35:40','2014-12-21 16:52:00',NULL,NULL,'Analyze','',9000,36000,0,0,1,NULL,0,NULL,'gdfgdfgdf',0,NULL,NULL),(4,'TK1007-0002',1,1,0,'2014-12-21 13:55:39','2016-07-30 11:35:51','2014-12-21 16:55:00',NULL,NULL,'Specification','',7200,18000,25,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(5,'TK1007-0003',1,1,0,'2014-12-21 14:16:58','2016-07-30 11:35:59','2014-12-21 17:16:00',NULL,NULL,'Development','',0,0,0,0,1,NULL,0,NULL,NULL,0,NULL,NULL),(6,'TK1607-0004',1,6,0,'2016-07-30 15:33:27','2016-07-30 11:34:47','2016-07-30 02:00:00',NULL,NULL,'Project preparation phase A','',75600,720000,10,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(7,'TK1607-0005',1,6,0,'2016-07-30 15:33:39','2017-01-30 11:23:39','2016-07-30 02:00:00',NULL,NULL,'Project preparation phase B','',40260,1080000,5,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(8,'TK1607-0006',1,6,0,'2016-07-30 15:33:53','2016-07-30 11:33:53','2016-07-30 02:00:00',NULL,NULL,'Project execution phase A','',0,162000,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(9,'TK1607-0007',1,6,0,'2016-07-30 15:34:09','2016-07-30 11:34:09','2016-10-27 02:00:00',NULL,NULL,'Project execution phase B','',0,2160000,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL),(10,'TK1007-0008',1,1,0,'2016-07-30 15:36:31','2016-07-30 11:36:31','2016-07-30 02:00:00',NULL,NULL,'Tests','',0,316800,0,0,12,NULL,0,NULL,NULL,0,NULL,NULL); +/*!40000 ALTER TABLE `llx_projet_task` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task_extrafields` +-- + +DROP TABLE IF EXISTS `llx_projet_task_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_projet_task_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task_extrafields` +-- + +LOCK TABLES `llx_projet_task_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_projet_task_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_task_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_task_time` +-- + +DROP TABLE IF EXISTS `llx_projet_task_time`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_task_time` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_task` int(11) NOT NULL, + `task_date` date DEFAULT NULL, + `task_datehour` datetime DEFAULT NULL, + `task_date_withhour` int(11) DEFAULT '0', + `task_duration` double DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `thm` double(24,8) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `invoice_id` int(11) DEFAULT NULL, + `invoice_line_id` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `datec` date DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + KEY `idx_projet_task_time_task` (`fk_task`), + KEY `idx_projet_task_time_date` (`task_date`), + KEY `idx_projet_task_time_datehour` (`task_datehour`) +) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_task_time` +-- + +LOCK TABLES `llx_projet_task_time` WRITE; +/*!40000 ALTER TABLE `llx_projet_task_time` DISABLE KEYS */; +INSERT INTO `llx_projet_task_time` VALUES (2,4,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,'',NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(3,4,'2014-12-18','2014-12-18 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(4,3,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(5,3,'2014-12-21','2014-12-21 12:00:00',0,1800,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(6,3,'2014-12-21','2014-12-21 12:00:00',0,3600,1,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(7,6,'2016-07-25','2016-07-25 00:00:00',0,18000,12,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(8,6,'2016-07-26','2016-07-26 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(9,6,'2016-07-27','2016-07-27 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(10,6,'2016-07-29','2016-07-29 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(11,6,'2016-07-31','2016-07-31 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(12,7,'2016-07-25','2016-07-25 00:00:00',0,10800,12,NULL,NULL,NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'),(13,7,'2016-07-26','2016-07-26 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(14,7,'2016-07-27','2016-07-27 00:00:00',0,14400,12,NULL,NULL,NULL,NULL,NULL,NULL,'2018-03-16 10:00:54'),(15,7,'2017-01-30','2017-01-30 10:00:00',1,660,12,NULL,'',NULL,NULL,NULL,NULL,'0000-00-00 00:00:00'); +/*!40000 ALTER TABLE `llx_projet_task_time` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_taskdet` +-- + +DROP TABLE IF EXISTS `llx_projet_taskdet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_taskdet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_task` int(11) NOT NULL DEFAULT '0', + `fk_product` int(11) NOT NULL DEFAULT '0', + `qty_planned` double DEFAULT NULL, + `qty_used` double DEFAULT NULL, + `qty_deleted` double DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `pmp` double(24,8) DEFAULT '0.00000000', + `price` double(24,8) DEFAULT '0.00000000', + `fk_statut` int(11) NOT NULL DEFAULT '0', + `note_public` mediumtext COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_projet_taskdet` (`fk_task`,`fk_product`), + KEY `idx_projet_taskdet_fk_task` (`fk_task`), + KEY `idx_projet_taskdet_fk_product` (`fk_product`), + CONSTRAINT `fk_projet_taskdet_fk_task` FOREIGN KEY (`fk_task`) REFERENCES `llx_projet_task` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_taskdet` +-- + +LOCK TABLES `llx_projet_taskdet` WRITE; +/*!40000 ALTER TABLE `llx_projet_taskdet` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_taskdet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_projet_taskdet_equipement` +-- + +DROP TABLE IF EXISTS `llx_projet_taskdet_equipement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_projet_taskdet_equipement` ( + `fk_equipement` int(11) NOT NULL DEFAULT '0', + `fk_projet_taskdet` int(11) NOT NULL DEFAULT '0', + UNIQUE KEY `uk_factory_equipement` (`fk_equipement`,`fk_projet_taskdet`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_projet_taskdet_equipement` +-- + +LOCK TABLES `llx_projet_taskdet_equipement` WRITE; +/*!40000 ALTER TABLE `llx_projet_taskdet_equipement` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_projet_taskdet_equipement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal` +-- + +DROP TABLE IF EXISTS `llx_propal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_client` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `datep` date DEFAULT NULL, + `fin_validite` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `price` double DEFAULT '0', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_livraison` date DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `fk_availability` int(11) DEFAULT NULL, + `fk_delivery_address` int(11) DEFAULT NULL, + `fk_input_reason` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_propal_ref` (`ref`,`entity`), + KEY `idx_propal_fk_soc` (`fk_soc`), + KEY `idx_propal_fk_user_author` (`fk_user_author`), + KEY `idx_propal_fk_user_valid` (`fk_user_valid`), + KEY `idx_propal_fk_user_cloture` (`fk_user_cloture`), + KEY `idx_propal_fk_projet` (`fk_projet`), + KEY `idx_propal_fk_account` (`fk_account`), + KEY `idx_propal_fk_currency` (`fk_currency`), + CONSTRAINT `fk_propal_fk_projet` FOREIGN KEY (`fk_projet`) REFERENCES `llx_projet` (`rowid`), + CONSTRAINT `fk_propal_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_propal_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_propal_fk_user_cloture` FOREIGN KEY (`fk_user_cloture`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_propal_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal` +-- + +LOCK TABLES `llx_propal` WRITE; +/*!40000 ALTER TABLE `llx_propal` DISABLE KEYS */; +INSERT INTO `llx_propal` VALUES (1,2,NULL,'2016-07-30 15:56:45','PR1007-0001',1,NULL,NULL,'','2010-07-09 01:33:49','2016-07-09','2016-07-24 12:00:00','2017-08-08 14:24:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,30.00000000,3.84000000,0.00000000,0.00000000,33.84000000,NULL,NULL,1,0,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(2,1,NULL,'2016-07-30 15:56:54','PR1007-0002',1,NULL,NULL,'','2010-07-10 02:11:44','2016-07-10','2016-07-25 12:00:00','2016-07-10 02:12:55','2017-07-20 15:23:12',1,NULL,1,1,2,0,NULL,NULL,0,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,NULL,NULL,1,1,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(3,4,NULL,'2016-07-30 15:56:54','PR1007-0003',1,NULL,NULL,'','2010-07-18 11:35:11','2016-07-18','2016-08-02 12:00:00','2016-07-18 11:36:18','2017-07-20 15:21:15',1,NULL,1,1,2,0,NULL,NULL,0,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(5,19,NULL,'2016-07-30 15:56:54','PR1302-0005',1,NULL,NULL,'','2013-02-17 15:39:56','2016-02-17','2016-03-04 12:00:00','2018-11-15 23:27:10',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,10.00000000,2.00000000,0.00000000,0.00000000,12.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(6,19,NULL,'2016-07-30 15:56:54','PR1302-0006',1,NULL,NULL,'','2013-02-17 15:40:12','2016-02-17','2016-03-04 12:00:00',NULL,NULL,1,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(7,19,NULL,'2017-01-29 17:49:33','PR1302-0007',1,NULL,NULL,'','2013-02-17 15:41:15','2016-02-17','2016-03-04 12:00:00','2017-01-29 21:49:33',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,400.00000000,0.00000000,400.00000000,NULL),(8,19,NULL,'2016-07-30 15:56:39','PR1302-0008',1,NULL,NULL,'','2013-02-17 15:43:39','2016-02-17','2016-03-04 12:00:00',NULL,NULL,1,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,0,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(10,7,NULL,'2016-07-30 15:57:25','(PROV10)',1,NULL,NULL,'','2015-11-15 23:37:08','2015-11-15','2016-11-30 12:00:00',NULL,NULL,12,NULL,NULL,NULL,0,0,NULL,NULL,0,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,NULL,NULL,1,3,'','','azur',NULL,NULL,0,NULL,0,NULL,NULL,0,'',NULL,NULL,1.00000000,0.00000000,0.00000000,0.00000000,NULL),(11,1,NULL,'2017-02-16 00:44:58','PR1702-0009',1,NULL,NULL,'','2017-02-16 01:44:58','2015-05-13','2015-05-28 12:00:00','2017-02-16 01:44:58',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,60.00000000,0.00000000,0.00000000,0.00000000,60.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,60.00000000,0.00000000,60.00000000,NULL),(12,7,NULL,'2017-02-16 00:45:44','PR1702-0010',1,NULL,NULL,'','2017-02-16 01:45:44','2015-06-24','2015-07-09 12:00:00','2017-02-16 01:45:44',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,832.00000000,0.00000000,0.00000000,0.00000000,832.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,832.00000000,0.00000000,832.00000000,NULL),(13,26,NULL,'2017-02-16 00:46:15','PR1702-0011',1,NULL,NULL,'','2017-02-16 01:46:15','2015-04-03','2015-04-18 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,242.00000000,0.00000000,0.00000000,0.00000000,242.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,242.00000000,0.00000000,242.00000000,NULL),(14,3,NULL,'2017-02-16 00:46:15','PR1702-0012',1,NULL,NULL,'','2017-02-16 01:46:15','2016-06-19','2016-07-04 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,245.00000000,0.00000000,0.00000000,0.00000000,245.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,245.00000000,0.00000000,245.00000000,NULL),(15,26,NULL,'2017-02-16 00:46:15','PR1702-0013',1,NULL,NULL,'','2017-02-16 01:46:15','2016-05-01','2016-05-16 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,940.00000000,0.00000000,0.00000000,0.00000000,940.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,940.00000000,0.00000000,940.00000000,NULL),(16,1,NULL,'2017-02-16 00:46:15','PR1702-0014',1,NULL,NULL,'','2017-02-16 01:46:15','2015-05-13','2015-05-28 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,125.00000000,0.00000000,0.00000000,0.00000000,125.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,125.00000000,0.00000000,125.00000000,NULL),(17,1,NULL,'2017-02-16 00:46:15','PR1702-0015',1,NULL,NULL,'','2017-02-16 01:46:15','2016-07-23','2016-08-07 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,163.00000000,0.00000000,0.00000000,0.00000000,163.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,163.00000000,0.00000000,163.00000000,NULL),(18,26,NULL,'2017-02-16 00:46:15','PR1702-0016',1,NULL,NULL,'','2017-02-16 01:46:15','2015-02-13','2015-02-28 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,900.00000000,0.00000000,0.00000000,0.00000000,900.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,900.00000000,0.00000000,900.00000000,NULL),(19,12,NULL,'2017-02-16 00:46:15','PR1702-0017',1,NULL,NULL,'','2017-02-16 01:46:15','2015-03-30','2015-04-14 12:00:00','2017-02-16 01:46:15',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,200.00000000,0.00000000,200.00000000,NULL),(20,26,NULL,'2017-02-16 00:46:15','PR1702-0018',1,NULL,NULL,'','2017-02-16 01:46:15','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,830.00000000,0.00000000,0.00000000,0.00000000,830.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,830.00000000,0.00000000,830.00000000,NULL),(21,1,NULL,'2017-02-16 00:47:09','PR1702-0019',1,NULL,NULL,'','2017-02-16 01:46:15','2015-09-23','2018-10-08 12:00:00','2017-02-16 04:47:09',NULL,1,NULL,12,NULL,1,0,NULL,NULL,0,89.00000000,0.00000000,0.00000000,0.00000000,89.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,89.00000000,0.00000000,89.00000000,NULL),(22,26,NULL,'2017-02-16 00:47:13','PR1702-0020',1,NULL,NULL,'','2017-02-16 01:46:15','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:15',NULL,1,NULL,1,NULL,0,0,NULL,NULL,0,70.00000000,0.00000000,0.00000000,0.00000000,70.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,70.00000000,0.00000000,70.00000000,NULL),(23,12,NULL,'2017-02-17 12:07:18','PR1702-0021',1,NULL,NULL,'','2017-02-16 01:46:17','2016-04-03','2016-04-18 12:00:00','2017-02-17 16:07:18',NULL,2,NULL,12,NULL,1,0,NULL,NULL,0,715.00000000,0.00000000,0.00000000,0.00000000,715.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,715.00000000,0.00000000,715.00000000,NULL),(24,7,NULL,'2017-02-16 00:46:17','PR1702-0022',1,NULL,NULL,'','2017-02-16 01:46:17','2016-11-13','2016-11-28 12:00:00','2017-02-16 01:46:17',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,250.00000000,0.00000000,0.00000000,0.00000000,250.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,250.00000000,0.00000000,250.00000000,NULL),(25,3,NULL,'2017-02-16 00:47:29','PR1702-0023',1,NULL,NULL,'','2017-02-16 01:46:17','2016-07-09','2016-07-24 12:00:00','2017-02-16 01:46:17','2017-02-16 04:47:29',1,NULL,1,12,4,0,NULL,NULL,0,1018.00000000,0.00000000,0.00000000,0.00000000,1018.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1018.00000000,0.00000000,1018.00000000,NULL),(26,1,NULL,'2017-02-16 00:46:18','PR1702-0024',1,NULL,NULL,'','2017-02-16 01:46:17','2016-04-03','2016-04-18 12:00:00','2017-02-16 01:46:18',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,710.00000000,0.00000000,0.00000000,0.00000000,710.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,710.00000000,0.00000000,710.00000000,NULL),(27,6,NULL,'2017-02-16 00:46:18','PR1702-0025',1,NULL,NULL,'','2017-02-16 01:46:18','2016-11-12','2016-11-27 12:00:00','2017-02-16 01:46:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,300.00000000,0.00000000,300.00000000,NULL),(28,19,NULL,'2017-02-16 00:46:31','PR1702-0026',1,NULL,NULL,'','2017-02-16 01:46:18','2015-07-30','2015-08-14 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:31',2,NULL,2,12,2,0,NULL,NULL,0,440.00000000,0.00000000,0.00000000,0.00000000,440.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,440.00000000,0.00000000,440.00000000,NULL),(29,1,NULL,'2017-02-16 00:46:37','PR1702-0027',1,NULL,NULL,'','2017-02-16 01:46:18','2015-07-23','2015-08-07 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:37',2,NULL,2,12,2,0,NULL,NULL,0,1000.00000000,0.00000000,0.00000000,0.00000000,1000.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1000.00000000,0.00000000,1000.00000000,NULL),(30,1,NULL,'2017-02-16 00:46:42','PR1702-0028',1,NULL,NULL,'','2017-02-16 01:46:18','2016-05-01','2016-05-16 12:00:00','2017-02-16 01:46:18','2017-02-16 04:46:42',2,NULL,2,12,3,0,NULL,NULL,0,1200.00000000,0.00000000,0.00000000,0.00000000,1200.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,1200.00000000,0.00000000,1200.00000000,NULL),(31,11,NULL,'2017-02-16 00:46:18','PR1702-0029',1,NULL,NULL,'','2017-02-16 01:46:18','2016-06-24','2016-07-09 12:00:00','2017-02-16 01:46:18',NULL,1,NULL,1,NULL,1,0,NULL,NULL,0,720.00000000,0.00000000,0.00000000,0.00000000,720.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,720.00000000,0.00000000,720.00000000,NULL),(32,19,NULL,'2017-02-16 00:46:18','PR1702-0030',1,NULL,NULL,'','2017-02-16 01:46:18','2016-11-12','2016-11-27 12:00:00','2017-02-16 01:46:18',NULL,2,NULL,2,NULL,1,0,NULL,NULL,0,608.00000000,0.00000000,0.00000000,0.00000000,608.00000000,NULL,NULL,3,3,'','','',NULL,NULL,0,NULL,0,NULL,NULL,0,'',0,'EUR',1.00000000,608.00000000,0.00000000,608.00000000,NULL); +/*!40000 ALTER TABLE `llx_propal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal_extrafields` +-- + +DROP TABLE IF EXISTS `llx_propal_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_propal_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal_extrafields` +-- + +LOCK TABLES `llx_propal_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_propal_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propal_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propal_merge_pdf_product` +-- + +DROP TABLE IF EXISTS `llx_propal_merge_pdf_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propal_merge_pdf_product` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_product` int(11) NOT NULL, + `file_name` varchar(200) COLLATE utf8_unicode_ci NOT NULL, + `lang` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_mod` int(11) NOT NULL, + `datec` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propal_merge_pdf_product` +-- + +LOCK TABLES `llx_propal_merge_pdf_product` WRITE; +/*!40000 ALTER TABLE `llx_propal_merge_pdf_product` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propal_merge_pdf_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propaldet` +-- + +DROP TABLE IF EXISTS `llx_propaldet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propaldet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_propal` int(11) DEFAULT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_remise_except` int(11) DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `price` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `date_start` datetime DEFAULT NULL, + `date_end` datetime DEFAULT NULL, + `info_bits` int(11) DEFAULT '0', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `special_code` int(10) unsigned DEFAULT '0', + `rang` int(11) DEFAULT '0', + `fk_unit` int(11) DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + PRIMARY KEY (`rowid`), + KEY `idx_propaldet_fk_propal` (`fk_propal`), + KEY `idx_propaldet_fk_product` (`fk_product`), + KEY `fk_propaldet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_propaldet_fk_propal` FOREIGN KEY (`fk_propal`) REFERENCES `llx_propal` (`rowid`), + CONSTRAINT `fk_propaldet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=109 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propaldet` +-- + +LOCK TABLES `llx_propaldet` WRITE; +/*!40000 ALTER TABLE `llx_propaldet` DISABLE KEYS */; +INSERT INTO `llx_propaldet` VALUES (1,1,NULL,NULL,NULL,'Une machine à café',NULL,12.500,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,1.25000000,0.00000000,0.00000000,11.25000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(2,2,NULL,NULL,NULL,'Product 1',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(3,2,NULL,2,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(4,3,NULL,NULL,NULL,'A new marvelous product',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(5,1,NULL,5,NULL,'cccc',NULL,19.600,'',0.000,'',0.000,'',1,0,0,NULL,10.00000000,10.00000000,1.96000000,0.00000000,0.00000000,11.96000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(11,1,NULL,4,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(12,1,NULL,4,NULL,'',NULL,0.000,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(13,1,NULL,4,NULL,'',NULL,12.500,'',0.000,'',0.000,'',1,0,0,NULL,5.00000000,5.00000000,0.63000000,0.00000000,0.00000000,5.63000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(24,5,NULL,NULL,NULL,'On demand Apple pie',NULL,20.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,2.00000000,0.00000000,0.00000000,12.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000),(25,7,NULL,NULL,NULL,'Help to setup Magic Food computer',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,400.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,1,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'',400.00000000,400.00000000,0.00000000,400.00000000),(26,11,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(27,11,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(28,12,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,5.00000000,0.00000000,5.00000000),(29,12,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(30,12,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(31,12,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(32,12,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(33,13,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(34,13,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(35,13,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,9.00000000,27.00000000,0.00000000,0.00000000,0.00000000,27.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,27.00000000,0.00000000,27.00000000),(36,13,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(37,14,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(38,14,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(39,15,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(40,15,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(41,15,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(42,15,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(43,16,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(44,16,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,10.00000000,40.00000000,0.00000000,0.00000000,0.00000000,40.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,40.00000000,0.00000000,40.00000000),(45,16,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(46,17,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(47,17,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(48,17,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(49,17,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(50,17,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(51,18,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(52,18,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(53,18,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(54,19,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(55,19,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(56,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(57,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(58,19,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(59,20,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(60,20,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(61,20,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(62,20,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(63,21,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(64,21,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,9.00000000,9.00000000,0.00000000,0.00000000,0.00000000,9.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,9.00000000,0.00000000,9.00000000),(65,21,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(66,21,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(67,22,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,10.00000000,50.00000000,0.00000000,0.00000000,0.00000000,50.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',10.00000000,50.00000000,0.00000000,50.00000000),(68,22,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,10.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,20.00000000,0.00000000,20.00000000),(69,23,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(70,23,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,5.00000000,15.00000000,0.00000000,0.00000000,0.00000000,15.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',5.00000000,15.00000000,0.00000000,15.00000000),(71,23,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(72,23,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(73,24,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,5.00000000,5.00000000,0.00000000,0.00000000,0.00000000,5.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,5.00000000,0.00000000,5.00000000),(74,24,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(75,24,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(76,24,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(77,25,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(78,25,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(79,25,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(80,25,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(81,25,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000),(82,26,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(83,26,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,10.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,10.00000000,0.00000000,10.00000000),(84,26,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(85,26,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(86,26,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(87,27,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(88,27,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(89,28,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,5.00000000,10.00000000,0.00000000,0.00000000,0.00000000,10.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,10.00000000,0.00000000,10.00000000),(90,28,NULL,5,NULL,'DoliDroid is the Android front-end client for Dolibarr ERP & CRM web software.
\r\nThis application is not a standalone program. It is a front end to use a online hosted Dolibarr ERP & CRM software (an Open-source web software to manage your business).
\r\n

The advantage of DoliDroid are :
\r\n- DoliDroid is not a duplicate code of Dolibarr, but a front-end of a Dolibarr web installation, so all your online existing features are supported by this application. This is also true for external modules features.
\r\n- Upgrading Dolibarr will not break DoliDroid.
\r\n- DoliDroid use embedded image resources to reduce bandwidth usage.
\r\n- DoliDroid use internal cache for pages that should not change (like menu page)
\r\n- Connections parameters are saved. No need to enter them each time you use DoliDroid.
\r\n- Integration with your phone or other applications (Clicking on PDF open PDF reader, clicking onto email or phone launch your email application or launch Android dialer, ...)

\r\n\r\n

WARNING ! 

\r\n\r\n

This application need Android 4.0+ and a hosted Dolibarr ERP & CRM version 3.5 or newer accessible by internet
\r\n(For example, when hosted on any SaaS solution like DoliCloud - http://www.dolicloud.com).

',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,10.00000000,30.00000000,0.00000000,0.00000000,0.00000000,30.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',10.00000000,30.00000000,0.00000000,30.00000000),(91,28,NULL,2,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(92,28,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(93,29,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(94,29,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,100.00000000,500.00000000,0.00000000,0.00000000,0.00000000,500.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,500.00000000,0.00000000,500.00000000),(95,29,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(96,30,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(97,30,NULL,1,NULL,'A beatifull pink dress',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(98,30,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,100.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,200.00000000,0.00000000,200.00000000),(99,30,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(100,31,NULL,4,NULL,'Nice Bio Apple Pie.
\r\n ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,5.00000000,20.00000000,0.00000000,0.00000000,0.00000000,20.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',5.00000000,20.00000000,0.00000000,20.00000000),(101,31,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(102,31,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',3,0,0,NULL,100.00000000,300.00000000,0.00000000,0.00000000,0.00000000,300.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',100.00000000,300.00000000,0.00000000,300.00000000),(103,31,NULL,3,NULL,'',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,NULL,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',0.00000000,0.00000000,0.00000000,0.00000000),(104,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,1,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(105,32,NULL,10,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,100.00000000,100.00000000,0.00000000,0.00000000,0.00000000,100.00000000,0,NULL,NULL,0,NULL,0.00000000,0,2,NULL,NULL,'EUR',100.00000000,100.00000000,0.00000000,100.00000000),(106,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',5,0,0,NULL,9.00000000,45.00000000,0.00000000,0.00000000,0.00000000,45.00000000,0,NULL,NULL,0,NULL,0.00000000,0,3,NULL,NULL,'EUR',9.00000000,45.00000000,0.00000000,45.00000000),(107,32,NULL,13,NULL,'A powerfull computer XP4523 ',NULL,0.000,'',0.000,'0',0.000,'0',4,0,0,NULL,100.00000000,400.00000000,0.00000000,0.00000000,0.00000000,400.00000000,0,NULL,NULL,0,NULL,0.00000000,0,4,NULL,NULL,'EUR',100.00000000,400.00000000,0.00000000,400.00000000),(108,32,NULL,12,NULL,'Cloud hosting of Dolibarr ERP and CRM software',NULL,0.000,'',0.000,'0',0.000,'0',2,0,0,NULL,9.00000000,18.00000000,0.00000000,0.00000000,0.00000000,18.00000000,0,NULL,NULL,0,NULL,0.00000000,0,5,NULL,NULL,'EUR',9.00000000,18.00000000,0.00000000,18.00000000); +/*!40000 ALTER TABLE `llx_propaldet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_propaldet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_propaldet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_propaldet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_propaldet_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_propaldet_extrafields` +-- + +LOCK TABLES `llx_propaldet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_propaldet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_propaldet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_resource` +-- + +DROP TABLE IF EXISTS `llx_resource`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_resource` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `asset_number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_code_type_resource` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` text COLLATE utf8_unicode_ci, + `note_private` text COLLATE utf8_unicode_ci, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_country` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_resource_ref` (`ref`,`entity`), + KEY `fk_code_type_resource_idx` (`fk_code_type_resource`), + KEY `idx_resource_fk_country` (`fk_country`), + CONSTRAINT `fk_resource_fk_country` FOREIGN KEY (`fk_country`) REFERENCES `llx_c_country` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_resource` +-- + +LOCK TABLES `llx_resource` WRITE; +/*!40000 ALTER TABLE `llx_resource` DISABLE KEYS */; +INSERT INTO `llx_resource` VALUES (1,1,'Car Kangoo 1',NULL,'Car number 1 - Num XDF-45-GH','RES_CARS',NULL,NULL,'2017-02-20 16:44:12',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(2,1,'Car Kangoo 2',NULL,'Car number 2 - Num GHY-78-JJ','RES_CARS',NULL,NULL,'2017-02-20 16:44:01',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(3,1,'Meeting room - 14p',NULL,'Meeting room
\r\n14 places','RES_ROOMS',NULL,NULL,'2017-02-20 16:44:38',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL),(4,1,'Meeting room - 8p',NULL,'Meeting room
\r\n8 places','RES_ROOMS',NULL,NULL,'2017-02-20 16:45:00',NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_resource` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_resource_extrafields` +-- + +DROP TABLE IF EXISTS `llx_resource_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_resource_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_resource_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_resource_extrafields` +-- + +LOCK TABLES `llx_resource_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_resource_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_resource_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_rights_def` +-- + +DROP TABLE IF EXISTS `llx_rights_def`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_rights_def` ( + `id` int(11) NOT NULL DEFAULT '0', + `libelle` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `module` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `perms` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `subperms` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `type` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL, + `bydefault` tinyint(4) DEFAULT '0', + PRIMARY KEY (`id`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_rights_def` +-- + +LOCK TABLES `llx_rights_def` WRITE; +/*!40000 ALTER TABLE `llx_rights_def` DISABLE KEYS */; +INSERT INTO `llx_rights_def` VALUES (11,'Read invoices','facture',1,'lire',NULL,'a',0),(11,'Lire les factures','facture',2,'lire',NULL,'a',1),(12,'Create and update invoices','facture',1,'creer',NULL,'a',0),(12,'Creer/modifier les factures','facture',2,'creer',NULL,'a',0),(13,'Devalidate invoices','facture',1,'invoice_advance','unvalidate','a',0),(13,'Dévalider les factures','facture',2,'invoice_advance','unvalidate','a',0),(14,'Validate invoices','facture',1,'invoice_advance','validate','a',0),(14,'Valider les factures','facture',2,'valider',NULL,'a',0),(15,'Send invoices by email','facture',1,'invoice_advance','send','a',0),(15,'Envoyer les factures par mail','facture',2,'invoice_advance','send','a',0),(16,'Issue payments on invoices','facture',1,'paiement',NULL,'a',0),(16,'Emettre des paiements sur les factures','facture',2,'paiement',NULL,'a',0),(19,'Delete invoices','facture',1,'supprimer',NULL,'a',0),(19,'Supprimer les factures','facture',2,'supprimer',NULL,'a',0),(21,'Lire les propositions commerciales','propale',1,'lire',NULL,'r',1),(21,'Lire les propositions commerciales','propale',2,'lire',NULL,'r',1),(22,'Creer/modifier les propositions commerciales','propale',1,'creer',NULL,'w',0),(22,'Creer/modifier les propositions commerciales','propale',2,'creer',NULL,'w',0),(24,'Valider les propositions commerciales','propale',1,'propal_advance','validate','d',0),(24,'Valider les propositions commerciales','propale',2,'valider',NULL,'d',0),(25,'Envoyer les propositions commerciales aux clients','propale',1,'propal_advance','send','d',0),(25,'Envoyer les propositions commerciales aux clients','propale',2,'propal_advance','send','d',0),(26,'Cloturer les propositions commerciales','propale',1,'cloturer',NULL,'d',0),(26,'Cloturer les propositions commerciales','propale',2,'cloturer',NULL,'d',0),(27,'Supprimer les propositions commerciales','propale',1,'supprimer',NULL,'d',0),(27,'Supprimer les propositions commerciales','propale',2,'supprimer',NULL,'d',0),(28,'Exporter les propositions commerciales et attributs','propale',1,'export',NULL,'r',0),(28,'Exporter les propositions commerciales et attributs','propale',2,'export',NULL,'r',0),(31,'Lire les produits','produit',1,'lire',NULL,'r',1),(31,'Lire les produits','produit',2,'lire',NULL,'r',1),(32,'Creer/modifier les produits','produit',1,'creer',NULL,'w',0),(32,'Creer/modifier les produits','produit',2,'creer',NULL,'w',0),(34,'Supprimer les produits','produit',1,'supprimer',NULL,'d',0),(34,'Supprimer les produits','produit',2,'supprimer',NULL,'d',0),(38,'Exporter les produits','produit',1,'export',NULL,'r',0),(38,'Exporter les produits','produit',2,'export',NULL,'r',0),(41,'Read projects and tasks (shared projects or projects I am contact for). Can also enter time consumed on assigned tasks (timesheet)','projet',1,'lire',NULL,'r',1),(42,'Create/modify projects and tasks (shared projects or projects I am contact for)','projet',1,'creer',NULL,'w',0),(44,'Delete project and tasks (shared projects or projects I am contact for)','projet',1,'supprimer',NULL,'d',0),(45,'Export projects','projet',1,'export',NULL,'d',0),(61,'Lire les fiches d\'intervention','ficheinter',1,'lire',NULL,'r',1),(62,'Creer/modifier les fiches d\'intervention','ficheinter',1,'creer',NULL,'w',0),(64,'Supprimer les fiches d\'intervention','ficheinter',1,'supprimer',NULL,'d',0),(67,'Exporter les fiches interventions','ficheinter',1,'export',NULL,'r',0),(68,'Envoyer les fiches d\'intervention par courriel','ficheinter',1,'ficheinter_advance','send','r',0),(69,'Valider les fiches d\'intervention ','ficheinter',1,'ficheinter_advance','validate','a',0),(70,'Dévalider les fiches d\'intervention','ficheinter',1,'ficheinter_advance','unvalidate','a',0),(71,'Read members\' card','adherent',1,'lire',NULL,'r',0),(72,'Create/modify members (need also user module permissions if member linked to a user)','adherent',1,'creer',NULL,'w',0),(74,'Remove members','adherent',1,'supprimer',NULL,'d',0),(75,'Setup types of membership','adherent',1,'configurer',NULL,'w',0),(76,'Export members','adherent',1,'export',NULL,'r',0),(78,'Read subscriptions','adherent',1,'cotisation','lire','r',0),(79,'Create/modify/remove subscriptions','adherent',1,'cotisation','creer','w',0),(81,'Lire les commandes clients','commande',1,'lire',NULL,'r',0),(82,'Creer/modifier les commandes clients','commande',1,'creer',NULL,'w',0),(84,'Valider les commandes clients','commande',1,'order_advance','validate','d',0),(86,'Envoyer les commandes clients','commande',1,'order_advance','send','d',0),(87,'Cloturer les commandes clients','commande',1,'cloturer',NULL,'d',0),(88,'Annuler les commandes clients','commande',1,'order_advance','annuler','d',0),(89,'Supprimer les commandes clients','commande',1,'supprimer',NULL,'d',0),(91,'Lire les charges','tax',1,'charges','lire','r',0),(91,'Lire les charges','tax',2,'charges','lire','r',1),(92,'Creer/modifier les charges','tax',1,'charges','creer','w',0),(92,'Creer/modifier les charges','tax',2,'charges','creer','w',0),(93,'Supprimer les charges','tax',1,'charges','supprimer','d',0),(93,'Supprimer les charges','tax',2,'charges','supprimer','d',0),(94,'Exporter les charges','tax',1,'charges','export','r',0),(94,'Exporter les charges','tax',2,'charges','export','r',0),(101,'Lire les expeditions','expedition',1,'lire',NULL,'r',1),(102,'Creer modifier les expeditions','expedition',1,'creer',NULL,'w',0),(104,'Valider les expeditions','expedition',1,'shipping_advance','validate','d',0),(105,'Envoyer les expeditions aux clients','expedition',1,'shipping_advance','send','d',0),(106,'Exporter les expeditions','expedition',1,'shipment','export','r',0),(109,'Supprimer les expeditions','expedition',1,'supprimer',NULL,'d',0),(111,'Lire les comptes bancaires','banque',1,'lire',NULL,'r',0),(111,'Lire les comptes bancaires','banque',2,'lire',NULL,'r',1),(112,'Creer/modifier montant/supprimer ecriture bancaire','banque',1,'modifier',NULL,'w',0),(112,'Creer/modifier montant/supprimer ecriture bancaire','banque',2,'modifier',NULL,'w',0),(113,'Configurer les comptes bancaires (creer, gerer categories)','banque',1,'configurer',NULL,'a',0),(113,'Configurer les comptes bancaires (creer, gerer categories)','banque',2,'configurer',NULL,'a',0),(114,'Rapprocher les ecritures bancaires','banque',1,'consolidate',NULL,'w',0),(114,'Rapprocher les ecritures bancaires','banque',2,'consolidate',NULL,'w',0),(115,'Exporter transactions et releves','banque',1,'export',NULL,'r',0),(115,'Exporter transactions et releves','banque',2,'export',NULL,'r',0),(116,'Virements entre comptes','banque',1,'transfer',NULL,'w',0),(116,'Virements entre comptes','banque',2,'transfer',NULL,'w',0),(117,'Gerer les envois de cheques','banque',1,'cheque',NULL,'w',0),(117,'Gerer les envois de cheques','banque',2,'cheque',NULL,'w',0),(121,'Read third parties','societe',1,'lire',NULL,'r',0),(121,'Lire les societes','societe',2,'lire',NULL,'r',1),(122,'Create and update third parties','societe',1,'creer',NULL,'w',0),(122,'Creer modifier les societes','societe',2,'creer',NULL,'w',0),(125,'Delete third parties','societe',1,'supprimer',NULL,'d',0),(125,'Supprimer les societes','societe',2,'supprimer',NULL,'d',0),(126,'Export third parties','societe',1,'export',NULL,'r',0),(126,'Exporter les societes','societe',2,'export',NULL,'r',0),(141,'Read all projects and tasks (also private projects I am not contact for)','projet',1,'all','lire','r',0),(142,'Create/modify all projects and tasks (also private projects I am not contact for)','projet',1,'all','creer','w',0),(144,'Delete all projects and tasks (also private projects I am not contact for)','projet',1,'all','supprimer','d',0),(151,'Read withdrawals','prelevement',1,'bons','lire','r',1),(152,'Create/modify a withdrawals','prelevement',1,'bons','creer','w',0),(153,'Send withdrawals to bank','prelevement',1,'bons','send','a',0),(154,'credit/refuse withdrawals','prelevement',1,'bons','credit','a',0),(161,'Lire les contrats','contrat',1,'lire',NULL,'r',1),(162,'Creer / modifier les contrats','contrat',1,'creer',NULL,'w',0),(163,'Activer un service d\'un contrat','contrat',1,'activer',NULL,'w',0),(164,'Desactiver un service d\'un contrat','contrat',1,'desactiver',NULL,'w',0),(165,'Supprimer un contrat','contrat',1,'supprimer',NULL,'d',0),(167,'Export contracts','contrat',1,'export',NULL,'r',0),(221,'Consulter les mailings','mailing',1,'lire',NULL,'r',1),(221,'Consulter les mailings','mailing',2,'lire',NULL,'r',1),(222,'Creer/modifier les mailings (sujet, destinataires...)','mailing',1,'creer',NULL,'w',0),(222,'Creer/modifier les mailings (sujet, destinataires...)','mailing',2,'creer',NULL,'w',0),(223,'Valider les mailings (permet leur envoi)','mailing',1,'valider',NULL,'w',0),(223,'Valider les mailings (permet leur envoi)','mailing',2,'valider',NULL,'w',0),(229,'Supprimer les mailings','mailing',1,'supprimer',NULL,'d',0),(229,'Supprimer les mailings','mailing',2,'supprimer',NULL,'d',0),(237,'View recipients and info','mailing',1,'mailing_advance','recipient','r',0),(237,'View recipients and info','mailing',2,'mailing_advance','recipient','r',0),(238,'Manually send mailings','mailing',1,'mailing_advance','send','w',0),(238,'Manually send mailings','mailing',2,'mailing_advance','send','w',0),(239,'Delete mailings after validation and/or sent','mailing',1,'mailing_advance','delete','d',0),(239,'Delete mailings after validation and/or sent','mailing',2,'mailing_advance','delete','d',0),(241,'Lire les categories','categorie',1,'lire',NULL,'r',1),(242,'Creer/modifier les categories','categorie',1,'creer',NULL,'w',0),(243,'Supprimer les categories','categorie',1,'supprimer',NULL,'d',0),(251,'Consulter les autres utilisateurs','user',1,'user','lire','r',0),(252,'Consulter les permissions des autres utilisateurs','user',1,'user_advance','readperms','r',0),(253,'Creer/modifier utilisateurs internes et externes','user',1,'user','creer','w',0),(254,'Creer/modifier utilisateurs externes seulement','user',1,'user_advance','write','w',0),(255,'Modifier le mot de passe des autres utilisateurs','user',1,'user','password','w',0),(256,'Supprimer ou desactiver les autres utilisateurs','user',1,'user','supprimer','d',0),(262,'Read all third parties by internal users (otherwise only if commercial contact). Not effective for external users (limited to themselves).','societe',1,'client','voir','r',0),(262,'Consulter tous les tiers par utilisateurs internes (sinon uniquement si contact commercial). Non effectif pour utilisateurs externes (tjs limités à eux-meme).','societe',2,'client','voir','r',1),(281,'Read contacts','societe',1,'contact','lire','r',0),(281,'Lire les contacts','societe',2,'contact','lire','r',1),(282,'Create and update contact','societe',1,'contact','creer','w',0),(282,'Creer modifier les contacts','societe',2,'contact','creer','w',0),(283,'Delete contacts','societe',1,'contact','supprimer','d',0),(283,'Supprimer les contacts','societe',2,'contact','supprimer','d',0),(286,'Export contacts','societe',1,'contact','export','d',0),(286,'Exporter les contacts','societe',2,'contact','export','d',0),(300,'Read barcodes','barcode',1,'lire_advance',NULL,'r',1),(301,'Create/modify barcodes','barcode',1,'creer_advance',NULL,'w',0),(331,'Lire les bookmarks','bookmark',1,'lire',NULL,'r',0),(332,'Creer/modifier les bookmarks','bookmark',1,'creer',NULL,'r',0),(333,'Supprimer les bookmarks','bookmark',1,'supprimer',NULL,'r',0),(341,'Consulter ses propres permissions','user',1,'self_advance','readperms','r',0),(342,'Creer/modifier ses propres infos utilisateur','user',1,'self','creer','w',0),(343,'Modifier son propre mot de passe','user',1,'self','password','w',0),(344,'Modifier ses propres permissions','user',1,'self_advance','writeperms','w',0),(351,'Consulter les groupes','user',1,'group_advance','read','r',0),(352,'Consulter les permissions des groupes','user',1,'group_advance','readperms','r',0),(353,'Creer/modifier les groupes et leurs permissions','user',1,'group_advance','write','w',0),(354,'Supprimer ou desactiver les groupes','user',1,'group_advance','delete','d',0),(358,'Exporter les utilisateurs','user',1,'user','export','r',0),(511,'Read payments of employee salaries','salaries',1,'read',NULL,'r',0),(512,'Create/modify payments of empoyee salaries','salaries',1,'write',NULL,'w',0),(514,'Delete payments of employee salary','salaries',1,'delete',NULL,'d',0),(517,'Export payments of employee salaries','salaries',1,'export',NULL,'r',0),(520,'Read loans','loan',1,'read',NULL,'r',0),(522,'Create/modify loans','loan',1,'write',NULL,'w',0),(524,'Delete loans','loan',1,'delete',NULL,'d',0),(525,'Access loan calculator','loan',1,'calc',NULL,'r',0),(527,'Export loans','loan',1,'export',NULL,'r',0),(531,'Read services','service',1,'lire',NULL,'r',0),(532,'Create/modify services','service',1,'creer',NULL,'w',0),(534,'Delete les services','service',1,'supprimer',NULL,'d',0),(538,'Export services','service',1,'export',NULL,'r',0),(701,'Lire les dons','don',1,'lire',NULL,'r',1),(701,'Lire les dons','don',2,'lire',NULL,'r',1),(702,'Creer/modifier les dons','don',1,'creer',NULL,'w',0),(702,'Creer/modifier les dons','don',2,'creer',NULL,'w',0),(703,'Supprimer les dons','don',1,'supprimer',NULL,'d',0),(703,'Supprimer les dons','don',2,'supprimer',NULL,'d',0),(771,'Read expense reports (yours and your subordinates)','expensereport',1,'lire',NULL,'r',1),(772,'Create/modify expense reports','expensereport',1,'creer',NULL,'w',0),(773,'Delete expense reports','expensereport',1,'supprimer',NULL,'d',0),(774,'Read all expense reports','expensereport',1,'readall',NULL,'r',1),(775,'Approve expense reports','expensereport',1,'approve',NULL,'w',0),(776,'Pay expense reports','expensereport',1,'to_paid',NULL,'w',0),(777,'Read expense reports of everybody','expensereport',1,'readall',NULL,'r',1),(778,'Create expense reports for everybody','expensereport',1,'writeall_advance',NULL,'w',0),(779,'Export expense reports','expensereport',1,'export',NULL,'r',0),(1001,'Lire les stocks','stock',1,'lire',NULL,'r',1),(1002,'Creer/Modifier les stocks','stock',1,'creer',NULL,'w',0),(1003,'Supprimer les stocks','stock',1,'supprimer',NULL,'d',0),(1004,'Lire mouvements de stocks','stock',1,'mouvement','lire','r',1),(1005,'Creer/modifier mouvements de stocks','stock',1,'mouvement','creer','w',0),(1101,'Lire les bons de livraison','expedition',1,'livraison','lire','r',1),(1102,'Creer modifier les bons de livraison','expedition',1,'livraison','creer','w',0),(1104,'Valider les bons de livraison','expedition',1,'livraison_advance','validate','d',0),(1109,'Supprimer les bons de livraison','expedition',1,'livraison','supprimer','d',0),(1121,'Read supplier proposals','supplier_proposal',1,'lire',NULL,'w',1),(1122,'Create/modify supplier proposals','supplier_proposal',1,'creer',NULL,'w',0),(1123,'Validate supplier proposals','supplier_proposal',1,'validate_advance',NULL,'w',0),(1124,'Envoyer les demandes fournisseurs','supplier_proposal',1,'send_advance',NULL,'w',0),(1125,'Delete supplier proposals','supplier_proposal',1,'supprimer',NULL,'w',0),(1126,'Close supplier price requests','supplier_proposal',1,'cloturer',NULL,'w',0),(1181,'Consulter les fournisseurs','fournisseur',1,'lire',NULL,'r',0),(1182,'Consulter les commandes fournisseur','fournisseur',1,'commande','lire','r',0),(1183,'Creer une commande fournisseur','fournisseur',1,'commande','creer','w',0),(1184,'Valider une commande fournisseur','fournisseur',1,'supplier_order_advance','validate','w',0),(1185,'Approuver une commande fournisseur','fournisseur',1,'commande','approuver','w',0),(1186,'Commander une commande fournisseur','fournisseur',1,'commande','commander','w',0),(1187,'Receptionner une commande fournisseur','fournisseur',1,'commande','receptionner','d',0),(1188,'Supprimer une commande fournisseur','fournisseur',1,'commande','supprimer','d',0),(1189,'Check/Uncheck a supplier order reception','fournisseur',1,'commande_advance','check','w',0),(1191,'Exporter les commande fournisseurs, attributs','fournisseur',1,'commande','export','r',0),(1201,'Lire les exports','export',1,'lire',NULL,'r',1),(1202,'Creer/modifier un export','export',1,'creer',NULL,'w',0),(1231,'Consulter les factures fournisseur','fournisseur',1,'facture','lire','r',0),(1232,'Creer une facture fournisseur','fournisseur',1,'facture','creer','w',0),(1233,'Valider une facture fournisseur','fournisseur',1,'supplier_invoice_advance','validate','w',0),(1234,'Supprimer une facture fournisseur','fournisseur',1,'facture','supprimer','d',0),(1235,'Envoyer les factures par mail','fournisseur',1,'supplier_invoice_advance','send','a',0),(1236,'Exporter les factures fournisseurs, attributs et reglements','fournisseur',1,'facture','export','r',0),(1251,'Run mass imports of external data (data load)','import',1,'run',NULL,'r',0),(1321,'Export customer invoices, attributes and payments','facture',1,'facture','export','r',0),(1321,'Exporter les factures clients, attributs et reglements','facture',2,'facture','export','r',0),(1322,'Re-open a fully paid invoice','facture',1,'invoice_advance','reopen','r',0),(1421,'Exporter les commandes clients et attributs','commande',1,'commande','export','r',0),(2401,'Read actions/tasks linked to his account','agenda',1,'myactions','read','r',0),(2401,'Read actions/tasks linked to his account','agenda',2,'myactions','read','r',1),(2402,'Create/modify actions/tasks linked to his account','agenda',1,'myactions','create','w',0),(2402,'Create/modify actions/tasks linked to his account','agenda',2,'myactions','create','w',0),(2403,'Delete actions/tasks linked to his account','agenda',1,'myactions','delete','w',0),(2403,'Delete actions/tasks linked to his account','agenda',2,'myactions','delete','w',0),(2411,'Read actions/tasks of others','agenda',1,'allactions','read','r',0),(2411,'Read actions/tasks of others','agenda',2,'allactions','read','r',0),(2412,'Create/modify actions/tasks of others','agenda',1,'allactions','create','w',0),(2412,'Create/modify actions/tasks of others','agenda',2,'allactions','create','w',0),(2413,'Delete actions/tasks of others','agenda',1,'allactions','delete','w',0),(2413,'Delete actions/tasks of others','agenda',2,'allactions','delete','w',0),(2414,'Export actions/tasks of others','agenda',1,'export',NULL,'w',0),(2501,'Consulter/Télécharger les documents','ecm',1,'read',NULL,'r',0),(2503,'Soumettre ou supprimer des documents','ecm',1,'upload',NULL,'w',0),(2515,'Administrer les rubriques de documents','ecm',1,'setup',NULL,'w',0),(3200,'Read archived events and fingerprints','blockedlog',1,'read',NULL,'w',0),(20001,'Read your own leave requests','holiday',1,'read',NULL,'w',0),(20001,'Créer / Modifier / Lire ses demandes de congés payés','holiday',2,'write',NULL,'w',1),(20002,'Create/modify your own leave requests','holiday',1,'write',NULL,'w',0),(20002,'Lire / Modifier toutes les demandes de congés payés','holiday',2,'lire_tous',NULL,'w',0),(20003,'Delete leave requests','holiday',1,'delete',NULL,'w',0),(20003,'Supprimer des demandes de congés payés','holiday',2,'delete',NULL,'w',0),(20004,'Read leave requests for everybody','holiday',1,'read_all',NULL,'w',0),(20004,'Définir les congés payés des utilisateurs','holiday',2,'define_holiday',NULL,'w',0),(20005,'Create/modify leave requests for everybody','holiday',1,'write_all',NULL,'w',0),(20005,'Voir les logs de modification des congés payés','holiday',2,'view_log',NULL,'w',0),(20006,'Setup leave requests of users (setup and update balance)','holiday',1,'define_holiday',NULL,'w',0),(20006,'Accéder au rapport mensuel des congés payés','holiday',2,'month_report',NULL,'w',0),(20007,'Approve leave requests','holiday',1,'approve',NULL,'w',0),(23001,'Read cron jobs','cron',1,'read',NULL,'w',0),(23002,'Create cron Jobs','cron',1,'create',NULL,'w',0),(23003,'Delete cron Jobs','cron',1,'delete',NULL,'w',0),(23004,'Execute cron Jobs','cron',1,'execute',NULL,'w',0),(50101,'Use point of sale','cashdesk',1,'use',NULL,'a',1),(50401,'Bind products and invoices with accounting accounts','accounting',1,'bind','write','r',0),(50411,'Read operations in General Ledger','accounting',1,'mouvements','lire','r',0),(50412,'Write/Edit operations in General Ledger','accounting',1,'mouvements','creer','w',0),(50420,'Report and export reports (turnover, balance, journals, general ledger)','accounting',1,'comptarapport','lire','r',0),(50430,'Define and close a fiscal year','accounting',1,'fiscalyear',NULL,'r',0),(50440,'Manage chart of accounts, setup of accountancy','accounting',1,'chartofaccount',NULL,'r',0),(55001,'Read surveys','opensurvey',1,'read',NULL,'r',0),(55002,'Create/modify surveys','opensurvey',1,'write',NULL,'w',0),(59001,'Visualiser les marges','margins',1,'liretous',NULL,'r',1),(59002,'Définir les marges','margins',1,'creer',NULL,'w',0),(59003,'Read every user margin','margins',1,'read','all','r',0),(63001,'Read resources','resource',1,'read',NULL,'w',1),(63002,'Create/Modify resources','resource',1,'write',NULL,'w',0),(63003,'Delete resources','resource',1,'delete',NULL,'w',0),(63004,'Link resources','resource',1,'link',NULL,'w',0),(64001,'DirectPrint','printing',1,'read',NULL,'r',0),(101250,'Read surveys','opensurvey',2,'survey','read','r',0),(101251,'Create/modify surveys','opensurvey',2,'survey','write','w',0); +/*!40000 ALTER TABLE `llx_rights_def` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_sellyoursaas_cancellation` +-- + +DROP TABLE IF EXISTS `llx_sellyoursaas_cancellation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_sellyoursaas_cancellation` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(128) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) NOT NULL, + `codelang` varchar(8) DEFAULT NULL, + `url` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_sellyoursaas_cancellation_rowid` (`rowid`), + KEY `idx_sellyoursaas_cancellation_ref` (`ref`), + KEY `idx_sellyoursaas_cancellation_entity` (`entity`), + KEY `idx_sellyoursaas_cancellation_status` (`status`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_sellyoursaas_cancellation` +-- + +LOCK TABLES `llx_sellyoursaas_cancellation` WRITE; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation` DISABLE KEYS */; +INSERT INTO `llx_sellyoursaas_cancellation` VALUES (2,'fff',1,NULL,'2018-06-02 11:00:44','2018-06-02 09:00:44',12,NULL,NULL,1,NULL,'fff'),(3,'gfdg',1,NULL,'2018-06-02 11:01:20','2018-06-02 09:01:20',12,NULL,NULL,1,'gfd','gfd'),(4,'aaa',1,NULL,'2018-06-02 11:02:40','2018-06-02 09:02:40',12,NULL,NULL,1,NULL,'aaa'); +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_sellyoursaas_cancellation_extrafields` +-- + +DROP TABLE IF EXISTS `llx_sellyoursaas_cancellation_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_sellyoursaas_cancellation_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_sellyoursaas_cancellation_extrafields` +-- + +LOCK TABLES `llx_sellyoursaas_cancellation_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_sellyoursaas_cancellation_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe` +-- + +DROP TABLE IF EXISTS `llx_societe`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `statut` tinyint(4) DEFAULT '0', + `parent` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `nom` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_client` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_fournisseur` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_compta` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_compta_fournisseur` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_departement` int(11) DEFAULT '0', + `fk_pays` int(11) DEFAULT '0', + `phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `whatsapp` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `youtube` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `googleplus` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `snapchat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `instagram` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `facebook` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `twitter` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_effectif` int(11) DEFAULT '0', + `fk_typent` int(11) DEFAULT '0', + `fk_forme_juridique` int(11) DEFAULT '0', + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `siren` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `siret` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `ape` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof4` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `tva_intra` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `capital` double(24,8) DEFAULT NULL, + `fk_stcomm` int(11) NOT NULL DEFAULT '0', + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `prefix_comm` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `client` tinyint(4) DEFAULT '0', + `fournisseur` tinyint(4) DEFAULT '0', + `supplier_account` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_prospectlevel` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL, + `customer_bad` tinyint(4) DEFAULT '0', + `customer_rate` double DEFAULT '0', + `supplier_rate` double DEFAULT '0', + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `remise_client` double DEFAULT '0', + `remise_supplier` double DEFAULT '0', + `mode_reglement` tinyint(4) DEFAULT NULL, + `cond_reglement` tinyint(4) DEFAULT NULL, + `mode_reglement_supplier` int(11) DEFAULT NULL, + `outstanding_limit` double(24,8) DEFAULT NULL, + `order_min_amount` double(24,8) DEFAULT NULL, + `supplier_order_min_amount` double(24,8) DEFAULT NULL, + `cond_reglement_supplier` int(11) DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `tva_assuj` tinyint(4) DEFAULT '1', + `localtax1_assuj` tinyint(4) DEFAULT '0', + `localtax1_value` double(6,3) DEFAULT NULL, + `localtax2_assuj` tinyint(4) DEFAULT '0', + `localtax2_value` double(6,3) DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `price_level` int(11) DEFAULT NULL, + `default_lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` tinyint(4) DEFAULT '1', + `logo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof5` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `idprof6` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT '0', + `webservices_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `webservices_key` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `name_alias` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_incoterms` int(11) DEFAULT NULL, + `location_incoterms` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_account` int(11) DEFAULT NULL, + `fk_entrepot` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_prefix_comm` (`prefix_comm`,`entity`), + UNIQUE KEY `uk_societe_code_client` (`code_client`,`entity`), + UNIQUE KEY `uk_societe_barcode` (`barcode`,`fk_barcode_type`,`entity`), + UNIQUE KEY `uk_societe_code_fournisseur` (`code_fournisseur`,`entity`), + KEY `idx_societe_user_creat` (`fk_user_creat`), + KEY `idx_societe_user_modif` (`fk_user_modif`), + KEY `idx_societe_barcode` (`barcode`) +) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe` +-- + +LOCK TABLES `llx_societe` WRITE; +/*!40000 ALTER TABLE `llx_societe` DISABLE KEYS */; +INSERT INTO `llx_societe` VALUES (1,0,NULL,'2016-01-16 15:21:09','2010-07-08 14:21:44','Indian SAS',1,NULL,NULL,'CU1212-0007','SU1212-0005','7050','6050','1 alalah road',NULL,'Delhi',0,117,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,4,NULL,'0','','','','','',5000.00000000,1,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'en_IN',NULL,NULL,1,'indiancompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(2,0,NULL,'2016-07-30 11:45:49','2010-07-08 14:23:48','Teclib',1,NULL,NULL,'CU1108-0001','SU1108-0001','411CU11080001','401SU11080001','',NULL,'Paris',0,1,NULL,NULL,'www.teclib.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,4,3,57,'0','123456789','','ACE14','','',400000.00000000,0,NULL,NULL,NULL,3,1,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,'fr_FR',NULL,NULL,1,'teclibcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,0,'',NULL,0),(3,0,NULL,'2017-02-16 00:47:25','2010-07-08 22:42:12','Spanish Comp',1,NULL,NULL,'SPANISHCOMP','SU1601-0009',NULL,NULL,'1 via mallere',NULL,'Madrid',123,4,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,3,4,408,'0','','','','','',10000.00000000,0,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'es_AR',NULL,NULL,1,'spanishcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(4,0,NULL,'2016-01-22 17:24:53','2010-07-08 22:48:18','Prospector Vaalen',1,NULL,NULL,'CU1303-0014',NULL,NULL,NULL,'',NULL,'Bruxelles',103,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,3,4,201,'0','12345678','','','','',0.00000000,0,NULL,NULL,NULL,3,0,NULL,'PL_LOW',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'valeencompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(5,0,NULL,'2017-02-21 11:01:17','2010-07-08 23:22:57','NoCountry GmBh',1,NULL,NULL,NULL,NULL,NULL,NULL,'',NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,0,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'nocountrycomp.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(6,0,NULL,'2016-01-16 15:35:56','2010-07-09 00:15:09','Swiss Touch',1,NULL,NULL,'CU1601-0018','SU1601-0010',NULL,NULL,'',NULL,'Genevia',0,6,NULL,NULL,NULL,'swisstouch@example.ch',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,2,601,'0','','','','','',56000.00000000,0,NULL,NULL,NULL,3,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'swisstouch.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(7,0,NULL,'2016-01-16 15:38:32','2010-07-09 01:24:26','Generic customer',1,NULL,NULL,'CU1302-0011',NULL,NULL,NULL,'',NULL,NULL,0,7,NULL,NULL,NULL,'ttt@ttt.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,8,NULL,'0','','','','','',0.00000000,0,'Generic customer to use for Point Of Sale module.
',NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'genericcustomer.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(10,0,NULL,'2016-01-16 15:44:20','2010-07-10 15:13:08','NLTechno',1,NULL,NULL,'CU1212-0005','SU1601-0011',NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,'notanemail@nltechno.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,4,54,'0','493861496','49386149600039','6209Z','22-01-2007','FR123456789',10000.00000000,0,NULL,NULL,NULL,1,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,'123456789012',NULL,'fr_FR',NULL,NULL,1,'logo_nltechno_94x100.png','','',0,NULL,NULL,'The OpenSource company',0,NULL,NULL,NULL,NULL,NULL,0),(11,0,NULL,'2017-05-12 09:06:31','2010-07-10 18:35:57','Company Corp 1',1,NULL,NULL,'CU1510-0017',NULL,'7051',NULL,'21 Green Hill street','75500','Los Angeles',0,11,'444123456',NULL,'companycorp1.com','companycorp1@example.com','corp1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,1,NULL,'0','AB1234567','','','','USABS123',10000.00000000,0,NULL,NULL,NULL,3,0,NULL,'PL_LOW',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,'en_US',NULL,NULL,1,'comapnycorp1company.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(12,0,NULL,'2016-01-22 16:41:56','2010-07-11 16:18:08','Dupont Alain',1,NULL,NULL,'CU1601-0019',NULL,NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,'dalain@example.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'pierrecurie.jpg','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(13,0,NULL,'2016-01-22 17:13:16','2010-07-11 17:13:20','Company Corp 2',1,NULL,NULL,NULL,'SU1510-0008',NULL,NULL,'',NULL,NULL,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'companycorp2company.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(17,0,NULL,'2017-02-15 22:55:34','2011-08-01 02:41:26','Book Keeping Company',1,NULL,NULL,'CU1108-0004','SU1108-0004',NULL,'401SU11080004','The French Company',NULL,NULL,0,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,'',0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0.000,NULL,0.000,NULL,NULL,NULL,NULL,NULL,1,'bookkeepercompany.png','','',0,NULL,NULL,'',0,NULL,NULL,1,'EUR',NULL,0),(19,0,NULL,'2017-02-21 11:51:40','2013-01-12 12:23:05','Magic Food Store',1,NULL,NULL,'CU1301-0008',NULL,NULL,NULL,'65 holdywood boulevard','123456','BigTown',0,4,NULL,'0101',NULL,'myemail@domain.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','10/10/2010','','',0.00000000,0,NULL,NULL,NULL,1,0,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,0.000,NULL,0.000,NULL,NULL,'en_US','patient@cabinetmed',NULL,1,'magicfoodstore.png','','',0,NULL,NULL,'',0,NULL,'sepamandate',NULL,NULL,NULL,0),(25,0,NULL,'2016-01-22 17:21:17','2013-03-10 15:47:37','Print Company',1,NULL,NULL,'CU1303-0016','SU1303-0007',NULL,NULL,'21 Gutenberg street','45600','Berlin',0,5,NULL,NULL,NULL,'printcompany@example.com',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,'0','','','','','',0.00000000,0,NULL,NULL,NULL,0,1,NULL,NULL,0,0,0,1,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0.000,NULL,0.000,NULL,NULL,'de_DE',NULL,NULL,1,'printcompany.png','','',0,NULL,NULL,'',0,NULL,NULL,NULL,NULL,NULL,0),(26,0,NULL,'2017-02-21 00:05:05','2017-02-12 23:17:04','Patient SuperIll',1,NULL,NULL,'CU1702-0020',NULL,'411CU17020020',NULL,'',NULL,NULL,0,14,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'','','','','',NULL,0,NULL,NULL,NULL,3,0,NULL,'',0,0,0,12,12,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0.000,NULL,0.000,NULL,NULL,'en_US','patient@cabinetmed',NULL,1,NULL,'','',0,NULL,NULL,'',0,NULL,NULL,0,'',NULL,0); +/*!40000 ALTER TABLE `llx_societe` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_account` +-- + +DROP TABLE IF EXISTS `llx_societe_account`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_account` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `login` varchar(128) NOT NULL, + `pass_encoding` varchar(24) DEFAULT NULL, + `pass_crypted` varchar(128) DEFAULT NULL, + `pass_temp` varchar(128) DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `site` varchar(128) DEFAULT NULL, + `fk_website` int(11) DEFAULT NULL, + `note_private` text, + `date_last_login` datetime DEFAULT NULL, + `date_previous_login` datetime DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `key_account` varchar(128) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_account_login_website_soc` (`entity`,`fk_soc`,`login`,`site`,`fk_website`), + UNIQUE KEY `uk_societe_account_key_account_soc` (`entity`,`fk_soc`,`key_account`,`site`,`fk_website`), + KEY `idx_societe_account_rowid` (`rowid`), + KEY `idx_societe_account_login` (`login`), + KEY `idx_societe_account_status` (`status`), + KEY `idx_societe_account_fk_website` (`fk_website`), + KEY `idx_societe_account_fk_soc` (`fk_soc`), + CONSTRAINT `llx_societe_account_fk_societe` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `llx_societe_account_fk_website` FOREIGN KEY (`fk_website`) REFERENCES `llx_website` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_account` +-- + +LOCK TABLES `llx_societe_account` WRITE; +/*!40000 ALTER TABLE `llx_societe_account` DISABLE KEYS */; +INSERT INTO `llx_societe_account` VALUES (1,1,'','',NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-13 19:25:01','2018-03-19 09:01:17',12,NULL,NULL,0,''),(4,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 01:04:19','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(5,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 01:08:02','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(6,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 17:09:36','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(7,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 17:09:44','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(8,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:43:23','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(9,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:46:09','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(10,1,'','',NULL,NULL,145,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 18:46:15','2018-03-14 14:46:15',12,NULL,NULL,0,'cus_CUZzMg8S2T3oEo'),(13,1,'',NULL,NULL,NULL,163,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:33:19','2018-03-14 15:33:19',0,NULL,NULL,0,'cus_CUam8x0KCoKZlc'),(14,1,'',NULL,NULL,NULL,182,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:48:48','2018-03-14 15:48:49',0,NULL,NULL,0,'cus_CUb2Xt4A2p5vMd'),(15,1,'',NULL,NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 19:52:13','2018-03-21 10:43:37',12,NULL,NULL,0,''),(17,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:57:42','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(18,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:57:47','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(19,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:58:13','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(20,1,'','',NULL,NULL,148,'stripe',NULL,NULL,NULL,NULL,'2018-03-14 23:58:19','2018-03-14 19:58:19',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(21,1,'',NULL,NULL,NULL,151,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 19:10:29','2018-03-16 15:10:29',12,NULL,NULL,0,'cus_CVKshSj8uuaATf'),(22,1,'','',NULL,NULL,152,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 19:11:15','2018-03-16 15:11:15',12,NULL,NULL,0,'cus_CTnHl6FRkiJJYC'),(24,1,'',NULL,NULL,NULL,153,'stripe',NULL,NULL,NULL,NULL,'2018-03-16 20:15:45','2018-03-16 16:15:45',18,NULL,NULL,0,'cus_CVLv9rX4wMouSk'),(25,1,'','',NULL,NULL,155,'stripe',NULL,NULL,NULL,NULL,'2018-03-18 23:55:37','2018-03-18 19:55:37',12,NULL,NULL,0,'cus_CVLLzP90RCWx76'),(26,1,'','',NULL,NULL,155,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 00:01:47','2018-03-18 20:01:47',12,NULL,NULL,1,'cus_CVLLzP90RCWx76'),(27,1,'','',NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:01:17','2018-03-19 09:01:17',12,NULL,NULL,0,''),(28,1,'',NULL,NULL,NULL,204,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:21:02','2018-03-19 09:21:02',0,NULL,NULL,0,'cus_CWMu7PlGViJN1S'),(29,1,'',NULL,NULL,NULL,1,'stripe',NULL,NULL,NULL,NULL,'2018-03-19 13:38:26','2018-03-19 09:38:26',0,NULL,NULL,0,'cus_CWNCF7mttdVEae'),(30,1,'','',NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-21 14:43:37','2018-03-21 10:43:37',12,NULL,NULL,0,''),(31,1,'',NULL,NULL,NULL,203,'stripe',NULL,NULL,NULL,NULL,'2018-03-21 14:44:18','2018-03-21 10:44:18',0,NULL,NULL,0,'cus_CX8hWwDQPMht5r'),(32,1,'',NULL,NULL,NULL,211,'stripe',NULL,NULL,NULL,NULL,'2018-04-19 16:20:27','2018-04-19 14:20:27',18,NULL,NULL,0,'cus_Ci3khlxtfYB0Xl'),(33,1,'',NULL,NULL,NULL,7,'stripe',NULL,NULL,NULL,NULL,'2018-04-30 14:57:29','2018-04-30 12:57:29',0,NULL,NULL,0,'cus_Cm9td5UQieFnlZ'),(38,1,'',NULL,NULL,NULL,154,'stripe',NULL,NULL,NULL,NULL,'2018-05-16 17:01:24','2018-05-16 15:01:24',18,NULL,NULL,0,'cus_CsBVSuBeNzmYw9'),(39,1,'','',NULL,NULL,151,'stripe',NULL,NULL,NULL,NULL,'2018-05-17 09:42:37','2018-05-17 07:42:37',12,NULL,NULL,1,'cus_CVKshSj8uuaATf'),(40,1,'',NULL,NULL,NULL,217,'stripe',NULL,NULL,NULL,NULL,'2018-06-01 19:47:16','2018-06-01 17:47:16',18,NULL,NULL,0,'cus_CyDmj3FJD8rYsd'),(41,1,'',NULL,NULL,NULL,218,'stripe',NULL,NULL,NULL,NULL,'2018-06-11 11:34:38','2018-06-11 09:34:38',12,NULL,NULL,0,'cus_D1q6IoIUoG7LMq'),(42,1,'',NULL,NULL,NULL,10,'stripe',NULL,NULL,NULL,NULL,'2018-06-12 13:49:51','2018-06-12 11:49:51',0,NULL,NULL,0,'cus_D2FVgMTgsYjt6k'),(44,1,'',NULL,NULL,NULL,215,'stripe',NULL,NULL,NULL,NULL,'2018-06-15 16:01:07','2018-06-15 14:01:07',18,NULL,NULL,0,'cus_D3PIZ5HzIeMj7B'),(45,1,'',NULL,NULL,NULL,229,'stripe',NULL,NULL,NULL,NULL,'2018-06-27 01:40:40','2018-06-26 23:40:40',18,NULL,NULL,0,'cus_D7g8Bvgx0AFfha'),(46,1,'',NULL,NULL,NULL,156,'stripe',NULL,NULL,NULL,NULL,'2018-07-17 14:13:48','2018-07-17 12:13:48',18,NULL,NULL,0,'cus_DFMnr5WsUoaCJX'),(47,1,'',NULL,NULL,NULL,231,'stripe',NULL,NULL,NULL,NULL,'2018-07-17 17:46:42','2018-07-17 15:46:42',18,NULL,NULL,0,'cus_DFQEkv3jONVJwR'),(48,1,'',NULL,NULL,NULL,250,'stripe',NULL,NULL,NULL,NULL,'2018-09-17 09:27:23','2018-09-17 07:27:23',18,NULL,NULL,0,'cus_DcWBnburaSkf0c'),(49,1,'',NULL,NULL,NULL,11,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:08:01','2018-10-12 18:08:01',0,NULL,NULL,0,'cus_Dm39EV1tf8CRBT'),(50,1,'',NULL,NULL,NULL,214,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:57:17','2018-10-12 18:57:17',18,NULL,NULL,0,'cus_Dm3wMg8aMLoRC9'),(51,1,'',NULL,NULL,NULL,213,'stripe',NULL,NULL,NULL,NULL,'2018-10-12 20:59:41','2018-10-12 18:59:41',18,NULL,NULL,0,'cus_Dm3zHwLuFKePzk'); +/*!40000 ALTER TABLE `llx_societe_account` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_address` +-- + +DROP TABLE IF EXISTS `llx_societe_address`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_address` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT '0', + `name` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_pays` int(11) DEFAULT '0', + `phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_address` +-- + +LOCK TABLES `llx_societe_address` WRITE; +/*!40000 ALTER TABLE `llx_societe_address` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_address` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_commerciaux` +-- + +DROP TABLE IF EXISTS `llx_societe_commerciaux`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_commerciaux` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_commerciaux` (`fk_soc`,`fk_user`) +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_commerciaux` +-- + +LOCK TABLES `llx_societe_commerciaux` WRITE; +/*!40000 ALTER TABLE `llx_societe_commerciaux` DISABLE KEYS */; +INSERT INTO `llx_societe_commerciaux` VALUES (1,2,2,NULL),(2,3,2,NULL),(5,17,1,NULL),(6,19,1,NULL),(8,19,3,NULL),(9,11,16,NULL),(10,13,17,NULL),(11,26,12,NULL); +/*!40000 ALTER TABLE `llx_societe_commerciaux` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_extrafields` +-- + +DROP TABLE IF EXISTS `llx_societe_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_societe_extrafields` (`fk_object`) +) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_extrafields` +-- + +LOCK TABLES `llx_societe_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_societe_extrafields` DISABLE KEYS */; +INSERT INTO `llx_societe_extrafields` VALUES (75,'2016-01-22 16:40:03',10,NULL),(77,'2016-01-22 16:41:56',12,NULL),(79,'2016-01-22 17:13:16',13,NULL),(81,'2016-01-22 17:18:08',19,NULL),(82,'2016-01-22 17:21:17',25,NULL),(83,'2016-01-22 17:21:51',1,NULL),(85,'2016-01-22 17:22:32',3,NULL),(86,'2016-01-22 17:24:53',4,NULL),(88,'2016-01-22 17:25:26',6,NULL),(89,'2016-01-22 17:25:41',7,NULL),(92,'2016-07-30 11:45:49',2,NULL),(94,'2017-02-15 22:55:34',17,NULL),(95,'2017-02-21 00:05:05',26,NULL),(96,'2017-02-21 11:01:17',5,NULL),(97,'2017-05-12 09:06:31',11,NULL); +/*!40000 ALTER TABLE `llx_societe_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_log` +-- + +DROP TABLE IF EXISTS `llx_societe_log`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `datel` datetime DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_statut` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `author` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `label` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_log` +-- + +LOCK TABLES `llx_societe_log` WRITE; +/*!40000 ALTER TABLE `llx_societe_log` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_log` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_prices` +-- + +DROP TABLE IF EXISTS `llx_societe_prices`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_prices` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_soc` int(11) DEFAULT '0', + `tms` timestamp NULL DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `price_level` tinyint(4) DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_prices` +-- + +LOCK TABLES `llx_societe_prices` WRITE; +/*!40000 ALTER TABLE `llx_societe_prices` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_prices` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise` +-- + +DROP TABLE IF EXISTS `llx_societe_remise`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `remise_client` double(6,3) NOT NULL DEFAULT '0.000', + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise` +-- + +LOCK TABLES `llx_societe_remise` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_remise` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise_except` +-- + +DROP TABLE IF EXISTS `llx_societe_remise_except`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise_except` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `discount_type` int(11) NOT NULL DEFAULT '0', + `datec` datetime DEFAULT NULL, + `amount_ht` double(24,8) NOT NULL, + `amount_tva` double(24,8) NOT NULL DEFAULT '0.00000000', + `amount_ttc` double(24,8) NOT NULL DEFAULT '0.00000000', + `tva_tx` double(6,3) NOT NULL DEFAULT '0.000', + `fk_user` int(11) NOT NULL, + `fk_facture_line` int(11) DEFAULT NULL, + `fk_facture` int(11) DEFAULT NULL, + `fk_facture_source` int(11) DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci NOT NULL, + `multicurrency_amount_ht` double(24,8) NOT NULL DEFAULT '0.00000000', + `multicurrency_amount_tva` double(24,8) NOT NULL DEFAULT '0.00000000', + `multicurrency_amount_ttc` double(24,8) NOT NULL DEFAULT '0.00000000', + `fk_invoice_supplier_line` int(11) DEFAULT NULL, + `fk_invoice_supplier` int(11) DEFAULT NULL, + `fk_invoice_supplier_source` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_societe_remise_except_fk_user` (`fk_user`), + KEY `idx_societe_remise_except_fk_soc` (`fk_soc`), + KEY `idx_societe_remise_except_fk_facture_line` (`fk_facture_line`), + KEY `idx_societe_remise_except_fk_facture` (`fk_facture`), + KEY `idx_societe_remise_except_fk_facture_source` (`fk_facture_source`), + KEY `fk_soc_remise_fk_invoice_supplier_line` (`fk_invoice_supplier_line`), + KEY `fk_societe_remise_fk_invoice_supplier_source` (`fk_invoice_supplier`), + KEY `idx_societe_remise_except_discount_type` (`discount_type`), + CONSTRAINT `fk_soc_remise_fk_facture_line` FOREIGN KEY (`fk_facture_line`) REFERENCES `llx_facturedet` (`rowid`), + CONSTRAINT `fk_soc_remise_fk_invoice_supplier_line` FOREIGN KEY (`fk_invoice_supplier_line`) REFERENCES `llx_facture_fourn_det` (`rowid`), + CONSTRAINT `fk_soc_remise_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture` FOREIGN KEY (`fk_facture`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture_line` FOREIGN KEY (`fk_facture_line`) REFERENCES `llx_facturedet` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_facture_source` FOREIGN KEY (`fk_facture_source`) REFERENCES `llx_facture` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_invoice_supplier` FOREIGN KEY (`fk_invoice_supplier`) REFERENCES `llx_facture_fourn` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_invoice_supplier_source` FOREIGN KEY (`fk_invoice_supplier`) REFERENCES `llx_facture_fourn` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_societe_remise_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise_except` +-- + +LOCK TABLES `llx_societe_remise_except` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise_except` DISABLE KEYS */; +INSERT INTO `llx_societe_remise_except` VALUES (2,1,19,0,'2013-03-19 09:36:15',10.00000000,1.25000000,11.25000000,12.500,1,NULL,NULL,NULL,'hfghgf',0.00000000,0.00000000,0.00000000,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_societe_remise_except` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_remise_supplier` +-- + +DROP TABLE IF EXISTS `llx_societe_remise_supplier`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_remise_supplier` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_soc` int(11) NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `remise_supplier` double(6,3) NOT NULL DEFAULT '0.000', + `note` text, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_remise_supplier` +-- + +LOCK TABLES `llx_societe_remise_supplier` WRITE; +/*!40000 ALTER TABLE `llx_societe_remise_supplier` DISABLE KEYS */; +INSERT INTO `llx_societe_remise_supplier` VALUES (1,1,1,'2018-04-06 18:21:00','2018-04-06 20:21:00',12,6.000,'llll'); +/*!40000 ALTER TABLE `llx_societe_remise_supplier` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_rib` +-- + +DROP TABLE IF EXISTS `llx_societe_rib`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_rib` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(32) COLLATE utf8_unicode_ci NOT NULL, + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `bank` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `bic` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `iban_prefix` varchar(34) COLLATE utf8_unicode_ci DEFAULT NULL, + `domiciliation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `proprio` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `owner_address` text COLLATE utf8_unicode_ci, + `default_rib` tinyint(4) NOT NULL DEFAULT '0', + `rum` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_rum` date DEFAULT NULL, + `frstrecur` varchar(16) COLLATE utf8_unicode_ci DEFAULT 'FRST', + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `last_four` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL, + `card_type` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cvn` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `exp_date_month` int(11) DEFAULT NULL, + `exp_date_year` int(11) DEFAULT NULL, + `country_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `approved` int(11) DEFAULT '0', + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ending_date` date DEFAULT NULL, + `max_total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `preapproval_key` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `starting_date` date DEFAULT NULL, + `total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `stripe_card_ref` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_rib` +-- + +LOCK TABLES `llx_societe_rib` WRITE; +/*!40000 ALTER TABLE `llx_societe_rib` DISABLE KEYS */; +INSERT INTO `llx_societe_rib` VALUES (1,'ban',19,'2017-02-21 15:50:32','2017-02-21 11:53:08','Morgan Bank','Morgan Bank','','','','','PSPBFIHH','ES80 2310 0001 1800 0001 2345','Royal via,\r\nMadrid','Mr Esposito','10 via ferrata,\r\nMadrid',1,'RUM1301-0008-0',NULL,'FRST',NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_societe_rib` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_societe_rib2` +-- + +DROP TABLE IF EXISTS `llx_societe_rib2`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_societe_rib2` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(32) DEFAULT 'ban', + `label` varchar(30) DEFAULT NULL, + `fk_soc` int(11) NOT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `bank` varchar(255) DEFAULT NULL, + `code_banque` varchar(128) DEFAULT NULL, + `code_guichet` varchar(6) DEFAULT NULL, + `number` varchar(255) DEFAULT NULL, + `cle_rib` varchar(5) DEFAULT NULL, + `bic` varchar(20) DEFAULT NULL, + `iban_prefix` varchar(34) DEFAULT NULL, + `domiciliation` varchar(255) DEFAULT NULL, + `proprio` varchar(60) DEFAULT NULL, + `owner_address` varchar(255) DEFAULT NULL, + `default_rib` smallint(6) NOT NULL DEFAULT '0', + `rum` varchar(32) DEFAULT NULL, + `date_rum` date DEFAULT NULL, + `frstrecur` varchar(16) DEFAULT 'FRST', + `last_four` varchar(4) DEFAULT NULL, + `card_type` varchar(255) DEFAULT NULL, + `cvn` varchar(255) DEFAULT NULL, + `exp_date_month` int(11) DEFAULT NULL, + `exp_date_year` int(11) DEFAULT NULL, + `country_code` varchar(10) DEFAULT NULL, + `approved` int(11) DEFAULT '0', + `email` varchar(255) DEFAULT NULL, + `ending_date` date DEFAULT NULL, + `max_total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `preapproval_key` varchar(255) DEFAULT NULL, + `starting_date` date DEFAULT NULL, + `total_amount_of_all_payments` double(24,8) DEFAULT NULL, + `stripe_card_ref` varchar(128) DEFAULT NULL, + `status` int(11) NOT NULL DEFAULT '1', + `import_key` varchar(14) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_societe_rib2` +-- + +LOCK TABLES `llx_societe_rib2` WRITE; +/*!40000 ALTER TABLE `llx_societe_rib2` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_societe_rib2` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_socpeople` +-- + +DROP TABLE IF EXISTS `llx_socpeople`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_socpeople` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_soc` int(11) DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `civility` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` text COLLATE utf8_unicode_ci, + `fk_departement` int(11) DEFAULT NULL, + `fk_pays` int(11) DEFAULT '0', + `birthday` date DEFAULT NULL, + `poste` varchar(80) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_perso` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `phone_mobile` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fax` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `jabberid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `whatsapp` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `youtube` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `googleplus` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `snapchat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `instagram` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `facebook` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `twitter` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `photo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `priv` smallint(6) NOT NULL DEFAULT '0', + `no_email` smallint(6) NOT NULL DEFAULT '0', + `fk_user_creat` int(11) DEFAULT '0', + `fk_user_modif` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `default_lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `canvas` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (`rowid`), + KEY `idx_socpeople_fk_soc` (`fk_soc`), + KEY `idx_socpeople_fk_user_creat` (`fk_user_creat`), + CONSTRAINT `fk_socpeople_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`), + CONSTRAINT `fk_socpeople_user_creat_user_rowid` FOREIGN KEY (`fk_user_creat`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_socpeople` +-- + +LOCK TABLES `llx_socpeople` WRITE; +/*!40000 ALTER TABLE `llx_socpeople` DISABLE KEYS */; +INSERT INTO `llx_socpeople` VALUES (1,'2010-07-08 14:26:14','2016-01-16 15:07:51',1,1,NULL,'MR','Indra','Mahala','','','',297,117,'2010-07-08','Project leader','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,1,12,'Met during a congress at Dubai','',NULL,NULL,NULL,1),(2,'2010-07-08 22:44:50','2010-07-08 20:59:57',NULL,1,NULL,'MR','Freeman','Public','','','',200,11,NULL,'','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,1,1,'A friend that is a free contact not linked to any company',NULL,NULL,NULL,NULL,1),(3,'2010-07-08 22:59:02','2016-01-22 17:30:07',NULL,1,NULL,'MR','Mywife','Nicy','','','',NULL,11,'1980-10-03','','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,0,1,12,'This is a private contact','',NULL,NULL,NULL,1),(4,'2010-07-09 00:16:58','2010-07-08 22:16:58',6,1,NULL,'MR','Rotchield','Evan','','','',NULL,6,NULL,'Bank director','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,1,1,'The bank director',NULL,NULL,NULL,NULL,1),(6,'2011-08-01 02:41:26','2016-01-22 17:29:53',17,1,NULL,'','Bookkeeper','Bob','99 account street','123456','BigTown',NULL,4,NULL,'book keeper','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,1,12,'','',NULL,NULL,NULL,1),(7,'2016-07-30 16:11:06','2016-07-30 12:16:07',NULL,1,'','MR','Dad','','','','',NULL,14,'1967-09-04','','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',1,0,12,12,'','',NULL,NULL,NULL,1),(8,'2016-07-30 16:13:03','2016-07-30 12:15:58',NULL,1,'','MLE','Mom','','','','',NULL,14,NULL,'','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',1,0,12,12,'','',NULL,NULL,NULL,1),(9,'2016-07-30 16:14:41','2016-07-30 12:15:51',NULL,1,'','MR','Francky','','','89455','Virigia',NULL,205,'1980-07-09','Baker','555-98989898','','','','francky@example.com','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0,0,12,12,'','',NULL,NULL,NULL,1),(10,'2016-07-30 16:26:22','2016-07-30 12:52:38',10,1,'','MR','Eldy','','','33600','Pessac',NULL,1,'1972-10-10','Dolibarr project leader','','','','','eldy@example.com','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'ldestailleur_200x200.jpg',0,0,NULL,12,'','',NULL,NULL,NULL,1),(11,'2017-05-12 13:16:36','2017-05-12 09:18:20',11,1,'','MR','Smith','Laurent','45 Big road','897','Seattle',NULL,11,NULL,'Director','','','','','','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'ldestailleur_200x200.png',0,0,12,12,'','',NULL,NULL,NULL,1),(12,'2017-05-12 13:19:31','2017-05-12 09:19:42',11,1,'','MR','Einstein','','','','',NULL,11,NULL,'Genius','333444555','','','','genius@example.com','','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Einstein.jpg',0,0,12,12,'','',NULL,NULL,NULL,1); +/*!40000 ALTER TABLE `llx_socpeople` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_socpeople_extrafields` +-- + +DROP TABLE IF EXISTS `llx_socpeople_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_socpeople_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_socpeople_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_socpeople_extrafields` +-- + +LOCK TABLES `llx_socpeople_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_socpeople_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_socpeople_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_stock_lotserial` +-- + +DROP TABLE IF EXISTS `llx_stock_lotserial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_stock_lotserial` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_stock_lotserial` +-- + +LOCK TABLES `llx_stock_lotserial` WRITE; +/*!40000 ALTER TABLE `llx_stock_lotserial` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_stock_lotserial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_stock_mouvement` +-- + +DROP TABLE IF EXISTS `llx_stock_mouvement`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_stock_mouvement` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datem` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL, + `fk_entrepot` int(11) NOT NULL, + `value` double DEFAULT NULL, + `price` double(24,8) DEFAULT '0.00000000', + `type_mouvement` smallint(6) DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_origin` int(11) DEFAULT NULL, + `origintype` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `inventorycode` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `batch` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `eatby` date DEFAULT NULL, + `sellby` date DEFAULT NULL, + `fk_project` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_stock_mouvement_fk_product` (`fk_product`), + KEY `idx_stock_mouvement_fk_entrepot` (`fk_entrepot`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_stock_mouvement` +-- + +LOCK TABLES `llx_stock_mouvement` WRITE; +/*!40000 ALTER TABLE `llx_stock_mouvement` DISABLE KEYS */; +INSERT INTO `llx_stock_mouvement` VALUES (1,'2010-07-08 22:43:51','2010-07-09 00:43:51',2,2,1000,0.00000000,0,1,'Correct stock',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'2010-07-10 22:56:18','2010-07-11 00:56:18',4,2,500,0.00000000,0,1,'Init',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,'2010-07-10 23:02:20','2010-07-11 01:02:20',4,2,500,0.00000000,0,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,'2010-07-11 16:49:44','2010-07-11 18:49:44',4,1,2,10.00000000,3,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(6,'2010-07-11 16:49:44','2010-07-11 18:49:44',1,1,4,0.00000000,3,1,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(7,'2013-01-19 17:22:48','2013-01-19 18:22:48',11,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(8,'2013-01-19 17:22:48','2013-01-19 18:22:48',4,1,-1,5.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(9,'2013-01-19 17:22:48','2013-01-19 18:22:48',1,1,-2,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(10,'2013-01-19 17:31:10','2013-01-19 18:31:10',2,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,'2013-01-19 17:31:58','2013-01-19 18:31:58',2,1,-1,0.00000000,2,1,'Facture créée dans DoliPOS',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,'2016-07-30 13:39:31','2016-07-30 17:39:31',10,2,50,0.00000000,0,12,'Stock correction for product COMP-XP4523',0,'',NULL,NULL,'5599887766452',NULL,NULL,NULL),(13,'2016-07-30 13:40:12','2016-07-30 17:40:12',10,2,60,0.00000000,0,12,'Stock correction for product COMP-XP4523',0,'',NULL,NULL,'4494487766452',NULL,NULL,NULL),(14,'2016-07-30 13:40:39','2016-07-30 17:40:39',10,2,-35,0.00000000,1,12,'Stock transfer of product COMP-XP4523 into another warehouse',0,'',NULL,'160730174015','5599887766452',NULL,NULL,NULL),(15,'2016-07-30 13:40:39','2016-07-30 17:40:39',10,1,35,0.00000000,0,12,'Stock transfer of product COMP-XP4523 into another warehouse',0,'',NULL,'160730174015','5599887766452',NULL,NULL,NULL),(16,'2017-02-15 23:58:08','2017-02-16 03:58:08',10,1,-1,100.00000000,2,12,'Expédition SH1702-0002 validée',3,'shipping',NULL,NULL,'5599887766452',NULL,NULL,NULL),(17,'2017-02-16 00:12:09','2017-02-16 04:12:09',10,1,1,0.00000000,3,12,'Expédition SH1702-0002 supprimée',0,'',NULL,NULL,'5599887766452',NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_stock_mouvement` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_message` +-- + +DROP TABLE IF EXISTS `llx_submitew_message`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_message` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `statut` smallint(6) DEFAULT '0', + `label` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `title` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `body_short` text COLLATE utf8_unicode_ci, + `body_long` text COLLATE utf8_unicode_ci, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cible` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `nbemail` int(11) DEFAULT NULL, + `email_from` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_replyto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `email_errorsto` varchar(160) COLLATE utf8_unicode_ci DEFAULT NULL, + `tag` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creat` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_appro` datetime DEFAULT NULL, + `date_envoi` datetime DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_appro` int(11) DEFAULT NULL, + `joined_file1` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file3` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `joined_file4` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_message` +-- + +LOCK TABLES `llx_submitew_message` WRITE; +/*!40000 ALTER TABLE `llx_submitew_message` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_submitew_message` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_targets` +-- + +DROP TABLE IF EXISTS `llx_submitew_targets`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_targets` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `targetcode` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `langcode` varchar(5) COLLATE utf8_unicode_ci DEFAULT 'en_US', + `url` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `login` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `comment` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL, + `position` int(11) DEFAULT '0', + `titlelength` int(11) DEFAULT '32', + `descshortlength` int(11) DEFAULT '256', + `desclonglength` int(11) DEFAULT '2000', + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_submitewtargets` (`label`,`langcode`) +) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_targets` +-- + +LOCK TABLES `llx_submitew_targets` WRITE; +/*!40000 ALTER TABLE `llx_submitew_targets` DISABLE KEYS */; +INSERT INTO `llx_submitew_targets` VALUES (17,'hhho','email','fr_FR','',NULL,NULL,NULL,0,0,-1,0),(34,'pppp','facebook','fr_FR',NULL,'eldy','ld101010-fk',NULL,0,-1,-1,-1),(35,'hfghfgh','web','de_DE','http://wwww','ffffmmm','null',NULL,0,-1,-1,-1),(37,'llll','linkedin','fr_FR','',NULL,NULL,NULL,0,32,256,2000),(55,'fff','dig','fr_FR',NULL,'hfgh','hfghgf',NULL,0,-1,-1,-1),(56,'aaaaaaa','linkedin','da_DK',NULL,'aa','aaa',NULL,0,32,256,2000),(57,'ddd','dig','en_US',NULL,'dd',NULL,NULL,0,32,256,2000),(59,'dddff','dig','en_US',NULL,NULL,NULL,NULL,0,32,256,2000),(68,'dddffe','dig','en_US',NULL,NULL,NULL,NULL,0,32,256,2000),(70,'dddffef','dig','en_US','http://www.dig.com',NULL,NULL,NULL,0,32,256,2000),(71,'ffff','dig','en_US','http://www.dig.com',NULL,NULL,NULL,0,32,256,2000); +/*!40000 ALTER TABLE `llx_submitew_targets` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_submitew_targets_params` +-- + +DROP TABLE IF EXISTS `llx_submitew_targets_params`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_submitew_targets_params` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_target` int(11) NOT NULL, + `paramkey` varchar(16) COLLATE utf8_unicode_ci NOT NULL, + `paramvalue` varchar(128) COLLATE utf8_unicode_ci DEFAULT '', + PRIMARY KEY (`rowid`), + UNIQUE KEY `idx_submitewtargets_fk_target` (`fk_target`), + UNIQUE KEY `uk_submitewtargets_params` (`fk_target`,`paramkey`,`paramvalue`), + CONSTRAINT `fk_submitewtargets_fk_target` FOREIGN KEY (`fk_target`) REFERENCES `llx_submitew_targets` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_submitew_targets_params` +-- + +LOCK TABLES `llx_submitew_targets_params` WRITE; +/*!40000 ALTER TABLE `llx_submitew_targets_params` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_submitew_targets_params` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_subscription` +-- + +DROP TABLE IF EXISTS `llx_subscription`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_subscription` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `fk_adherent` int(11) DEFAULT NULL, + `dateadh` datetime DEFAULT NULL, + `datef` date DEFAULT NULL, + `subscription` double(24,8) DEFAULT NULL, + `fk_bank` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_subscription` (`fk_adherent`,`dateadh`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_subscription` +-- + +LOCK TABLES `llx_subscription` WRITE; +/*!40000 ALTER TABLE `llx_subscription` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_subscription` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposal` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposal` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `ref` varchar(30) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `ref_ext` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `fk_projet` int(11) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` datetime DEFAULT NULL, + `date_valid` datetime DEFAULT NULL, + `date_cloture` datetime DEFAULT NULL, + `fk_user_author` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_user_valid` int(11) DEFAULT NULL, + `fk_user_cloture` int(11) DEFAULT NULL, + `fk_statut` smallint(6) NOT NULL DEFAULT '0', + `price` double DEFAULT '0', + `remise_percent` double DEFAULT '0', + `remise_absolue` double DEFAULT '0', + `remise` double DEFAULT '0', + `total_ht` double(24,8) DEFAULT '0.00000000', + `tva` double(24,8) DEFAULT '0.00000000', + `localtax1` double(24,8) DEFAULT '0.00000000', + `localtax2` double(24,8) DEFAULT '0.00000000', + `total` double(24,8) DEFAULT '0.00000000', + `fk_account` int(11) DEFAULT NULL, + `fk_currency` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_cond_reglement` int(11) DEFAULT NULL, + `fk_mode_reglement` int(11) DEFAULT NULL, + `note_private` text COLLATE utf8_unicode_ci, + `note_public` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_livraison` date DEFAULT NULL, + `fk_shipping_method` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `extraparams` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_tx` double(24,8) DEFAULT '1.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `last_main_doc` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposal` +-- + +LOCK TABLES `llx_supplier_proposal` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposal` DISABLE KEYS */; +INSERT INTO `llx_supplier_proposal` VALUES (2,'(PROV2)',1,NULL,NULL,10,NULL,'2017-02-17 00:40:50','2017-02-17 04:40:14',NULL,NULL,12,NULL,NULL,NULL,0,0,NULL,NULL,0,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,NULL,NULL,2,7,'','','aurore','2017-02-17',1,NULL,NULL,1,'EUR',1.00000000,200.00000000,0.00000000,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_supplier_proposal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposal_extrafields` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposal_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposal_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposal_extrafields` +-- + +LOCK TABLES `llx_supplier_proposal_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposal_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_supplier_proposal_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposaldet` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposaldet`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposaldet` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_supplier_proposal` int(11) NOT NULL, + `fk_parent_line` int(11) DEFAULT NULL, + `fk_product` int(11) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` text COLLATE utf8_unicode_ci, + `fk_remise_except` int(11) DEFAULT NULL, + `tva_tx` double(6,3) DEFAULT '0.000', + `vat_src_code` varchar(10) COLLATE utf8_unicode_ci DEFAULT '', + `localtax1_tx` double(6,3) DEFAULT '0.000', + `localtax1_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `localtax2_tx` double(6,3) DEFAULT '0.000', + `localtax2_type` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double DEFAULT NULL, + `remise_percent` double DEFAULT '0', + `remise` double DEFAULT '0', + `price` double DEFAULT NULL, + `subprice` double(24,8) DEFAULT '0.00000000', + `total_ht` double(24,8) DEFAULT '0.00000000', + `total_tva` double(24,8) DEFAULT '0.00000000', + `total_localtax1` double(24,8) DEFAULT '0.00000000', + `total_localtax2` double(24,8) DEFAULT '0.00000000', + `total_ttc` double(24,8) DEFAULT '0.00000000', + `product_type` int(11) DEFAULT '0', + `info_bits` int(11) DEFAULT '0', + `buy_price_ht` double(24,8) DEFAULT '0.00000000', + `fk_product_fournisseur_price` int(11) DEFAULT NULL, + `special_code` int(11) DEFAULT '0', + `rang` int(11) DEFAULT '0', + `ref_fourn` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_multicurrency` int(11) DEFAULT NULL, + `multicurrency_code` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `multicurrency_subprice` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ht` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_tva` double(24,8) DEFAULT '0.00000000', + `multicurrency_total_ttc` double(24,8) DEFAULT '0.00000000', + `fk_unit` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_supplier_proposaldet_fk_supplier_proposal` (`fk_supplier_proposal`), + KEY `idx_supplier_proposaldet_fk_product` (`fk_product`), + KEY `fk_supplier_proposaldet_fk_unit` (`fk_unit`), + CONSTRAINT `fk_supplier_proposaldet_fk_supplier_proposal` FOREIGN KEY (`fk_supplier_proposal`) REFERENCES `llx_supplier_proposal` (`rowid`), + CONSTRAINT `fk_supplier_proposaldet_fk_unit` FOREIGN KEY (`fk_unit`) REFERENCES `llx_c_units` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposaldet` +-- + +LOCK TABLES `llx_supplier_proposaldet` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposaldet` DISABLE KEYS */; +INSERT INTO `llx_supplier_proposaldet` VALUES (2,2,NULL,NULL,NULL,'A powerfull computer with 8Gb memory.',NULL,0.000,'',0.000,'0',0.000,'0',1,0,0,NULL,200.00000000,200.00000000,0.00000000,0.00000000,0.00000000,200.00000000,0,0,0.00000000,NULL,0,1,'',1,'EUR',200.00000000,200.00000000,0.00000000,200.00000000,NULL); +/*!40000 ALTER TABLE `llx_supplier_proposaldet` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_supplier_proposaldet_extrafields` +-- + +DROP TABLE IF EXISTS `llx_supplier_proposaldet_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_supplier_proposaldet_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_supplier_proposaldet_extrafields` +-- + +LOCK TABLES `llx_supplier_proposaldet_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_supplier_proposaldet_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_supplier_proposaldet_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_takepos_floor_tables` +-- + +DROP TABLE IF EXISTS `llx_takepos_floor_tables`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_takepos_floor_tables` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `label` varchar(255) DEFAULT NULL, + `leftpos` float DEFAULT NULL, + `toppos` float DEFAULT NULL, + `floor` int(3) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_takepos_floor_tables` +-- + +LOCK TABLES `llx_takepos_floor_tables` WRITE; +/*!40000 ALTER TABLE `llx_takepos_floor_tables` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_takepos_floor_tables` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket` +-- + +DROP TABLE IF EXISTS `llx_ticket`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `ref` varchar(128) NOT NULL, + `track_id` varchar(128) NOT NULL, + `fk_soc` int(11) DEFAULT '0', + `fk_project` int(11) DEFAULT '0', + `origin_email` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_assign` int(11) DEFAULT NULL, + `subject` varchar(255) DEFAULT NULL, + `message` text, + `fk_statut` int(11) DEFAULT NULL, + `resolution` int(11) DEFAULT NULL, + `progress` varchar(100) DEFAULT NULL, + `timing` varchar(20) DEFAULT NULL, + `type_code` varchar(32) DEFAULT NULL, + `category_code` varchar(32) DEFAULT NULL, + `severity_code` varchar(32) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `date_read` datetime DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `notify_tiers_at_create` tinyint(4) DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ticket_track_id` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket` +-- + +LOCK TABLES `llx_ticket` WRITE; +/*!40000 ALTER TABLE `llx_ticket` DISABLE KEYS */; +INSERT INTO `llx_ticket` VALUES (1,1,'aaa','d42iybp7p6d1cvqi',248,12,NULL,12,NULL,'aaa','aaa',1,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-06-04 21:36:42','2018-10-01 03:20:18',NULL,0,'2018-10-01 01:20:18'); +/*!40000 ALTER TABLE `llx_ticket` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_extrafields` +-- + +DROP TABLE IF EXISTS `llx_ticket_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + `aaa` int(10) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_extrafields` +-- + +LOCK TABLES `llx_ticket_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_ticket_extrafields` DISABLE KEYS */; +INSERT INTO `llx_ticket_extrafields` VALUES (1,'2018-06-04 19:36:42',1,NULL,NULL); +/*!40000 ALTER TABLE `llx_ticket_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_logs` +-- + +DROP TABLE IF EXISTS `llx_ticket_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_logs` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + PRIMARY KEY (`rowid`), + KEY `fk_ticket_logs_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticket_logs_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticket` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_logs` +-- + +LOCK TABLES `llx_ticket_logs` WRITE; +/*!40000 ALTER TABLE `llx_ticket_logs` DISABLE KEYS */; +INSERT INTO `llx_ticket_logs` VALUES (1,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:20:18','Ticket read by Alice Adminson'); +/*!40000 ALTER TABLE `llx_ticket_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticket_msg` +-- + +DROP TABLE IF EXISTS `llx_ticket_msg`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticket_msg` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_action` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + `private` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `fk_ticket_msg_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticket_msg_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticket` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticket_msg` +-- + +LOCK TABLES `llx_ticket_msg` WRITE; +/*!40000 ALTER TABLE `llx_ticket_msg` DISABLE KEYS */; +INSERT INTO `llx_ticket_msg` VALUES (1,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:18:19','gdfgdf',0),(2,1,'d42iybp7p6d1cvqi',12,'2018-10-01 03:18:30','gdf',0); +/*!40000 ALTER TABLE `llx_ticket_msg` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup` +-- + +DROP TABLE IF EXISTS `llx_ticketsup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `ref` varchar(128) NOT NULL, + `track_id` varchar(128) NOT NULL, + `fk_soc` int(11) DEFAULT '0', + `fk_project` int(11) DEFAULT '0', + `origin_email` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `fk_user_assign` int(11) DEFAULT NULL, + `subject` varchar(255) DEFAULT NULL, + `message` text, + `fk_statut` int(11) DEFAULT NULL, + `resolution` int(11) DEFAULT NULL, + `progress` varchar(100) DEFAULT NULL, + `timing` varchar(20) DEFAULT NULL, + `type_code` varchar(32) DEFAULT NULL, + `category_code` varchar(32) DEFAULT NULL, + `severity_code` varchar(32) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `date_read` datetime DEFAULT NULL, + `date_close` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `notify_tiers_at_create` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_ticketsup_track_id` (`track_id`), + KEY `id_ticketsup_track_id` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup` +-- + +LOCK TABLES `llx_ticketsup` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup` DISABLE KEYS */; +INSERT INTO `llx_ticketsup` VALUES (16,1,'TS1803-0001','bmhki5neaa7bszvy',64,12,NULL,12,11,'hfghfgbvcbcv','hgfhfghf
\r\ngdgdgdhghfghf',3,NULL,'100','NORMAL','COM','OTHER','NORMAL','2018-03-13 15:19:47','2018-03-18 21:55:12','2018-04-10 18:00:15','2018-05-01 10:32:20',1),(17,1,'TS1803-0002','ltvd8zthmu5b7v42',148,NULL,NULL,12,NULL,'hfghf','jghjhg',6,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-16 13:30:33','2018-03-18 22:00:39',NULL,'2018-03-18 18:27:03',1),(20,1,'TS1803-0005','o9997psaapahwrxi',NULL,NULL,NULL,12,NULL,'khjkhj','mmmmm',1,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-18 22:55:56','2018-03-19 14:57:36',NULL,'2018-03-19 10:57:36',0),(21,1,'TS1803-0006','hh2ludsvj32lp8sq',NULL,NULL,NULL,12,NULL,'gdfg','gdfgfd',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-03-18 22:56:20',NULL,NULL,'2018-03-18 18:56:20',1),(22,1,'TS1803-0007','4e8iy89hes9a5w8d',NULL,NULL,NULL,12,NULL,'ffffffff','fsdf',0,NULL,'0','NORMAL','COM','OTHER','NORMAL','2018-03-18 23:00:41',NULL,NULL,'2018-04-12 19:41:47',1),(23,1,'TS1804-0008','jbm8vxsqw19817fm',79,NULL,'aaa@aaa.com',NULL,NULL,'ssss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:20:40',NULL,NULL,'2018-04-12 21:20:40',1),(24,1,'TS1804-0009','q32naisayppjgr5b',NULL,NULL,'f@f.com',NULL,NULL,'sss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:23:34',NULL,NULL,'2018-04-12 21:23:34',1),(25,1,'TS1804-0010','dst5xryjb55jjxs6',NULL,NULL,'f@f.com',NULL,NULL,'sss','mmm',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-12 23:31:01',NULL,NULL,'2018-04-12 21:31:01',1),(26,1,'TS1804-0011','qh9ar34ut2shp5rq',151,NULL,'testldr6@dolicloud.com',NULL,NULL,'ppppp','gdgdgdfg',0,NULL,'0',NULL,'COM','OTHER','NORMAL','2018-04-19 15:05:23',NULL,NULL,'2018-04-19 13:05:23',1); +/*!40000 ALTER TABLE `llx_ticketsup` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_extrafields` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) DEFAULT NULL, + `aaa` varchar(255) DEFAULT NULL, + `listeonly` varchar(255) DEFAULT NULL, + `bbb` varchar(255) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=57 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_extrafields` +-- + +LOCK TABLES `llx_ticketsup_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_extrafields` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_extrafields` VALUES (15,'2018-04-12 21:20:40',23,NULL,'aaaa',NULL,NULL),(16,'2018-04-12 21:23:34',24,NULL,'aaa',NULL,NULL),(17,'2018-04-12 21:31:01',25,NULL,'aaa',NULL,NULL),(20,'2018-04-13 10:42:15',22,NULL,'fffppgggffooppmmpp',NULL,NULL),(26,'2018-04-19 13:05:23',26,NULL,'aaa',NULL,NULL),(56,'2018-04-30 08:32:50',16,NULL,'ljklj',NULL,NULL); +/*!40000 ALTER TABLE `llx_ticketsup_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_logs` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_logs` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_create` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + PRIMARY KEY (`rowid`), + KEY `fk_ticketsup_logs_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticketsup_logs_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticketsup` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=82 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_logs` +-- + +LOCK TABLES `llx_ticketsup_logs` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_logs` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_logs` VALUES (14,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:31:15','Change classification : from Other to Other'),(15,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:31:22','Change classification : from Commercial question to Issue or problem'),(16,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:27','Ticket assigned to David Doe'),(17,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:36','Ticket assigned to hgfhfg hgfh'),(18,1,'bmhki5neaa7bszvy',12,'2018-03-18 14:59:47','Ticket assigned to Sam Scientol'),(19,1,'bmhki5neaa7bszvy',12,'2018-03-18 15:01:20','Ticket assigned to Zack Zeceo'),(20,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:30:49','Ticket read by Alice Adminson'),(22,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:37:42','Status changed : Read to Not read'),(23,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:37:55','Ticket read by Alice Adminson'),(24,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:03','Status changed : Read to Not read'),(25,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:25','Ticket read by Alice Adminson'),(26,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:29','Status changed : Read to Not read'),(27,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:38:45','Ticket read by Alice Adminson'),(28,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:43:30','Status changed : Read to Not read'),(29,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:19','Status changed : Not read to Read'),(30,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:21','Status changed : Read to Not read'),(31,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:25','Ticket read by Alice Adminson'),(32,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:29','Status changed : Read to Not read'),(33,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:31','Status changed : Not read to Read'),(34,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:44:40','Status changed : Read to Not read'),(35,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:48:06','Ticket read by Alice Adminson'),(36,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:48:10','Status changed : Read to Not read'),(37,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:55:06','Ticket read by Alice Adminson'),(38,1,'bmhki5neaa7bszvy',12,'2018-03-18 21:55:12','Ticket read by Alice Adminson'),(39,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:00:39','Ticket read by Alice Adminson'),(40,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:01','Status changed : Answered to Assigned'),(41,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:08','Status changed : Assigned to Answered'),(42,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:25:16','Status changed : Answered to In progress'),(43,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:27:03','Status changed : In progress to Waiting'),(44,1,'o9997psaapahwrxi',12,'2018-03-19 14:57:35','Ticket read by Alice Adminson'),(45,1,'o9997psaapahwrxi',12,'2018-03-19 14:57:36','Ticket read by Alice Adminson'),(46,1,'bmhki5neaa7bszvy',12,'2018-04-10 17:58:28','Status changed : Lu to En cours'),(47,1,'bmhki5neaa7bszvy',12,'2018-04-10 17:58:44','Ticket clôt par Alice Adminson'),(48,1,'bmhki5neaa7bszvy',12,'2018-04-10 18:00:15','Ticket clôt par Alice Adminson'),(49,1,'bmhki5neaa7bszvy',12,'2018-04-13 12:11:32','Ticket ré-ouvert'),(50,1,'bmhki5neaa7bszvy',12,'2018-04-15 11:45:53','Status changed : assigné to Unread'),(51,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:01:24','Change classification : from to '),(52,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:01:26','Change classification : from to '),(53,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:02:03','Change classification : from to '),(54,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:02:27','Change classification : from to '),(55,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:09:03','Change classification : from to '),(56,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:09:34','Change classification : from to '),(57,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:15:04','Change classification : from to '),(58,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:15:54','Change classification : from to '),(59,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:17:47','Change classification : from to '),(60,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:04','Change classification : from to '),(61,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:28','Change classification : from to '),(62,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:18:39','Change classification : from to '),(63,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:00','Change classification : from to '),(64,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:06','Change classification : from to '),(65,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:09','Change classification : from to '),(66,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:19:13','Change classification : from to '),(67,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:24:52','Change classification : from to '),(68,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:24:58','Change classification : from to '),(69,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:26:41','Change classification : from to '),(70,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:03','Change classification : from to '),(71,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:06','Change classification : from to '),(72,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:27:30','Initial message modified \n hgfhfghf\n+ gdgdgd\n'),(73,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:13','Initial message modified \n hgfhfghf\n gdgdgd\n'),(74,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:28','Initial message modified \n hgfhfghf\n gdgdgd\n'),(75,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:47','Initial message modified \n hgfhfghf\n gdgdgd\n'),(76,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:55','Initial message modified \n hgfhfghf\n- gdgdgd\n+ gdgdgdhghfghf\n'),(77,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:28:58','Change classification : from to '),(78,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:29:55','Change classification : from to '),(79,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:32:42','Change classification : from to '),(80,1,'bmhki5neaa7bszvy',12,'2018-04-30 10:32:50','Change classification : from to '),(81,1,'bmhki5neaa7bszvy',12,'2018-05-01 12:32:20','Status changed : Unread to Answered'); +/*!40000 ALTER TABLE `llx_ticketsup_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_ticketsup_msg` +-- + +DROP TABLE IF EXISTS `llx_ticketsup_msg`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_ticketsup_msg` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) DEFAULT '1', + `fk_track_id` varchar(128) DEFAULT NULL, + `fk_user_action` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `message` text, + `private` int(11) DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `fk_ticketsup_msg_fk_track_id` (`fk_track_id`), + CONSTRAINT `fk_ticketsup_msg_fk_track_id` FOREIGN KEY (`fk_track_id`) REFERENCES `llx_ticketsup` (`track_id`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_ticketsup_msg` +-- + +LOCK TABLES `llx_ticketsup_msg` WRITE; +/*!40000 ALTER TABLE `llx_ticketsup_msg` DISABLE KEYS */; +INSERT INTO `llx_ticketsup_msg` VALUES (1,1,'bmhki5neaa7bszvy',12,'2018-03-16 13:30:57','gdfd',0),(2,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:24:18','fdsfds',0),(3,1,'ltvd8zthmu5b7v42',12,'2018-03-18 22:24:39','hfghfg',0); +/*!40000 ALTER TABLE `llx_ticketsup_msg` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_tva` +-- + +DROP TABLE IF EXISTS `llx_tva`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_tva` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `datec` date DEFAULT NULL, + `datep` date DEFAULT NULL, + `datev` date DEFAULT NULL, + `amount` double(24,8) DEFAULT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `note` text COLLATE utf8_unicode_ci, + `fk_bank` int(11) DEFAULT NULL, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `fk_typepayment` int(11) DEFAULT NULL, + `num_payment` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_tva` +-- + +LOCK TABLES `llx_tva` WRITE; +/*!40000 ALTER TABLE `llx_tva` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_tva` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user` +-- + +DROP TABLE IF EXISTS `llx_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `login` varchar(50) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `civility` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_int` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `employee` smallint(6) DEFAULT '1', + `fk_establishment` int(11) DEFAULT '0', + `pass` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass_crypted` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass_temp` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `api_key` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `lastname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `firstname` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `job` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `skype` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `office_phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `office_fax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `user_mobile` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + `email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `signature` text COLLATE utf8_unicode_ci, + `admin` smallint(6) DEFAULT '0', + `webcal_login` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `module_comm` smallint(6) DEFAULT '1', + `module_compta` smallint(6) DEFAULT '1', + `fk_soc` int(11) DEFAULT NULL, + `fk_socpeople` int(11) DEFAULT NULL, + `fk_member` int(11) DEFAULT NULL, + `note` text COLLATE utf8_unicode_ci, + `datelastlogin` datetime DEFAULT NULL, + `datepreviouslogin` datetime DEFAULT NULL, + `egroupware_id` int(11) DEFAULT NULL, + `ldap_sid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `statut` tinyint(4) DEFAULT '1', + `photo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `openid` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `thm` double(24,8) DEFAULT NULL, + `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `zip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL, + `town` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_state` int(11) DEFAULT '0', + `fk_country` int(11) DEFAULT '0', + `color` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `accountancy_code` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `barcode` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_barcode_type` int(11) DEFAULT '0', + `nb_holiday` int(11) DEFAULT '0', + `salary` double(24,8) DEFAULT NULL, + `tjm` double(24,8) DEFAULT NULL, + `salaryextra` double(24,8) DEFAULT NULL, + `weeklyhours` double(16,8) DEFAULT NULL, + `gender` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL, + `note_public` text COLLATE utf8_unicode_ci, + `dateemployment` datetime DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `birth` date DEFAULT NULL, + `pass_encoding` varchar(24) COLLATE utf8_unicode_ci DEFAULT NULL, + `default_range` int(11) DEFAULT NULL, + `default_c_exp_tax_cat` int(11) DEFAULT NULL, + `dateemploymentend` date DEFAULT NULL, + `twitter` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `facebook` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `instagram` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `snapchat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `googleplus` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `youtube` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `whatsapp` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_login` (`login`,`entity`), + UNIQUE KEY `uk_user_fk_socpeople` (`fk_socpeople`), + UNIQUE KEY `uk_user_fk_member` (`fk_member`), + UNIQUE KEY `uk_user_api_key` (`api_key`), + KEY `idx_user_api_key` (`api_key`), + KEY `idx_user_fk_societe` (`fk_soc`) +) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user` +-- + +LOCK TABLES `llx_user` WRITE; +/*!40000 ALTER TABLE `llx_user` DISABLE KEYS */; +INSERT INTO `llx_user` VALUES (1,'2010-07-08 13:20:11','2017-02-01 15:06:04',NULL,NULL,'aeinstein',0,NULL,NULL,NULL,1,0,NULL,'11c9c772d6471aa24c27274bdd8a223b',NULL,NULL,'Einstein','Albert','','','123456789','','','aeinstein@example.com','',0,'',1,1,NULL,NULL,NULL,'','2015-10-05 08:32:44','2015-10-03 11:43:50',NULL,'',1,'alberteinstein.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'aaaaff','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,'2010-07-08 13:54:48','2017-02-01 15:06:04',NULL,NULL,'demo',1,NULL,NULL,NULL,1,0,NULL,'fe01ce2a7fbac8fafaed7c982a04e229',NULL,NULL,'Doe','David','','','09123123','','','daviddoe@mycompany.com','',0,'',1,1,NULL,NULL,NULL,'','2016-07-30 23:10:54','2016-07-30 23:04:17',NULL,'',1,'johndoe.png',NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'2010-07-11 16:18:59','2017-02-01 15:06:04',NULL,NULL,'pcurie',1,NULL,NULL,NULL,1,0,NULL,'ab335b4eb4c3c99334f656e5db9584c9',NULL,NULL,'Curie','Pierre','','','','','','pcurie@example.com','',0,'',1,1,NULL,NULL,2,'','2012-12-21 17:38:55',NULL,NULL,'',1,'pierrecurie.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,'2013-01-23 17:52:27','2017-02-01 15:06:04',NULL,NULL,'bbookkeeper',1,NULL,NULL,NULL,1,0,NULL,'a7d30b58d647fcf59b7163f9592b1dbb',NULL,NULL,'Bookkeeper','Bob','Bookkeeper','','','','','','',0,'',1,1,17,6,NULL,'','2013-02-25 10:18:41','2013-01-23 17:53:20',NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(10,'2015-10-03 11:47:41','2017-02-01 15:06:04',NULL,NULL,'mcurie',1,NULL,NULL,NULL,1,0,NULL,'52cda011808bb282d1d3625ab607a145',NULL,'t3mnkbhs','Curie','Marie','','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,'mariecurie.jpg',NULL,NULL,14,NULL,'','','',NULL,NULL,'ffaaff','',NULL,0,0,NULL,NULL,NULL,NULL,'woman',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,'2015-10-05 09:07:52','2017-02-01 15:06:04',NULL,NULL,'zzeceo',1,NULL,NULL,NULL,1,0,NULL,'92af989c4c3a5140fb5d73eb77a52454',NULL,'cq78nf9m','Zeceo','Zack','President','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 22:48:08','2015-10-05 21:18:46',NULL,'',1,NULL,NULL,NULL,NULL,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,'2015-10-05 09:09:46','2018-01-19 11:24:18',NULL,NULL,'admin',0,NULL,NULL,NULL,1,0,NULL,'f6fdffe48c908deb0f4c3bd36c032e72',NULL,'nd6hgbcr','Adminson','Alice','Admin Technical','','','','','','Alice - 123',1,NULL,1,1,NULL,NULL,NULL,'','2018-03-16 13:54:23','2018-01-19 11:21:41',NULL,'',1,'mariecurie.jpg',NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'woman',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(13,'2015-10-05 21:29:35','2017-02-01 15:06:04',NULL,NULL,'ccommercy',1,NULL,NULL,NULL,1,0,NULL,'179858e041af35e8f4c81d68c55fe9da',NULL,'y451ksdv','Commercy','Charle','Commercial leader','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(14,'2015-10-05 21:33:33','2017-02-01 15:06:04',NULL,NULL,'sscientol',1,NULL,NULL,NULL,1,0,NULL,'39bee07ac42f31c98e79cdcd5e5fe4c5',NULL,'s2hp8bxd','Scientol','Sam','Scientist leader','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,11,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(16,'2015-10-05 22:47:52','2017-02-20 16:49:00',NULL,NULL,'ccommerson',1,NULL,NULL,NULL,1,0,NULL,'d68005ccf362b82d084551b6291792a3',NULL,'cx9y1dk0','Charle1','Commerson','Sale representative','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 23:46:24','2015-10-05 23:37:31',NULL,'',1,NULL,NULL,NULL,13,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(17,'2015-10-05 22:48:39','2017-02-01 15:06:04',NULL,NULL,'cc2',1,NULL,NULL,NULL,1,0,NULL,'a964065211872fb76f876c6c3e952ea3',NULL,'gw8cb7xj','Charle2','Commerson','Sale representative','','','','','','',0,NULL,1,1,NULL,NULL,NULL,'','2015-10-05 23:16:06',NULL,NULL,'',0,NULL,NULL,NULL,13,NULL,'','','',NULL,NULL,'','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(18,'2016-01-22 17:27:02','2017-02-01 15:06:04',NULL,NULL,'ldestailleur',1,NULL,NULL,NULL,1,0,NULL,'1bb7805145a7a5066df9e6d585b8b645',NULL,'87g06wbx','Destailleur','Laurent','Project leader of Dolibarr ERP CRM','','','','','ldestailleur@example.com','
Laurent DESTAILLEUR
\r\n\r\n
\r\n
Project Director
\r\nldestailleur@example.com
\r\n\r\n
 
\r\n\r\n\r\n
',0,NULL,1,1,10,10,NULL,'More information on http://www.destailleur.fr','2017-09-06 11:55:30','2017-08-30 15:53:25',NULL,'',1,'ldestailleur_200x200.jpg',NULL,NULL,NULL,NULL,'','','',NULL,NULL,'007f7f','',NULL,0,0,NULL,NULL,NULL,NULL,'man',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),(19,'2017-02-02 03:55:44','2017-02-01 23:56:50',NULL,NULL,'aboston',1,NULL,NULL,NULL,1,0,NULL,'a7a77a5aff2d5fc2f75f2f61507c88d4',NULL,NULL,'Boston','Alex','','','','','','aboston@example.com','Alex Boston
\r\nAdmin support service - 555 01 02 03 04',0,NULL,1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,12,25.00000000,'','','',NULL,NULL,'ff00ff','',NULL,0,0,NULL,NULL,NULL,32.00000000,NULL,NULL,'2014-11-04 00:00:00',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `llx_user` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_alert` +-- + +DROP TABLE IF EXISTS `llx_user_alert`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_alert` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `type` int(11) DEFAULT NULL, + `fk_contact` int(11) DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_alert` +-- + +LOCK TABLES `llx_user_alert` WRITE; +/*!40000 ALTER TABLE `llx_user_alert` DISABLE KEYS */; +INSERT INTO `llx_user_alert` VALUES (1,1,1,1),(2,1,10,12); +/*!40000 ALTER TABLE `llx_user_alert` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_clicktodial` +-- + +DROP TABLE IF EXISTS `llx_user_clicktodial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_clicktodial` ( + `fk_user` int(11) NOT NULL, + `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `login` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, + `pass` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL, + `poste` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`fk_user`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_clicktodial` +-- + +LOCK TABLES `llx_user_clicktodial` WRITE; +/*!40000 ALTER TABLE `llx_user_clicktodial` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_clicktodial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_employment` +-- + +DROP TABLE IF EXISTS `llx_user_employment`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_employment` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `ref_ext` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_user` int(11) DEFAULT NULL, + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `job` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) NOT NULL, + `salary` double(24,8) DEFAULT NULL, + `salaryextra` double(24,8) DEFAULT NULL, + `weeklyhours` double(16,8) DEFAULT NULL, + `dateemployment` date DEFAULT NULL, + `dateemploymentend` date DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_employment` (`ref`,`entity`), + KEY `fk_user_employment_fk_user` (`fk_user`), + CONSTRAINT `fk_user_employment_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_employment` +-- + +LOCK TABLES `llx_user_employment` WRITE; +/*!40000 ALTER TABLE `llx_user_employment` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_employment` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_extrafields` +-- + +DROP TABLE IF EXISTS `llx_user_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_user_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_extrafields` +-- + +LOCK TABLES `llx_user_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_user_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_param` +-- + +DROP TABLE IF EXISTS `llx_user_param`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_param` ( + `fk_user` int(11) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `param` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `value` text COLLATE utf8_unicode_ci NOT NULL, + UNIQUE KEY `uk_user_param` (`fk_user`,`param`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_param` +-- + +LOCK TABLES `llx_user_param` WRITE; +/*!40000 ALTER TABLE `llx_user_param` DISABLE KEYS */; +INSERT INTO `llx_user_param` VALUES (1,1,'MAIN_BOXES_0','1'),(1,1,'MAIN_THEME','eldy'),(1,3,'THEME_ELDY_ENABLE_PERSONALIZED','1'),(1,1,'THEME_ELDY_RGB','ded0ed'),(1,3,'THEME_ELDY_RGB','d0ddc3'),(2,1,'MAIN_BOXES_0','1'),(11,1,'MAIN_BOXES_0','1'),(12,1,'MAIN_BOXES_0','1'),(12,1,'MAIN_LANG_DEFAULT','en_US'),(12,1,'MAIN_SELECTEDFIELDS_/dolibarr_4.0/htdocs/adherents/list.php','d.zip,d.ref,d.lastname,d.firstname,d.company,d.login,d.morphy,t.libelle,d.email,d.datefin,d.statut,'),(12,1,'MAIN_SELECTEDFIELDS_invoicelist','f.tms,f.facnumber,f.ref_client,f.date,f.date_lim_reglement,s.nom,s.town,s.zip,f.fk_mode_reglement,f.total_ht,rtp,f.fk_statut,'),(12,1,'MAIN_SELECTEDFIELDS_projectlist','p.budget_amount,p.ref,p.title,s.nom,commercial,p.dateo,p.datee,p.public,p.opp_amount,p.fk_opp_status,p.opp_percent,p.fk_statut,ef.priority,'),(12,1,'MAIN_SELECTEDFIELDS_proposallist','p.datec,p.ref,p.ref_client,s.nom,s.town,s.zip,p.date,p.fin_validite,p.total_ht,u.login,p.fk_statut,'),(12,1,'MAIN_SELECTEDFIELDS_servicelist','p.ref,p.label,p.duration,p.sellprice,p.minbuyprice,p.tosell,p.tobuy,'); +/*!40000 ALTER TABLE `llx_user_param` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_rib` +-- + +DROP TABLE IF EXISTS `llx_user_rib`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_rib` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `label` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, + `bank` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_banque` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `code_guichet` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `cle_rib` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL, + `bic` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL, + `iban_prefix` varchar(34) COLLATE utf8_unicode_ci DEFAULT NULL, + `domiciliation` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `proprio` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, + `owner_address` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_rib` +-- + +LOCK TABLES `llx_user_rib` WRITE; +/*!40000 ALTER TABLE `llx_user_rib` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_user_rib` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_user_rights` +-- + +DROP TABLE IF EXISTS `llx_user_rights`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_user_rights` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `fk_id` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_user_rights` (`entity`,`fk_user`,`fk_id`), + KEY `fk_user_rights_fk_user_user` (`fk_user`), + CONSTRAINT `fk_user_rights_fk_user_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=16561 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_user_rights` +-- + +LOCK TABLES `llx_user_rights` WRITE; +/*!40000 ALTER TABLE `llx_user_rights` DISABLE KEYS */; +INSERT INTO `llx_user_rights` VALUES (12402,1,1,11),(12380,1,1,12),(12385,1,1,13),(12389,1,1,14),(12393,1,1,15),(12398,1,1,16),(12404,1,1,19),(9726,1,1,21),(9700,1,1,22),(9706,1,1,24),(9711,1,1,25),(9716,1,1,26),(9722,1,1,27),(9728,1,1,28),(9978,1,1,31),(9968,1,1,32),(9974,1,1,34),(1910,1,1,36),(9980,1,1,38),(11573,1,1,41),(11574,1,1,42),(11575,1,1,44),(11576,1,1,45),(7184,1,1,61),(7181,1,1,62),(7183,1,1,64),(7185,1,1,67),(7186,1,1,68),(1678,1,1,71),(1673,1,1,72),(1675,1,1,74),(1679,1,1,75),(1677,1,1,76),(1681,1,1,78),(1682,1,1,79),(12322,1,1,81),(12309,1,1,82),(12312,1,1,84),(12314,1,1,86),(12317,1,1,87),(12320,1,1,88),(12323,1,1,89),(11580,1,1,91),(11581,1,1,92),(11582,1,1,93),(11583,1,1,94),(10097,1,1,95),(10099,1,1,96),(10103,1,1,97),(10104,1,1,98),(7139,1,1,101),(7134,1,1,102),(7136,1,1,104),(7137,1,1,105),(7138,1,1,106),(7140,1,1,109),(10229,1,1,111),(10201,1,1,112),(10207,1,1,113),(10213,1,1,114),(10219,1,1,115),(10225,1,1,116),(10231,1,1,117),(12518,1,1,121),(12508,1,1,122),(12514,1,1,125),(12520,1,1,126),(11577,1,1,141),(11578,1,1,142),(11579,1,1,144),(2307,1,1,151),(2304,1,1,152),(2306,1,1,153),(2308,1,1,154),(10092,1,1,161),(10093,1,1,162),(10094,1,1,163),(10095,1,1,164),(10096,1,1,165),(1585,1,1,170),(12342,1,1,171),(12331,1,1,172),(12335,1,1,173),(12339,1,1,174),(12343,1,1,178),(10000,1,1,221),(9990,1,1,222),(9996,1,1,223),(10002,1,1,229),(10007,1,1,237),(10011,1,1,238),(10015,1,1,239),(1686,1,1,241),(1685,1,1,242),(1687,1,1,243),(12604,1,1,251),(12566,1,1,252),(12569,1,1,253),(12572,1,1,254),(12575,1,1,255),(12579,1,1,256),(1617,1,1,258),(12525,1,1,262),(12544,1,1,281),(12534,1,1,282),(12540,1,1,283),(12546,1,1,286),(12288,1,1,300),(12290,1,1,301),(11591,1,1,302),(1763,1,1,331),(1762,1,1,332),(1764,1,1,333),(12582,1,1,341),(12584,1,1,342),(12586,1,1,343),(12588,1,1,344),(12600,1,1,351),(12593,1,1,352),(12597,1,1,353),(12601,1,1,354),(12605,1,1,358),(12560,1,1,531),(12553,1,1,532),(12557,1,1,534),(1625,1,1,536),(12561,1,1,538),(12358,1,1,700),(12348,1,1,701),(12354,1,1,702),(12360,1,1,703),(1755,1,1,1001),(1754,1,1,1002),(1756,1,1,1003),(1758,1,1,1004),(1759,1,1,1005),(7146,1,1,1101),(7143,1,1,1102),(7145,1,1,1104),(7147,1,1,1109),(12412,1,1,1181),(12458,1,1,1182),(12417,1,1,1183),(12420,1,1,1184),(12423,1,1,1185),(12427,1,1,1186),(12431,1,1,1187),(12437,1,1,1188),(12434,1,1,1189),(1578,1,1,1201),(1579,1,1,1202),(12454,1,1,1231),(12443,1,1,1232),(12446,1,1,1233),(12449,1,1,1234),(12452,1,1,1235),(12455,1,1,1236),(12459,1,1,1237),(1736,1,1,1251),(12409,1,1,1321),(12326,1,1,1421),(8190,1,1,1791),(8187,1,1,1792),(8191,1,1,1793),(12264,1,1,2401),(12260,1,1,2402),(12266,1,1,2403),(12280,1,1,2411),(12276,1,1,2412),(12282,1,1,2413),(12286,1,1,2414),(1618,1,1,2500),(12370,1,1,2501),(12367,1,1,2503),(12371,1,1,2515),(9610,1,1,5001),(9611,1,1,5002),(12490,1,1,20001),(12468,1,1,20002),(12474,1,1,20003),(12480,1,1,20004),(12486,1,1,20005),(12492,1,1,20006),(12302,1,1,23001),(12295,1,1,23002),(12299,1,1,23003),(12303,1,1,23004),(7701,1,1,50101),(4984,1,1,50401),(4983,1,1,50402),(4985,1,1,50403),(4987,1,1,50411),(4988,1,1,50412),(4989,1,1,50415),(12498,1,1,55001),(12499,1,1,55002),(3564,1,1,100700),(3565,1,1,100701),(9596,1,1,101051),(9598,1,1,101052),(9600,1,1,101053),(9604,1,1,101060),(9605,1,1,101061),(7177,1,1,101201),(7178,1,1,101202),(10353,1,1,101250),(10355,1,1,101251),(8980,1,1,101261),(8981,1,1,101262),(7616,1,1,101331),(10030,1,1,101701),(10031,1,1,101702),(3582,1,1,102000),(3583,1,1,102001),(9819,1,1,400051),(9823,1,1,400052),(9827,1,1,400053),(9831,1,1,400055),(132,1,2,11),(133,1,2,12),(134,1,2,13),(135,1,2,14),(136,1,2,16),(137,1,2,19),(138,1,2,21),(139,1,2,22),(140,1,2,24),(141,1,2,25),(142,1,2,26),(143,1,2,27),(10359,1,2,31),(145,1,2,32),(10361,1,2,34),(146,1,2,36),(147,1,2,41),(148,1,2,42),(149,1,2,44),(150,1,2,61),(151,1,2,62),(152,1,2,64),(153,1,2,71),(154,1,2,72),(155,1,2,74),(156,1,2,75),(157,1,2,78),(158,1,2,79),(159,1,2,81),(160,1,2,82),(161,1,2,84),(162,1,2,86),(163,1,2,87),(164,1,2,88),(165,1,2,89),(166,1,2,91),(167,1,2,92),(168,1,2,93),(2475,1,2,95),(2476,1,2,96),(2477,1,2,97),(2478,1,2,98),(169,1,2,101),(170,1,2,102),(171,1,2,104),(172,1,2,109),(173,1,2,111),(174,1,2,112),(175,1,2,113),(176,1,2,114),(177,1,2,116),(178,1,2,117),(179,1,2,121),(180,1,2,122),(181,1,2,125),(182,1,2,141),(183,1,2,142),(184,1,2,144),(2479,1,2,151),(2480,1,2,152),(2481,1,2,153),(2482,1,2,154),(185,1,2,161),(186,1,2,162),(187,1,2,163),(188,1,2,164),(189,1,2,165),(190,1,2,170),(2471,1,2,171),(192,1,2,172),(2472,1,2,173),(193,1,2,221),(194,1,2,222),(195,1,2,229),(196,1,2,241),(197,1,2,242),(198,1,2,243),(199,1,2,251),(201,1,2,262),(202,1,2,281),(203,1,2,282),(204,1,2,283),(205,1,2,331),(15072,1,2,510),(2483,1,2,531),(207,1,2,532),(2484,1,2,534),(208,1,2,536),(2473,1,2,700),(210,1,2,701),(211,1,2,702),(2474,1,2,703),(15064,1,2,771),(15057,1,2,772),(15059,1,2,773),(15061,1,2,774),(15063,1,2,775),(15065,1,2,776),(212,1,2,1001),(213,1,2,1002),(214,1,2,1003),(215,1,2,1004),(216,1,2,1005),(217,1,2,1101),(218,1,2,1102),(219,1,2,1104),(220,1,2,1109),(15073,1,2,1121),(15074,1,2,1122),(15075,1,2,1123),(15076,1,2,1124),(15077,1,2,1125),(15078,1,2,1126),(221,1,2,1181),(222,1,2,1182),(223,1,2,1183),(224,1,2,1184),(225,1,2,1185),(226,1,2,1186),(227,1,2,1187),(228,1,2,1188),(229,1,2,1201),(230,1,2,1202),(231,1,2,1231),(232,1,2,1232),(233,1,2,1233),(234,1,2,1234),(235,1,2,1421),(236,1,2,2401),(237,1,2,2402),(238,1,2,2403),(239,1,2,2411),(240,1,2,2412),(241,1,2,2413),(242,1,2,2500),(2470,1,2,2501),(243,1,2,2515),(10363,1,2,20001),(10364,1,2,20002),(10365,1,2,20003),(10366,1,2,20004),(10367,1,2,20005),(10368,1,2,20006),(15054,1,2,23001),(10362,1,2,50101),(15067,1,2,55001),(15066,1,2,59001),(15068,1,2,63001),(15069,1,2,63002),(15070,1,2,63003),(15071,1,2,63004),(10372,1,2,101250),(1807,1,3,11),(1808,1,3,31),(1809,1,3,36),(1810,1,3,41),(1811,1,3,61),(1812,1,3,71),(1813,1,3,72),(1814,1,3,74),(1815,1,3,75),(1816,1,3,78),(1817,1,3,79),(1818,1,3,91),(1819,1,3,95),(1820,1,3,97),(1821,1,3,111),(1822,1,3,121),(1823,1,3,122),(1824,1,3,125),(1825,1,3,161),(1826,1,3,170),(1827,1,3,171),(1828,1,3,172),(1829,1,3,221),(1830,1,3,222),(1831,1,3,229),(1832,1,3,241),(1833,1,3,242),(1834,1,3,243),(1835,1,3,251),(1836,1,3,255),(1837,1,3,256),(1838,1,3,262),(1839,1,3,281),(1840,1,3,282),(1841,1,3,283),(1842,1,3,331),(1843,1,3,531),(1844,1,3,536),(1845,1,3,700),(1846,1,3,1001),(1847,1,3,1002),(1848,1,3,1003),(1849,1,3,1004),(1850,1,3,1005),(1851,1,3,1181),(1852,1,3,1182),(1853,1,3,1201),(1854,1,3,1202),(1855,1,3,1231),(1856,1,3,2401),(1857,1,3,2402),(1858,1,3,2403),(1859,1,3,2411),(1860,1,3,2412),(1861,1,3,2413),(1862,1,3,2500),(1863,1,3,2515),(8026,1,4,11),(8027,1,4,21),(8028,1,4,31),(8029,1,4,41),(8030,1,4,61),(8031,1,4,71),(8032,1,4,72),(8033,1,4,74),(8034,1,4,75),(8035,1,4,78),(8036,1,4,79),(8037,1,4,81),(8038,1,4,91),(8039,1,4,95),(8040,1,4,97),(8041,1,4,101),(8042,1,4,111),(8043,1,4,121),(8044,1,4,151),(8045,1,4,161),(8046,1,4,171),(8047,1,4,221),(8048,1,4,222),(8049,1,4,229),(8050,1,4,241),(8051,1,4,242),(8052,1,4,243),(8146,1,4,251),(8147,1,4,253),(8053,1,4,262),(8054,1,4,281),(8055,1,4,331),(8056,1,4,341),(8057,1,4,342),(8058,1,4,343),(8059,1,4,344),(8060,1,4,531),(8061,1,4,700),(8062,1,4,1001),(8063,1,4,1002),(8064,1,4,1003),(8065,1,4,1004),(8066,1,4,1005),(8067,1,4,1101),(8068,1,4,1181),(8069,1,4,1182),(8070,1,4,1201),(8071,1,4,1202),(8072,1,4,1231),(8073,1,4,2401),(8074,1,4,2501),(8075,1,4,2503),(8076,1,4,2515),(8077,1,4,20001),(8078,1,4,50101),(8079,1,4,101201),(8080,1,4,101261),(8081,1,4,102000),(8082,1,4,400051),(8083,1,4,400052),(8084,1,4,400053),(8085,1,4,400055),(12608,1,10,11),(12609,1,10,21),(12610,1,10,31),(12611,1,10,41),(12612,1,10,61),(12613,1,10,71),(12614,1,10,72),(12615,1,10,74),(12616,1,10,75),(12617,1,10,78),(12618,1,10,79),(12619,1,10,81),(12620,1,10,91),(12621,1,10,95),(12622,1,10,97),(12623,1,10,101),(12624,1,10,111),(12625,1,10,121),(12626,1,10,151),(12627,1,10,161),(12628,1,10,171),(12629,1,10,221),(12630,1,10,222),(12631,1,10,229),(12632,1,10,241),(12633,1,10,242),(12634,1,10,243),(12635,1,10,262),(12636,1,10,281),(12637,1,10,300),(12638,1,10,331),(12639,1,10,341),(12640,1,10,342),(12641,1,10,343),(12642,1,10,344),(12643,1,10,531),(12644,1,10,700),(12645,1,10,1001),(12646,1,10,1002),(12647,1,10,1003),(12648,1,10,1004),(12649,1,10,1005),(12650,1,10,1101),(12651,1,10,1181),(12652,1,10,1182),(12653,1,10,1201),(12654,1,10,1202),(12655,1,10,1231),(12656,1,10,2401),(12657,1,10,2501),(12658,1,10,2503),(12659,1,10,2515),(12660,1,10,20001),(12661,1,10,20002),(12662,1,10,23001),(12663,1,10,50101),(12664,1,11,11),(12665,1,11,21),(12666,1,11,31),(12667,1,11,41),(12668,1,11,61),(12669,1,11,71),(12670,1,11,72),(12671,1,11,74),(12672,1,11,75),(12673,1,11,78),(12674,1,11,79),(12675,1,11,81),(12676,1,11,91),(12677,1,11,95),(12678,1,11,97),(12679,1,11,101),(12680,1,11,111),(12681,1,11,121),(12682,1,11,151),(12683,1,11,161),(12684,1,11,171),(12685,1,11,221),(12686,1,11,222),(12687,1,11,229),(12688,1,11,241),(12689,1,11,242),(12690,1,11,243),(12691,1,11,262),(12692,1,11,281),(12693,1,11,300),(12694,1,11,331),(12695,1,11,341),(12696,1,11,342),(12697,1,11,343),(12698,1,11,344),(12699,1,11,531),(12700,1,11,700),(12701,1,11,1001),(12702,1,11,1002),(12703,1,11,1003),(12704,1,11,1004),(12705,1,11,1005),(12706,1,11,1101),(12707,1,11,1181),(12708,1,11,1182),(12709,1,11,1201),(12710,1,11,1202),(12711,1,11,1231),(12712,1,11,2401),(12713,1,11,2501),(12714,1,11,2503),(12715,1,11,2515),(12716,1,11,20001),(12717,1,11,20002),(12718,1,11,23001),(12719,1,11,50101),(16456,1,12,11),(16448,1,12,12),(16449,1,12,13),(16450,1,12,14),(16451,1,12,15),(16454,1,12,16),(16457,1,12,19),(14146,1,12,21),(14135,1,12,22),(14137,1,12,24),(14139,1,12,25),(14142,1,12,26),(14145,1,12,27),(14148,1,12,28),(14930,1,12,31),(14926,1,12,32),(14929,1,12,34),(14932,1,12,38),(13816,1,12,41),(13813,1,12,42),(13815,1,12,44),(13817,1,12,45),(14094,1,12,61),(14091,1,12,62),(14093,1,12,64),(14095,1,12,67),(14096,1,12,68),(16203,1,12,71),(16198,1,12,72),(16200,1,12,74),(16204,1,12,75),(16202,1,12,76),(16206,1,12,78),(16207,1,12,79),(16428,1,12,81),(16422,1,12,82),(16423,1,12,84),(16424,1,12,86),(16426,1,12,87),(16427,1,12,88),(16429,1,12,89),(15401,1,12,91),(15397,1,12,92),(15400,1,12,93),(15403,1,12,94),(13990,1,12,95),(12734,1,12,97),(14939,1,12,101),(14935,1,12,102),(14936,1,12,104),(14937,1,12,105),(14938,1,12,106),(14940,1,12,109),(15390,1,12,111),(15377,1,12,112),(15380,1,12,113),(15383,1,12,114),(15386,1,12,115),(15389,1,12,116),(15392,1,12,117),(16518,1,12,121),(16513,1,12,122),(16516,1,12,125),(16519,1,12,126),(13821,1,12,141),(13820,1,12,142),(13822,1,12,144),(13912,1,12,151),(13909,1,12,152),(13911,1,12,153),(13913,1,12,154),(14063,1,12,161),(14056,1,12,162),(14058,1,12,163),(14060,1,12,164),(14062,1,12,165),(14064,1,12,167),(13350,1,12,171),(13345,1,12,172),(13347,1,12,173),(13349,1,12,174),(13351,1,12,178),(13838,1,12,221),(13834,1,12,222),(13837,1,12,223),(13840,1,12,229),(13842,1,12,237),(13844,1,12,238),(13846,1,12,239),(13516,1,12,241),(13515,1,12,242),(13517,1,12,243),(16559,1,12,251),(16540,1,12,252),(16542,1,12,253),(16543,1,12,254),(16545,1,12,255),(16547,1,12,256),(16520,1,12,262),(16530,1,12,281),(16525,1,12,282),(16528,1,12,283),(16531,1,12,286),(16411,1,12,300),(16412,1,12,301),(16194,1,12,331),(16193,1,12,332),(16195,1,12,333),(16548,1,12,341),(16549,1,12,342),(16550,1,12,343),(16551,1,12,344),(16557,1,12,351),(16554,1,12,352),(16556,1,12,353),(16558,1,12,354),(16560,1,12,358),(16384,1,12,501),(16378,1,12,502),(13865,1,12,510),(16507,1,12,511),(16504,1,12,512),(16506,1,12,514),(16508,1,12,517),(15291,1,12,520),(15286,1,12,522),(15288,1,12,524),(15290,1,12,525),(15292,1,12,527),(16537,1,12,531),(16534,1,12,532),(16536,1,12,534),(16538,1,12,538),(13358,1,12,700),(16437,1,12,701),(16435,1,12,702),(16438,1,12,703),(15090,1,12,771),(15081,1,12,772),(15083,1,12,773),(15085,1,12,774),(15087,1,12,775),(15089,1,12,776),(15091,1,12,779),(14917,1,12,1001),(14916,1,12,1002),(14918,1,12,1003),(14920,1,12,1004),(14921,1,12,1005),(14945,1,12,1101),(14943,1,12,1102),(14944,1,12,1104),(14946,1,12,1109),(14762,1,12,1121),(14755,1,12,1122),(14757,1,12,1123),(14759,1,12,1124),(14761,1,12,1125),(14763,1,12,1126),(16460,1,12,1181),(16474,1,12,1182),(16463,1,12,1183),(16464,1,12,1184),(16466,1,12,1185),(16468,1,12,1186),(16470,1,12,1187),(16473,1,12,1188),(16471,1,12,1189),(16475,1,12,1191),(13827,1,12,1201),(13828,1,12,1202),(16483,1,12,1231),(16478,1,12,1232),(16479,1,12,1233),(16481,1,12,1234),(16482,1,12,1235),(16484,1,12,1236),(16302,1,12,1237),(13829,1,12,1251),(16458,1,12,1321),(16459,1,12,1322),(16430,1,12,1421),(16400,1,12,2401),(16398,1,12,2402),(16401,1,12,2403),(16408,1,12,2411),(16406,1,12,2412),(16409,1,12,2413),(16410,1,12,2414),(16442,1,12,2501),(16441,1,12,2503),(16443,1,12,2515),(16386,1,12,3200),(15435,1,12,5001),(15436,1,12,5002),(16496,1,12,20001),(16487,1,12,20002),(16489,1,12,20003),(16493,1,12,20004),(16495,1,12,20005),(16497,1,12,20006),(16491,1,12,20007),(16418,1,12,23001),(16415,1,12,23002),(16417,1,12,23003),(16419,1,12,23004),(13712,1,12,50101),(16388,1,12,50401),(16390,1,12,50411),(16391,1,12,50412),(16392,1,12,50420),(16393,1,12,50430),(16387,1,12,50440),(16499,1,12,55001),(16500,1,12,55002),(14128,1,12,59001),(14129,1,12,59002),(14130,1,12,59003),(14818,1,12,63001),(14815,1,12,63002),(14817,1,12,63003),(14819,1,12,63004),(16501,1,12,64001),(16009,1,12,101331),(16010,1,12,101332),(16011,1,12,101333),(15438,1,12,101701),(15439,1,12,101702),(12776,1,13,11),(12777,1,13,21),(12778,1,13,31),(12779,1,13,41),(12780,1,13,61),(12781,1,13,71),(12782,1,13,72),(12783,1,13,74),(12784,1,13,75),(12785,1,13,78),(12786,1,13,79),(12787,1,13,81),(12788,1,13,91),(12789,1,13,95),(12790,1,13,97),(12791,1,13,101),(12792,1,13,111),(12793,1,13,121),(12794,1,13,151),(12795,1,13,161),(12796,1,13,171),(12797,1,13,221),(12798,1,13,222),(12799,1,13,229),(12800,1,13,241),(12801,1,13,242),(12802,1,13,243),(12803,1,13,262),(12804,1,13,281),(12805,1,13,300),(12806,1,13,331),(12807,1,13,341),(12808,1,13,342),(12809,1,13,343),(12810,1,13,344),(12811,1,13,531),(12812,1,13,700),(12813,1,13,1001),(12814,1,13,1002),(12815,1,13,1003),(12816,1,13,1004),(12817,1,13,1005),(12818,1,13,1101),(12819,1,13,1181),(12820,1,13,1182),(12821,1,13,1201),(12822,1,13,1202),(12823,1,13,1231),(12824,1,13,2401),(12825,1,13,2501),(12826,1,13,2503),(12827,1,13,2515),(12828,1,13,20001),(12829,1,13,20002),(12830,1,13,23001),(12831,1,13,50101),(12832,1,14,11),(12833,1,14,21),(12834,1,14,31),(12835,1,14,41),(12836,1,14,61),(12837,1,14,71),(12838,1,14,72),(12839,1,14,74),(12840,1,14,75),(12841,1,14,78),(12842,1,14,79),(12843,1,14,81),(12844,1,14,91),(12845,1,14,95),(12846,1,14,97),(12847,1,14,101),(12848,1,14,111),(12849,1,14,121),(12850,1,14,151),(12851,1,14,161),(12852,1,14,171),(12853,1,14,221),(12854,1,14,222),(12855,1,14,229),(12856,1,14,241),(12857,1,14,242),(12858,1,14,243),(12859,1,14,262),(12860,1,14,281),(12861,1,14,300),(12862,1,14,331),(12863,1,14,341),(12864,1,14,342),(12865,1,14,343),(12866,1,14,344),(12867,1,14,531),(12868,1,14,700),(12869,1,14,1001),(12870,1,14,1002),(12871,1,14,1003),(12872,1,14,1004),(12873,1,14,1005),(12874,1,14,1101),(12875,1,14,1181),(12876,1,14,1182),(12877,1,14,1201),(12878,1,14,1202),(12879,1,14,1231),(12880,1,14,2401),(12881,1,14,2501),(12882,1,14,2503),(12883,1,14,2515),(12884,1,14,20001),(12885,1,14,20002),(12886,1,14,23001),(12887,1,14,50101),(12944,1,16,11),(12945,1,16,21),(12946,1,16,31),(13056,1,16,41),(13057,1,16,42),(13058,1,16,44),(13059,1,16,45),(12948,1,16,61),(12949,1,16,71),(12950,1,16,72),(12951,1,16,74),(12952,1,16,75),(12953,1,16,78),(12954,1,16,79),(12955,1,16,81),(12956,1,16,91),(12957,1,16,95),(12958,1,16,97),(12959,1,16,101),(12960,1,16,111),(12961,1,16,121),(13060,1,16,141),(13061,1,16,142),(13062,1,16,144),(12962,1,16,151),(12963,1,16,161),(12964,1,16,171),(12965,1,16,221),(12966,1,16,222),(12967,1,16,229),(12968,1,16,241),(12969,1,16,242),(12970,1,16,243),(13128,1,16,251),(13064,1,16,262),(12972,1,16,281),(12973,1,16,300),(12974,1,16,331),(12975,1,16,341),(12976,1,16,342),(12977,1,16,343),(12978,1,16,344),(12979,1,16,531),(12980,1,16,700),(12981,1,16,1001),(12982,1,16,1002),(12983,1,16,1003),(12984,1,16,1004),(12985,1,16,1005),(12986,1,16,1101),(12987,1,16,1181),(12988,1,16,1182),(12989,1,16,1201),(12990,1,16,1202),(12991,1,16,1231),(12992,1,16,2401),(12993,1,16,2501),(12994,1,16,2503),(12995,1,16,2515),(12996,1,16,20001),(12997,1,16,20002),(12998,1,16,23001),(12999,1,16,50101),(13000,1,17,11),(13001,1,17,21),(13002,1,17,31),(13065,1,17,41),(13066,1,17,42),(13067,1,17,44),(13068,1,17,45),(13004,1,17,61),(13005,1,17,71),(13006,1,17,72),(13007,1,17,74),(13008,1,17,75),(13009,1,17,78),(13010,1,17,79),(13011,1,17,81),(13012,1,17,91),(13013,1,17,95),(13014,1,17,97),(13015,1,17,101),(13016,1,17,111),(13017,1,17,121),(13069,1,17,141),(13070,1,17,142),(13071,1,17,144),(13018,1,17,151),(13019,1,17,161),(13020,1,17,171),(13021,1,17,221),(13022,1,17,222),(13023,1,17,229),(13024,1,17,241),(13025,1,17,242),(13026,1,17,243),(13028,1,17,281),(13029,1,17,300),(13030,1,17,331),(13031,1,17,341),(13032,1,17,342),(13033,1,17,343),(13034,1,17,344),(13035,1,17,531),(13036,1,17,700),(13037,1,17,1001),(13038,1,17,1002),(13039,1,17,1003),(13040,1,17,1004),(13041,1,17,1005),(13042,1,17,1101),(13043,1,17,1181),(13044,1,17,1182),(13045,1,17,1201),(13046,1,17,1202),(13047,1,17,1231),(13048,1,17,2401),(13049,1,17,2501),(13050,1,17,2503),(13051,1,17,2515),(13052,1,17,20001),(13053,1,17,20002),(13054,1,17,23001),(13055,1,17,50101),(14504,1,18,11),(14505,1,18,21),(14506,1,18,31),(14507,1,18,41),(14508,1,18,61),(14509,1,18,71),(14510,1,18,78),(14511,1,18,81),(14512,1,18,91),(14513,1,18,95),(14514,1,18,101),(14515,1,18,111),(14516,1,18,121),(14517,1,18,151),(14518,1,18,161),(14519,1,18,221),(14520,1,18,241),(14521,1,18,262),(14522,1,18,281),(14523,1,18,300),(14524,1,18,331),(14525,1,18,332),(14526,1,18,333),(14527,1,18,341),(14528,1,18,342),(14529,1,18,343),(14530,1,18,344),(14531,1,18,531),(14532,1,18,701),(14533,1,18,771),(14534,1,18,774),(14535,1,18,1001),(14536,1,18,1004),(14537,1,18,1101),(14538,1,18,1181),(14539,1,18,1182),(14540,1,18,1201),(14541,1,18,1231),(14542,1,18,2401),(14543,1,18,2501),(14544,1,18,2503),(14545,1,18,2515),(14546,1,18,20001),(14547,1,18,20002),(14548,1,18,50101),(14549,1,18,59001),(15242,1,19,21),(15243,1,19,31),(15244,1,19,41),(15245,1,19,61),(15246,1,19,71),(15247,1,19,78),(15248,1,19,81),(15249,1,19,101),(15250,1,19,121),(15251,1,19,151),(15252,1,19,161),(15253,1,19,221),(15254,1,19,241),(15255,1,19,262),(15256,1,19,281),(15257,1,19,300),(15258,1,19,331),(15259,1,19,332),(15260,1,19,341),(15261,1,19,342),(15262,1,19,343),(15263,1,19,344),(15264,1,19,531),(15265,1,19,701),(15266,1,19,771),(15267,1,19,774),(15268,1,19,777),(15269,1,19,1001),(15270,1,19,1004),(15271,1,19,1101),(15272,1,19,1121),(15273,1,19,1181),(15274,1,19,1182),(15275,1,19,1201),(15276,1,19,1231),(15277,1,19,2401),(15278,1,19,2501),(15279,1,19,20001),(15280,1,19,20002),(15281,1,19,50101),(15282,1,19,59001),(15283,1,19,63001); +/*!40000 ALTER TABLE `llx_user_rights` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup` +-- + +DROP TABLE IF EXISTS `llx_usergroup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `nom` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `entity` int(11) NOT NULL DEFAULT '1', + `datec` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `note` text COLLATE utf8_unicode_ci, + `model_pdf` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_name` (`nom`,`entity`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup` +-- + +LOCK TABLES `llx_usergroup` WRITE; +/*!40000 ALTER TABLE `llx_usergroup` DISABLE KEYS */; +INSERT INTO `llx_usergroup` VALUES (1,'Sale representatives',1,'2013-01-16 20:48:08','2015-10-03 09:44:44','All sales representative users',NULL),(2,'Management',1,'2015-10-03 11:46:25','2015-10-03 09:46:25','',NULL),(3,'Scientists',1,'2015-10-03 11:46:46','2015-10-03 09:46:46','',NULL),(4,'Commercial',1,'2015-10-05 21:30:13','2015-10-05 19:30:13','',NULL); +/*!40000 ALTER TABLE `llx_usergroup` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_extrafields` +-- + +DROP TABLE IF EXISTS `llx_usergroup_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_usergroup_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_extrafields` +-- + +LOCK TABLES `llx_usergroup_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_usergroup_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_rights` +-- + +DROP TABLE IF EXISTS `llx_usergroup_rights`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_rights` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_usergroup` int(11) NOT NULL, + `fk_id` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_rights` (`entity`,`fk_usergroup`,`fk_id`), + KEY `fk_usergroup_rights_fk_usergroup` (`fk_usergroup`), + CONSTRAINT `fk_usergroup_rights_fk_usergroup` FOREIGN KEY (`fk_usergroup`) REFERENCES `llx_usergroup` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=200 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_rights` +-- + +LOCK TABLES `llx_usergroup_rights` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_rights` DISABLE KEYS */; +INSERT INTO `llx_usergroup_rights` VALUES (1,1,1,2401),(2,1,1,2402),(3,1,1,2403),(4,1,1,2411),(5,1,1,2412),(6,1,1,2413),(78,1,2,11),(79,1,2,12),(80,1,2,13),(81,1,2,14),(82,1,2,15),(83,1,2,16),(84,1,2,19),(144,1,2,21),(145,1,2,22),(146,1,2,24),(147,1,2,25),(148,1,2,26),(149,1,2,27),(150,1,2,28),(133,1,2,31),(134,1,2,32),(135,1,2,34),(136,1,2,38),(137,1,2,41),(138,1,2,42),(139,1,2,44),(140,1,2,45),(86,1,2,61),(87,1,2,62),(88,1,2,64),(89,1,2,67),(90,1,2,68),(7,1,2,71),(8,1,2,72),(9,1,2,74),(10,1,2,75),(11,1,2,76),(12,1,2,78),(13,1,2,79),(32,1,2,81),(33,1,2,82),(34,1,2,84),(35,1,2,86),(36,1,2,87),(37,1,2,88),(38,1,2,89),(173,1,2,91),(174,1,2,92),(175,1,2,93),(176,1,2,94),(66,1,2,101),(67,1,2,102),(68,1,2,104),(69,1,2,105),(70,1,2,106),(71,1,2,109),(21,1,2,111),(22,1,2,112),(23,1,2,113),(24,1,2,114),(25,1,2,115),(26,1,2,116),(27,1,2,117),(164,1,2,121),(165,1,2,122),(166,1,2,125),(167,1,2,126),(141,1,2,141),(142,1,2,142),(143,1,2,144),(129,1,2,151),(130,1,2,152),(131,1,2,153),(132,1,2,154),(44,1,2,161),(45,1,2,162),(46,1,2,163),(47,1,2,164),(48,1,2,165),(49,1,2,167),(120,1,2,221),(121,1,2,222),(122,1,2,223),(123,1,2,229),(124,1,2,237),(125,1,2,238),(126,1,2,239),(29,1,2,241),(30,1,2,242),(31,1,2,243),(182,1,2,251),(183,1,2,252),(184,1,2,253),(185,1,2,254),(186,1,2,255),(187,1,2,256),(168,1,2,262),(169,1,2,281),(170,1,2,282),(171,1,2,283),(172,1,2,286),(197,1,2,331),(198,1,2,332),(199,1,2,333),(188,1,2,341),(189,1,2,342),(190,1,2,343),(191,1,2,344),(192,1,2,351),(193,1,2,352),(194,1,2,353),(195,1,2,354),(196,1,2,358),(151,1,2,531),(152,1,2,532),(153,1,2,534),(154,1,2,538),(60,1,2,701),(61,1,2,702),(62,1,2,703),(177,1,2,1001),(178,1,2,1002),(179,1,2,1003),(180,1,2,1004),(181,1,2,1005),(72,1,2,1101),(73,1,2,1102),(74,1,2,1104),(75,1,2,1109),(91,1,2,1181),(92,1,2,1182),(93,1,2,1183),(94,1,2,1184),(95,1,2,1185),(96,1,2,1186),(97,1,2,1187),(98,1,2,1188),(99,1,2,1189),(76,1,2,1201),(77,1,2,1202),(100,1,2,1231),(101,1,2,1232),(102,1,2,1233),(103,1,2,1234),(104,1,2,1235),(105,1,2,1236),(106,1,2,1237),(113,1,2,1251),(85,1,2,1321),(39,1,2,1421),(14,1,2,2401),(15,1,2,2402),(16,1,2,2403),(17,1,2,2411),(18,1,2,2412),(19,1,2,2413),(20,1,2,2414),(63,1,2,2501),(64,1,2,2503),(65,1,2,2515),(114,1,2,20001),(115,1,2,20002),(116,1,2,20003),(117,1,2,20004),(118,1,2,20005),(119,1,2,20006),(50,1,2,23001),(51,1,2,23002),(52,1,2,23003),(53,1,2,23004),(28,1,2,50101),(127,1,2,55001),(128,1,2,55002); +/*!40000 ALTER TABLE `llx_usergroup_rights` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_usergroup_user` +-- + +DROP TABLE IF EXISTS `llx_usergroup_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_usergroup_user` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `fk_usergroup` int(11) NOT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_usergroup_user` (`entity`,`fk_user`,`fk_usergroup`), + KEY `fk_usergroup_user_fk_user` (`fk_user`), + KEY `fk_usergroup_user_fk_usergroup` (`fk_usergroup`), + CONSTRAINT `fk_usergroup_user_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`), + CONSTRAINT `fk_usergroup_user_fk_usergroup` FOREIGN KEY (`fk_usergroup`) REFERENCES `llx_usergroup` (`rowid`) +) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_usergroup_user` +-- + +LOCK TABLES `llx_usergroup_user` WRITE; +/*!40000 ALTER TABLE `llx_usergroup_user` DISABLE KEYS */; +INSERT INTO `llx_usergroup_user` VALUES (2,1,1,3),(12,1,2,4),(3,1,3,3),(4,1,11,2),(13,1,12,1),(5,1,13,4),(6,1,16,1),(7,1,17,1),(11,1,18,1); +/*!40000 ALTER TABLE `llx_usergroup_user` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_draft` +-- + +DROP TABLE IF EXISTS `llx_webmail_draft`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_draft` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL DEFAULT '0', + `fk_contact` int(11) NOT NULL DEFAULT '0', + `size` int(11) NOT NULL DEFAULT '0', + `subject` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `body` longtext COLLATE utf8_unicode_ci NOT NULL, + `from` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `to` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `cc` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `bcc` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `files` int(11) NOT NULL DEFAULT '0', + `cron` datetime DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_webmail_draft_fk_user` (`fk_user`), + KEY `idx_webmail_draft_cron` (`cron`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_draft` +-- + +LOCK TABLES `llx_webmail_draft` WRITE; +/*!40000 ALTER TABLE `llx_webmail_draft` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_draft` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_files` +-- + +DROP TABLE IF EXISTS `llx_webmail_files`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_files` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_mail` int(11) NOT NULL DEFAULT '0', + `fk_user` int(11) NOT NULL DEFAULT '0', + `datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `file_name` text NOT NULL, + `file` text NOT NULL, + `file_size` int(11) NOT NULL DEFAULT '0', + `file_type` varchar(255) NOT NULL DEFAULT '', + `search` mediumtext NOT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_webmail_files_fk_user` (`fk_user`), + KEY `idx_webmail_files_files` (`fk_mail`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_files` +-- + +LOCK TABLES `llx_webmail_files` WRITE; +/*!40000 ALTER TABLE `llx_webmail_files` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_files` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_mail` +-- + +DROP TABLE IF EXISTS `llx_webmail_mail`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_mail` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL DEFAULT '0', + `fk_soc` int(11) NOT NULL DEFAULT '0', + `fk_contact` int(11) NOT NULL DEFAULT '0', + `uidl` varchar(255) NOT NULL DEFAULT '', + `datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `size` int(11) NOT NULL DEFAULT '0', + `subject` text NOT NULL, + `body` mediumtext NOT NULL, + `state_new` int(11) NOT NULL DEFAULT '0', + `state_reply` int(11) NOT NULL DEFAULT '0', + `state_forward` int(11) NOT NULL DEFAULT '0', + `state_wait` int(11) NOT NULL DEFAULT '0', + `state_spam` int(11) NOT NULL DEFAULT '0', + `id_correo` int(11) NOT NULL DEFAULT '0', + `is_outbox` int(11) NOT NULL DEFAULT '0', + `state_sent` int(11) NOT NULL DEFAULT '0', + `state_error` varchar(255) NOT NULL DEFAULT '', + `state_crt` int(11) NOT NULL DEFAULT '0', + `state_archiv` int(11) NOT NULL DEFAULT '0', + `priority` int(11) NOT NULL DEFAULT '0', + `sensitivity` int(11) NOT NULL DEFAULT '0', + `from` text NOT NULL, + `to` text NOT NULL, + `cc` text NOT NULL, + `bcc` text NOT NULL, + `files` int(11) NOT NULL DEFAULT '0', + `state_delete` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `idx_webmail_mail_nospam` (`fk_user`,`state_spam`), + KEY `idx_webmail_mail_count` (`fk_user`,`state_new`), + KEY `idx_webmail_mail_sendmail` (`is_outbox`,`state_sent`), + KEY `idx_webmail_mail_fk_user` (`fk_user`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_mail` +-- + +LOCK TABLES `llx_webmail_mail` WRITE; +/*!40000 ALTER TABLE `llx_webmail_mail` DISABLE KEYS */; +INSERT INTO `llx_webmail_mail` VALUES (1,1,1,27,0,'1452254519','2016-01-08 16:01:59',0,'Submission of invoice 16','You will find here the invoice 16
\r\n
\r\nSincerely',0,0,0,0,0,0,1,1,'0',0,0,0,0,'first last ','Aljoun Samira ','','',1,0); +/*!40000 ALTER TABLE `llx_webmail_mail` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_users` +-- + +DROP TABLE IF EXISTS `llx_webmail_users`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_users` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `fk_user` int(11) NOT NULL, + `login` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `password` mediumtext COLLATE utf8_unicode_ci NOT NULL, + `safemail` tinyint(4) DEFAULT '1', + `dayssafe` int(11) DEFAULT '10', + PRIMARY KEY (`rowid`), + KEY `fk_webmail_users_fk_user` (`fk_user`), + CONSTRAINT `fk_webmail_users_fk_user` FOREIGN KEY (`fk_user`) REFERENCES `llx_user` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_users` +-- + +LOCK TABLES `llx_webmail_users` WRITE; +/*!40000 ALTER TABLE `llx_webmail_users` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_users` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_webmail_users_view` +-- + +DROP TABLE IF EXISTS `llx_webmail_users_view`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_webmail_users_view` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_user` int(11) NOT NULL, + `fk_user_view` int(11) NOT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_webmail_users_view` +-- + +LOCK TABLES `llx_webmail_users_view` WRITE; +/*!40000 ALTER TABLE `llx_webmail_users_view` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_webmail_users_view` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website` +-- + +DROP TABLE IF EXISTS `llx_website`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `entity` int(11) NOT NULL DEFAULT '1', + `ref` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + `fk_default_home` int(11) DEFAULT NULL, + `virtualhost` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `date_creation` datetime DEFAULT NULL, + `date_modification` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `maincolor` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + `maincolorbis` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_website_ref` (`ref`,`entity`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website` +-- + +LOCK TABLES `llx_website` WRITE; +/*!40000 ALTER TABLE `llx_website` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website_extrafields` +-- + +DROP TABLE IF EXISTS `llx_website_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_website_extrafields` (`fk_object`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website_extrafields` +-- + +LOCK TABLES `llx_website_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_website_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_website_page` +-- + +DROP TABLE IF EXISTS `llx_website_page`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_website_page` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `fk_website` int(11) NOT NULL, + `pageurl` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `aliasalt` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `keywords` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `content` mediumtext COLLATE utf8_unicode_ci, + `status` int(11) DEFAULT '1', + `date_creation` datetime DEFAULT NULL, + `date_modification` datetime DEFAULT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) DEFAULT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `type_container` varchar(16) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'page', + `lang` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_page` int(11) DEFAULT NULL, + `grabbed_from` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `htmlheader` mediumtext COLLATE utf8_unicode_ci, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `image` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`), + UNIQUE KEY `uk_website_page_url` (`fk_website`,`pageurl`), + CONSTRAINT `fk_website_page_website` FOREIGN KEY (`fk_website`) REFERENCES `llx_website` (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_website_page` +-- + +LOCK TABLES `llx_website_page` WRITE; +/*!40000 ALTER TABLE `llx_website_page` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_website_page` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_websiteaccount` +-- + +DROP TABLE IF EXISTS `llx_websiteaccount`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_websiteaccount` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `login` varchar(64) COLLATE utf8_unicode_ci NOT NULL, + `password` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, + `fk_soc` int(11) DEFAULT NULL, + `date_creation` datetime NOT NULL, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_user_creat` int(11) NOT NULL, + `fk_user_modif` int(11) DEFAULT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + `status` int(11) DEFAULT NULL, + PRIMARY KEY (`rowid`), + KEY `idx_websiteaccount_rowid` (`rowid`), + KEY `idx_websiteaccount_login` (`login`), + KEY `idx_websiteaccount_fk_soc` (`fk_soc`), + KEY `idx_websiteaccount_import_key` (`import_key`), + KEY `idx_websiteaccount_status` (`status`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_websiteaccount` +-- + +LOCK TABLES `llx_websiteaccount` WRITE; +/*!40000 ALTER TABLE `llx_websiteaccount` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_websiteaccount` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_websiteaccount_extrafields` +-- + +DROP TABLE IF EXISTS `llx_websiteaccount_extrafields`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_websiteaccount_extrafields` ( + `rowid` int(11) NOT NULL AUTO_INCREMENT, + `tms` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `fk_object` int(11) NOT NULL, + `import_key` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL, + PRIMARY KEY (`rowid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_websiteaccount_extrafields` +-- + +LOCK TABLES `llx_websiteaccount_extrafields` WRITE; +/*!40000 ALTER TABLE `llx_websiteaccount_extrafields` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_websiteaccount_extrafields` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation` +-- + +DROP TABLE IF EXISTS `llx_workstation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `entity` int(11) NOT NULL DEFAULT '0', + `fk_usergroup` int(11) NOT NULL DEFAULT '0', + `name` varchar(255) DEFAULT NULL, + `background` varchar(255) DEFAULT NULL, + `type` varchar(10) DEFAULT NULL, + `code` varchar(10) DEFAULT NULL, + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + `nb_hour_capacity` double NOT NULL DEFAULT '0', + `nb_ressource` double NOT NULL DEFAULT '0', + `thm` double NOT NULL DEFAULT '0', + `thm_machine` double NOT NULL DEFAULT '0', + `thm_overtime` double NOT NULL DEFAULT '0', + `thm_night` double NOT NULL DEFAULT '0', + `nb_hour_before` double NOT NULL DEFAULT '0', + `nb_hour_after` double NOT NULL DEFAULT '0', + `is_parallele` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `entity` (`entity`), + KEY `fk_usergroup` (`fk_usergroup`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation` +-- + +LOCK TABLES `llx_workstation` WRITE; +/*!40000 ALTER TABLE `llx_workstation` DISABLE KEYS */; +INSERT INTO `llx_workstation` VALUES (1,'2018-11-18 17:50:22','2018-11-18 17:50:22',1,4,'aaaa','#','HUMAN','',0,0,0,0,0,0,0,0,0,0,0); +/*!40000 ALTER TABLE `llx_workstation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation_product` +-- + +DROP TABLE IF EXISTS `llx_workstation_product`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation_product` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_product` int(11) NOT NULL DEFAULT '0', + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `nb_hour` double NOT NULL DEFAULT '0', + `rang` double NOT NULL DEFAULT '0', + `nb_hour_prepare` double NOT NULL DEFAULT '0', + `nb_hour_manufacture` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_product` (`fk_product`), + KEY `fk_workstation` (`fk_workstation`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation_product` +-- + +LOCK TABLES `llx_workstation_product` WRITE; +/*!40000 ALTER TABLE `llx_workstation_product` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_workstation_product` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `llx_workstation_schedule` +-- + +DROP TABLE IF EXISTS `llx_workstation_schedule`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `llx_workstation_schedule` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `date_cre` datetime DEFAULT NULL, + `date_maj` datetime DEFAULT NULL, + `fk_workstation` int(11) NOT NULL DEFAULT '0', + `day_moment` varchar(255) DEFAULT NULL, + `week_day` int(11) NOT NULL DEFAULT '0', + `nb_ressource` int(11) NOT NULL DEFAULT '0', + `date_off` datetime DEFAULT NULL, + `nb_hour_capacity` double NOT NULL DEFAULT '0', + PRIMARY KEY (`rowid`), + KEY `date_cre` (`date_cre`), + KEY `date_maj` (`date_maj`), + KEY `fk_workstation` (`fk_workstation`), + KEY `date_off` (`date_off`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `llx_workstation_schedule` +-- + +LOCK TABLES `llx_workstation_schedule` WRITE; +/*!40000 ALTER TABLE `llx_workstation_schedule` DISABLE KEYS */; +/*!40000 ALTER TABLE `llx_workstation_schedule` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_links` +-- + +DROP TABLE IF EXISTS `tmp_links`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_links` ( + `objectid` int(11) NOT NULL, + `label` varchar(255) COLLATE utf8_unicode_ci NOT NULL, + `max_rowid` int(11) DEFAULT NULL, + `count_rowid` bigint(21) NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_links` +-- + +LOCK TABLES `tmp_links` WRITE; +/*!40000 ALTER TABLE `tmp_links` DISABLE KEYS */; +INSERT INTO `tmp_links` VALUES (3,'fdf',6,2); +/*!40000 ALTER TABLE `tmp_links` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_llx_product_batch` +-- + +DROP TABLE IF EXISTS `tmp_llx_product_batch`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_llx_product_batch` ( + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double DEFAULT NULL, + `nb` bigint(21) NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_llx_product_batch` +-- + +LOCK TABLES `tmp_llx_product_batch` WRITE; +/*!40000 ALTER TABLE `tmp_llx_product_batch` DISABLE KEYS */; +/*!40000 ALTER TABLE `tmp_llx_product_batch` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tmp_llx_product_batch2` +-- + +DROP TABLE IF EXISTS `tmp_llx_product_batch2`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tmp_llx_product_batch2` ( + `rowid` int(11) NOT NULL DEFAULT '0', + `fk_product_stock` int(11) NOT NULL, + `eatby` datetime DEFAULT NULL, + `sellby` datetime DEFAULT NULL, + `batch` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL, + `qty` double NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tmp_llx_product_batch2` +-- + +LOCK TABLES `tmp_llx_product_batch2` WRITE; +/*!40000 ALTER TABLE `tmp_llx_product_batch2` DISABLE KEYS */; +/*!40000 ALTER TABLE `tmp_llx_product_batch2` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2018-11-23 12:59:51 diff --git a/dev/initdemo/savedemo.sh b/dev/initdemo/savedemo.sh index 90b99995585..e94169ff155 100755 --- a/dev/initdemo/savedemo.sh +++ b/dev/initdemo/savedemo.sh @@ -171,6 +171,8 @@ export list=" --ignore-table=$base.llx_abonne_extrafields --ignore-table=$base.llx_abonne_type --ignore-table=$base.llx_abonnement + --ignore-table=$base.llx_accountingaccount + --ignore-table=$base.llx_accountingsystem --ignore-table=$base.llx_advanced_extrafields --ignore-table=$base.llx_advanced_extrafields_options --ignore-table=$base.llx_advanced_extrafields_values diff --git a/htdocs/comm/action/peruser.php b/htdocs/comm/action/peruser.php index af141f76ae9..9e2a7278a27 100644 --- a/htdocs/comm/action/peruser.php +++ b/htdocs/comm/action/peruser.php @@ -358,9 +358,23 @@ if ($conf->use_javascript_ajax) } +$newcardbutton=''; +if ($user->rights->agenda->myactions->create || $user->rights->agenda->allactions->create) +{ + $tmpforcreatebutton=dol_getdate(dol_now(), true); + + $newparam.='&month='.str_pad($month, 2, "0", STR_PAD_LEFT).'&year='.$tmpforcreatebutton['year']; + + //$param='month='.$monthshown.'&year='.$year; + $hourminsec='100000'; + $newcardbutton = ''.$langs->trans("AddAction").''; + $newcardbutton.= ''; + $newcardbutton.= ''; +} $link=''; -print load_fiche_titre($s, $link.'     '.$nav, ''); +print load_fiche_titre($s, $link.'     '.$nav.' '.$newcardbutton, ''); + // Get event in an array diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index d9d79994b65..b7cecc6c0ae 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -4054,10 +4054,10 @@ function load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', if ($picto == 'setup') $picto='title_generic.png'; $return.= "\n"; - $return.= ''; + $return.= '
'; // maring bottom must be same than into print_barre_list if ($picto) $return.= ''; - $return.= ''; if (dol_strlen($morehtmlcenter)) { @@ -4116,7 +4116,7 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so print "\n"; print "\n"; - print '
'.img_picto('',$picto, 'class="valignmiddle widthpictotitle pictotitle"', $pictoisfullpath).''; - $return.= '
'.$titre.'
'; + $return.= '
'; + $return.= '
'.$titre.'
'; $return.= '
'; + print '
'; // maring bottom must be same than into load_fiche_tire // Left //if ($picto && $titre) print ''; diff --git a/htdocs/langs/en_US/paybox.lang b/htdocs/langs/en_US/paybox.lang index cf0bd40b716..0d35ac440fa 100644 --- a/htdocs/langs/en_US/paybox.lang +++ b/htdocs/langs/en_US/paybox.lang @@ -20,6 +20,7 @@ ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment user inte ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment user interface for a contract line ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment user interface for a free amount ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment user interface for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment user interface for payment of donation YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (required only for free payment) to add your own payment comment tag. SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. From 13e24dc894583e0bf66ed480306c87348347edb0 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 23 Nov 2018 15:35:40 +0100 Subject: [PATCH 538/769] Code comment --- htdocs/core/lib/functions.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index b7cecc6c0ae..eba4c4d5f4e 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -5745,7 +5745,7 @@ function dol_textishtml($msg,$option=0) * * @param string $text1 Text 1 * @param string $text2 Text 2 - * @param bool $forxml false=Use
, true=Use
+ * @param bool $forxml false=Use
instead of \n if html content detected, true=Use
instead of \n if html content detected * @return string Text 1 + new line + Text2 * @see dol_textishtml */ From 064816242a9599d83e84c822822ca4908d232255 Mon Sep 17 00:00:00 2001 From: wdammak <26695620+wdammak@users.noreply.github.com> Date: Fri, 23 Nov 2018 21:26:10 +0100 Subject: [PATCH 539/769] Order by category --- htdocs/core/class/html.form.class.php | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index dce2192d10d..5279caeda98 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2017,6 +2017,14 @@ class Form $sql = "SELECT "; $sql.= $selectFields . $selectFieldsGrouped; + + //Product category + $sql.= ", (SELECT ".MAIN_DB_PREFIX."categorie_product.fk_categorie + FROM ".MAIN_DB_PREFIX."categorie_product + WHERE ".MAIN_DB_PREFIX."categorie_product.fk_product=p.rowid + LIMIT 1 + ) AS categorie_product_id "; + //Price by customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) { @@ -2064,8 +2072,6 @@ class Form if (!empty($conf->global->PRODUIT_ATTRIBUTES_HIDECHILD)) { $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination pac ON pac.fk_product_child = p.rowid"; } - //Product category - $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_product as pcat ON pcat.fk_product=p.rowid"; $sql.= ' WHERE p.entity IN ('.getEntity('product').')'; if (count($warehouseStatusArray)) @@ -2117,8 +2123,19 @@ class Form $sql.= ' GROUP BY'.$selectFields; } - (! empty($conf->global->PRODUIT_SORT_BY_CATEGORY)) ? $sql.= $db->order("pcat.fk_categorie") : $sql.= $db->order("p.ref"); - $sql.= $db->plimit($limit, 0) + //Sort by category + if(! empty($conf->global->PRODUCT_SORT_BY_CATEGORY)) + { + $sql .= " ORDER BY categorie_product_id "; + //ASC OR DESC order + ($conf->global->PRODUCT_SORT_BY_CATEGORY == 1) ? $sql .="ASC" : $sql .="DESC"; + } + else + { + $sql.= $db->order("p.ref"); + } + + $sql.= $db->plimit($limit, 0); // Build output string dol_syslog(get_class($this)."::select_produits_list search product", LOG_DEBUG); From 5c3daf4a6a475f6916b66c110026a1cf2c1f0713 Mon Sep 17 00:00:00 2001 From: wdammak <26695620+wdammak@users.noreply.github.com> Date: Fri, 23 Nov 2018 21:27:22 +0100 Subject: [PATCH 540/769] order by category --- htdocs/core/class/html.form.class.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 5279caeda98..40a7a47a94f 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2013,10 +2013,6 @@ class Form $selectFields = " p.rowid, p.label, p.ref, p.description, p.barcode, p.fk_product_type, p.price, p.price_ttc, p.price_base_type, p.tva_tx, p.duration, p.fk_price_expression"; (count($warehouseStatusArray)) ? $selectFieldsGrouped = ", sum(ps.reel) as stock" : $selectFieldsGrouped = ", p.stock"; - $selectFields .= ", pcat.fk_categorie as categorie_product_id"; - - $sql = "SELECT "; - $sql.= $selectFields . $selectFieldsGrouped; //Product category $sql.= ", (SELECT ".MAIN_DB_PREFIX."categorie_product.fk_categorie @@ -2025,6 +2021,9 @@ class Form LIMIT 1 ) AS categorie_product_id "; + $sql = "SELECT "; + $sql.= $selectFields . $selectFieldsGrouped; + //Price by customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) { From 5c9d5bb6ad53c825e42532afeecb6c0b0c735c07 Mon Sep 17 00:00:00 2001 From: wdammak <26695620+wdammak@users.noreply.github.com> Date: Fri, 23 Nov 2018 21:30:34 +0100 Subject: [PATCH 541/769] order by category --- htdocs/core/class/html.form.class.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 40a7a47a94f..721c1997086 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2014,6 +2014,9 @@ class Form $selectFields = " p.rowid, p.label, p.ref, p.description, p.barcode, p.fk_product_type, p.price, p.price_ttc, p.price_base_type, p.tva_tx, p.duration, p.fk_price_expression"; (count($warehouseStatusArray)) ? $selectFieldsGrouped = ", sum(ps.reel) as stock" : $selectFieldsGrouped = ", p.stock"; + $sql = "SELECT "; + $sql.= $selectFields . $selectFieldsGrouped; + //Product category $sql.= ", (SELECT ".MAIN_DB_PREFIX."categorie_product.fk_categorie FROM ".MAIN_DB_PREFIX."categorie_product @@ -2021,9 +2024,6 @@ class Form LIMIT 1 ) AS categorie_product_id "; - $sql = "SELECT "; - $sql.= $selectFields . $selectFieldsGrouped; - //Price by customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) { From b5d1a340805f8fef7fa0a1a8a126953dd2b8dc16 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 24 Nov 2018 11:08:05 +0100 Subject: [PATCH 542/769] Update newpayment.php --- htdocs/public/payment/newpayment.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 435655eec3a..5811e89aacc 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1445,7 +1445,7 @@ if ($action != 'dopayment') { print '

'.$langs->trans("InvoicePaid").''; } - elseif ($source == 'membersubscription' && $object->datefin>dol_now()) + elseif ($source == 'membersubscription' && $object->datefin > dol_now()) { print '

'.$langs->trans("MembershipPaid").''; } From d401974028f17fd0f568bbe3e88f7a484b8ba0b6 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 24 Nov 2018 15:33:48 +0100 Subject: [PATCH 543/769] Fix retrieve Donation newpayment.php --- htdocs/public/payment/newpayment.php | 143 +++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 5811e89aacc..4cda9365b9d 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -1423,7 +1423,150 @@ if ($source == 'membersubscription') print ''."\n"; } +// Payment on donation +if ($source == 'donation') +{ + $found=true; + $langs->load("don"); + require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php'; + + $don=new Don($db); + $result=$don->fetch($ref); + if ($result <= 0) + { + $mesg=$don->error; + $error++; + } + else + { + $don->fetch_thirdparty(); + $object = $don; + } + + if ($action != 'dopayment') // Do not change amount if we just click on first dopayment + { + $amount=$subscription->total_ttc; + if (GETPOST("amount",'int')) $amount=GETPOST("amount",'int'); + $amount=price2num($amount); + } + + $fulltag='DON='.$don->ref.'.DAT='.dol_print_date(dol_now(),'%Y%m%d%H%M'); + if (! empty($TAG)) { $tag=$TAG; $fulltag.='.TAG='.$TAG; } + $fulltag=dol_string_unaccent($fulltag); + + // Creditor + + print '
'."\n"; + + // Debitor + + print ''."\n"; + + // Amount + + print ''."\n"; + + // Tag + + print ''."\n"; + + // Shipping address + $shipToName=$don->getFullName($langs); + $shipToStreet=$don->address; + $shipToCity=$don->town; + $shipToState=$don->state_code; + $shipToCountryCode=$don->country_code; + $shipToZip=$don->zip; + $shipToStreet2=''; + $phoneNum=$don->phone; + if ($shipToName && $shipToStreet && $shipToCity && $shipToCountryCode && $shipToZip) + { + print ''; + print ''."\n"; + print ''."\n"; + print ''."\n"; + print ''."\n"; + print ''."\n"; + print ''."\n"; + print ''."\n"; + print ''."\n"; + } + else + { + print ''."\n"; + } + if (is_object($don->thirdparty)) print ''."\n"; + print ''."\n"; + $labeldesc = $langs->trans("PaymentSubscription"); + if (GETPOST('desc','alpha')) $labeldesc=GETPOST('desc','alpha'); + print ''."\n"; +} if (! $found && ! $mesg) $mesg=$langs->trans("ErrorBadParameters"); From 9154fd366fb30494a0be80f889f76953174efa93 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Sat, 24 Nov 2018 22:30:06 +0100 Subject: [PATCH 544/769] Fix create accounting account from balance --- htdocs/accountancy/admin/card.php | 9 +++++---- htdocs/accountancy/bookkeeping/balance.php | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/htdocs/accountancy/admin/card.php b/htdocs/accountancy/admin/card.php index 74958d606ec..33fdb675ac0 100644 --- a/htdocs/accountancy/admin/card.php +++ b/htdocs/accountancy/admin/card.php @@ -1,7 +1,7 @@ - * Copyright (C) 2013-2017 Alexandre Spangaro - * Copyright (C) 2014 Florian Henry +/* Copyright (C) 2013-2014 Olivier Geffroy + * Copyright (C) 2013-2018 Alexandre Spangaro + * Copyright (C) 2014 Florian Henry * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -41,6 +41,7 @@ $id = GETPOST('id', 'int'); $ref = GETPOST('ref', 'alpha'); $rowid = GETPOST('rowid', 'int'); $cancel = GETPOST('cancel','alpha'); +$accountingaccount = GETPOST('accountingaccount','alpha'); // Security check @@ -229,7 +230,7 @@ if ($action == 'create') { // Account number print ''; - print ''; + print ''; // Label print ''; diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index e807d1acced..5183281f4cd 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -266,7 +266,7 @@ if ($action != 'export_csv') $description = $object->get_compte_desc($line->numero_compte); // Search description of the account $root_account_description = $object->get_compte_racine($line->numero_compte); if (empty($description)) { - $link = '' . img_edit_add() . ''; + $link = '' . img_edit_add() . ''; } print ''; From 1d2c2a23ef55d934856dd65df618114451bf058d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 25 Nov 2018 11:57:19 +0100 Subject: [PATCH 545/769] Fix look and feel v8 --- htdocs/contact/agenda.php | 34 ++++++++++++++-------------------- htdocs/langs/en_US/main.lang | 1 + htdocs/societe/agenda.php | 2 -- 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/htdocs/contact/agenda.php b/htdocs/contact/agenda.php index 5a9ef88f8ed..fbd3e46b9a7 100644 --- a/htdocs/contact/agenda.php +++ b/htdocs/contact/agenda.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2015 Laurent Destailleur + * Copyright (C) 2004-2018 Laurent Destailleur * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2007 Franky Van Liedekerke @@ -132,16 +132,13 @@ if (empty($reshook)) * View */ +$form = new Form($db); $title = (! empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("Contacts") : $langs->trans("ContactsAddresses")); if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/contactnameonly/',$conf->global->MAIN_HTML_TITLE) && $object->lastname) $title=$object->lastname; $help_url='EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas'; llxHeader('', $title, $help_url); -$form = new Form($db); -$formcompany = new FormCompany($db); - -$countrynotdefined=$langs->trans("ErrorSetACountryFirst").' ('.$langs->trans("SeeAbove").')'; if ($socid > 0) { @@ -259,20 +256,16 @@ else //print '
'; //print '
'; - - $morehtmlcenter=''; - if (! empty($conf->agenda->enabled)) - { - if (! empty($user->rights->agenda->myactions->create) || ! empty($user->rights->agenda->allactions->create)) - { - $morehtmlcenter.= ''.$langs->trans("AddAction").''; - } - else - { - $morehtmlcenter.= ''.$langs->trans("AddAction").''; - } - } - + $newcardbutton=''; + if (! empty($conf->agenda->enabled)) + { + if (! empty($user->rights->agenda->myactions->create) || ! empty($user->rights->agenda->allactions->create)) + { + $newcardbutton.=''.$langs->trans("AddAction").''; + $newcardbutton.= ''; + $newcardbutton.= ''; + } + } if (! empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read) )) { @@ -282,7 +275,8 @@ else if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; - print_barre_liste($langs->trans("ActionsOnCompany"), 0, $_SERVER["PHP_SELF"], '', $sortfield, $sortorder, $morehtmlcenter, 0, -1, '', '', '', '', 0, 1, 1); + print load_fiche_titre($langs->trans("ActionsOnContact"), $newcardbutton, ''); + //print_barre_liste($langs->trans("ActionsOnCompany"), 0, $_SERVER["PHP_SELF"], '', $sortfield, $sortorder, $morehtmlcenter, 0, -1, '', '', '', '', 0, 1, 1); // List of all actions $filters=array(); diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 233b9bba076..bd535ae150e 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -437,6 +437,7 @@ ContactsForCompany=Contacts for this third party ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events about this third party +ActionsOnContact=Events about this contact/address ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late diff --git a/htdocs/societe/agenda.php b/htdocs/societe/agenda.php index d682ad43d4d..90206ca4567 100644 --- a/htdocs/societe/agenda.php +++ b/htdocs/societe/agenda.php @@ -96,8 +96,6 @@ if (empty($reshook)) * View */ -$contactstatic = new Contact($db); - $form = new Form($db); if ($socid > 0) From ed1062c44007fb85eae9388deca82b618b59419b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 25 Nov 2018 11:59:49 +0100 Subject: [PATCH 546/769] Css --- htdocs/compta/bank/list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index 2395a3c23de..e83347e876a 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -550,7 +550,7 @@ foreach ($accounts as $key=>$type) // Balance if (! empty($arrayfields['balance']['checked'])) { - print '
'; if (! $i) $totalarray['nbfield']++; From 2e139d1960ba60b44ef897d06ead6349d3247306 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 25 Nov 2018 12:08:49 +0100 Subject: [PATCH 547/769] Fix var $hidedetails not defined --- htdocs/core/lib/pdf.lib.php | 2 +- .../modules/expensereport/doc/pdf_standard.modules.php | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index a6899697860..5765319379a 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -1514,7 +1514,7 @@ function pdf_getlineref_supplier($object,$i,$outputlangs,$hidedetails=0) * @param int $hidedetails Hide details (0=no, 1=yes, 2=just special lines) * @return string */ -function pdf_getlinevatrate($object,$i,$outputlangs,$hidedetails=0) +function pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails=0) { global $conf, $hookmanager, $mysoc; diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index 7e7d58047b9..7f3cca693b5 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -352,7 +352,7 @@ class pdf_standard extends ModeleExpenseReport $pageposbefore = $pdf->getPage(); $curY = $nexY; $pdf->startTransaction(); - $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs); + $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs, $hidedetails); $pageposafter=$pdf->getPage(); if ($pageposafter > $pageposbefore) { // There is a pagebreak @@ -360,7 +360,7 @@ class pdf_standard extends ModeleExpenseReport $pageposafter = $pageposbefore; //print $pageposafter.'-'.$pageposbefore;exit; $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. - $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs); + $this->printLine($pdf, $object, $i, $curY, $default_font_size, $outputlangs, $hidedetails); $pageposafter = $pdf->getPage(); $posyafter = $pdf->GetY(); //var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit; @@ -522,15 +522,16 @@ class pdf_standard extends ModeleExpenseReport } /** - * @param PDF $pdf Object PDF + * @param TCPDF $pdf Object PDF * @param Object $object Object to show * @param int $linenumber line number * @param int $curY current y position * @param int $default_font_size default siez of font * @param Translate $outputlangs Object lang for output + * @param int $hidedetails Hide details (0=no, 1=yes, 2=just special lines) * @return void */ - private function printLine(&$pdf, $object, $linenumber, $curY, $default_font_size, $outputlangs) + private function printLine(&$pdf, $object, $linenumber, $curY, $default_font_size, $outputlangs, $hidedetails=0) { global $conf; $pdf->SetFont('','', $default_font_size - 1); From a395e9e4eec5137f207bf1baf712bfd3a81308a7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 25 Nov 2018 12:13:35 +0100 Subject: [PATCH 548/769] Fix var not defined --- htdocs/emailcollector/class/emailcollector.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index e317d02a504..1902473a0cd 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -1417,7 +1417,7 @@ class EmailCollector extends CommonObject $modele = empty($conf->global->PROJECT_ADDON)?'mod_project_simple':$conf->global->PROJECT_ADDON; // Search template files - $file=''; $classname=''; $filefound=0; + $file=''; $classname=''; $filefound=0; $reldir=''; $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']); foreach($dirmodels as $reldir) { From 4bb8568d6c26c6c711f6c54f8f0ee96f6ca25519 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 25 Nov 2018 12:18:45 +0100 Subject: [PATCH 549/769] Fix doxygen --- htdocs/accountancy/journal/bankjournal.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/accountancy/journal/bankjournal.php b/htdocs/accountancy/journal/bankjournal.php index 4c0bf9a55fa..d40c5ea059b 100644 --- a/htdocs/accountancy/journal/bankjournal.php +++ b/htdocs/accountancy/journal/bankjournal.php @@ -1142,7 +1142,7 @@ $db->close(); * * @param string $val Array of val * @param string $typerecord Type of record ('payment', 'payment_supplier', 'payment_expensereport', 'payment_vat', ...) - * @return string|unknown + * @return string A string label to describe a record into llx_bank_url */ function getSourceDocRef($val, $typerecord) { @@ -1250,7 +1250,8 @@ function getSourceDocRef($val, $typerecord) { dol_syslog("accountancy/journal/bankjournal.php::sqlmid=" . $sqlmid, LOG_DEBUG); $resultmid = $db->query($sqlmid); - if ($resultmid) { + if ($resultmid) + { while ($objmid = $db->fetch_object($resultmid)) { $ref.=' '.$objmid->ref; @@ -1259,6 +1260,6 @@ function getSourceDocRef($val, $typerecord) else dol_print_error($db); } - $ref = dol_trunc($langs->trans("BankId").' '.$val['fk_bank'].' - '.$ref, 295); // 295 + 3 ... i< < than max size of 300 + $ref = dol_trunc($langs->trans("BankId").' '.$val['fk_bank'].' - '.$ref, 295); // 295 + 3 dots (...) is < than max size of 300 return $ref; } From db719dbcbbf179c7583492bbe049dcba1f626dc3 Mon Sep 17 00:00:00 2001 From: IJ Date: Sun, 25 Nov 2018 20:36:25 +0000 Subject: [PATCH 550/769] FIX: Display All Types of Payments on Expense Report Card Fixes #9991 - Bug: 7.0.4: Expense Report Payment Type Not Displayed - without this fix, only cash type accounts were shown when payment was made --- htdocs/expensereport/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index 4bc41f6fa47..2a09fa2a71e 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -1925,7 +1925,7 @@ else print $paymentexpensereportstatic->getNomUrl(1); print ''; print '\n"; - $labeltype=$langs->trans("PaymentType".$objp->p_code)!=("PaymentType".$objp->p_code)?$langs->trans("PaymentType".$objp->p_code):$objp->fk_typepayment; + $labeltype=$langs->trans("PaymentType".$objp->p_code)!=("PaymentType".$objp->p_code)?$langs->trans("PaymentType".$objp->p_code):$objp->payment_type; print "\n"; if (! empty($conf->banque->enabled)) { From 2af24903e9afc4bca44469e8c1222de3168d597d Mon Sep 17 00:00:00 2001 From: oscim Date: Mon, 26 Nov 2018 10:53:34 +0100 Subject: [PATCH 551/769] Update company.lib.php Fix list in agenda for tab customer / provider , no thirdparty selected because name of class is not Societe --- htdocs/core/lib/company.lib.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index 09f7bd85c90..fc15480de09 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1344,7 +1344,7 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= elseif (is_object($filterobj) && get_class($filterobj) == 'Product') $sql.= ", ".MAIN_DB_PREFIX."product as o"; $sql.= " WHERE a.entity IN (".getEntity('agenda').")"; - if (is_object($filterobj) && get_class($filterobj) == 'Societe' && $filterobj->id) $sql.= " AND a.fk_soc = ".$filterobj->id; + if (is_object($filterobj) && in_array( get_class($filterobj), array('Societe', 'Client', 'Fournisseur') ) && $filterobj->id) $sql.= " AND a.fk_soc = ".$filterobj->id; elseif (is_object($filterobj) && get_class($filterobj) == 'Project' && $filterobj->id) $sql.= " AND a.fk_project = ".$filterobj->id; elseif (is_object($filterobj) && get_class($filterobj) == 'Adherent') { @@ -1386,6 +1386,8 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= if ($donetodo == 'todo') $sql.= " AND ((a.percent >= 0 AND a.percent < 100) OR (a.percent = -1 AND a.datep > '".$db->idate($now)."'))"; elseif ($donetodo == 'done') $sql.= " AND (a.percent = 100 OR (a.percent = -1 AND a.datep <= '".$db->idate($now)."'))"; if (is_array($filters) && $filters['search_agenda_label']) $sql.= natural_search('a.label', $filters['search_agenda_label']); + + // TODO Add limit for thirdparty in contexte very all result $sql.= $db->order($sortfield, $sortorder); dol_syslog("company.lib::show_actions_done", LOG_DEBUG); $resql=$db->query($sql); From 611569f63981ce6586ab90336478cb0482a89755 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 11:18:01 +0100 Subject: [PATCH 552/769] Add missing translation --- htdocs/langs/en_US/other.lang | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 3a36c6d89ed..317ce72b3af 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -83,6 +83,7 @@ LinkedObject=Linked object NbOfActiveNotifications=Number of notifications (no. of recipient emails) PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ PredefinedMailTestHtml=__(Hello)__\nThis is a test mail (the word test must be in bold).
The two lines are separated by a carriage return.

__USER_SIGNATURE__ +PredefinedMailContentContract=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoice=__(Hello)__\n\nPlease find attached invoice __REF__\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__(Hello)__\n\nWe would like to warn you that the invoice __REF__ seems to have not been paid. The invoice is attached, as a reminder.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendProposal=__(Hello)__\n\nPlease find attached commercial proposal __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ From 8f15fe9c6355c3b27954e281e6e5c4d82d1a64f9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 12:41:10 +0100 Subject: [PATCH 553/769] Empty lines --- htdocs/adherents/class/adherent.class.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 9d6c5d02bb4..39d31986511 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -2656,7 +2656,7 @@ class Adherent extends CommonObject $this->output = $langs->trans('EventRemindersByEmailNotEnabled', $langs->transnoentitiesnoconv("Adherent")); return 0; } - + $now = dol_now(); $nbok = 0; $nbko = 0; @@ -2760,9 +2760,9 @@ class Adherent extends CommonObject $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":"); $actionmsg = dol_concatdesc($actionmsg, $message); } - + require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; - + // Insert record of emails sent $actioncomm = new ActionComm($this->db); @@ -2787,10 +2787,10 @@ class Adherent extends CommonObject $actioncomm->email_tobcc = $sendtobcc; $actioncomm->email_subject = $subject; $actioncomm->errors_to = ''; - + $actioncomm->fk_element = $adherent->id; $actioncomm->elementtype = $adherent->element; - + $actioncomm->extraparams = $extraparams; $actioncomm->create($user); From f0ab6e60ec53d61a0b5abe52ea5c9a5dec754456 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 13:31:05 +0100 Subject: [PATCH 554/769] FIX Loading translation of cron tasks --- htdocs/core/class/translate.class.php | 27 ++++++++-------- htdocs/cron/card.php | 1 + htdocs/cron/class/cronjob.class.php | 44 ++++++++++++++++----------- scripts/cron/cron_run_jobs.php | 6 +++- 4 files changed, 44 insertions(+), 34 deletions(-) diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index 599bf25d33d..a8d22b61257 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -189,7 +189,7 @@ class Translate // Load $this->tab_translate[] from database - if (empty($loadfromfileonly) && count($this->tab_translate) == 0) $this->loadFromDatabase($db); // Nothing was loaded yet, so we load database. + if (empty($loadfromfileonly) && count($this->tab_translate) == 0) $this->loadFromDatabase($db); // No translation was never loaded yet, so we load database. $newdomain = $domain; @@ -231,7 +231,8 @@ class Translate $filelangexists=is_file($file_lang_osencoded); - //dol_syslog(get_class($this).'::Load Try to read for alt='.$alt.' langofdir='.$langofdir.' newdomain='.$domain.' modulename='.$modulename.' file_lang='.$file_lang." => filelangexists=".$filelangexists); + //dol_syslog(get_class($this).'::Load Try to read for alt='.$alt.' langofdir='.$langofdir.' domain='.$domain.' newdomain='.$newdomain.' modulename='.$modulename.' file_lang='.$file_lang." => filelangexists=".$filelangexists); + //print 'Try to read for alt='.$alt.' langofdir='.$langofdir.' domain='.$domain.' newdomain='.$newdomain.' modulename='.$modulename.' this->_tab_loaded[newdomain]='.$this->_tab_loaded[$newdomain].' file_lang='.$file_lang." => filelangexists=".$filelangexists."\n"; if ($filelangexists) { @@ -354,12 +355,12 @@ class Translate $this->load($domain,$alt+1,$stopafterdirection,$langofdir); } - // We already are the reference file. No more files to scan to complete. + // We are in the pass of the reference file. No more files to scan to complete. if ($alt == 2) { - if ($fileread) $this->_tab_loaded[$newdomain]=1; // Set domain file as loaded + if ($fileread) $this->_tab_loaded[$newdomain]=1; // Set domain file as found so loaded - if (empty($this->_tab_loaded[$newdomain])) $this->_tab_loaded[$newdomain]=2; // Set this file as found + if (empty($this->_tab_loaded[$newdomain])) $this->_tab_loaded[$newdomain]=2; // Set this file as not found } // This part is deprecated and replaced with table llx_overwrite_trans @@ -410,22 +411,18 @@ class Translate //dol_syslog("Translate::Load Start domain=".$domain." alt=".$alt." forcelangdir=".$forcelangdir." this->defaultlang=".$this->defaultlang); $newdomain = $domain; - $modulename = ''; - // Check cache - if (! empty($this->_tab_loaded[$newdomain])) // File already loaded for this domain + // Check cache + if (! empty($this->_tab_loaded[$newdomain])) // File already loaded for this domain 'database' { //dol_syslog("Translate::Load already loaded for newdomain=".$newdomain); return 0; } - $this->_tab_loaded[$newdomain] = 1; // We want to be sure this function is called once only. + $this->_tab_loaded[$newdomain] = 1; // We want to be sure this function is called once only for domain 'database' $fileread=0; - $langofdir=(empty($forcelangdir)?$this->defaultlang:$forcelangdir); - - // Redefine alt - $alt=2; + $langofdir=$this->defaultlang; if (empty($langofdir)) // This may occurs when load is called without setting the language and without providing a value for forcelangdir { @@ -434,14 +431,14 @@ class Translate } // TODO Move cache read out of loop on dirs or at least filelangexists - $found=false; + $found=false; // Enable caching of lang file in memory (not by default) $usecachekey=''; // Using a memcached server if (! empty($conf->memcached->enabled) && ! empty($conf->global->MEMCACHED_SERVER)) { - $usecachekey=$newdomain.'_'.$langofdir.'_'.md5($file_lang); // Should not contains special chars + $usecachekey=$newdomain.'_'.$langofdir; // Should not contains special chars } // Using cache with shmop. Speed gain: 40ms - Memory overusage: 200ko (Size of session cache file) else if (isset($conf->global->MAIN_OPTIMIZE_SPEED) && ($conf->global->MAIN_OPTIMIZE_SPEED & 0x02)) diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php index 152657e216a..d3c0e8d7992 100644 --- a/htdocs/cron/card.php +++ b/htdocs/cron/card.php @@ -227,6 +227,7 @@ if ($action=='activate') if ($action=='inactive') { $object->status=0; + $object->processing=0; // Add cron task $result = $object->update($user); diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index a71088f3286..df640576d9a 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -1068,8 +1068,9 @@ class Cronjob extends CommonObject // Load langs if (! $error) { - $result=$langs->load($this->module_name.'@'.$this->module_name); - if ($result < 0) + $result=$langs->load($this->module_name); + $result=$langs->load($this->module_name.'@'.$this->module_name); // If this->module_name was an existing language file, this will make nothing + if ($result < 0) // If technical error { dol_syslog(get_class($this)."::run_jobs Cannot load module lang file - ".$langs->error, LOG_ERR); $this->error = $langs->error; @@ -1138,14 +1139,17 @@ class Cronjob extends CommonObject $conf->entity = $savcurrententity; return -1; } + // Load langs - $result=$langs->load($this->module_name . '@' . $this->module_name); - if ($result<0) + $result=$langs->load($this->module_name); + $result=$langs->load($this->module_name.'@'.$this->module_name); // If this->module_name was an existing language file, this will make nothing + if ($result < 0) // If technical error { dol_syslog(get_class($this) . "::run_jobs Cannot load module langs" . $langs->error, LOG_ERR); $conf->entity = $savcurrententity; return -1; } + dol_syslog(get_class($this) . "::run_jobs " . $this->libname . "::" . $this->methodename."(" . $this->params . ");", LOG_DEBUG); $params_arr = explode(", ", $this->params); if (!is_array($params_arr)) @@ -1301,7 +1305,7 @@ class Cronjob extends CommonObject */ function getLibStatut($mode=0) { - return $this->LibStatut($this->status,$mode); + return $this->LibStatut($this->status, $mode, $this->processing); } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.NotCamelCaps @@ -1310,43 +1314,47 @@ class Cronjob extends CommonObject * * @param int $status Id statut * @param int $mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto + * @param int $processing 0=Not running, 1=Running * @return string Label of status */ - function LibStatut($status,$mode=0) + function LibStatut($status, $mode=0, $processing=0) { // phpcs:enable global $langs; $langs->load('users'); + $moretext = ''; + if ($processing) $moretext=' ('.$langs->trans("Running").')'; + if ($mode == 0) { - if ($status == 1) return $langs->trans('Enabled'); - elseif ($status == 0) return $langs->trans('Disabled'); + if ($status == 1) return $langs->trans('Enabled').$moretext; + elseif ($status == 0) return $langs->trans('Disabled').$moretext; } elseif ($mode == 1) { - if ($status == 1) return $langs->trans('Enabled'); - elseif ($status == 0) return $langs->trans('Disabled'); + if ($status == 1) return $langs->trans('Enabled').$moretext; + elseif ($status == 0) return $langs->trans('Disabled').$moretext; } elseif ($mode == 2) { - if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"').' '.$langs->trans('Enabled'); - elseif ($status == 0) return img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"').' '.$langs->trans('Disabled'); + if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"').' '.$langs->trans('Enabled').$moretext; + elseif ($status == 0) return img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"').' '.$langs->trans('Disabled').$moretext; } elseif ($mode == 3) { - if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"'); - elseif ($status == 0) return img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"'); + if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"'); + elseif ($status == 0) return img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"').' '.$langs->trans('Enabled'); - elseif ($status == 0) return img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"').' '.$langs->trans('Disabled'); + if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"').' '.$langs->trans('Enabled').$moretext; + elseif ($status == 0) return img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"').' '.$langs->trans('Disabled').$moretext; } elseif ($mode == 5) { - if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"'); - elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"'); + if ($status == 1) return $langs->trans('Enabled').$moretext.' '.img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"'); + elseif ($status == 0) return $langs->trans('Disabled').$moretext.' '.img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"'); } } } diff --git a/scripts/cron/cron_run_jobs.php b/scripts/cron/cron_run_jobs.php index 861e0e3b2dd..873fc0ae9fb 100755 --- a/scripts/cron/cron_run_jobs.php +++ b/scripts/cron/cron_run_jobs.php @@ -186,7 +186,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs)>0)) //If date_next_jobs is less of current date, execute the program, and store the execution time of the next execution in database if (($line->datenextrun < $now) && (empty($line->datestart) || $line->datestart <= $now) && (empty($line->dateend) || $line->dateend >= $now)) { - echo " - qualified\n"; + echo " - qualified"; dol_syslog("cron_run_jobs.php line->datenextrun:".dol_print_date($line->datenextrun,'dayhourrfc')." line->datestart:".dol_print_date($line->datestart,'dayhourrfc')." line->dateend:".dol_print_date($line->dateend,'dayhourrfc')." now:".dol_print_date($now,'dayhourrfc')); @@ -214,6 +214,8 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs)>0)) $nbofjobslaunchedok++; } + echo " - result of run_jobs = ".$result; + // we re-program the next execution and stores the last execution time for this job $result=$cronjob->reprogram_jobs($userlogin, $now); if ($result<0) @@ -223,6 +225,8 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs)>0)) dol_syslog("cron_run_jobs.php::reprogram_jobs Error ".$cronjob->error, LOG_ERR); exit(-1); } + + echo " - reprogrammed\n"; } else { From 3800fde2255aa90be8782e8782639c10c9f3da5a Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 26 Nov 2018 14:29:25 +0100 Subject: [PATCH 555/769] fix typo error --- htdocs/admin/salaries.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/salaries.php b/htdocs/admin/salaries.php index a68a4bda5a6..f724bd9e50c 100644 --- a/htdocs/admin/salaries.php +++ b/htdocs/admin/salaries.php @@ -129,4 +129,4 @@ print ''; // End of page llxFooter(); -$db->close();; +$db->close(); From 9bf0f12068174f4d931ba3539a4b0c1d5f914b05 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 26 Nov 2018 14:32:04 +0100 Subject: [PATCH 556/769] fix typo error --- htdocs/compta/localtax/quadri_detail.php | 2 +- htdocs/core/actions_extrafields.inc.php | 2 +- .../modules/project/doc/doc_generic_project_odt.modules.php | 2 +- htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/compta/localtax/quadri_detail.php b/htdocs/compta/localtax/quadri_detail.php index e49f42bb14f..9f5d13f98a3 100644 --- a/htdocs/compta/localtax/quadri_detail.php +++ b/htdocs/compta/localtax/quadri_detail.php @@ -589,7 +589,7 @@ else // Localtax print '
'; diff --git a/htdocs/core/actions_extrafields.inc.php b/htdocs/core/actions_extrafields.inc.php index 6b6d4b7a176..bae5001b256 100644 --- a/htdocs/core/actions_extrafields.inc.php +++ b/htdocs/core/actions_extrafields.inc.php @@ -29,7 +29,7 @@ $mesg=array(); $extrasize=GETPOST('size','int'); $type=GETPOST('type','alpha'); -$param=GETPOST('param','alpha');; +$param=GETPOST('param','alpha'); if ($type=='double' && strpos($extrasize,',')===false) $extrasize='24,8'; if ($type=='date') $extrasize=''; diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index 1ab3dc0180c..76aa73e960e 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -796,7 +796,7 @@ class doc_generic_project_odt extends ModelePDFProjects if (!empty($row['thm'])) { $row['amountht']=($row['task_duration'] / 3600) * $row['thm']; $defaultvat = get_default_tva($mysoc, $mysoc); - $row['amountttc']=price2num($row['amountht'] * (1 + ($defaultvat / 100)),'MT');; + $row['amountttc']=price2num($row['amountht'] * (1 + ($defaultvat / 100)),'MT'); } else { $row['amountht']=0; $row['amountttc']=0; diff --git a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php index 222538a8554..3ea7e184e35 100644 --- a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php @@ -150,7 +150,7 @@ class pdf_stdmovement extends ModelePDFMovement // Define position of columns $this->wref = 15; $this->posxidref = $this->marge_gauche; - $this->posxdatemouv = $this->marge_gauche+8;; + $this->posxdatemouv = $this->marge_gauche+8; $this->posxdesc=37; $this->posxlabel=50; $this->posxtva=80; From 05d617b759ba75e565c19dce181b0bda57fbb0dd Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 26 Nov 2018 14:33:45 +0100 Subject: [PATCH 557/769] fix typo error --- htdocs/fourn/facture/card.php | 4 ++-- htdocs/product/stock/product.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index b6ff1d36551..4f40b0cae36 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -904,7 +904,7 @@ if (empty($reshook)) // FIXME Missing special_code into addline and updateline methods $object->special_code = $lines[$i]->special_code; - + // FIXME Missing $lines[$i]->ref_supplier and $lines[$i]->label into addline and updateline methods. They are filled when coming from order for example. $result = $object->addline( $desc, @@ -2717,7 +2717,7 @@ else $paymentstatic->id=$objp->rowid; $paymentstatic->datepaye=$db->jdate($objp->dp); - $paymentstatic->ref=($objp->ref ? $objp->ref : $objp->rowid);; + $paymentstatic->ref=($objp->ref ? $objp->ref : $objp->rowid); $paymentstatic->num_paiement=$objp->num_paiement; $paymentstatic->payment_code=$objp->payment_code; diff --git a/htdocs/product/stock/product.php b/htdocs/product/stock/product.php index 7f3f3d99ebf..852bf2a4e8d 100644 --- a/htdocs/product/stock/product.php +++ b/htdocs/product/stock/product.php @@ -868,7 +868,7 @@ if (! $variants) { print ''; else print $langs->trans("Variable"); - print '';; + print ''; $total += $obj->reel; if (price2num($object->pmp)) $totalwithpmp += $obj->reel; $totalvalue = $totalvalue + ($object->pmp * $obj->reel); From 8722ccef82b3fc5b66551e19ceba55766227b13c Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 26 Nov 2018 14:35:29 +0100 Subject: [PATCH 558/769] fix typo error --- htdocs/projet/activity/perday.php | 2 +- htdocs/public/payment/newpayment.php | 2 +- htdocs/societe/checkvat/checkVatPopup.php | 4 ++-- htdocs/stripe/class/actions_stripe.class.php | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/htdocs/projet/activity/perday.php b/htdocs/projet/activity/perday.php index e291bf84f67..23a0152c19c 100644 --- a/htdocs/projet/activity/perday.php +++ b/htdocs/projet/activity/perday.php @@ -544,7 +544,7 @@ print ''; print ''; print "\n"; -$colspan = 6+(empty($conf->global->PROJECT_TIMESHEET_DISABLEBREAK_ON_PROJECT)?0:2);; +$colspan = 6+(empty($conf->global->PROJECT_TIMESHEET_DISABLEBREAK_ON_PROJECT)?0:2); if ($conf->use_javascript_ajax) { diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index 5811e89aacc..6495811ab9d 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -642,7 +642,7 @@ if ($source && in_array($ref, array('member_ref', 'contractline_ref', 'invoice_r dol_print_error_email('BADREFINPAYMENTFORM', $langs->trans("ErrorBadLinkSourceSetButBadValueForRef", $source, $ref)); // End of page llxFooter(); - $db->close();; + $db->close(); exit; } diff --git a/htdocs/societe/checkvat/checkVatPopup.php b/htdocs/societe/checkvat/checkVatPopup.php index 1222689358f..0c125ae3b4c 100644 --- a/htdocs/societe/checkvat/checkVatPopup.php +++ b/htdocs/societe/checkvat/checkVatPopup.php @@ -57,7 +57,7 @@ else $vatNumber = preg_replace('/\^\w/', '', $vatNumber); $countryCode=substr($vatNumber,0,2); $vatNumber=substr($vatNumber,2); - + print ''.$langs->trans("Country").': '.$countryCode.'
'; print ''.$langs->trans("VATIntraShort").': '.$vatNumber.'
'; print '
'; @@ -176,4 +176,4 @@ if ($messagetoshow) // End of page llxFooter(); -$db->close();; +$db->close(); diff --git a/htdocs/stripe/class/actions_stripe.class.php b/htdocs/stripe/class/actions_stripe.class.php index 3ecb02a6300..69dc4e33307 100644 --- a/htdocs/stripe/class/actions_stripe.class.php +++ b/htdocs/stripe/class/actions_stripe.class.php @@ -25,7 +25,7 @@ * \ingroup stripe * \brief File Class actionsstripeconnect */ -require_once DOL_DOCUMENT_ROOT.'/stripe/class/stripe.class.php';; +require_once DOL_DOCUMENT_ROOT.'/stripe/class/stripe.class.php'; $langs->load("stripe@stripe"); @@ -44,8 +44,8 @@ class ActionsStripeconnect private $config=array(); // For Hookmanager return - var $resprints; - var $results=array(); + public $resprints; + public $results=array(); /** From 62e39f5a319baed057b9fcb2e9317d94e63d9565 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 14:37:19 +0100 Subject: [PATCH 559/769] Fix title --- htdocs/website/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 82d30484a54..57dbe2d8984 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -1582,7 +1582,7 @@ $moreheadjs.=''."\n"; -llxHeader($moreheadcss.$moreheadjs, $langs->trans("websiteetup"), $help_url, '', 0, 0, $arrayofjs, $arrayofcss, '', '', ''."\n".'
'); +llxHeader($moreheadcss.$moreheadjs, $langs->trans("WebsiteSetup"), $help_url, '', 0, 0, $arrayofjs, $arrayofcss, '', '', ''."\n".'
'); print "\n".'
'; From 12b9ac2c3ba9971d98d58dc209556bc3511e3795 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 14:48:27 +0100 Subject: [PATCH 560/769] Fix lang --- htdocs/core/tpl/filemanager.tpl.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/core/tpl/filemanager.tpl.php b/htdocs/core/tpl/filemanager.tpl.php index 5ee19aa25a8..787d3721f35 100644 --- a/htdocs/core/tpl/filemanager.tpl.php +++ b/htdocs/core/tpl/filemanager.tpl.php @@ -143,6 +143,8 @@ if ($action == 'delete_section') if (empty($action) || $action == 'editfile' || $action == 'file_manager' || preg_match('/refresh/i',$action) || $action == 'delete') { + $langs->load("ecm"); + print '
'.img_picto('', $picto, 'id="pictotitle"', $pictoisfullpath).'
'.$langs->trans("Creditor"); + print ''.$creditor.''; + print ''; + print '
'.$langs->trans("Member"); + print ''; + if ($don->morphy == 'mor' && ! empty($don->societe)) print $don->societe; + else print $don->getFullName($langs); + print ''; + + // Object + + $text=''.$langs->trans("PaymentDonation").''; + if (GETPOST('desc','alpha')) $text=''.$langs->trans(GETPOST('desc','alpha')).''; + print '
'.$langs->trans("Designation"); + print ''.$text; + print ''; + print ''; + print '
'.$langs->trans("Amount"); + if (empty($amount)) + { + if (empty($conf->global->MEMBER_NEWFORM_AMOUNT)) print ' ('.$langs->trans("ToComplete"); + if (! empty($conf->global->MEMBER_EXT_URL_SUBSCRIPTION_INFO)) print ' - '.$langs->trans("SeeHere").''; + if (empty($conf->global->MEMBER_NEWFORM_AMOUNT)) print ')'; + } + print ''; + $valtoshow=''; + if (empty($amount) || ! is_numeric($amount)) + { + $valtoshow=price2num(GETPOST("newamount",'alpha'),'MT'); + // force default subscription amount to value defined into constant... + if (empty($valtoshow)) + { + if (! empty($conf->global->MEMBER_NEWFORM_EDITAMOUNT)) { + if (! empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { + $valtoshow = $conf->global->MEMBER_NEWFORM_AMOUNT; + } + } + else { + if (! empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { + $amount = $conf->global->MEMBER_NEWFORM_AMOUNT; + } + } + } + } + if (empty($amount) || ! is_numeric($amount)) + { + //$valtoshow=price2num(GETPOST("newamount",'alpha'),'MT'); + if (! empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow=max($conf->global->MEMBER_MIN_AMOUNT,$valtoshow); + print ''; + print ''; + } + else { + $valtoshow=$amount; + if (! empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow=max($conf->global->MEMBER_MIN_AMOUNT,$valtoshow); + print ''.price($valtoshow).''; + print ''; + print ''; + } + // Currency + print ' '.$langs->trans("Currency".$currency).''; + print ''; + print '
'.$langs->trans("PaymentCode"); + print ''.$fulltag.''; + print ''; + print ''; + print '
' . $langs->trans("AccountNumber") . '
' . $langs->trans("Label") . '
'; + print ''; print ''.price($solde, 0, $langs, 0, -1, -1, $obj->currency_code).''; print ''.dol_print_date($db->jdate($objp->dp),'day')."".$labeltype.' '.$objp->num_payment."'; - $temp_vat=($local==1?$fields['localtax1']:$fields['localtax2'])*$ratiopaymentinvoice;; + $temp_vat=($local==1?$fields['localtax1']:$fields['localtax2'])*$ratiopaymentinvoice; print price(price2num($temp_vat,'MT'),1); //print price($fields['vat']); print ''; if (empty($conf->global->PRODUIT_MULTIPRICES)) print price(price2num($object->price * $obj->reel, 'MT'), 1) . '
'.$langs->trans("Note").'
'."\n"; print ''."\n"; From f5ebcca475b1840b709eb17034b53c0998ae1990 Mon Sep 17 00:00:00 2001 From: oscim Date: Mon, 26 Nov 2018 15:47:51 +0100 Subject: [PATCH 561/769] error space after comment --- htdocs/core/lib/company.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index fc15480de09..379fb04eb4f 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1387,7 +1387,7 @@ function show_actions_done($conf, $langs, $db, $filterobj, $objcon='', $noprint= elseif ($donetodo == 'done') $sql.= " AND (a.percent = 100 OR (a.percent = -1 AND a.datep <= '".$db->idate($now)."'))"; if (is_array($filters) && $filters['search_agenda_label']) $sql.= natural_search('a.label', $filters['search_agenda_label']); - // TODO Add limit for thirdparty in contexte very all result + //TODO Add limit for thirdparty in contexte very all result $sql.= $db->order($sortfield, $sortorder); dol_syslog("company.lib::show_actions_done", LOG_DEBUG); $resql=$db->query($sql); From a59a4c60e0a00b3ac1f7daa58d3ad6d22b5def75 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 26 Nov 2018 16:09:05 +0100 Subject: [PATCH 562/769] FIX : Typo errors --- htdocs/takepos/invoice.php | 2 +- htdocs/theme/md/style.css.php | 2 +- htdocs/user/class/user.class.php | 2 +- htdocs/variants/card.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index c71f7f861a3..f7f79b03414 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -237,7 +237,7 @@ function Print(id){ function TakeposPrinting(id){ var receipt; $.get("receipt.php?facid="+id, function(data, status){ - receipt=data.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '');; + receipt=data.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, ''); $.ajax({ type: "POST", url: 'http://global->TAKEPOS_PRINT_SERVER;?>:8111/print', diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 72edb17b719..f24c7981734 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -4705,7 +4705,7 @@ a span.select2-chosen /* Special case for the select2 add widget */ #addbox .select2-container .select2-choice > .select2-chosen, #actionbookmark .select2-container .select2-choice > .select2-chosen { - text-align: ;; + text-align: ; opacity: 0.3; } .select2-container--default .select2-selection--single .select2-selection__placeholder { diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index 23f8b09169d..f9b1e65e771 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -2283,7 +2283,7 @@ class User extends CommonObject $label.= '
'.$langs->trans("Browser").': '.$conf->browser->name.($conf->browser->version?' '.$conf->browser->version:'').' ('.$_SERVER['HTTP_USER_AGENT'].')'; $label.= '
'.$langs->trans("Layout").': '.$conf->browser->layout; $label.= '
'.$langs->trans("Screen").': '.$_SESSION['dol_screenwidth'].' x '.$_SESSION['dol_screenheight']; - if ($conf->browser->layout == 'phone') $label.= '
'.$langs->trans("Phone").': '.$langs->trans("Yes");; + if ($conf->browser->layout == 'phone') $label.= '
'.$langs->trans("Phone").': '.$langs->trans("Yes"); if (! empty($_SESSION["disablemodules"])) $label.= '
'.$langs->trans("DisabledModules").':
'.join(', ',explode(',',$_SESSION["disablemodules"])); } if ($infologin < 0) $label=''; diff --git a/htdocs/variants/card.php b/htdocs/variants/card.php index 1f04e5edb87..374341c51f6 100644 --- a/htdocs/variants/card.php +++ b/htdocs/variants/card.php @@ -300,4 +300,4 @@ if ($action == 'edit') { ?> // End of page llxFooter(); -$db->close();; +$db->close(); From 2f2df12f592b588172090425db9191219045f41c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 18:02:25 +0100 Subject: [PATCH 563/769] Complete dictionary --- htdocs/install/mysql/data/llx_c_input_reason.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/install/mysql/data/llx_c_input_reason.sql b/htdocs/install/mysql/data/llx_c_input_reason.sql index 1188e7b345d..36bc3faec04 100644 --- a/htdocs/install/mysql/data/llx_c_input_reason.sql +++ b/htdocs/install/mysql/data/llx_c_input_reason.sql @@ -32,3 +32,4 @@ INSERT INTO llx_c_input_reason (rowid,code,label,active) VALUES ( 8, 'SRC_WOM', INSERT INTO llx_c_input_reason (rowid,code,label,active) VALUES ( 9, 'SRC_PARTNER', 'Partner', 1); INSERT INTO llx_c_input_reason (rowid,code,label,active) VALUES (10, 'SRC_EMPLOYEE', 'Employee', 1); INSERT INTO llx_c_input_reason (rowid,code,label,active) VALUES (11, 'SRC_SPONSORING', 'Sponsorship', 1); +INSERT INTO llx_c_input_reason (rowid,code,label,active) VALUES (12, 'SRC_CUSTOMER', 'Incoming contact of a customer', 1); From 84d73086eac01aa328b01c04cee99a8db7d01b86 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 26 Nov 2018 22:53:56 +0100 Subject: [PATCH 564/769] Fix bookkeeping list was empty --- .../accountancy/class/bookkeeping.class.php | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/htdocs/accountancy/class/bookkeeping.class.php index 6074a49f537..31a54aafc3b 100644 --- a/htdocs/accountancy/class/bookkeeping.class.php +++ b/htdocs/accountancy/class/bookkeeping.class.php @@ -866,14 +866,13 @@ class BookKeeping extends CommonObject /** * Load object in memory from the database * - * @param string $sortorder Sort Order - * @param string $sortfield Sort field - * @param int $limit offset limit - * @param int $offset offset limit - * @param array $filter filter array - * @param string $filtermode filter mode (AND or OR) - * - * @return int <0 if KO, >0 if OK + * @param string $sortorder Sort Order + * @param string $sortfield Sort field + * @param int $limit Offset limit + * @param int $offset Offset limit + * @param array $filter Filter array + * @param string $filtermode Filter mode (AND or OR) + * @return int <0 if KO, >0 if OK */ public function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND') { @@ -932,7 +931,7 @@ class BookKeeping extends CommonObject } } } - $sql.= ' WHERE entity IN (' . getEntity('accountancy') . ')'; + $sql.= ' WHERE t.entity IN (' . getEntity('accountancy') . ')'; if (count($sqlwhere) > 0) { $sql .= ' AND ' . implode(' ' . $filtermode . ' ', $sqlwhere); } @@ -950,7 +949,8 @@ class BookKeeping extends CommonObject $num = $this->db->num_rows($resql); $i = 0; - while ($obj = $this->db->fetch_object($resql) && (empty($limit) || $i < min($limit, $num))) { + while (($obj = $this->db->fetch_object($resql)) && (empty($limit) || $i < min($limit, $num))) + { $line = new BookKeepingLine(); $line->id = $obj->rowid; @@ -989,8 +989,7 @@ class BookKeeping extends CommonObject } else { $this->errors[] = 'Error ' . $this->db->lasterror(); dol_syslog(__METHOD__ . ' ' . join(',', $this->errors), LOG_ERR); - - return - 1; + return -1; } } From 7c22504252903565e59d37c25184504b8429658c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 27 Nov 2018 09:22:59 +0100 Subject: [PATCH 565/769] Fix position of field must be ssame between create/edit/view --- htdocs/blockedlog/admin/blockedlog_list.php | 4 +- htdocs/core/tpl/extrafields_view.tpl.php | 2 +- htdocs/langs/fr_FR/categories.lang | 10 +- htdocs/societe/card.php | 104 ++++++++++---------- 4 files changed, 60 insertions(+), 60 deletions(-) diff --git a/htdocs/blockedlog/admin/blockedlog_list.php b/htdocs/blockedlog/admin/blockedlog_list.php index 734e9d31f67..49a4daa3b3f 100644 --- a/htdocs/blockedlog/admin/blockedlog_list.php +++ b/htdocs/blockedlog/admin/blockedlog_list.php @@ -304,7 +304,7 @@ if (GETPOST('withtab','alpha')) dol_fiche_head($head, 'fingerprints', '', -1); } -print ''.$langs->trans("FingerprintsDesc")."
\n"; +print ''.$langs->trans("FingerprintsDesc")."
\n"; print '
'; @@ -342,7 +342,7 @@ for ($month = 1 ; $month <= 12 ; $month++) } $retstring.=""; print $retstring; -print ''; +print ''; print ''; print ''; if (!empty($conf->global->BLOCKEDLOG_USE_REMOTE_AUTHORITY)) print ' | '.$langs->trans('DownloadBlockChain').''; diff --git a/htdocs/core/tpl/extrafields_view.tpl.php b/htdocs/core/tpl/extrafields_view.tpl.php index ed093e4c506..c5c2125750e 100644 --- a/htdocs/core/tpl/extrafields_view.tpl.php +++ b/htdocs/core/tpl/extrafields_view.tpl.php @@ -129,7 +129,7 @@ if (empty($reshook) && is_array($extrafields->attributes[$object->table_element] $html_id = !empty($object->id) ? $object->element.'_extras_'.$key.'_'.$object->id : ''; - print '
'; } - // Assign a sale representative - print ''; - print ''; - print ''; - // Incoterms if (!empty($conf->incoterm->enabled)) { @@ -1453,7 +1444,7 @@ else // Customer //if ($object->prospect || $object->client || (! $object->fournisseur && ! empty($conf->global->THIRDPARTY_CAN_HAVE_CATEGORY_EVEN_IF_NOT_CUSTOMER_PROSPECT_SUPPLIER))) { - print '"; @@ -1487,6 +1478,15 @@ else print $object->showOptionals($extrafields,'edit'); } + // Assign a sale representative + print ''; + print ''; + print ''; + // Ajout du logo print ''; print ''; @@ -2048,16 +2048,6 @@ else print $object->capital != '' ? dol_escape_htmltag(price($object->capital)) : ''; print '"> '.$langs->trans("Currency".$conf->currency).''; - // Assign a Name - print ''; - print ''; - print ''; - // Default language if (! empty($conf->global->MAIN_MULTILANGS)) { @@ -2067,6 +2057,16 @@ else print ''; } + // Incoterms + if (!empty($conf->incoterm->enabled)) + { + print ''; + print ''; + print ''; + } + // Categories if (! empty($conf->categorie->enabled) && ! empty($user->rights->categorie->lire)) { @@ -2124,16 +2124,6 @@ else print ''; } - // Incoterms - if (!empty($conf->incoterm->enabled)) - { - print ''; - print ''; - print ''; - } - // Logo print ''; print ''; @@ -2152,6 +2142,16 @@ else print ''; print ''; + // Assign sale representative + print ''; + print ''; + print ''; + print '
'; + print ''; // Convert date into timestamp format if (in_array($extrafields->attributes[$object->table_element]['type'][$key], array('date','datetime'))) diff --git a/htdocs/langs/fr_FR/categories.lang b/htdocs/langs/fr_FR/categories.lang index adecb7604c8..e40474eb925 100644 --- a/htdocs/langs/fr_FR/categories.lang +++ b/htdocs/langs/fr_FR/categories.lang @@ -47,17 +47,17 @@ ContentsNotVisibleByAllShort=Contenu non visible par tous DeleteCategory=Effacer le(a) libellé/catégorie ConfirmDeleteCategory=Êtes-vous sûr de vouloir supprimer ce tag/catégorie ? NoCategoriesDefined=Aucun(e) tag/catégorie défini(e) -SuppliersCategoryShort=Tags/catégories de fournisseurs -CustomersCategoryShort=Tags/catégories de clients -ProductsCategoryShort=Tags/catégories de produits -MembersCategoryShort=Tags/catégories adhérents +SuppliersCategoryShort=Tag/catégorie de fournisseurs +CustomersCategoryShort=Tag/catégorie de clients +ProductsCategoryShort=Tag/catégorie de produits +MembersCategoryShort=Tag/catégorie adhérents SuppliersCategoriesShort=Tags fournisseurs CustomersCategoriesShort=Tags/catégories de clients ProspectsCategoriesShort=Tags/Catégories de prospects CustomersProspectsCategoriesShort=Tags clients/prosp. ProductsCategoriesShort=Tags/catégories de produits MembersCategoriesShort=Tags/catégories de membres -ContactCategoriesShort=Tags de contacts +ContactCategoriesShort=Tags/catégories de contacts AccountsCategoriesShort=Tag/catégorie des comptes ProjectsCategoriesShort=Tags/catégories de projets ThisCategoryHasNoProduct=Ce tag/catégorie ne contient aucun produit. diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 80427437488..cd923ee6dcd 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -1427,15 +1427,6 @@ else print '
'.fieldLabel('AllocateCommercial','commercial_id').''; - $userlist = $form->select_dolusers('', '', 0, null, 0, '', '', 0, 0, 0, '', 0, '', '', 0, 1); - // Note: If user has no right to "see all thirdparties", we for selection of sale representative to him, so after creation he can see the record. - print $form->multiselectarray('commercial', $userlist, (count(GETPOST('commercial', 'array')) > 0?GETPOST('commercial', 'array'):(empty($user->rights->societe->client->voir)?array($user->id):array())), null, null, null, null, "90%"); - print '
' . fieldLabel('CustomersCategoriesShort', 'custcats') . ''; + print '
' . fieldLabel('CustomersProspectsCategoriesShort', 'custcats') . ''; $cate_arbo = $form->select_all_categories(Categorie::TYPE_CUSTOMER, null, 'parent', null, null, 1); print $form->multiselectarray('custcats', $cate_arbo, GETPOST('custcats', 'array'), null, null, null, null, "90%"); print "
'.fieldLabel('AllocateCommercial','commercial_id').''; + $userlist = $form->select_dolusers('', '', 0, null, 0, '', '', 0, 0, 0, '', 0, '', '', 0, 1); + // Note: If user has no right to "see all thirdparties", we for selection of sale representative to him, so after creation he can see the record. + print $form->multiselectarray('commercial', $userlist, (count(GETPOST('commercial', 'array')) > 0?GETPOST('commercial', 'array'):(empty($user->rights->societe->client->voir)?array($user->id):array())), null, null, null, null, "90%"); + print '
'.fieldLabel('Logo','photoinput').'
'.fieldLabel('AllocateCommercial','commercial_id').''; - $userlist = $form->select_dolusers('', '', 0, null, 0, '', '', 0, 0, 0, '', 0, '', '', 0, 1); - $arrayselected = GETPOST('commercial', 'array'); - if (empty($arrayselected)) $arrayselected = $object->getSalesRepresentatives($user, 1); - print $form->multiselectarray('commercial', $userlist, $arrayselected, null, null, null, null, "90%"); - print '
'.fieldLabel('IncotermLabel','incoterm_id').''; + print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms)?$object->location_incoterms:'')); + print '
'.fieldLabel('IncotermLabel','incoterm_id').''; - print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms)?$object->location_incoterms:'')); - print '
'.fieldLabel('Logo','photoinput').'
'.fieldLabel('AllocateCommercial','commercial_id').''; + $userlist = $form->select_dolusers('', '', 0, null, 0, '', '', 0, 0, 0, '', 0, '', '', 0, 1); + $arrayselected = GETPOST('commercial', 'array'); + if (empty($arrayselected)) $arrayselected = $object->getSalesRepresentatives($user, 1); + print $form->multiselectarray('commercial', $userlist, $arrayselected, null, null, null, null, "90%"); + print '
'; print '
'; @@ -2497,28 +2497,28 @@ else print ''; } - // Incoterms - if (!empty($conf->incoterm->enabled)) - { - print ''; - print '
'; - print $langs->trans('IncotermLabel'); - print ''; - if ($user->rights->societe->creer) print ''.img_edit('',1).''; - else print ' '; - print '
'; - print ''; - print ''; - if ($action != 'editincoterm') - { - print $form->textwithpicto($object->display_incoterms(), $object->libelle_incoterms, 1); - } - else - { - print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms)?$object->location_incoterms:''), $_SERVER['PHP_SELF'].'?socid='.$object->id); - } - print ''; - } + // Incoterms + if (!empty($conf->incoterm->enabled)) + { + print ''; + print '
'; + print $langs->trans('IncotermLabel'); + print ''; + if ($user->rights->societe->creer) print ''.img_edit('',1).''; + else print ' '; + print '
'; + print ''; + print ''; + if ($action != 'editincoterm') + { + print $form->textwithpicto($object->display_incoterms(), $object->libelle_incoterms, 1); + } + else + { + print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms)?$object->location_incoterms:''), $_SERVER['PHP_SELF'].'?socid='.$object->id); + } + print ''; + } // Multicurrency if (! empty($conf->multicurrency->enabled)) From 30d30d9c1e123e75b7e6735a6222ff536a5d8485 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Tue, 27 Nov 2018 10:06:38 +0100 Subject: [PATCH 566/769] fix : typo error --- htdocs/emailcollector/class/emailcollectoraction.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/emailcollector/class/emailcollectoraction.class.php b/htdocs/emailcollector/class/emailcollectoraction.class.php index 1d42a15134c..620795870a0 100644 --- a/htdocs/emailcollector/class/emailcollectoraction.class.php +++ b/htdocs/emailcollector/class/emailcollectoraction.class.php @@ -83,7 +83,7 @@ class EmailCollectorAction extends CommonObject */ public $fields=array( 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>"Id",), - 'fk_emailcollector' => array('type'=>'integer', 'label'=>'Id of emailcollector', 'foreignkey'=>'emailcollecotr.rowid'), + 'fk_emailcollector' => array('type'=>'integer', 'label'=>'Id of emailcollector', 'foreignkey'=>'emailcollector.rowid'), 'type' => array('type'=>'varchar(128)', 'label'=>'Type', 'enabled'=>1, 'visible'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1), 'actionparam' => array('type'=>'varchar(255)', 'label'=>'ParamForAction', 'enabled'=>1, 'visible'=>1, 'position'=>40, 'notnull'=>-1), 'date_creation' => array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'position'=>500, 'notnull'=>1,), From 71bcabd8ebc89b62c3ad7459b9738c2af2376cb3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 27 Nov 2018 10:23:58 +0100 Subject: [PATCH 567/769] Missing trans --- htdocs/langs/en_US/dict.lang | 3 ++- htdocs/langs/en_US/other.lang | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/dict.lang b/htdocs/langs/en_US/dict.lang index 59e7cc058f4..ad3a24e12f6 100644 --- a/htdocs/langs/en_US/dict.lang +++ b/htdocs/langs/en_US/dict.lang @@ -295,7 +295,7 @@ CurrencyCentINR=paisa CurrencyCentSingINR=paise CurrencyThousandthSingTND=thousandth #### Input reasons ##### -DemandReasonTypeSRC_INTE=Internetaaa +DemandReasonTypeSRC_INTE=Internet DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign DemandReasonTypeSRC_CAMP_PHO=Phone campaign @@ -306,6 +306,7 @@ DemandReasonTypeSRC_WOM=Word of mouth DemandReasonTypeSRC_PARTNER=Partner DemandReasonTypeSRC_EMPLOYEE=Employee DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer #### Paper formats #### PaperFormatEU4A0=Format 4A0 PaperFormatEU2A0=Format 2A0 diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 317ce72b3af..ec0315b94cd 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -262,6 +262,6 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used when container is of type 'blog_post' to show a preview of a news in some pages with dynamic content of Blog Posts. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a preview of a list of blog posts). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import From 0367795488c32e8003d1db5957adf576fad0cb5e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 27 Nov 2018 11:09:47 +0100 Subject: [PATCH 568/769] Fix auto jump on record if only 1 record in a search --- htdocs/comm/propal/list.php | 6 +- htdocs/commande/list.php | 8 +- htdocs/compta/facture/list.php | 8 +- htdocs/fourn/commande/list.php | 6 +- htdocs/fourn/facture/list.php | 8 +- htdocs/langs/en_US/holiday.lang | 2 +- htdocs/langs/fr_FR/accountancy.lang | 20 +-- htdocs/langs/fr_FR/admin.lang | 183 +++++++++++++------------- htdocs/langs/fr_FR/bills.lang | 86 ++++++------ htdocs/langs/fr_FR/blockedlog.lang | 64 ++++----- htdocs/langs/fr_FR/cashdesk.lang | 16 +-- htdocs/langs/fr_FR/categories.lang | 16 ++- htdocs/langs/fr_FR/commercial.lang | 3 +- htdocs/langs/fr_FR/companies.lang | 54 ++++---- htdocs/langs/fr_FR/compta.lang | 10 +- htdocs/langs/fr_FR/contracts.lang | 3 +- htdocs/langs/fr_FR/cron.lang | 14 +- htdocs/langs/fr_FR/dict.lang | 4 +- htdocs/langs/fr_FR/ecm.lang | 2 +- htdocs/langs/fr_FR/errors.lang | 32 ++--- htdocs/langs/fr_FR/help.lang | 17 +-- htdocs/langs/fr_FR/holiday.lang | 24 ++-- htdocs/langs/fr_FR/install.lang | 116 ++++++++-------- htdocs/langs/fr_FR/mails.lang | 14 +- htdocs/langs/fr_FR/main.lang | 56 ++++---- htdocs/langs/fr_FR/modulebuilder.lang | 24 ++-- htdocs/langs/fr_FR/multicurrency.lang | 12 +- htdocs/langs/fr_FR/opensurvey.lang | 6 +- htdocs/langs/fr_FR/orders.lang | 4 +- htdocs/langs/fr_FR/other.lang | 53 ++++---- htdocs/langs/fr_FR/paybox.lang | 1 + htdocs/langs/fr_FR/paypal.lang | 8 +- htdocs/langs/fr_FR/printing.lang | 6 +- htdocs/langs/fr_FR/products.lang | 22 ++-- htdocs/langs/fr_FR/projects.lang | 14 +- htdocs/langs/fr_FR/propal.lang | 4 +- htdocs/langs/fr_FR/resource.lang | 2 +- htdocs/langs/fr_FR/salaries.lang | 5 +- htdocs/langs/fr_FR/stocks.lang | 36 ++--- htdocs/langs/fr_FR/users.lang | 7 +- htdocs/langs/fr_FR/website.lang | 24 ++-- htdocs/supplier_proposal/list.php | 12 +- 42 files changed, 515 insertions(+), 497 deletions(-) diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 61ad93660b6..937160f7bb6 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -425,13 +425,13 @@ if ($resql) $num = $db->num_rows($resql); $arrayofselected=is_array($toselect)?$toselect:array(); - - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); $id = $obj->rowid; - + header("Location: ".DOL_URL_ROOT.'/comm/propal/card.php?id='.$id); exit; } diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 55e6e2f8ff5..f26d7b86b44 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -401,7 +401,7 @@ if ($resql) $arrayofselected=is_array($toselect)?$toselect:array(); - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); $id = $obj->rowid; @@ -410,7 +410,7 @@ if ($resql) } llxHeader('',$title,$help_url); - + $param=''; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage); @@ -479,8 +479,8 @@ if ($resql) print ''; print ''; print ''; - - + + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'title_commercial.png', 0, $newcardbutton, '', $limit); $topicmail="SendOrderRef"; diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index eb7408cabf6..6b0164058c2 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -541,17 +541,17 @@ if ($resql) $arrayofselected=is_array($toselect)?$toselect:array(); - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); $id = $obj->id; - + header("Location: ".DOL_URL_ROOT.'/compta/facture/card.php?facid='.$id); exit; } - + llxHeader('',$langs->trans('CustomersInvoices'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); - + if ($socid) { $soc = new Societe($db); diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index 3208dc36f75..729899a8ff2 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -605,10 +605,10 @@ if ($resql) } $num = $db->num_rows($resql); - + $arrayofselected=is_array($toselect)?$toselect:array(); - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); $id = $obj->rowid; @@ -617,7 +617,7 @@ if ($resql) } llxHeader('',$title,$help_url); - + $param=''; if ($socid > 0) $param.='&socid='.$socid; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index 38c3ef10a2e..9a53b31c8a1 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -427,17 +427,17 @@ if ($resql) $arrayofselected=is_array($toselect)?$toselect:array(); - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); $id = $obj->facid; - + header("Location: ".DOL_URL_ROOT.'/fourn/facture/card.php?facid='.$id); exit; } - + llxHeader('',$langs->trans("SuppliersInvoices"),'EN:Suppliers_Invoices|FR:FactureFournisseur|ES:Facturas_de_proveedores'); - + if ($socid) { $soc = new Societe($db); diff --git a/htdocs/langs/en_US/holiday.lang b/htdocs/langs/en_US/holiday.lang index 8cf5ec2c1e6..2fad3d02a7f 100644 --- a/htdocs/langs/en_US/holiday.lang +++ b/htdocs/langs/en_US/holiday.lang @@ -112,7 +112,7 @@ NoticePeriod=Notice period HolidaysToValidate=Validate leave requests HolidaysToValidateBody=Below is a leave request to validate HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. -HolidaysToValidateAlertSolde=The user who made this leave request does have enough available days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. HolidaysValidated=Validated leave requests HolidaysValidatedBody=Your leave request for %s to %s has been validated. HolidaysRefused=Request denied diff --git a/htdocs/langs/fr_FR/accountancy.lang b/htdocs/langs/fr_FR/accountancy.lang index 2520a840997..b8d8c461eb3 100644 --- a/htdocs/langs/fr_FR/accountancy.lang +++ b/htdocs/langs/fr_FR/accountancy.lang @@ -36,12 +36,12 @@ AlreadyInGeneralLedger=Enregistrement déjà présent dans le grand livre NotYetInGeneralLedger=Pas encore envoyé dans le grand livre GroupIsEmptyCheckSetup=Le groupe est vide. Vérifier la configuration du groupe personnalisé DetailByAccount=Afficher le détail par compte -AccountWithNonZeroValues=Accounts with non-zero values +AccountWithNonZeroValues=Comptes avec des valeurs non nulles ListOfAccounts=Liste des comptes -CountriesInEEC=Countries in EEC -CountriesNotInEEC=Countries not in EEC -CountriesInEECExceptMe=Countries in EEC except %s -CountriesExceptMe=All countries except %s +CountriesInEEC=Pays de la CEE +CountriesNotInEEC=Pays hors CEE +CountriesInEECExceptMe=Pays de la CEE sauf %s +CountriesExceptMe=Tous les pays sauf %s MainAccountForCustomersNotDefined=Compte comptable général pour les clients non défini dans la configuration MainAccountForSuppliersNotDefined=Compte comptable général pour les fournisseurs non défini dans la configuration @@ -160,7 +160,7 @@ Docref=Référence LabelAccount=Libellé du compte LabelOperation=Libellé opération Sens=Sens -LetteringCode=Lettering code +LetteringCode=Code de lettrage Codejournal=Journal NumPiece=Numéro de pièce TransactionNumShort=Num. transaction @@ -203,7 +203,7 @@ PaymentsNotLinkedToProduct=Paiement non lié à un produit / service Pcgtype=Groupe de comptes comptables Pcgsubtype=Sous-groupe de comptes comptables -PcgtypeDesc=Group and subgroup of account are used as predefined 'filter' and 'grouping' criteria for some accounting reports. For example, 'INCOME' or 'EXPENSE' are used as groups for accounting accounts of products to build the expense/income report. +PcgtypeDesc=Les groupes et sous-groupes de comptes sont utilisés comme critères de filtre et de regroupement prédéfinis pour certains rapports de comptabilité. Par exemple, «REVENU» ou «CHARGES» sont utilisés en tant que groupes pour la comptabilité des produits afin de générer le rapport dépenses / revenus. TotalVente=Total chiffre affaires hors taxe TotalMarge=Total marge @@ -226,7 +226,7 @@ AutomaticBindingDone=Liaison automatique faite ErrorAccountancyCodeIsAlreadyUse=Erreur, vous ne pouvez pas détruire de compte comptable car il est utilisé MvtNotCorrectlyBalanced=Mouvement non équilibré. Débit = %s| Crébit = %s -Balancing=Balancing +Balancing=Équilibrage FicheVentilation=Fiche lien GeneralLedgerIsWritten=Les transactions sont enregistrées dans le grand livre GeneralLedgerSomeRecordWasNotRecorded=Certaines des opérations n'ont pu être journalisées. S'il n'y a pas d'autres messages, c'est probablement car elles sont déjà comptabilisées. @@ -269,7 +269,7 @@ Modelcsv_ebp=Export vers EBP Modelcsv_cogilog=Export vers Cogilog Modelcsv_agiris=Export vers Agiris Modelcsv_configurable=Export CSV Configurable -Modelcsv_FEC=Export FEC (Art. L47 A) (Test) +Modelcsv_FEC=Exportation FEC (Art. L47 A) (Test) ChartofaccountsId=Id plan comptable ## Tools - Init accounting account on product / service @@ -303,7 +303,7 @@ BookeppingLineAlreayExists=Lignes dejà existantes dans le grand livre NoJournalDefined=Pas de journal défini Binded=Lignes liées ToBind=Lignes à lier -UseMenuToSetBindindManualy=Lines not yet bound, use menu %s to make the binding manually +UseMenuToSetBindindManualy=Lignes non encore liées, utilisez le menu %s pour effectuer la liaison manuellement. ## Import ImportAccountingEntries=Écritures comptables diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 943a3398b87..2d332cfa0d9 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -193,7 +193,7 @@ FeatureDisabledInDemo=Fonction désactivée dans la démo FeatureAvailableOnlyOnStable=Fonction disponible uniquement sur les versions officielles stables BoxesDesc=Les widgets sont des composants montrant des informations que vous pouvez ajouter à vos pages pour les personnaliser. Vous pouvez choisir de les afficher ou non en sélectionnant la page cible et en cliquant sur "Activer" ou "Désactiver". OnlyActiveElementsAreShown=Seuls les éléments en rapport avec un module actif sont présentés. -ModulesDesc=Les modules Dolibarr définissent quelles fonctionnalités sont disponibles dans le logiciel. Certains modules / applications nécessitent, après activation, d'accorder des autorisations aux utilisateurs. Cliquez sur le bouton activé / désactivé pour activer un module / application. +ModulesDesc=Les modules Dolibarr définissent quelles fonctionnalités sont disponibles dans le logiciel. Certains modules / applications nécessitent, après activation, d'accorder des autorisations aux utilisateurs. Cliquez sur le bouton activé/désactivé (en fin de ligne) pour activer un module/application. ModulesMarketPlaceDesc=D'autres modules/extensions sont disponibles en téléchargement sur des sites externes sur Internet... ModulesDeployDesc=Si les permissions de votre système de fichier le permettent , vous pouvez utiliser cet outil pour déployer un module externe. Le module sera alors visible dans l'onglet %s. ModulesMarketPlaces=Rechercher un module/application externe @@ -463,9 +463,9 @@ ClickToShowDescription=Cliquer pour afficher la description DependsOn=Ce module a besoin du(des) module(s) RequiredBy=Ce module est requis par le ou les module(s) TheKeyIsTheNameOfHtmlField=C'est le nom du champ HTML. Cela nécessite d'avoir des connaissances techniques pour lire le contenu de la page HTML et récupérer le nom d'un champ. -PageUrlForDefaultValues=Vous devez entrer ici l'URL relative de la page. Si vous indiquez des paramètres dans l'URL, les valeurs par défaut seront effectives si tous les paramètres sont définis sur la même valeur. Exemples : -PageUrlForDefaultValuesCreate=
Pour le formulaire pour créer un nouveau tiers, c'est %s ,
Si vous voulez une valeur par défaut seulement si l'url a certains paramètres, vous pouvez utiliser %s -PageUrlForDefaultValuesList=
Pour la page de liste des tiers, c'est %s,
Si vous voulez une valeur par défaut uniquement sir l'url a certains paramètres, vous pouvez utiliser %s +PageUrlForDefaultValues=Vous devez entrer ici l'URL relative de la page. Si vous indiquez des paramètres dans l'URL, les valeurs par défaut seront effectives si tous les paramètres sont définis avec la même valeur. +PageUrlForDefaultValuesCreate=
Example:
Pour le formulaire pour créer un nouveau tiers, c'est %s .
Pour l'URL des modules externes installés dans le répertoire custom, n'incluez pas le "custom/", aussi le chemin ressemblera à monmodule/mapage.php et non custom/monmodule/mapache.php.
Si voulez une valeur par défaut seulement si l'url a certains paramètres, vous pouvez utiliser %s +PageUrlForDefaultValuesList=
Example:
Pour la page de liste des tiers, c'est %s,
Pour une URL des modules externes installés dans le répertoire custom, n'incluez pas le "custom/" aussi le chemin sera monmodule/mapage.php et non custom/monmodule/mapage.php.
Si vous voulez une valeur par défaut uniquement si l'url a certains paramètres, vous pouvez utiliser %s EnableDefaultValues=Activer la fonction de valeurs par défaut personnalisées EnableOverwriteTranslation=Permettre la réécriture des traductions GoIntoTranslationMenuToChangeThis=Une traduction a été trouvée pour le code de cette valeur. Pour changer cette valeur, vous devez modifier le fichier depuis Accueil > Configuration > Traduction. @@ -487,7 +487,7 @@ DAV_ALLOW_ECM_DIRTooltip=Répertoire racine où tous les fichiers sont télécha Module0Name=Utilisateurs & Groupes Module0Desc=Gestion des utilisateurs / employés et groupes Module1Name=Tiers -Module1Desc=Gestion des tiers (sociétés, particuliers) et contacts +Module1Desc=Gestion des tiers (clients, prospects) et contacts Module2Name=Commercial Module2Desc=Gestion commerciale Module10Name=Comptabilité @@ -501,7 +501,7 @@ Module23Desc=Suivi de la consommation des énergies Module25Name=Commandes clients Module25Desc=Gestion des commandes clients Module30Name=Factures et avoirs -Module30Desc=Gestion des factures et avoirs clients. Gestion des factures fournisseurs +Module30Desc=Gestion des factures et avoirs clients. Gestion des factures et avoirs fournisseurs Module40Name=Fournisseurs Module40Desc=Gestion des fournisseurs et des achats (commandes et factures fournisseurs) Module42Name=Journaux et traces de Debug @@ -928,22 +928,22 @@ SetupNotSaved=Configuration non enregistrée BackToModuleList=Retour liste des modules BackToDictionaryList=Retour liste des dictionnaires TypeOfRevenueStamp=Type de timbre fiscal -VATManagement=Sale Tax Management -VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sale Tax rate follows the active standard rule:
If the seller is not subject to Sale tax, then Sale tax defaults to 0. End of rule.
If the (seller's country = buyer's country), then the Sale tax by default equals the Sale tax of the product in the seller's country. End of rule.
If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default Sale tax is 0. This rule is dependant on the seller's country - please consult with your accountant. The Sale tax should be paid by the buyer to their customs office in their country and not to the seller. End of rule.
If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community Sale tax number) then the Sale tax by defaults to the Sale tax of the seller's country. End of rule.
If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community Sale tax number), then the Sale tax is 0 by default. End of rule.
In any other case the proposed default is Sale tax=0. End of rule. +VATManagement=Gestion TVA +VATIsUsedDesc=Le taux de TVA proposé par défaut lors de la création de propositions commerciales, factures, commandes, etc... répond à la règle standard suivante :
Si vendeur non assujetti à TVA, TVA par défaut=0. Fin de règle.
Si le (pays vendeur= pays acheteur) alors TVA par défaut=TVA du produit vendu. Fin de règle.
Si vendeur et acheteur dans Communauté européenne et bien vendu= moyen de transport neuf (auto, bateau, avion), TVA par défaut=0 (La TVA doit être payée par acheteur au centre d'impôts de son pays et non au vendeur). Fin de règle.
Si vendeur et acheteur dans Communauté européenne et acheteur= particulier alors TVA par défaut=TVA du produit vendu. Fin de règle.
Si vendeur et acheteur sont dans la Communauté européenne et que l'acheteur est une société alors TVA par défaut=0. Fin de règle.
Sinon la TVA proposée par défaut=0. Fin de règle. VATIsNotUsedDesc=Le taux de TVA proposé par défaut est 0. C'est le cas d'associations, particuliers ou certaines petites sociétés. VATIsUsedExampleFR=En France, cela signifie que les entreprises ou les organisations sont assuetis à la tva (réel ou normal). -VATIsNotUsedExampleFR=In France, it means associations that are non Sale tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sale tax in franchise) and paid a franchise Sale tax without any Sale tax declaration. This choice will display the reference "Non applicable Sale tax - art-293B of CGI" on invoices. +VATIsNotUsedExampleFR=En France, il s'agit des associations ne déclarant pas de TVA ou sociétés, organismes ou professions libérales ayant choisi le régime fiscal micro entreprise (TVA en franchise) et payant une TVA en franchise sans faire de déclaration de TVA. Ce choix fait de plus apparaître la mention "TVA non applicable - art-293B du CGI" sur les factures. ##### Local Taxes ##### LTRate=Taux LocalTax1IsNotUsed=Non assujeti -LocalTax1IsUsedDesc=Utilisation d'un 2ème type taxe (autre que TVA) -LocalTax1IsNotUsedDesc=Pas d'utilisation de 2ème type taxe (autre que TVA) +LocalTax1IsUsedDesc=Utilisation d'un 2ème type taxe (autre que le premier) +LocalTax1IsNotUsedDesc=Pas d'utilisation de 2ème type taxe (autre que le premier) LocalTax1Management=Gestion 2ème type de taxe LocalTax1IsUsedExample= LocalTax1IsNotUsedExample= LocalTax2IsNotUsed=Non assujeti -LocalTax2IsUsedDesc=Use a third type of tax (other than first one) -LocalTax2IsNotUsedDesc=Pas d'utilisation de 2ème type taxe (autre que TVA) +LocalTax2IsUsedDesc=Utilisation d'un 3ème type taxe (autre que le premier) +LocalTax2IsNotUsedDesc=Pas d'utilisation de 2ème type taxe (autre que le premier) LocalTax2Management=Gestion 3ème type de tax LocalTax2IsUsedExample= LocalTax2IsNotUsedExample= @@ -967,6 +967,7 @@ CalcLocaltax3Desc=Le Rapports des Taxes locales sont le total des taxes locales LabelUsedByDefault=Libellé qui sera utilisé si aucune traduction n'est trouvée pour ce code LabelOnDocuments=Libellé sur les documents LabelOrTranslationKey=Libellé ou clé de traduction +ValueOfConstantKey=Valeur de constante NbOfDays=Nb. de jours AtEndOfMonth=En fin de mois CurrentNext=Current/Next @@ -1053,7 +1054,7 @@ SetupDescription3=%s -> %s. Paramètres pour personnaliser le c SetupDescription4= %s -> %s
Cette étape est requise car Dolibarr ERP/CRM est un ensemble de plusieurs modules/applications, tous plus ou moins indépendants. Les fonctionnalités sont ajoutées aux menus pour chaque module que vous activez. SetupDescription5=Les autres entrées de configuration gèrent des paramètres facultatifs. LogEvents=Événements d'audit de sécurité -Audit=Audit +Audit=Audit de sécurité InfoDolibarr=Infos Dolibarr InfoBrowser=Infos navigateur InfoOS=Infos OS @@ -1065,7 +1066,7 @@ BrowserName=Nom du navigateur BrowserOS=OS du navigateur ListOfSecurityEvents=Liste des événements de sécurité Dolibarr SecurityEventsPurged=Evenement de sécurité purgés -LogEventDesc=Vous pouvez activer ici, la journalisation des événements d'audit de sécurité. Cet historique est consultable par les administrateurs dans le menu Outils systèmes - Audit. Attention, cette fonctionnalité peut générer un gros volume de données. +LogEventDesc=Vous pouvez activer ici, l'historique des événements d'audit de sécurité. Cet historique est consultable par les administrateurs dans le menu %s - %s. Attention, cette fonctionnalité peut générer un gros volume de données. AreaForAdminOnly=Les paramètres d'installation ne peuvent être remplis que par les utilisateurs administrateurs uniquement. SystemInfoDesc=Les informations systèmes sont des informations techniques diverses accessibles en lecture seule aux administrateurs uniquement. SystemAreaForAdminOnly=Cet espace n'est accessible qu'aux utilisateurs de type administrateur. Aucune permission Dolibarr ne permet d'étendre le cercle des utilisateurs autorisés à cet espace. @@ -1076,7 +1077,7 @@ DisplayDesc=Vous pouvez choisir ici tous les paramètres liés à l'apparence de AvailableModules=Modules/applications installés ToActivateModule=Pour activer des modules, aller dans l'espace Configuration (Accueil->Configuration->Modules). SessionTimeOut=Délai expiration des sessions -SessionExplanation=Ce nombre garanti que la session n'expire pas avant ce délai, lorsque le nettoyage des sessions est assurés par le mécanisme de nettoyage interne à PHP (et aucun autre). Le nettoyage interne de sessions PHP ne garantie pas que la session expire juste au moment de ce délai. Elle expirera après ce délai, mais au moment du nettoyage des sessions, qui a lieu toutes les %s/%s accès environ, mais uniquement lors d'accès fait par d'autres sessions.
Note : sur certains serveurs munis d'un mécanisme de nettoyage de session externe (cron sous Debian, Ubuntu…), le sessions peuvent être détruites après un délai, défini par la valeur par défaut de session.gc_maxlifetime, quelle que soit la valeur saisie ici. +SessionExplanation=Ce nombre garanti que la session n'expire pas avant ce délai, lorsque le nettoyage des sessions est assurés par le mécanisme de nettoyage interne à PHP (et aucun autre). Le nettoyage interne de sessions PHP ne garantie pas que la session expire juste au moment de ce délai. Elle expirera après ce délai, mais au moment du nettoyage des sessions, qui a lieu toutes les %s/%s accès environ, mais uniquement lors d'accès fait par d'autres sessions (si la valeur est 0, cela signifie que le nettoyage des session est fait par un process externe).
Note: sur certains serveurs munis d'un mécanisme de nettoyage de session externe (cron sous Debian, Ubuntu…), le sessions peuvent être détruites après un délai, défini par une configuration extérieure, quelle que soit la valeur saisie ici. TriggersAvailable=Déclencheurs disponibles TriggersDesc=Les déclencheurs sont des fichiers qui, une fois déposés dans le répertoire htdocs/core/triggers, modifient le comportement du workflow de Dolibarr. Ils réalisent des actions supplémentaires, déclenchées par les événements Dolibarr (création société, validation facture, clôture contrat…). TriggerDisabledByName=Déclencheurs de ce fichier désactivés par le suffix -NORUN dans le nom du fichier. @@ -1096,12 +1097,12 @@ MAIN_ROUNDING_RULE_TOT=Pas de la plage d'arrondi (pour les pays où l'arrondi se UnitPriceOfProduct=Prix unitaire HT d'un produit TotalPriceAfterRounding=Prix total (HT/TVA/TTC) après arrondis ParameterActiveForNextInputOnly=Paramètre effectif pour les prochaines saisies uniquement -NoEventOrNoAuditSetup=Aucun événement d'audit de sécurité n'a été enregistré. Ceci peut être normal si l'audit n'a pas été activé dans la configuration - sécurité - audit. +NoEventOrNoAuditSetup=Aucun événement d'audit de sécurité n'a été enregistré. Ceci peut être normal si l'audit n'a pas été activé dans "Configuration - Sécurité - Evénements de sécurité". NoEventFoundWithCriteria=Aucun événement d'audit de sécurité trouvé avec ces critères de recherche. SeeLocalSendMailSetup=Voir la configuration locale de sendmail BackupDesc=Pour réaliser une sauvegarde complète de Dolibarr, vous devez : BackupDesc2=Sauvegardez le contenu du répertoire document (%s) qui contient tous les fichiers envoyés et générés (Par conséquent il contient également les fichiers dump générés à l'étape 1). -BackupDesc3=Save content of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDesc3=Sauvez le contenu de votre base de données (%s) dans un fichier « dump ». Pour cela vous pouvez utiliser l'assistant ci-dessous. BackupDescX=Le répertoire archivé devra être placé en lieu sûr. BackupDescY=Le fichier « dump » généré devra être placé en lieu sûr. BackupPHPWarning=La sauvegarde n'est pas garantie avec cette méthode. Il est recommandé d'utiliser la méthode précédente. @@ -1141,7 +1142,7 @@ ExtraFieldsLinesRec=Attributs supplémentaires (ligne de factures modèles) ExtraFieldsSupplierOrdersLines=Attributs supplémentaires (lignes de commandes) ExtraFieldsSupplierInvoicesLines=Attributs supplémentaires (lignes de factures) ExtraFieldsThirdParties=Attributs supplémentaires (tiers) -ExtraFieldsContacts=Attributs supplémentaires (adresses de contacts) +ExtraFieldsContacts=Attributs supplémentaires (contacts/adresses) ExtraFieldsMember=Attributs supplémentaires (adhérents) ExtraFieldsMemberType=Attributs supplémentaires (type d'adhérents) ExtraFieldsCustomerInvoices=Attributs supplémentaires (factures) @@ -1155,7 +1156,7 @@ AlphaNumOnlyLowerCharsAndNoSpace=uniquement des caractères alphanumériques et SendmailOptionNotComplete=Attention, sur certains systèmes Linux, avec cette méthode d'envoi, pour pouvoir envoyer des emails en votre nom, la configuration d'exécution de sendmail doit contenir l'option -ba (paramètre mail.force_extra_parameters dans le fichier php.ini). Si certains de vos destinataires ne reçoivent pas de message, essayer de modifier ce paramètre PHP avec mail.force_extra_parameters = -ba. PathToDocuments=Chemin d'accès aux documents PathDirectory=Répertoire -SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +SendmailOptionMayHurtBuggedMTA=La fonction permettant d’envoyer des e-mails à l’aide de la méthode "PHP mail direct" générera un message qui risque de ne pas être analysé correctement par certains serveurs de messagerie. Le résultat est que certains mails ne peuvent pas être lus par des personnes hébergées par ces plateformes. C'est le cas de certains fournisseurs d'accès Internet (Ex: Orange en France). Ce n'est pas un problème avec Dolibarr ou PHP, mais avec le serveur de messagerie destinataire. Vous pouvez cependant ajouter une option MAIN_FIX_FOR_BUGGED_MTA à 1 dans Configuration - Autre pour modifier Dolibarr afin d'éviter cela. Cependant, vous pouvez rencontrer des problèmes avec d'autres serveurs qui utilisent strictement le standard SMTP. L'autre solution (recommandée) consiste à utiliser la méthode "Bibliothèque de socket SMTP" qui ne présente aucun inconvénient. TranslationSetup=Configuration de la traduction TranslationKeySearch=Rechercher une traduction TranslationOverwriteKey=Ajouter une traduction @@ -1170,18 +1171,18 @@ OriginalValueWas=La traduction d'origine est écrasée. La valeur initiale étai TransKeyWithoutOriginalValue=Vous avez forcé une nouvelle traduction pour la clé de traduction '%s' qui n'existe dans aucun fichier de langue TotalNumberOfActivatedModules=Modules activés : %s / %s YouMustEnableOneModule=Vous devez activer au moins une fonctionnalité -ClassNotFoundIntoPathWarning=Class %s not found in PHP path +ClassNotFoundIntoPathWarning=La classe %s n'a pas été trouvée dans le chemin PHP YesInSummer=Oui en été -OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are opened to external users (whatever the permissions of such users) and only if permissions are granted: +OnlyFollowingModulesAreOpenedToExternalUsers=Remarque, seuls les modules suivants sont ouverts aux utilisateurs externes (quelles qu'en soient les permissions de ces utilisateurs) et seulement si les permissions leur ont été données: SuhosinSessionEncrypt=Stockage des sessions chiffrées par Suhosin ConditionIsCurrently=La condition est actuellement %s YouUseBestDriver=Vous utilisez le driver %s qui est le driver recommandé actuellement. -YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +YouDoNotUseBestDriver=Vous utilisez le pilote %s mais le pilote %s est recommandé. +NbOfProductIsLowerThanNoPb=Vous avez uniquement %s produits / services dans la base de données. Cela ne nécessite aucune optimisation particulière. SearchOptim=Optimisation des recherches -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. -BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. -BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. +YouHaveXProductUseSearchOptim=Vous avez des produits %s dans la base de données. Vous devez ajouter la constante PRODUCT_DONOTSEARCH_ANYWHERE à 1 dans Home-Setup-Other. Limitez la recherche au début des chaînes, ce qui permet à la base de données d'utiliser des index et vous devez obtenir une réponse immédiate. +BrowserIsOK=Vous utilisez le navigateur Web %s. Ce navigateur est correct pour la sécurité et la performance. +BrowserIsKO=Vous utilisez le navigateur Web %s. Ce navigateur est connu pour être un mauvais choix pour la sécurité, la performance et la fiabilité. Nous vous recommandons d'utiliser Firefox, Chrome, Opera ou Safari. XDebugInstalled=XDebug est chargé. XCacheInstalled=XCache est chargé. AddRefInList=Afficher les références client/fournisseur dans les listes (listes déroulantes ou à autocomplétion) et les libellés des liens clicables.
Les tiers apparaîtront alors sous la forme "CC12345 - SC45678 - La big company coorp", au lieu de "La big company coorp". @@ -1205,8 +1206,8 @@ UserMailRequired=Email requis pour créer un nouvel utilisateur HRMSetup=Configuration du module GRH ##### Company setup ##### CompanySetup=Configuration du module Tiers -CompanyCodeChecker=Options for automatic generation of customer / vendor codes -AccountCodeManager=Options for automatic generation of customer / vendor accounting codes +CompanyCodeChecker=Options pour la génération automatique de codes client / fournisseur +AccountCodeManager=Options pour la génération automatique de codes comptable client ou fournisseur NotificationsDesc=Les notifications activent l'envoi d'e-mails automatiques pour certains événements de Dolibarr. L'envoi de ces e-mails automatiques est défini selon : NotificationsDescUser=* par utilisateurs, utilisateur par utilisateur. NotificationsDescContact=* par tiers de contacts (clients ou fournisseur), contact par contact. @@ -1217,7 +1218,7 @@ WatermarkOnDraft=Filigrane sur les documents brouillons JSOnPaimentBill=Activer la fonctionnalité de remplissage automatique des lignes de paiement sur le formulaire de paiement CompanyIdProfChecker=Règles sur les Identifiants professionnels MustBeUnique=Doit être unique ? -MustBeMandatory=Obligatoire pour créer des tiers ? +MustBeMandatory=Obligatoire pour créer des tiers (si le numéro de TVA ou le type d'entreprise est défini) ? MustBeInvoiceMandatory=Obligatoire pour valider des factures ? TechnicalServicesProvided=Services techniques fournis #####DAV ##### @@ -1229,7 +1230,7 @@ WebCalUrlForVCalExport=Un lien d'exportation du calendrier au format %s s BillsSetup=Configuration du module Factures BillsNumberingModule=Modèle de numérotation des factures et avoirs BillsPDFModules=Modèle de document de factures -BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +BillsPDFModulesAccordindToInvoiceType=Modèles de documents de facturation en fonction du type de facture PaymentsPDFModules=Modèle de document pour les règlements CreditNote=Avoir CreditNotes=Avoirs @@ -1358,8 +1359,8 @@ LDAPSynchroKO=Échec du test de synchronisation LDAPSynchroKOMayBePermissions=Échec du test de synchronisation. Vérifier que la connexion au serveur est correctement configurée et permet les mises à jour LDAP LDAPTCPConnectOK=Connexion TCP au serveur LDAP réussie (Serveur=%s, Port=%s) LDAPTCPConnectKO=Connexion TCP au serveur LDAP échouée (Serveur=%s, Port=%s) -LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) -LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindOK=Connexion / Authentification réussie sur le serveur LDAP (Serveur = %s, Port = %s, Admin = %s, Mot de passe = %s) +LDAPBindKO=La connexion / l'authentification au serveur LDAP a échoué (serveur = %s, port = %s, administrateur = %s, mot de passe = %s) LDAPSetupForVersion3=Serveur LDAP configuré en version 3 LDAPSetupForVersion2=Serveur LDAP configuré en version 2 LDAPDolibarrMapping=Mapping Dolibarr @@ -1421,40 +1422,40 @@ LDAPDescMembersTypes=Cette page permet de définir le nom des attributs de l'arb LDAPDescValues=Les valeurs exemples sont adaptées à OpenLDAP avec les schémas suivant chargés: core.schema, cosine.schema, inetorgperson.schema). Si vous utilisez les valeurs suggérées et OpenLDAP, modifiez votre fichier de configuration LDAP slapd.conf pour avoir tous ces schémas actifs. ForANonAnonymousAccess=Pour un accès authentifié (pour accès en écriture par exemple) PerfDolibarr=Rapport de configuration/optimisation sur la performance -YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. -NotInstalled=Not installed, so your server is not slowed down by this. +YouMayFindPerfAdviceHere=Cette page fournit des vérifications ou des conseils relatifs aux performances. +NotInstalled=Non installé, votre serveur n'est donc pas ralenti. ApplicativeCache=Cache applicatif MemcachedNotAvailable=Aucun cache applicatif trouvé. Vous pouvez accélérer les performances de Dolibarr en installant un serveur de cache Memcached et un module de cache applicatif exploitant ce serveur.
Plus d'info sur la page http://wiki.dolibarr.org/index.php/Module_MemCached. Notez que de nombreux hébergeurs low-cost ne fournissent pas de tels serveurs de cache dans leur infrastructure. MemcachedModuleAvailableButNotSetup=Le module memcached pour le cache applicatif a été trouvé mais la configuration de ce module n'est pas complète. MemcachedAvailableAndSetup=Le module memcached dédié à l'utilisation du serveur de cache memcached est activé. OPCodeCache=Cache OPCode -NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +NoOPCodeCacheFound=Aucun cache OPCode trouvé. Peut-être utilisez-vous un cache OPCode autre que XCache ou eAccelerator (bon) ou n’avez-vous pas un cache OPCode (très mauvais). HTTPCacheStaticResources=Cache HTTP des ressources statiques (css, img, javascript) FilesOfTypeCached=Fichiers de type %s mis en cache par le serveur HTTP FilesOfTypeNotCached=Fichiers de type %s non mis en cache par le serveur HTTP FilesOfTypeCompressed=Fichiers de type %s compressé par le serveur HTTP FilesOfTypeNotCompressed=Fichiers de type %s non compressé par le serveur HTTP CacheByServer=Cache par le serveur -CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByServerDesc=Par exemple, en utilisant la directive Apache "ExpiresByType image / gif A2592000" CacheByClient=Cache par le navigateur CompressionOfResources=Compression des réponses HTTP -CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +CompressionOfResourcesDesc=Par exemple, en utilisant la directive Apache "AddOutputFilterByType DEFLATE" TestNotPossibleWithCurrentBrowsers=Une détection automatique n'est pas possible avec le navigateur courant DefaultValuesDesc=Vous pouvez définir/forcer ici la valeur par défaut que vous voulez obtenir lorsque vous créez un nouvel enregistrement, et/ou les filtres par défaut ou ordre de tri des listes. DefaultCreateForm=Valeurs par défaut (sur les formulaires de création) DefaultSearchFilters=Filtres de recherche par défaut DefaultSortOrder=Ordre de tri par défaut DefaultFocus=Champs par défaut ayant le focus -DefaultMandatory=Mandatory form fields +DefaultMandatory=Champs de formulaire obligatoires ##### Products ##### ProductSetup=Configuration du module Produits ServiceSetup=Configuration du module Services ProductServiceSetup=Configuration des modules Produits et Services NumberOfProductShowInSelect=Nombre maximum de produits dans les listes déroulantes (0=aucune limite) -ViewProductDescInFormAbility=Display product descriptions in forms (otherwise as popup tooltip) +ViewProductDescInFormAbility=Afficher les descriptions de produits dans des formulaires (sinon, comme info-bulle contextuelle) MergePropalProductCard=Ajoute dans l'onglet Fichiers joints des produits/services, une option pour fusionner le document PDF du produit au PDF des propositions Azur si le produit/services est inclut dans la proposition. -ViewProductDescInThirdpartyLanguageAbility=Display products descriptions in the language of the third party -UseSearchToSelectProductTooltip=Also if you have a large number of products (> 100 000), you can increase speed by setting constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +ViewProductDescInThirdpartyLanguageAbility=Afficher les descriptions de produits dans la langue du tiers +UseSearchToSelectProductTooltip=De même, si vous avez un grand nombre de produits (> 100 000), vous pouvez augmenter la vitesse en définissant une constante PRODUCT_DONOTSEARCH_ANYWHERE sur 1 dans Configuration-> Autre. La recherche sera alors limitée au début de la chaîne. UseSearchToSelectProduct=Attendre que vous ayez appuyé sur une touche avant de charger le contenu de la liste déroulante des produits (Cela peut augmenter les performances si vous avez un grand nombre de produits, mais cela est moins convivial) SetDefaultBarcodeTypeProducts=Type de code-barre utilisé par défaut pour les produits SetDefaultBarcodeTypeThirdParties=Type de code-barre utilisé par défaut pour les tiers @@ -1528,18 +1529,18 @@ AdvancedEditor=Editeur avancé ActivateFCKeditor=Activer l'éditeur avancé pour : FCKeditorForCompany=Création/édition WYSIWIG de la description et note des éléments (autre que produits/services) FCKeditorForProduct=Création/édition WYSIWIG de la description et note des produits/services -FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForProductDetails=WYSIWIG création / édition de lignes de détails de produits pour toutes les entités (propositions, commandes, factures, etc ...). Avertissement: L'utilisation de cette option dans ce cas est fortement déconseillée car elle peut créer des problèmes de caractères spéciaux et de formatage de page lors de la création de fichiers PDF. FCKeditorForMailing= Création/édition WYSIWIG des emailings (Outils->Emailings) FCKeditorForUserSignature=Création/édition WYSIWIG de la signature des utilisateurs FCKeditorForMail=Création/édition WYSIWIG tous les emails (sauf Outils->Emailings) ##### OSCommerce 1 ##### -OSCommerceErrorConnectOkButWrongDatabase=Connection succeeded but database does not appear to be an OSCommerce database (Key %s not found in table %s). +OSCommerceErrorConnectOkButWrongDatabase=La connexion a réussi, mais la base de données ne semble pas être une base de données OSCommerce (la clé %s n’a pas été trouvée dans le tableau %s). OSCommerceTestOk=La connexion au serveur '%s' sur la base '%s' par l'utilisateur '%s' a réussi. -OSCommerceTestKo1=Connection to server '%s' succeeded but database '%s' could not be reached. +OSCommerceTestKo1=La connexion au serveur '%s' a réussi mais la base de données '%s' n'a pas pu être atteinte. OSCommerceTestKo2=La connexion au serveur '%s' par l'utilisateur '%s' à échoué. ##### Stock ##### StockSetup=Configuration du module Stock / Entrepôt -IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +IfYouUsePointOfSaleCheckModule=Si vous utilisez le module de point de vente (PDV) fourni par défaut ou un module externe, cette configuration peut être ignorée par votre module de PDV. La plupart des modules de PDV sont conçus par défaut pour créer une facture immédiatement et réduire le stock quelles que soient les options proposées. Donc, si vous avez besoin ou non d'une réduction de stock lors de l'enregistrement d'une vente depuis votre point de vente, vérifiez également la configuration de votre module de point de vente. ##### Menu ##### MenuDeleted=Menu supprimé Menus=Menus @@ -1561,7 +1562,7 @@ DetailRight=Condition d'affichage plein ou grisé DetailLangs=Fichier .lang pour la traduction du code libellé DetailUser=Interne / Externe / Tous Target=Cible -DetailTarget=Target for links (_blank top opens a new window) +DetailTarget=Cible pour les liens (_blank ouvre une nouvelle fenêtre) DetailLevel=Niveau (-1:menu haut, 0:entête menu, >0 menu et sous menu) ModifMenu=Modification du menu DeleteMenu=Effacer entrée de menu @@ -1576,7 +1577,7 @@ OptionVatDefaultDesc=TVA sur encaissement, l'exigibilité de la TVA est:
- su OptionVatDebitOptionDesc=TVA sur débit, l'exigibilité de la TVA est:
- sur livraison pour les biens (en pratique on utilise la date de facturation)
- sur facturation (débit) pour les services OptionPaymentForProductAndServices=Sur paiements pour les produits et services OptionPaymentForProductAndServicesDesc=La TVA est due:
- sur le paiement pour les marchandises
- sur les paiements pour les services -SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +SummaryOfVatExigibilityUsedByDefault=Moment d'exigibilité par défaut de la TVA pour l'option choisie: OnDelivery=Sur livraison OnPayment=Sur paiement OnInvoice=Sur facture @@ -1593,36 +1594,36 @@ AccountancyCodeBuy=Code comptable achat AgendaSetup=Configuration du module actions et agenda PasswordTogetVCalExport=Clé pour autoriser le lien d'exportation PastDelayVCalExport=Ne pas exporter les événements de plus de -AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) -AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form -AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view -AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_USE_EVENT_TYPE=Utiliser les types d'événements (gérés dans le menu Configuration -> Dictionnaires -> Type d'événements de l'agenda) +AGENDA_USE_EVENT_TYPE_DEFAULT=Définir automatiquement cette valeur par défaut pour le type d'événement dans le formulaire de création d'événement +AGENDA_DEFAULT_FILTER_TYPE=Définir automatiquement ce type d'événement dans le filtre de recherche de la vue agenda +AGENDA_DEFAULT_FILTER_STATUS=Définir automatiquement cet état pour les événements dans le filtre de recherche de la vue agenda AGENDA_DEFAULT_VIEW=Quel onglet voulez-vous voir ouvrir par défaut quand on choisit le menu Agenda AGENDA_REMINDER_EMAIL=Activer le rappel d'événement par e-mail (l'option de rappel / délai peut être défini pour chaque événement). Remarque: Le module %s doit être activé et configuré correctement pour que le rappel soit envoyé à la bonne fréquence. -AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER=Activer le rappel d'événement sur le navigateur de l'utilisateur (lorsque la date de l'événement est atteinte, chaque utilisateur peut le refuser à partir de la question de confirmation du navigateur) AGENDA_REMINDER_BROWSER_SOUND=Activer les notifications sonores. AGENDA_SHOW_LINKED_OBJECT=Afficher l'objet lié dans la vue agenda ##### Clicktodial ##### ClickToDialSetup=Configuration du module Click To Dial ClickToDialUrlDesc=URL appelée quand un clic sur l'icône téléphone est fait. Dans l'URL, vous pouvez utiliser les tags
__PHONETO__ qui sera remplacée par le numéro de téléphone de la personne à appeler
__PHONEFROM__ qui sera remplacée par le numéro de l'appelant (vous)
__LOGIN__ qui sera remplacée par l'identifiant d'accès de l'utilisateur à l'application d'appel (à définir sur la fiche utilisateur) et
__PASS__ qui sera remplacée par le mot de passe d'accès de l'utilisateur à l'application d'appel (également à définir sur la fiche utilisateur). -ClickToDialDesc=This module allows to make phone numbers clickable. A click on this icon will call make your phone call the phone number. This can be used to call a call center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialDesc=Ce module permet de rendre les numéros de téléphone cliquables. Un clic sur cette icône appellera votre téléphone à composer le numéro de téléphone. Cela peut être utilisé pour appeler un système de centre d'appels de Dolibarr qui peut appeler le numéro de téléphone d'un système SIP, par exemple. ClickToDialUseTelLink=Utiliser un lien «Tel.» sur les numéros de téléphone ClickToDialUseTelLinkDesc=Utilisez cette méthode si vos utilisateurs ont un softphone ou une interface de logiciel installé sur un même ordinateur que le navigateur, et a appelé lorsque vous cliquez sur un lien dans votre navigateur qui commencent par "tel:". Si vous avez besoin d'une solution de serveur complet (pas besoin d'installation locale du logiciel), vous devez définir ceci à "Non" et remplir le champ suivant. ##### Point Of Sales (CashDesk) ##### CashDesk=Caisse enregistreuse CashDeskSetup=Configuration du module Point de vente/caisse enregistreuse -CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskThirdPartyForSell=Tiers générique à utiliser par défaut pour les ventes CashDeskBankAccountForSell=Compte par défaut à utiliser pour l'encaissement en liquide CashDeskBankAccountForCheque= Compte par défaut à utiliser pour l'encaissement en chèque CashDeskBankAccountForCB= Compte par défaut à utiliser pour l'encaissement en carte de crédit -CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskDoNotDecreaseStock=Désactiver la réduction de stock lorsqu'une vente est effectuée à partir du point de vente (si "non", une réduction de stock est effectuée pour chaque vente effectuée à partir du point de vente, quelle que soit l'option définie dans le module Stock). CashDeskIdWareHouse=Forcer et restreindre l'emplacement/entrepôt à utiliser pour la réduction de stock -StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabled=Diminution du stock du point de vente désactivé StockDecreaseForPointOfSaleDisabledbyBatch=La décrémentation de stock depuis ce module Point de Vente n'est pas encore compatible avec la gestion des numéros de lots/série. -CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskYouDidNotDisableStockDecease=Vous n'avez pas désactivé la réduction de stock lors d'une vente depuis le point de vente. Par conséquent, un entrepôt est nécessaire. ##### Bookmark ##### BookmarkSetup=Configuration du module Marque-pages -BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +BookmarkDesc=Ce module vous permet de gérer les signets. Vous pouvez également ajouter des raccourcis vers les pages Dolibarr ou les sites Web externes dans le menu de gauche. NbOfBoomarkToShow=Nombre maximum de marques-pages à afficher dans le menu ##### WebServices ##### WebServicesSetup=Configuration du module Webservices @@ -1650,7 +1651,7 @@ ChequeReceiptsNumberingModule=Module de numérotation des bordereaux de remises MultiCompanySetup=Configuration du module Multi-société ##### Suppliers ##### SuppliersSetup=Configuration du module Fournisseurs -SuppliersCommandModel=Complete template of purchase order (logo...) +SuppliersCommandModel=Modèle de commandes fournisseur complet (logo…) SuppliersInvoiceModel=Modèle de factures fournisseur complet (logo…) SuppliersInvoiceNumberingModel=Modèles de numérotation des factures fournisseur IfSetToYesDontForgetPermission=Si positionné sur Oui, n'oubliez pas de donner les permissions aux groupes ou utilisateurs qui auront le droit de cette action. @@ -1701,7 +1702,7 @@ ListOfNotificationsPerUser=Liste des notifications par utilisateur* ListOfNotificationsPerUserOrContact=Liste des notifications par utilisateur* ou par contact** ListOfFixedNotifications=Liste des notifications emails fixes GoOntoUserCardToAddMore=Allez dans l'onglet "Notifications" d'un utilisateur pour ajouter ou supprimer des notifications pour les utilisateurs -GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contact addresses +GoOntoContactCardToAddMore=Rendez-vous sur l'onglet "Notifications" d'un tiers pour ajouter ou enlever les notifications pour les contacts/adresses Threshold=Seuil BackupDumpWizard=Assistant de génération d'un fichier de sauvegarde de la base de données SomethingMakeInstallFromWebNotPossible=L'installation de module externe est impossible depuis l'interface web pour la raison suivante : @@ -1785,9 +1786,9 @@ AddOtherPagesOrServices=Ajout d'autres pages ou services AddModels=Ajout de modèles de document ou de numérotation AddSubstitutions=Ajout de valeurs de substitution DetectionNotPossible=Détection impossible -UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +UrlToGetKeyToUseAPIs=Url pour que le jeton utilise l'API (une fois le jeton reçu, il est enregistré dans la table des utilisateurs de la base de données et doit être fourni à chaque appel d'API) ListOfAvailableAPIs=Liste des APIs disponibles -activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +activateModuleDependNotSatisfied=Le module "%s" dépend du module "%s" manquant. Le module "%1$s" risque donc de ne pas fonctionner correctement. Veuillez installer le module "%2$s" ou désactiver le module "%1$s" si vous souhaitez être à l'abri de toute surprise. CommandIsNotInsideAllowedCommands=La commande que vous essayez d'exécuter ne figure pas dans la liste des commandes autorisées définies dans le paramètre $dolibarr_main_restrict_os_commands du fichier conf.php . LandingPage=Page cible SamePriceAlsoForSharedCompanies=Si vous utilisez un module multi-société, avec le choix «prix unique», le prix sera aussi le même pour toutes les sociétés si les produits sont partagés entre les environnements @@ -1804,40 +1805,44 @@ MAIN_PDF_MARGIN_TOP=Marge haute sur les PDF MAIN_PDF_MARGIN_BOTTOM=Marge bas sur les PDF NothingToSetup=Aucune configuration particulière n'est requise pour ce module. SetToYesIfGroupIsComputationOfOtherGroups=Réglez ceci sur Oui si ce groupe est un calcul d'autres groupes -EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +EnterCalculationRuleIfPreviousFieldIsYes=Entrez la règle de calcul si le champ précédent était défini sur Oui (par exemple, 'CODEGRP1 + CODEGRP2') SeveralLangugeVariatFound=Plusieurs variantes de langue trouvées COMPANY_AQUARIUM_REMOVE_SPECIAL=Supprimer les caractères spéciaux COMPANY_AQUARIUM_CLEAN_REGEX=Filtre Regex pour nettoyer la valeur (COMPANY_AQUARIUM_CLEAN_REGEX) -GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) -GDPRContactDesc=If you store data about European companies/citizen, you can store the contact who is responsible for the General Data Protection Regulation here -HelpOnTooltip=Help text to show on tooltip -HelpOnTooltipDesc=Put text or a translation key here for the text to show on a tooltip when this field appears in a form -YouCanDeleteFileOnServerWith=You can delete this file on server with Command Line:
%s +GDPRContact=Responsable de la protection des données (DPD, Data Privacy ou contact GDPR) +GDPRContactDesc=Si vous stockez des données sur des entreprises / citoyens européens, vous pouvez enregistrer ici le contact responsable du règlement général sur la protection des données. +HelpOnTooltip=Texte d'aide à afficher dans l'info-bulle +HelpOnTooltipDesc=Mettez du texte ou une clé de traduction ici pour que le texte apparaisse dans une info-bulle lorsque ce champ apparaît dans un formulaire +YouCanDeleteFileOnServerWith=Vous pouvez supprimer ce fichier sur le serveur avec la ligne de commande:
%s ChartLoaded=Modèle de plan de compte chargé SocialNetworkSetup=Configuration du module Réseaux Sociaux -EnableFeatureFor=Enable features for %s -VATIsUsedIsOff=Note: The option to use sales Tax or VAT has been set to Off in the menu %s - %s, so Sale tax or Vat used will always be 0 for sales. +EnableFeatureFor=Activer les fonctionnalités pour %s +VATIsUsedIsOff=Remarque: l'option d'utilisation de la taxe de vente ou de la TVA a été définie sur Désactivée dans le menu %s - %s. La taxe de vente ou la TVA utilisée sera toujours égale à 0 pour les ventes. SwapSenderAndRecipientOnPDF=Échanger adresses expéditeurs et destinataires sur le PDF FeatureSupportedOnTextFieldsOnly=Attention, fonctionnalité prise en charge sur les champs de texte uniquement -EmailCollector=Email collector +EmailCollector=Collecteur de courrier électronique EmailCollectorDescription=Ajoute un travail planifié et une page de configuration pour analyser régulièrement les boîtes aux lettres (à l'aide du protocole IMAP) et enregistrer les courriers électroniques reçus dans votre application, au bon endroit et/ou créer automatiquement certains enregistrements (comme des opportunités). -NewEmailCollector=New Email Collector -EMailHost=Host of email IMAP server -MailboxSourceDirectory=Mailbox source directory -MailboxTargetDirectory=Mailbox target directory -EmailcollectorOperations=Operations to do by collector -CollectNow=Collect now -DateLastResult=Date last collect -LastResult=Last result -EmailCollectorConfirmCollectTitle=Email collect confirmation -EmailCollectorConfirmCollect=Do you want to run the collect for this collector now ? -NoNewEmailToProcess=No new email (matching filters) to process -NothingProcessed=Nothing done -XEmailsDoneYActionsDone=%s emails analyzed, %s emails successfuly processed (for %s record/actions done) by collector -RecordEvent=Record event +NewEmailCollector=Nouveau collecteur d'email +EMailHost=Hôte du serveur de messagerie IMAP +MailboxSourceDirectory=Répertoire source dans la boîte aux lettres +MailboxTargetDirectory=Répertoire cible dans la boîte aux lettres +EmailcollectorOperations=Opérations à effectuer par le collectionneur +CollectNow=Collecter maintenant +DateLastResult=Date de dernière collecte +LastResult=Dernier résultat +EmailCollectorConfirmCollectTitle=Confirmation de la collecte Email +EmailCollectorConfirmCollect=Voulez-vous exécuter la collecte pour ce collecteur maintenant ? +NoNewEmailToProcess=Aucun nouvel email (correspondants aux filtres) à traiter +NothingProcessed=Aucune action faite +XEmailsDoneYActionsDone=%s e-mails qualifiés, %s e-mails traités avec succès (pour %s enregistrements/actions faites) par le collecteur +RecordEvent=Enregistrer événement émail CreateLeadAndThirdParty=Créer opportunité (et tiers si nécessaire) -CodeLastResult=Result code of last collect -NbOfEmailsInInbox=Number of email in source directory +CodeLastResult=Code du résultat de la dernière collecte +NbOfEmailsInInbox=Nombre de courriels dans le répertoire source +LoadThirdPartyFromName=Charger le tiers à partir du nom (charger uniquement) +LoadThirdPartyFromNameOrCreate=Charger le tiers à partir du nom (créer si non trouvé) +WithDolTrackingID=ID Tracker Dolibarr trouvé +WithoutDolTrackingID=ID Tracker Dolibarr non trouvé ##### Resource #### ResourceSetup=Configuration du module Ressource UseSearchToSelectResource=Utilisez un champ avec auto-complétion pour choisir les ressources (plutôt qu'une liste déroulante). @@ -1845,4 +1850,4 @@ DisabledResourceLinkUser=Désactiver la fonctionnalité pour lier une ressource DisabledResourceLinkContact=Désactiver la fonctionnalité pour lier une ressource aux contacts/adresses ConfirmUnactivation=Confirmer réinitialisation du module OnMobileOnly=Sur petit écran (smartphone) uniquement -DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) +DisableProspectCustomerType=Désactiver le type de tiers "Prospect + Client" (le tiers doit donc être un client potentiel ou un client, mais ne peut pas être les deux) diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 19e4e877acb..14b5d97a7b9 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -25,10 +25,10 @@ InvoiceProFormaAsk=Facture proforma InvoiceProFormaDesc=La facture proforma est une image de facture définitive mais qui n'a aucune valeur comptable. InvoiceReplacement=Facture de remplacement InvoiceReplacementAsk=Facture de remplacement de la facture -InvoiceReplacementDesc=Replacement invoice is used to cancel and completely replace an invoice with no payment already received.

Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceReplacementDesc=La facture de remplacement sert à annuler et remplacer complètement une facture existante sur laquelle aucun paiement n'a encore eu lieu.

Rem: Seules les factures sans aucun paiement peuvent être remplacées. Si ces dernières ne sont pas fermées, elles le seront automatiquement au statut 'abandonnée'. InvoiceAvoir=Facture avoir InvoiceAvoirAsk=Facture avoir pour correction de la facture -InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice has an amount that differs from the amount really paid (eg customer paid too much by mistake, or will not pay completely since he returned some products). +InvoiceAvoirDesc=La facture d'avoir est une facture négative destinée à compenser un montant de facture qui diffère du montant réellement versé (suite à un trop versé par le client par erreur ou un manque non versé par le client suite à un retour produit par exemple). invoiceAvoirWithLines=Créer l'avoir avec les même lignes que la factures dont il est issu invoiceAvoirWithPaymentRestAmount=Créer l'avoir avec le montant restant à payer de la facture dont il est issu. invoiceAvoirLineWithPaymentRestAmount=Avoir sur le reste à payer @@ -66,12 +66,12 @@ paymentInInvoiceCurrency=Dans la devise des factures PaidBack=Remboursé DeletePayment=Supprimer le paiement ConfirmDeletePayment=Êtes-vous sûr de vouloir supprimer ce paiement ? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount?
The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount?
The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this supplier. +ConfirmConvertToReduc=Voulez vous convertir ce(cet) %s en remise fixe ?
Le montant sera enregistré parmi les autres remises et pourra être utilisé en tant que remise sur une autre facture du client. +ConfirmConvertToReducSupplier=Souhaitez-vous convertir ce %s en une remise absolue?
Le montant sera sauvegardé parmi toutes les remises et pourra être utilisé comme remise pour une facture actuelle ou future de ce fournisseur. SupplierPayments=Règlements fournisseurs ReceivedPayments=Règlements reçus ReceivedCustomersPayments=Règlements reçus du client -PayedSuppliersPayments=Payments paid to suppliers +PayedSuppliersPayments=Paiements versés aux fournisseurs ReceivedCustomersPaymentsToValid=Règlements clients reçus à valider PaymentsReportsForYear=Rapports de règlements pour %s PaymentsReports=Rapports de règlements @@ -91,8 +91,8 @@ PaymentConditionsShort=Conditions de règlement PaymentAmount=Montant règlement ValidatePayment=Valider ce règlement PaymentHigherThanReminderToPay=Règlement supérieur au reste à payer -HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. -HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. +HelpPaymentHigherThanReminderToPay=Attention, le montant de paiement pour une ou plusieurs factures est supérieur au reste à payer.
Corrigez votre saisie, sinon, confirmez et pensez à créer un avoir du trop perçu lors de la fermeture de chacune des factures surpayées. +HelpPaymentHigherThanReminderToPaySupplier=Attention, le montant du paiement d'une ou plusieurs factures est supérieur au montant restant à payer.
Modifiez votre entrée, sinon confirmez et envisagez de créer une note de crédit pour l'excédent payé pour chaque facture en trop. ClassifyPaid=Classer 'Payée' ClassifyPaidPartially=Classer 'Payée partiellement' ClassifyCanceled=Classer 'Abandonnée' @@ -131,8 +131,8 @@ BillStatusClosedUnpaid=Fermée (impayée) BillStatusClosedPaidPartially=Payée (partiellement) BillShortStatusDraft=Brouillon BillShortStatusPaid=Payée -BillShortStatusPaidBackOrConverted=Refunded or converted -Refunded=Refunded +BillShortStatusPaidBackOrConverted=Remboursé ou converti +Refunded=Remboursé BillShortStatusConverted=Payé BillShortStatusCanceled=Abandonnée BillShortStatusValidated=Validée @@ -142,16 +142,16 @@ BillShortStatusNotRefunded=Non remboursé BillShortStatusClosedUnpaid=Fermée BillShortStatusClosedPaidPartially=Payée PaymentStatusToValidShort=A valider -ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorVATIntraNotConfigured=Numéro de TVA intracommunautaire non encore défini ErrorNoPaiementModeConfigured=Aucun mode de règlement défini par défaut. Allez corriger dans la configuration du module facture. ErrorCreateBankAccount=Créer un compte bancaire puis aller dans la configuration du module facture pour définir les modes de règlement ErrorBillNotFound=Facture %s inexistante -ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorInvoiceAlreadyReplaced=Erreur, vous avez tenté de valider une facture pour remplacer la facture %s. Mais celle-ci a déjà été remplacée par la facture %s. ErrorDiscountAlreadyUsed=Erreur, la remise a déjà été attribuée ErrorInvoiceAvoirMustBeNegative=Erreur, une facture de type Avoir doit avoir un montant négatif ErrorInvoiceOfThisTypeMustBePositive=Erreur, une facture de ce type doit avoir un montant positif ErrorCantCancelIfReplacementInvoiceNotValidated=Erreur, il n'est pas possible d'annuler une facture qui a été remplacée par une autre qui se trouve toujours à l'état 'brouillon'. -ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=Cette partie ou une autre est déjà utilisée et les séries d'escompte ne peuvent donc pas être supprimées. BillFrom=Émetteur BillTo=Adressé à ActionsOnBill=Événements sur la facture @@ -180,20 +180,20 @@ ConfirmClassifyPaidBill=Êtes-vous sûr de vouloir classer la facture %s ConfirmCancelBill=Êtes-vous sûr de vouloir annuler la facture %s ? ConfirmCancelBillQuestion=Pour quelle raison voulez-vous classer la facture abandonnée ? ConfirmClassifyPaidPartially=Êtes-vous sûr de vouloir classer la facture %s comme payée ? -ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason/s for you closing this invoice? -ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyQuestion=Cette facture n'a pas été payée complètement. Quelle est la raison pour la fermeture de cette facture? +ConfirmClassifyPaidPartiallyReasonAvoir=Rester impayé (%s %s) est une réduction accordée car le paiement a été effectué avant terme. Je régularise la TVA avec un avoir. ConfirmClassifyPaidPartiallyReasonDiscount=Le reste à payer (%s %s) est un escompte accordé parce que le paiement a été effectué avant terme. ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Le reste à payer (%s %s) est un escompte accordé après facture. J'accepte de perdre la TVA sur cet escompte ConfirmClassifyPaidPartiallyReasonDiscountVat=Le reste à payer (%s %s) est un escompte ConfirmClassifyPaidPartiallyReasonBadCustomer=Mauvais payeur ConfirmClassifyPaidPartiallyReasonProductReturned=Produits en partie retournés ConfirmClassifyPaidPartiallyReasonOther=Créance abandonnée pour autre raison -ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») -ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=Ce choix est possible si votre facture a été fournie avec les commentaires appropriés. (Exemple «Seule la taxe correspondant au prix effectivement payé donne droit à déduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=Dans certains pays, ce choix n'est possible que si votre facture contient des notes correctes. ConfirmClassifyPaidPartiallyReasonAvoirDesc=Ce choix est le choix à prendre si les autres ne sont pas applicables -ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=Un mauvais client est un client qui refuse de payer sa dette. ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=Ce choix sera celui choisi, dans le cas du paiement incomplet suite au retour d'une partie des produits -ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
- payment not complete because some products were shipped back
- amount claimed too important because a discount was forgotten
In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyPaidPartiallyReasonOtherDesc=Utilisez ce choix si tous les autres ne conviennent pas, par exemple dans les situations suivantes:
- paiement non effectué car certains produits ont été retournés
- montant réclamé trop important car une remise a été oubliée
Dans tous les cas, montant la sur-réclamation doit être corrigée dans le système comptable en créant une note de crédit. ConfirmClassifyAbandonReasonOther=Autre ConfirmClassifyAbandonReasonOtherDesc=Ce choix sera celui choisi dans tout autre cas. Par exemple suite à l'intention de créer une facture de remplacement. ConfirmCustomerPayment=Confirmez-vous la saisie de ce règlement de %s %s ? @@ -201,10 +201,10 @@ ConfirmSupplierPayment=Confirmez-vous la saisie de ce règlement de %s %s ConfirmValidatePayment=Êtes-vous sûr de vouloir valider ce paiement, aucune modification n'est possible une fois le paiement validé ? ValidateBill=Valider facture UnvalidateBill=Repasser facture en brouillon -NumberOfBills=No. of invoices -NumberOfBillsByMonth=No. of invoices per month +NumberOfBills=Nb de factures +NumberOfBillsByMonth=Nb de factures par mois AmountOfBills=Montant de factures -AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsHT=Montant des factures (HT) AmountOfBillsByMonthHT=Montant de factures par mois (HT) ShowSocialContribution=Afficher charge fiscale/sociale ShowBill=Afficher facture @@ -262,9 +262,9 @@ Repeatables=Modèles ChangeIntoRepeatableInvoice=Convertir en facture modèle CreateRepeatableInvoice=Créer facture modèle CreateFromRepeatableInvoice=Créer depuis facture modèle -CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndInvoiceLines=Factures clients et lignes de factures CustomersInvoicesAndPayments=Factures clients et règlements -ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_1=Factures clients et lignes de facture ExportDataset_invoice_2=Factures clients et règlements ProformaBill=Facture Proforma : Reduction=Réduction @@ -304,9 +304,9 @@ DiscountAlreadyCounted=Réductions ou crédits déjà consommés CustomerDiscounts=Remises client SupplierDiscounts=Remises vendeurs BillAddress=Adresse de facturation -HelpEscompte=This discount is a discount granted to customer because payment was made before term. -HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. -HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +HelpEscompte=Un escompte est une remise accordée, sur une facture donnée, à un client car ce dernier a réalisé son règlement bien avant l'échéance. +HelpAbandonBadCustomer=Ce montant a été abandonné (client jugé mauvais payeur) et est considéré comme une perte exceptionnelle. +HelpAbandonOther=Ce montant a été abandonné car il s'agissait d'une erreur de facturation (saisie mauvais client, facture remplacée par une autre par exemple). IdSocialContribution=Id de paiement charge fiscale ou sociale PaymentId=Id paiement PaymentRef=Ref paiement @@ -323,19 +323,19 @@ InvoiceNotChecked=Aucune facture n'a été sélectionnée CloneInvoice=Cloner facture ConfirmCloneInvoice=Êtes-vous sûr de vouloir cloner cette facture %s ? DisabledBecauseReplacedInvoice=Action désactivée car facture remplacée -DescTaxAndDividendsArea=Cet écran résume la liste de toutes les paiements réalisés pour des dépenses particulières. Seuls les paiements de l'année choisi sont inclus ici. -NbOfPayments=No. of payments +DescTaxAndDividendsArea=Cet écran résume la liste de toutes les paiements réalisés pour des dépenses particulières. Seuls les paiements de l'année choisie sont inclus ici. +NbOfPayments=Nb de paiements SplitDiscount=Scinder réduction en deux -ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into 2 smaller discounts? -TypeAmountOfEachNewDiscount=Input amount for each of two parts: -TotalOfTwoDiscountMustEqualsOriginal=Total of two new discounts must be equal to original discount amount. +ConfirmSplitDiscount=Voulez-vous vraiment diviser cette remise de %s %s en deux remises plus petites? +TypeAmountOfEachNewDiscount=Quantité d'entrée pour chacune des deux parties: +TotalOfTwoDiscountMustEqualsOriginal=Le total de deux nouvelles remises doit être égal au montant de la remise initiale. ConfirmRemoveDiscount=Êtes-vous sûr de vouloir supprimer cette réduction ? RelatedBill=Facture associée RelatedBills=Factures associées RelatedCustomerInvoices=Factures clients liées RelatedSupplierInvoices=Factures fournisseurs liées LatestRelatedBill=Dernière facture en rapport -WarningBillExist=Warning, one or more invoices already exist +WarningBillExist=Attention, une ou plusieurs factures existent déjà MergingPDFTool=Outil de fusion de PDF AmountPaymentDistributedOnInvoice=Montant paiement affecté à la facture PaymentOnDifferentThirdBills=Autoriser le règlement de factures de différents tiers si ils ont la même maison-mère @@ -410,19 +410,19 @@ PaymentTypeCHQ=Chèque PaymentTypeShortCHQ=Chèque PaymentTypeTIP=TIP (Titre interbancaire de paiement) PaymentTypeShortTIP=Paiement TIP -PaymentTypeVAD=Online payment -PaymentTypeShortVAD=Online payment +PaymentTypeVAD=Paiement en ligne +PaymentTypeShortVAD=Paiement en ligne PaymentTypeTRA=Traite PaymentTypeShortTRA=Traite PaymentTypeFAC=Facteur PaymentTypeShortFAC=Facteur BankDetails=Coordonnées bancaires BankCode=Code banque -DeskCode=Office code +DeskCode=Code guichet BankAccountNumber=Numéro de compte -BankAccountNumberKey=Check digits +BankAccountNumberKey=Clé Residence=Domiciliation -IBANNumber=IBAN complete account number +IBANNumber=Code IBAN IBAN=IBAN BIC=BIC/SWIFT BICNumber=Code BIC/SWIFT @@ -447,7 +447,7 @@ PaymentByTransferOnThisBankAccount=Règlement par virement sur le compte bancair VATIsNotUsedForInvoice=* TVA non applicable art-293B du CGI LawApplicationPart1=Par application de la loi 80.335 du 12/05/80 LawApplicationPart2=les marchandises demeurent la propriété du -LawApplicationPart3=the seller until full payment of +LawApplicationPart3=vendeur jusqu'à complet encaissement de LawApplicationPart4=leurs prix. LimitedLiabilityCompanyCapital=SARL au Capital de UseLine=Appliquer @@ -465,7 +465,7 @@ Cheques=Chèques DepositId=Id dépôt NbCheque=Nombre de chèques CreditNoteConvertedIntoDiscount=Ce %s a été converti en %s -UsBillingContactAsIncoiveRecipientIfExist=Utiliser l'adresse du contact facturation client de la facture plutôt que l'adresse du tiers comme destinataire des factures +UsBillingContactAsIncoiveRecipientIfExist=Utiliser l'adresse du contact de type 'contact facturation' plutôt que l'adresse du tiers comme destinataire des factures ShowUnpaidAll=Afficher tous les impayés ShowUnpaidLateOnly=Afficher uniquement les factures impayées en retard PaymentInvoiceRef=Paiement facture %s @@ -478,20 +478,20 @@ CantRemovePaymentWithOneInvoicePaid=Suppression impossible quand il existe au mo ExpectedToPay=Paiement attendu CantRemoveConciliatedPayment=Suppression d'un paiement rapproché impossible PayedByThisPayment=Règlé par ce paiement -ClosePaidInvoicesAutomatically=Classify "Paid" all standard, down payment or replacement invoices paid entirely. +ClosePaidInvoicesAutomatically=Classer «payées» toutes les factures standard, les acomptes ou les factures de remplacement entièrement payées ClosePaidCreditNotesAutomatically=Classer automatiquement à "Payé" les factures avoirs entièrement remboursées. ClosePaidContributionsAutomatically=Classer "payé" toutes les contributions sociales ou fiscales payées entièrement. -AllCompletelyPayedInvoiceWillBeClosed=All invoice with no remainder to pay will be automatically closed with status "Paid". +AllCompletelyPayedInvoiceWillBeClosed=Toutes les factures sans reste à payer seront automatiquement clôturées avec le statut "Payée". ToMakePayment=Payer ToMakePaymentBack=Rembourser ListOfYourUnpaidInvoices=Liste des factures impayées NoteListOfYourUnpaidInvoices=Remarque: Cette liste ne contient que les factures des Tiers pour lesquels vous êtes le commercial affecté. RevenueStamp=Timbre fiscal -YouMustCreateInvoiceFromThird=This option is only available when creating invoices from tab "customer" of third party +YouMustCreateInvoiceFromThird=Cette option est uniquement disponible lors de la création de factures à partir de l'onglet "client" d'un tiers YouMustCreateInvoiceFromSupplierThird=Cette option est disponible uniquement lors de la création d'une facture depuis l'onglet «fournisseur» d'un tiers YouMustCreateStandardInvoiceFirstDesc=Pour créer une facture modèle, vous devez d'abord créer une facture standard brouillon et la convertir en modèle. PDFCrabeDescription=Modèle de facture PDF complet (modèle recommandé par défaut) -PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFSpongeDescription=Modèle de facture PDF Sponge. Un modèle de facture complet PDFCrevetteDescription=Modèle de facture PDF Crevette (modèle complet pour les factures de situation) TerreNumRefModelDesc1=Renvoie le numéro sous la forme %syymm-nnnn pour les factures et factures de remplacement, %syymm-nnnn pour les avoirs et %syymm-nnnn pour les acomptes où yy est l'année, mm le mois et nnnn un compteur séquentiel sans rupture et sans remise à 0 MarsNumRefModelDesc1=Renvoie une numérotation au format %syymm-nnnn pour les factures standards, %syymm-nnnn pour les factures de remplacement, %syymm-nnnn pour les factures d'acompte et %syymm-nnnn pour les factures d'avoir où yy est l'année, mm le mois et nnnn un compteur sans rupture ni retour à zéro. diff --git a/htdocs/langs/fr_FR/blockedlog.lang b/htdocs/langs/fr_FR/blockedlog.lang index 440f0d0d176..ae0b630096d 100644 --- a/htdocs/langs/fr_FR/blockedlog.lang +++ b/htdocs/langs/fr_FR/blockedlog.lang @@ -1,6 +1,6 @@ -BlockedLog=Unalterable Logs +BlockedLog=Journaux Inaltérables Field=Champ -BlockedLogDesc=Ce module suit à la trace quelques événements dans un journal invariable (que vous ne pouvez pas modifier une fois enregistré) dans une chaîne de bloc, en temps réel. Ce module fournit la compatibilité avec les exigences des lois de quelques pays (comme la France avec la Loi de Finance 2016 - Norme NF535) +BlockedLogDesc=Ce module retrace certains événements dans un journal immuable (que vous ne pouvez pas modifier une fois enregistré) dans une chaîne de blocs, en temps réel. Ce module assure la compatibilité avec les exigences des lois de certains pays (comme la France avec la loi Finance 2016 - Norme NF535). Fingerprints=Événements et empreintes archivés FingerprintsDesc=C'est l'outil pour parcourir ou extraire les logs inaltérables. Les journaux inaltérables sont générés et archivés localement dans une table dédiée, en temps réel lorsque vous enregistrez une action dans dolibarr. Vous pouvez utiliser cet outil pour exporter cette archive et l'enregistrer sur un support externe (certains pays, comme la France, vous demandent de le faire chaque année). Notez qu'il n'y a pas de fonction pour purger ce journal et chaque changement essayé d'être fait directement dans ce journal (par un hacker par exemple) sera rapporté avec une empreinte non valide. Si vous avez vraiment besoin de purger cette table parce que vous avez utilisé votre application à des fins de démonstration/test et que vous voulez nettoyer vos données pour démarrer votre production, vous pouvez demander à votre revendeur ou intégrateur de réinitialiser votre base de données (toutes vos données seront supprimées).\n CompanyInitialKey=Clé initiale de la société (hachage du bloc de genèse) @@ -8,46 +8,46 @@ BrowseBlockedLog=Logs inaltérables ShowAllFingerPrintsMightBeTooLong=Afficher tous les journaux archivés (peut être long) ShowAllFingerPrintsErrorsMightBeTooLong=Afficher tous les logs d'archives non valides (peut être long) DownloadBlockChain=Télécharger les empreintes -KoCheckFingerprintValidity=Archived log is not valid. It means someone (a hacker?) has modified some data of this archived log after it was recorded, or has erased the previous archived record (check that line with previous # exists). -OkCheckFingerprintValidity=Archived log is valid. It means all data on this line were not modified and record follow the previous one. -OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. -AddedByAuthority=Stored into remote authority -NotAddedByAuthorityYet=Not yet stored into remote authority +KoCheckFingerprintValidity=Le journal archivé n'est pas valide. Cela signifie que quelqu'un (un pirate informatique?) A modifié certaines données de ce journal archivé après son enregistrement ou a effacé l'enregistrement archivé précédent (vérifiez que la ligne avec le # précédent existe). +OkCheckFingerprintValidity=Le journal archivé est valide. Cela signifie que toutes les données de cette ligne n'ont pas été modifiées et l'enregistrement suit la précédente. +OkCheckFingerprintValidityButChainIsKo=Le journal archivé semble valide par rapport au précédent mais la chaîne était corrompue auparavant. +AddedByAuthority=Stocké dans une autorité distante +NotAddedByAuthorityYet=Pas encore stocké dans une autorité distante ShowDetails=Voir plus de détails -logPAYMENT_VARIOUS_CREATE=Payment (not assigned to invoice) created -logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to invoice) modified -logPAYMENT_VARIOUS_DELETE=Payment (not assigned to invoice) logical deletion -logPAYMENT_ADD_TO_BANK=Payment added to bank -logPAYMENT_CUSTOMER_CREATE=Customer payment created -logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion -logDONATION_PAYMENT_CREATE=Donation payment created -logDONATION_PAYMENT_DELETE=Donation payment logical deletion -logBILL_PAYED=Customer invoice paid -logBILL_UNPAYED=Customer invoice set unpaid +logPAYMENT_VARIOUS_CREATE=Paiement créé (non affecté à la facture) +logPAYMENT_VARIOUS_MODIFY=Paiement modifié (non affecté à la facture) +logPAYMENT_VARIOUS_DELETE=Suppression logique du paiement (non affecté à la facture) +logPAYMENT_ADD_TO_BANK=Paiement ajouté à la banque +logPAYMENT_CUSTOMER_CREATE=Paiement client créé +logPAYMENT_CUSTOMER_DELETE=Suppression logique du paiement client +logDONATION_PAYMENT_CREATE=Paiement de donation créé +logDONATION_PAYMENT_DELETE=Suppression logique du paiement des dons +logBILL_PAYED=Facture client payée +logBILL_UNPAYED=Facture client impayée logBILL_VALIDATE=Facture client validée logBILL_SENTBYMAIL=Facture client envoyée par mail -logBILL_DELETE=Customer invoice logically deleted -logMODULE_RESET=Module BlockedLog was disabled -logMODULE_SET=Module BlockedLog was enabled +logBILL_DELETE=Facture client supprimée logiquement +logMODULE_RESET=Le module BlockedLog a été désactivé +logMODULE_SET=Le module BlockedLog a été activé logDON_VALIDATE=Don validé logDON_MODIFY=Don modifié -logDON_DELETE=Donation logical deletion +logDON_DELETE=Don logique suppression logMEMBER_SUBSCRIPTION_CREATE=Cotisation adhérent créée logMEMBER_SUBSCRIPTION_MODIFY=Cotisation adhérent modifiée -logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logMEMBER_SUBSCRIPTION_DELETE=Suppression logique d'abonnement de membre BlockedLogBillDownload=Téléchargement facture client BlockedLogBillPreview=Aperçu facture client BlockedlogInfoDialog=Détail du log ListOfTrackedEvents=Liste des actions suivies Fingerprint=Empreinte -DownloadLogCSV=Export archived logs (CSV) -logDOC_PREVIEW=Preview of a validated document in order to print or download -logDOC_DOWNLOAD=Download of a validated document in order to print or send -DataOfArchivedEvent=Full datas of archived event -ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) -BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. -BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +DownloadLogCSV=Exporter les journaux archivés (CSV) +logDOC_PREVIEW=Aperçu d'un document validé pour impression ou téléchargement +logDOC_DOWNLOAD=Téléchargement d'un document validé pour impression ou envoi +DataOfArchivedEvent=Données complètes de l'événement archivé +ImpossibleToReloadObject=Objet d'origine (type %s, id %s) non lié (voir la colonne 'Données complètes' pour obtenir les données sauvegardées non modifiables) +BlockedLogAreRequiredByYourCountryLegislation=Le module Journaux inaltérables peut être requis par la législation de votre pays. La désactivation de ce module peut invalider toute transaction future au regard de la loi et de l'utilisation de logiciels légaux, car elles ne peuvent être validées par un contrôle fiscal. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Le module Journaux inaltérables a été activé en raison de la législation de votre pays. La désactivation de ce module peut invalider toute transaction future au regard de la loi et de l’utilisation de logiciels légaux, car elles ne peuvent pas être validées par un audit fiscal. BlockedLogDisableNotAllowedForCountry=Liste des pays où l'utilisation de ce module est obligatoire (juste pour éviter de désactiver le module par erreur. Si votre pays est dans cette liste, la désactivation du module n'est pas possible sans la modification préalable de cette liste. Notez également que l'activation/désactivation de ce module garder une trace dans le journal des logs inaltérables). -OnlyNonValid=Non-valid -TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. -RestrictYearToExport=Restrict month / year to export +OnlyNonValid=Non valide +TooManyRecordToScanRestrictFilters=Trop d'enregistrements à analyser / analyser. Veuillez restreindre la liste avec des filtres plus restrictifs. +RestrictYearToExport=Restreindre mois / année pour exporter diff --git a/htdocs/langs/fr_FR/cashdesk.lang b/htdocs/langs/fr_FR/cashdesk.lang index e152f2c4318..af1a1b7c91b 100644 --- a/htdocs/langs/fr_FR/cashdesk.lang +++ b/htdocs/langs/fr_FR/cashdesk.lang @@ -30,14 +30,14 @@ ShowCompany=Voir société ShowStock=Voir entrepôt DeleteArticle=Cliquez pour enlever cet article FilterRefOrLabelOrBC=Recherche (Ref/Lib.) -UserNeedPermissionToEditStockToUsePos=Vous avez demandé de réduire le stock sur création de facture, aussi l'utilisateur qui utilise le Point De Vente doit avoir la permission d'éditer le stock. +UserNeedPermissionToEditStockToUsePos=Vous demandez de réduire le stock lors de la création de la facture. L'utilisateur qui utilise le Point De Vente doit donc avoir l'autorisation de modifier le stock. DolibarrReceiptPrinter=Imprimante reçu -PointOfSale=Point de Vente -CloseBill=Fermer Bill -Floors=Étages -Floor=Étage +PointOfSale=Caisse enregistreuses +CloseBill=Fermer la facture +Floors=Etages +Floor=Etage AddTable=Ajouter une table -Place=Endroit -TakeboxNecesary='TakeBOX' Application requise +Place=Marché +TakeboxNecesary=Application 'TakeBOX' requise OrderPrinters=Commande imprimantes -SearchProduct=Recherche produit +SearchProduct=Rechercher un produit diff --git a/htdocs/langs/fr_FR/categories.lang b/htdocs/langs/fr_FR/categories.lang index e40474eb925..b65024a5217 100644 --- a/htdocs/langs/fr_FR/categories.lang +++ b/htdocs/langs/fr_FR/categories.lang @@ -16,6 +16,7 @@ MembersCategoriesArea=Espace tags/catégories adhérents ContactsCategoriesArea=Espace tags/catégories de contacts AccountsCategoriesArea=Espace des tags/categories ProjectsCategoriesArea=Zone des tags/catégories des projets +UsersCategoriesArea=Espace tags/catégories des utlisateurs SubCats=Sous-catégories CatList=Liste des tags/catégories NewCategory=Nouveau tag/catégorie @@ -52,14 +53,15 @@ CustomersCategoryShort=Tag/catégorie de clients ProductsCategoryShort=Tag/catégorie de produits MembersCategoryShort=Tag/catégorie adhérents SuppliersCategoriesShort=Tags fournisseurs -CustomersCategoriesShort=Tags/catégories de clients -ProspectsCategoriesShort=Tags/Catégories de prospects +CustomersCategoriesShort=Tags clients +ProspectsCategoriesShort=Tags prospects CustomersProspectsCategoriesShort=Tags clients/prosp. -ProductsCategoriesShort=Tags/catégories de produits -MembersCategoriesShort=Tags/catégories de membres -ContactCategoriesShort=Tags/catégories de contacts -AccountsCategoriesShort=Tag/catégorie des comptes -ProjectsCategoriesShort=Tags/catégories de projets +ProductsCategoriesShort=Tags de produits +MembersCategoriesShort=Tags des adhérents +ContactCategoriesShort=Tags de contacts +AccountsCategoriesShort=Tags des comptes +ProjectsCategoriesShort=Tags de projets +UsersCategoriesShort=Tags utlisateurs ThisCategoryHasNoProduct=Ce tag/catégorie ne contient aucun produit. ThisCategoryHasNoSupplier=Ce tag/catégorie ne contient aucun fournisseur. ThisCategoryHasNoCustomer=Ce tag/catégorie ne contient aucun client. diff --git a/htdocs/langs/fr_FR/commercial.lang b/htdocs/langs/fr_FR/commercial.lang index 77b4a095834..8619101a5f4 100644 --- a/htdocs/langs/fr_FR/commercial.lang +++ b/htdocs/langs/fr_FR/commercial.lang @@ -52,6 +52,7 @@ ActionAC_TEL=Appel téléphonique ActionAC_FAX=Envoi fax ActionAC_PROP=Envoi proposition par email ActionAC_EMAIL=Envoi email +ActionAC_EMAIL_IN=Réception d'email ActionAC_RDV=Rendez-vous ActionAC_INT=Intervention sur site ActionAC_FAC=Envoi facture client par email @@ -75,5 +76,5 @@ ToOfferALinkForOnlineSignature=Lien pour signature en ligne WelcomeOnOnlineSignaturePage=Bienvenue sur la page pour accepter les propositions commerciales de%s ThisScreenAllowsYouToSignDocFrom=Cet écran vous permet d'accepter et signer ou de refuser le devis ou la proposition commerciale ThisIsInformationOnDocumentToSign=Ceci est une information sur le document à accepter ou à refuser -SignatureProposalRef=Signer le devis ou la proposition commerciale %s +SignatureProposalRef=Signature du devis ou proposition commerciale %s FeatureOnlineSignDisabled=Fonctionnalité pour la signature en ligne désactivée ou document généré avant l'activation de la fonctionnalité diff --git a/htdocs/langs/fr_FR/companies.lang b/htdocs/langs/fr_FR/companies.lang index 1016091557d..ae1ff48f688 100644 --- a/htdocs/langs/fr_FR/companies.lang +++ b/htdocs/langs/fr_FR/companies.lang @@ -38,9 +38,9 @@ ThirdPartyCustomers=Clients ThirdPartyCustomersStats=Clients ThirdPartyCustomersWithIdProf12=Clients avec %s ou %s ThirdPartySuppliers=Fournisseurs -ThirdPartyType=Type of company +ThirdPartyType=Type du tiers Individual=Individu privé -ToCreateContactWithSameName=Will create a Third Party and a linked Contact/Address with same information as the Third Party. In most cases, even if your Third Party is a physical person, creating a Third Party alone is enough. +ToCreateContactWithSameName=Crée automatiquement un contact/adresse, sous le tiers, avec la même information que le tiers. Dans la plupart des cas, même si votre tiers est une personne physique, la création d'un tiers seul suffit. ParentCompany=Maison mère Subsidiaries=Filiales ReportByMonth=Rapport par mois @@ -76,8 +76,8 @@ Town=Ville Web=Web Poste= Poste DefaultLang=Langue par défaut -VATIsUsed=Sales tax used -VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsUsed=Assujetti à la TVA +VATIsUsedWhenSelling=Cela définit si ce tiers inclut une taxe de vente ou non lorsqu'il facture une facture à ses propres clients. VATIsNotUsed=Non assujetti à la TVA CopyAddressFromSoc=Remplir avec l'adresse du tiers ThirdpartyNotCustomerNotSupplierSoNoRef=Tiers ni client ni fournisseur, pas d'objets référents disponibles @@ -258,7 +258,7 @@ ProfId1DZ=RC ProfId2DZ=Article ProfId3DZ=Numéro d'identification du fournisseur ProfId4DZ=Numéro d'identification du client -VATIntra=Sales Tax/VAT ID +VATIntra=Numéro de TVA VATIntraShort=Num. TVA VATIntraSyntaxIsValid=Syntaxe valide VATReturn=Fréquence TVA @@ -274,8 +274,8 @@ CompanyHasRelativeDiscount=Ce client a une remise par défaut de %s%% CompanyHasNoRelativeDiscount=Ce client n'a pas de remise relative par défaut HasRelativeDiscountFromSupplier=Vous avez une réduction par défaut de %s%% chez ce fournisseur HasNoRelativeDiscountFromSupplier=Vous n'avez pas de remise relative par défaut chez ce fournisseur -CompanyHasAbsoluteDiscount=This customer has discounts available (credits notes or down payments) for %s %s -CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasAbsoluteDiscount=Ce client dispose de crédits disponibles (avoirs ou acomptes) pour un montant de %s %s +CompanyHasDownPaymentOrCommercialDiscount=Ce client a des remises disponibles (commercial, acompte) pour %s %s CompanyHasCreditNote=Ce client a %s %s d'avoirs disponibles HasNoAbsoluteDiscountFromSupplier=Vous n'avez aucun crédit de réduction disponible auprès de ce fournisseur HasAbsoluteDiscountFromSupplier=Vous avez des crédits disponibles (avoirs ou acomptes) pour %s %s chez ce fournisseur @@ -307,18 +307,18 @@ CustomerCode=Code client SupplierCode=Code fournisseur CustomerCodeShort=Code client SupplierCodeShort=Code fournisseur -CustomerCodeDesc=Customer Code, unique for all customers -SupplierCodeDesc=Vendor Code, unique for all vendors +CustomerCodeDesc=Code client unique pour chaque client +SupplierCodeDesc=Code fournisseur unique pour chaque fournisseur RequiredIfCustomer=Requis si le tiers est un client ou un prospect RequiredIfSupplier=Requis si un tiers est un fournisseur -ValidityControledByModule=Validity controlled by module -ThisIsModuleRules=Rules for this module +ValidityControledByModule=Validité contrôlée par le module +ThisIsModuleRules=Voici les règles de ce module ProspectToContact=Prospect à contacter CompanyDeleted=La société "%s" a été supprimée de la base. ListOfContacts=Liste des contacts ListOfContactsAddresses=Liste des contacts/adresses ListOfThirdParties=Liste des tiers -ShowCompany=Show Third Party +ShowCompany=Affichier tiers ShowContact=Afficher contact ContactsAllShort=Tous (pas de filtre) ContactType=Type de contact @@ -333,20 +333,20 @@ NoContactForAnyProposal=Ce contact n'est contact d'aucune proposition commercial NoContactForAnyContract=Ce contact n'est contact d'aucun contrat NoContactForAnyInvoice=Ce contact n'est contact d'aucune facture NewContact=Nouveau contact -NewContactAddress=New Contact/Address +NewContactAddress=Nouveau Contact/Adresse MyContacts=Mes contacts Capital=Capital CapitalOf=Capital de %s EditCompany=Modification société -ThisUserIsNot=This user is not a prospect, customer or vendor +ThisUserIsNot=Cet utilisateur n'est ni un prospect, ni un client, ni un fournisseur VATIntraCheck=Vérifier -VATIntraCheckDesc=The link %s uses the European VAT checker service (VIES). An external internet access from server is required for this service to work. +VATIntraCheckDesc=Le lien %s permet d'interroger le service européen de contrôle des numéro de TVA intracommunautaire. Un accès à Internet depuis le serveur est requis pour que ce service fonctionne. VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do VATIntraCheckableOnEUSite=Vérifier la TVA intra-communautaire sur le site de la Commission Européenne VATIntraManualCheck=Vous pouvez aussi vérifier manuellement via le site de la commission européenne %s ErrorVATCheckMS_UNAVAILABLE=Vérification impossible. Le service de vérification n'est pas fourni par ce pays membre (%s). -NorProspectNorCustomer=Not prospect, or customer -JuridicalStatus=Legal Entity Type +NorProspectNorCustomer=Ni client, ni prospect +JuridicalStatus=Type d'entité légale Staff=Effectif ProspectLevelShort=Potentiel ProspectLevel=Potentiel du prospect @@ -387,11 +387,11 @@ ExportCardToFormat=Exporter fiche au format ContactNotLinkedToCompany=Contact non lié à un tiers DolibarrLogin=Identifiant utilisateur NoDolibarrAccess=Pas d'accès utilisateur -ExportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties -ExportDataset_company_2=Contacts and their properties -ImportDataset_company_1=Third Parties (companies/foundations/physical people) and their properties -ImportDataset_company_2=Contacts/Addresses and attributes -ImportDataset_company_3=Bank accounts of Third Parties +ExportDataset_company_1=Tiers (sociétés/institutions/particuliers) et attributs +ExportDataset_company_2=Contacts (de tiers) et attributs +ImportDataset_company_1=Tiers (sociétés/institutions/particuliers) et attributs +ImportDataset_company_2=Contacts/Adresses (de tiers ou libre) et attributs +ImportDataset_company_3=Coordonnées bancaires des tiers ImportDataset_company_4=Tiers - Commerciaux (Affectation des Commerciaux aux Tiers) PriceLevel=Niveau de prix DeliveryAddress=Adresse de livraison @@ -402,16 +402,16 @@ DeleteFile=Suppression d'un fichier ConfirmDeleteFile=Êtes-vous sûr de vouloir supprimer ce fichier ? AllocateCommercial=Affecter un commercial Organization=Organisme -FiscalYearInformation=Fiscal Year +FiscalYearInformation=Exercice fiscal FiscalMonthStart=Mois de début d'exercice YouMustAssignUserMailFirst=Vous devez définir un email pour cet utilisateur avant de pouvoir ajouter une notification par courrier électronique. YouMustCreateContactFirst=Pour pouvoir ajouter une notifications par mail,vous devez déjà définir des contacts valides pour le tiers ListSuppliersShort=Liste des fournisseurs ListProspectsShort=Liste des prospects ListCustomersShort=Liste des clients -ThirdPartiesArea=Third Parties/Contacts -LastModifiedThirdParties=Last %s modified Third Parties -UniqueThirdParties=Total of Third Parties +ThirdPartiesArea=Tiers / Contacts +LastModifiedThirdParties=Les %s derniers tiers modifiés +UniqueThirdParties=Total de tiers uniques InActivity=Ouvert ActivityCeased=Clos ThirdPartyIsClosed=Le tiers est clôturé @@ -420,7 +420,7 @@ CurrentOutstandingBill=Montant encours OutstandingBill=Montant encours autorisé OutstandingBillReached=Montant encours autorisé dépassé OrderMinAmount=Montant minimum pour la commande -MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +MonkeyNumRefModelDesc=Renvoie un nombre au format %syymm-nnnn pour le code client et %syymm-nnnn pour le code fournisseur, où yy est année, mm est mois et nnnn est une séquence sans interruption ni retour à 0. LeopardNumRefModelDesc=Code libre sans vérification. Peut être modifié à tout moment. ManagingDirectors=Nom du(des) gestionnaire(s) (PDG, directeur, président...) MergeOriginThirdparty=Tiers en doublon (le tiers que vous voulez supprimer) diff --git a/htdocs/langs/fr_FR/compta.lang b/htdocs/langs/fr_FR/compta.lang index 297db2e5c13..e7f50ef2a2a 100644 --- a/htdocs/langs/fr_FR/compta.lang +++ b/htdocs/langs/fr_FR/compta.lang @@ -142,7 +142,7 @@ CalcModeVATDebt=Mode %sTVA sur débit%s. CalcModeVATEngagement=Mode %sTVA sur encaissement%s. CalcModeDebt=Analyse des factures enregistrées connues même si elles ne sont pas encore comptabilisées dans le Grand Livre. CalcModeEngagement=Analyse des paiements enregistrés connus, même s'ils ne sont pas encore comptabilisés dans le Grand Livre. -CalcModeBookkeeping=Analyse des données journalisées dans le grand livre +CalcModeBookkeeping=Analyse des données journalisées dans le tableau Grand livre. CalcModeLT1= Mode %sRE sur factures clients - factures fournisseurs%s CalcModeLT1Debt=Mode %sRE sur factures clients%s CalcModeLT1Rec= Mode %sRE sur factures fournisseurs%s @@ -229,11 +229,11 @@ ACCOUNTING_VAT_SOLD_ACCOUNT=Compte comptable par défaut pour la TVA - TVA sur l ACCOUNTING_VAT_BUY_ACCOUNT=Compte comptable par défaut pour la TVA - TVA sur les achats (utilisé si non défini au niveau de la configuration du dictionnaire de TVA) ACCOUNTING_VAT_PAY_ACCOUNT=Compte comptable par défaut pour le paiement de la TVA ACCOUNTING_ACCOUNT_CUSTOMER=Compte comptable utilisé pour le tiers client -ACCOUNTING_ACCOUNT_CUSTOMER_Desc=Le compte comptable dédié défini sur la fiche tiers sera utilisé pour l'affectation du compte auxiliaire uniquement. Celui-ci sera utilisé pour la comptabilité générale et comme valeur par défaut de la comptabilité auxiliaire si le compte comptable client dédié du ties n'est pas défini. +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=Le compte de comptabilité dédié défini sur la carte tierce sera utilisé pour la comptabilité Subledger uniquement. Celui-ci sera utilisé pour le grand livre et comme valeur par défaut de la comptabilité Subledger si le compte de comptabilité client dédié sur une tierce partie n'est pas défini. ACCOUNTING_ACCOUNT_SUPPLIER=Compte comptable utilisé pour les tiers fournisseur -ACCOUNTING_ACCOUNT_SUPPLIER_Desc=Le compte comptable dédié défini sur la carte tierce sera utilisé pour l'affectation du compte secondaire uniquement. Celui-ci sera utilisé pour le grand livre général et comme valeur par défaut de la comptabilité du sous-compte rendu si le compte d'affectation spécialisé du fournisseur sur un tiers n'est pas défini. +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=Le compte de comptabilité dédié défini sur la carte tierce sera utilisé pour la comptabilité Subledger uniquement. Celui-ci sera utilisé pour le grand livre et comme valeur par défaut de la comptabilité Subledger si le compte de comptabilité fournisseur dédié sur une tierce partie n'est pas défini. CloneTax=Cloner une charge sociale/fiscale -ConfirmCloneTax=Confirmez le clone du paiement de charge sociale/fiscale +ConfirmCloneTax=Confirmer le clone d'un impôt social / fiscal CloneTaxForNextMonth=Cloner pour le mois suivant SimpleReport=Rapport simple AddExtraReport=Rapports complémentaires (Ajouter le rapport client local et international) @@ -248,7 +248,7 @@ ErrorBankAccountNotFound=Erreur: compte banque non trouvé FiscalPeriod=Période fiscale ListSocialContributionAssociatedProject=Liste des charges sociales liées au projet DeleteFromCat=Supprimer du groupe comptable -AccountingAffectation=Compte affecté +AccountingAffectation=Affectation comptable LastDayTaxIsRelatedTo=Dernier jour de la période pour laquelle la taxe est due VATDue=TVA réclamée ClaimedForThisPeriod=Réclamé pour la période diff --git a/htdocs/langs/fr_FR/contracts.lang b/htdocs/langs/fr_FR/contracts.lang index a75d83c1dbd..c984f6cd951 100644 --- a/htdocs/langs/fr_FR/contracts.lang +++ b/htdocs/langs/fr_FR/contracts.lang @@ -67,7 +67,7 @@ CloseService=Fermer service BoardRunningServices=Services actifs et expirés en contrat ServiceStatus=Statut du service DraftContracts=Contrats brouillons -CloseRefusedBecauseOneServiceActive=Fermeture du contrat impossible car il y a au moins un service actif +CloseRefusedBecauseOneServiceActive=Le contrat ne peut pas être fermé car il y a au moins un service ouvert dessus ActivateAllContracts=Activer tous les services CloseAllContracts=Clôturer tous les services DeleteContractLine=Supprimer ligne de contrat @@ -89,6 +89,7 @@ CloneContract=Cloner le contrat ConfirmCloneContract=Etes vous sûr de vouloir cloner le contrat %s ? LowerDateEndPlannedShort=Date de fin de service la plus basse parmi les services actifs SendContractRef=Informations contrat __REF__ +OtherContracts=Autres contrats ##### Types de contacts ##### TypeContact_contrat_internal_SALESREPSIGN=Commercial signataire du contrat TypeContact_contrat_internal_SALESREPFOLL=Commercial suivi du contrat diff --git a/htdocs/langs/fr_FR/cron.lang b/htdocs/langs/fr_FR/cron.lang index 3a78b48e2b6..bd35edf1273 100644 --- a/htdocs/langs/fr_FR/cron.lang +++ b/htdocs/langs/fr_FR/cron.lang @@ -12,7 +12,7 @@ OrToLaunchASpecificJob=Ou pour vérifier et lancer un travail programmé spécif KeyForCronAccess=Clé de sécurité pour l'URL de lancement des travaux programmés FileToLaunchCronJobs=Ligne de commande pour vérifier et lancer les travaux programmés qualifiés CronExplainHowToRunUnix=Sur un environnement Unix vous pouvez utiliser l'entrée suivante en crontab pour exécuter la ligne de commande toutes les 5 minutes -CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronExplainHowToRunWin=Sous Microsoft (tm) Windows, vous pouvez utiliser les outils Tâches programmées pour exécuter la ligne de commande toutes les 5 minutes. CronMethodDoesNotExists=La classe %s ne contient aucune méthode %s CronJobDefDesc=Les travaux planifiés sont définis dans le fichier descripteur de module. Lorsque le module est activé, ils sont chargés et disponibles afin que vous puissiez administrer les travaux à partir du menu des outils d'administration %s. CronJobProfiles=Liste des profils de travaux planifiés prédéfinis @@ -42,7 +42,7 @@ CronModule=Module CronNoJobs=Aucun travail enregistré CronPriority=Priorité CronLabel=Libellé -CronNbRun=No. launches +CronNbRun=Nb. lancements CronMaxRun=Nb max de lancement CronEach=Tous les JobFinished=Travail lancé et terminé @@ -61,11 +61,11 @@ CronStatusInactiveBtn=Désactiver CronTaskInactive=Cette tâche est désactivée CronId=Id CronClassFile=Nom de fichier intégrant la classe -CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
product -CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
product/class/product.class.php -CronObjectHelp=The object name to load.
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
Product -CronMethodHelp=The object method to launch.
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for method is
fetch -CronArgsHelp=The method arguments.
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for paramters can be
0, ProductRef +CronModuleHelp=Nom du répertoire du module Dolibarr (fonctionne également avec le module externe Dolibarr).
Par exemple, pour appeler la méthode fetch de l'objet produit Dolibarr /htdocs/product/class/product.class.php, la valeur du module est
produit +CronClassFileHelp=Chemin relatif et nom de fichier à charger (chemin est relatif au répertoire racine du serveur Web).
Par exemple, pour appeler la méthode fetch de l'objet produit Dolibarr htdocs / product / class / product.class.php , la valeur du nom de fichier de la classe est
product / class / product.class.php +CronObjectHelp=Le nom de l'objet à charger.
Par exemple, pour appeler la méthode fetch de l'objet produit Dolibarr /htdocs/product/class/product.class.php, la valeur du nom du fichier de classe est
Produit +CronMethodHelp=La méthode d'objet à lancer.
Par exemple, pour appeler la méthode fetch de l'objet produit Dolibarr /htdocs/product/class/product.class.php, la valeur de la méthode est
fetch +CronArgsHelp=Les arguments de la méthode.
Par exemple, pour appeler la méthode fetch de l'objet produit Dolibarr /htdocs/product/class/product.class.php, la valeur des paramètres peut être: 0, ProductRef . CronCommandHelp=La commande système a exécuter. CronCreateJob=Créer un nouveau travail planifié CronFrom=A partir du diff --git a/htdocs/langs/fr_FR/dict.lang b/htdocs/langs/fr_FR/dict.lang index eba530a3970..076c5e5e005 100644 --- a/htdocs/langs/fr_FR/dict.lang +++ b/htdocs/langs/fr_FR/dict.lang @@ -223,7 +223,7 @@ CountryTO=Tonga CountryTT=Trinité-et-Tobago CountryTR=Turquie CountryTM=Turkménistan -CountryTC=Iles Turks-et-Caicos +CountryTC=Iles Turques-et-Caïques CountryTV=Tuvalu CountryUG=Ouganda CountryUA=Ukraine @@ -295,7 +295,7 @@ CurrencyCentINR=paisa CurrencyCentSingINR=paise CurrencyThousandthSingTND=millime #### Input reasons ##### -DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_INTE=Internet DemandReasonTypeSRC_CAMP_MAIL=Campagne Publipostage DemandReasonTypeSRC_CAMP_EMAIL=Campagne d'emailing DemandReasonTypeSRC_CAMP_PHO=Campagne Téléphonique diff --git a/htdocs/langs/fr_FR/ecm.lang b/htdocs/langs/fr_FR/ecm.lang index 0f92ea1917a..dccaf7181dd 100644 --- a/htdocs/langs/fr_FR/ecm.lang +++ b/htdocs/langs/fr_FR/ecm.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - ecm -ECMNbOfDocs=Nombre de documents du répertoire +ECMNbOfDocs=Nb. de documents du répertoire ECMSection=Répertoire ECMSectionManual=Répertoire manuel ECMSectionAuto=Répertoire automatique diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang index 2e695768355..a17f8282f6f 100644 --- a/htdocs/langs/fr_FR/errors.lang +++ b/htdocs/langs/fr_FR/errors.lang @@ -42,7 +42,7 @@ ErrorBadDateFormat=La valeur '%s' a un format de date non reconnu ErrorWrongDate=La date est incorrecte ErrorFailedToWriteInDir=Impossible d'écrire dans le répertoire %s ErrorFoundBadEmailInFile=Syntaxe d'email incorrecte trouvée pour %s lignes dans le fichier (exemple ligne %s avec email=%s) -ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorUserCannotBeDelete=L'utilisateur ne peut pas être supprimé. Peut-être est-il associé à des entités Dolibarr. ErrorFieldsRequired=Des champs obligatoires n'ont pas été renseignés ErrorSubjectIsRequired=Le sujet du mail est obligatoire ErrorFailedToCreateDir=Echec à la création d'un répertoire. Vérifiez que le user du serveur Web ait bien les droits d'écriture dans les répertoires documents de Dolibarr. Si le paramètre safe_mode a été activé sur ce PHP, vérifiez que les fichiers php dolibarr appartiennent à l'utilisateur du serveur Web. @@ -65,22 +65,22 @@ ErrorNoValueForSelectType=Les valeurs de la liste de sélection doivent être re ErrorNoValueForCheckBoxType=Les valeurs de la liste de case à cochées doivent être renseignées ErrorNoValueForRadioType=Les valeurs de la liste d'options doivent être renseignées ErrorBadFormatValueList=Les valeurs de la liste ne peuvent pas avoir plus d'une virgule: %s mais il en faut au moins une: clé, valeur -ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. -ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. -ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorFieldCanNotContainSpecialCharacters=Le champ %s ne peut contenir de caractères spéciaux. +ErrorFieldCanNotContainSpecialNorUpperCharacters=Le champ %s ne doit contenir ni caractères spéciaux ni majuscules et ne peut contenir que des chiffres. +ErrorFieldMustHaveXChar=Le champ %s doit comporter au moins %s caractères. ErrorNoAccountancyModuleLoaded=Aucun module de comptabilité activé ErrorExportDuplicateProfil=Ce nom de profil existe déjà pour ce lot d'export. ErrorLDAPSetupNotComplete=Le matching Dolibarr-LDAP est incomplet. ErrorLDAPMakeManualTest=Un fichier .ldif a été généré dans le répertoire %s. Essayez de charger ce fichier manuellement depuis la ligne de commande pour plus de détail sur l'erreur. -ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorCantSaveADoneUserWithZeroPercentage=Impossible de sauver une action à l'état "non commencé" si le champ "réalisé par" est aussi défini. ErrorRefAlreadyExists=La référence utilisée pour la création existe déjà ErrorPleaseTypeBankTransactionReportName=Choisissez le nom du relevé bancaire sur lequel la ligne est rapportées (Format AAAAMM ou AAAAMMJJ) -ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasChildren=Impossible de supprimer l'enregistrement car il possède des enregistrements fils. ErrorRecordHasAtLeastOneChildOfType=L'objet a au moins un enfant de type %s -ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorRecordIsUsedCantDelete=Impossible de supprimer l'enregistrement. Il est déjà utilisé ou inclus dans un autre objet. ErrorModuleRequireJavascript=Le javascript ne doit pas être désactivé pour que cette fonctionnalité soit utilisable. Pour activer/désactiver l'utilisation de javascript, allez dans le menu Accueil->Configuration->Affichage. ErrorPasswordsMustMatch=Les 2 mots de passe saisis doivent correspondre -ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorContactEMail=Une erreur technique est apparue. Merci de contacter l'administrateur à l'email suivant %s en lui indiquant le code erreur %s dans votre message ou mieux en fournissant une copie d'écran de cette page. ErrorWrongValueForField=Mauvaise valeur pour le champ numéro %s (la valeur '%s' ne respecte pas la règle %s) ErrorFieldValueNotIn=Mauvaise valeur pour le champ numéro %s (la valeur '%s' n'est pas une valeur disponible dans le champ %s de la table %s) ErrorFieldRefNotIn=Mauvaise valeur pour le champ numéro %s (la valeur '%s' n'est pas une référence existante comme %s) @@ -97,7 +97,7 @@ ErrorBadMaskBadRazMonth=Erreur, mauvais valeur de remise à zéro ErrorMaxNumberReachForThisMask=Nombre maximum atteint pour ce masque ErrorCounterMustHaveMoreThan3Digits=Le compteur doit avoir au moins 3 positions ErrorSelectAtLeastOne=Erreur. Sélectionnez au moins une entrée. -ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorDeleteNotPossibleLineIsConsolidated=Suppression impossible car l'enregistrement porte sur au moins une transaction bancaire rapprochée ErrorProdIdAlreadyExist=%s est attribué à un autre tiers ErrorFailedToSendPassword=Échec de l'envoi du mot de passe ErrorFailedToLoadRSSFile=Echec de la récupération du flux RSS. Ajoutez la constante MAIN_SIMPLEXMLLOAD_DEBUG si le message d'erreur n'est pas assez explicite. @@ -117,7 +117,7 @@ ErrorLoginDoesNotExists=Le compte utilisateur identifié par %s n'a pu ê ErrorLoginHasNoEmail=Cet utilisateur n'a pas d'email. Impossible de continuer. ErrorBadValueForCode=Mauvaise valeur saisie pour le code. Réessayez avec une nouvelle valeur... ErrorBothFieldCantBeNegative=Les champs %s et %s ne peuvent être tous deux négatifs -ErrorFieldCantBeNegativeOnInvoice=Field %s can't be negative on such type of invoice. If you want to add a discount line, just create the discount first with link %s on screen and apply it to invoice. You can also ask your admin to set option FACTURE_ENABLE_NEGATIVE_LINES to 1 to restore old behaviour. +ErrorFieldCantBeNegativeOnInvoice=Le champ %s ne peut pas être négatif pour ce type de facture. Si vous souhaitez ajouter une ligne de remise, créez tout d'abord la remise avec le lien %s à l'écran et appliquez-la à la facturation. Vous pouvez également demander à votre administrateur de définir l'option FACTURE_ENABLE_NEGATIVE_LINES sur 1 pour restaurer l'ancien comportement. ErrorQtyForCustomerInvoiceCantBeNegative=La quantité d'une ligne ne peut pas être négative dans les factures clients ErrorWebServerUserHasNotPermission=Le compte d'exécution du serveur web %s n'a pas les permissions pour cela ErrorNoActivatedBarcode=Aucun type de code-barres activé @@ -141,7 +141,7 @@ ErrorBadFormat=Mauvais format ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Erreur, cet adhérent n'ait pas encore lié à un tiers. Lier le tier à un tiers existant ou créer un nouveau tiers avant de créer une adhésion avec facture. ErrorThereIsSomeDeliveries=Erreur, il y a des bordereaux de réception liées à ces expéditions. La suppression est refusée. ErrorCantDeletePaymentReconciliated=Impossible d'effacer un paiement qui a généré une écriture sur le compte bancaire et qui a été rapprochée. -ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorCantDeletePaymentSharedWithPayedInvoice=Impossible de supprimer un paiement partagé par au moins une facture avec le statut Payé ErrorPriceExpression1=Ne peut assigner la constante '%s' ErrorPriceExpression2=Ne peut redéfinir la fonction '%s' ErrorPriceExpression3=Variable '%s' non définie dans la définition de fonction @@ -150,7 +150,7 @@ ErrorPriceExpression5=Unexpected '%s' ErrorPriceExpression6=Nombre incorrect d'arguments (%s donné,%s attendu) ErrorPriceExpression8=Operateur '%s' non attendu ErrorPriceExpression9=Une erreur inattendue s'est produite -ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression10=L'opérateur '%s' manque d'opérande ErrorPriceExpression11=Attendu '%s' ErrorPriceExpression14=Division par zéro ErrorPriceExpression17=Variable '%s' non définie @@ -211,8 +211,8 @@ ErrorFileNotFoundWithSharedLink=Fichier non trouvé. Peut que la clé de partage ErrorProductBarCodeAlreadyExists=Le code-barre du produit %s existe déjà sur une autre référence de produit ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Notez également que l'utilisation d'un produit virtuel pour augmenter ou réduire automatiquement les sous-produits n'est pas possible lorsqu'au moins un sous-produit (ou sous-produit de sous-produits) a besoin d'un numéro de série/lot. ErrorDescRequiredForFreeProductLines=La description est obligatoire pour les lignes avec un produit non prédéfini -ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use - +ErrorAPageWithThisNameOrAliasAlreadyExists=La page / conteneur %s a le même nom ou un autre alias que celui que vous tentez d'utiliser. +ErrorDuringChartLoad=Erreur lors du chargement du tableau de compte. Si certains comptes n'ont pas été chargés, vous pouvez toujours les entrer manuellement. # Warnings WarningPasswordSetWithNoAccount=Un mot de passe a été fixé pour cet adhérent. Cependant, aucun compte d'utilisateur n'a été créé. Donc, ce mot de passe est stocké, mais ne peut être utilisé pour accéder à Dolibarr. Il peut être utilisé par un module/interface externe, mais si vous n'avez pas besoin de définir ni login ni mot de passe pour un adhérent, vous pouvez désactiver l'option «Gérer un login pour chaque adhérent" depuis la configuration du module Adhérents. Si vous avez besoin de gérer un login, mais pas de mot de passe, vous pouvez laisser ce champ vide pour éviter cet avertissement. Remarque: L'email peut également être utilisé comme login si l'adhérent est lié à un utilisateur. WarningMandatorySetupNotComplete=Les informations de configuration obligatoire doivent être renseignées @@ -221,9 +221,9 @@ WarningBookmarkAlreadyExists=Un marque-page avec ce titre ou cette destination ( WarningPassIsEmpty=Attention, le mot de passe de la base de données Dolibarr est vide. Cela représente une faille de sécurité. Il est recommandé d'ajouter manuellement un mot de passe à la base et de modifier le fichier conf.php pour refléter ce changement. WarningConfFileMustBeReadOnly=Attention, votre fichier de configuration (htdocs/conf/conf.php) est accessible en écriture au serveur Web. Ceci représente une faille sérieuse de sécurité. Modifiez les permissions pour qu'il soit en lecture seule pour le compte sous lequel tourne le serveur Web et non lisible pour les autres.
Si vous êtes sous Windows sur un disque dur utilisant un formatage FAT, sachez que ce système de fichier ne permet pas de protéger des fichiers et n'offre donc aucune solution pour réduire les risques de manipulation de ce fichier. WarningsOnXLines=Alertes sur %s enregistrement(s) source -WarningNoDocumentModelActivated=No model, for document generation, has been activated. A model will be chosen by default until you check your module setup. +WarningNoDocumentModelActivated=Aucun modèle, pour la génération de document, n'a été activé. Un modèle sera choisi par défaut jusqu'à ce que vous vérifiiez la configuration de votre module. WarningLockFileDoesNotExists=Attention, une fois l'installation terminée, les outils d'installation/migration doivent être désactivés en ajoutant un fichier install.lock dans le répertoire %s. L'absence de ce fichier représente une faille de sécurité. -WarningUntilDirRemoved=All security warnings (visible by admin users only) will remain active as long as the vulnerability is present (or that constant MAIN_REMOVE_INSTALL_WARNING is added in Setup->Other Setup). +WarningUntilDirRemoved=Tous les avertissements de sécurité (visibles uniquement par les administrateurs) resteront actifs tant que la vulnérabilité sera présente (ou que la constante MAIN_REMOVE_INSTALL_WARNING sera ajoutée dans Setup -> Other Setup). WarningCloseAlways=Attention, la fermeture se fait même lorsque le montant diffère. N'activez cette fonctionnalité qu'en connaissance de cause. WarningUsingThisBoxSlowDown=Attention, l'utilisation de cette boîte provoque de sérieux ralentissements des pages affichant cette boîte. WarningClickToDialUserSetupNotComplete=La configuration ClickToDial pour votre compte utilisateur n'est pas complète (voir l'onglet ClickToDial sur votre fiche utilisateur) diff --git a/htdocs/langs/fr_FR/help.lang b/htdocs/langs/fr_FR/help.lang index 29bba422142..9bf855f8704 100644 --- a/htdocs/langs/fr_FR/help.lang +++ b/htdocs/langs/fr_FR/help.lang @@ -5,9 +5,9 @@ RemoteControlSupport=Assistance en ligne temps réel OtherSupport=Autres type d'assistance ToSeeListOfAvailableRessources=Pour contacter/voir les ressources disponibles : HelpCenter=Centre d'assistance -DolibarrHelpCenter=Dolibarr Help and Support Center -ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. -TypeOfSupport=Type of support +DolibarrHelpCenter=Centre d'aide et de support de Dolibarr +ToGoBackToDolibarr=Sinon, cliquez ici pour continuer à utiliser Dolibarr . +TypeOfSupport=Source de l'assistance TypeSupportCommunauty=Communautaire (gratuit) TypeSupportCommercial=Commercial TypeOfHelp=Type @@ -15,12 +15,9 @@ NeedHelpCenter=Besoin d'assistance ou aide ? Efficiency=Efficacité TypeHelpOnly=Aide uniquement TypeHelpDev=Aide+Développement -TypeHelpDevForm=Help+Development+Training -ToGetHelpGoOnSparkAngels1=Some companies can provide a fast (sometime immediate) and more efficient online support by remote control of your computer. Such help can be found on %s web site: -ToGetHelpGoOnSparkAngels3=Vous pouvez aussi accéder à la liste complète de tous les accompagnants possibles, pour cela cliquez sur le bouton -ToGetHelpGoOnSparkAngels2=Sometimes, there is no company available when you make your search, so change the filter to look for "all availability". You will be able to send more requests. -BackToHelpCenter=Otherwise, go back to Help center home page. -LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +TypeHelpDevForm=Aide+Développement+Formation +BackToHelpCenter=Sinon, cliquez ici pour retourner au centre d'assistance. +LinkToGoldMember=Vous pouvez appeler immédiatement un des quelques accompagnateurs présélectionnés par Dolibarr pour votre langue (%s) en cliquant son Widget (disponibilité et tarif maximum sont rafraîchis automatiquement): PossibleLanguages=Langues disponibles -SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SubscribeToFoundation=Aidez le projet Dolibarr, adhérez à l'association Dolibarr SeeOfficalSupport=Pour un accompagnement officiel Dolibarr dans votre langue :
%s diff --git a/htdocs/langs/fr_FR/holiday.lang b/htdocs/langs/fr_FR/holiday.lang index 030ff513622..2799105a3e8 100644 --- a/htdocs/langs/fr_FR/holiday.lang +++ b/htdocs/langs/fr_FR/holiday.lang @@ -4,7 +4,7 @@ Holidays=Congés CPTitreMenu=Congés MenuReportMonth=État mensuel MenuAddCP=Créer demande de congés -NotActiveModCP=You must enable the module Leave to view this page. +NotActiveModCP=Vous devez activer le module Laisser pour voir cette page. AddCP=Créer une demande de congés DateDebCP=Date Début DateFinCP=Date Fin @@ -19,14 +19,14 @@ ListeCP=Liste des demandes de congés LeaveId=ID demande de congès ReviewedByCP=Sera approuvé par UserForApprovalID=ID de l'utilisateur d'approbation -UserForApprovalFirstname=First name of approval user -UserForApprovalLastname=Last name of approval user +UserForApprovalFirstname=Prénom de l'utilisateur d'approbation +UserForApprovalLastname=Nom d'utilisateur d'approbation UserForApprovalLogin=Login de l'utilisateur d'approbation DescCP=Description SendRequestCP=Créer une demande de congés DelayToRequestCP=Les demandes de congés doivent être faites au moins %s jour(s) avant la date de ceux-ci. -MenuConfCP=Balance of leave -SoldeCPUser=Leave balance is %s days. +MenuConfCP=Solde des congés +SoldeCPUser=Solde de congés: %s jours. ErrorEndDateCP=Vous devez choisir une date de fin supérieur à la date de début. ErrorSQLCreateCP=Une erreur SQL est survenue durant la création : ErrorIDFicheCP=Une erreur est survenue, cette demande de congés n'existe pas. @@ -101,7 +101,7 @@ LEAVE_SICK=Congé maladie LEAVE_OTHER=Autre congé LEAVE_PAID_FR=Congés payés ## Configuration du Module ## -LastUpdateCP=Latest automatic update of leave allocation +LastUpdateCP=Dernière mise à jour automatique de l'attribution des congés MonthOfLastMonthlyUpdate=Mois de la dernière mise à jour automatique des attributions de congés UpdateConfCPOK=Mise à jour effectuée avec succès. Module27130Name= Demandes de congés @@ -112,7 +112,7 @@ NoticePeriod=Délai de prévenance HolidaysToValidate=Valider les demandes de congés HolidaysToValidateBody=Veuillez trouver ci-dessous une demande de congés à valider. HolidaysToValidateDelay=Cette demande de congés a été effectuée dans un délai de moins de %s jours avant ceux-ci. -HolidaysToValidateAlertSolde=The user who made this leave request does have enough available days. +HolidaysToValidateAlertSolde=L'utilisateur ayant fait cette demande de congés payés n'a pas le solde requis. HolidaysValidated=Validation de la demande de congés HolidaysValidatedBody=Votre demande de congés du %s au %s vient d'être approuvée. HolidaysRefused=Congés refusés @@ -122,8 +122,8 @@ HolidaysCanceledBody=Votre demande de congés du %s au %s a été annulée. FollowedByACounter=1: Ce type de congé doit être suivis par un compteur. Le compteur est incrémenté manuellement ou automatiquement et quand une demande de congé est validée, le compteur est décrémenté.
0: Non suivi par un compteur. NoLeaveWithCounterDefined=Il n'y a pas de type de congés définis qui requiert un suivi par un compteur GoIntoDictionaryHolidayTypes=Aller dans Accueil - Configuration - Dictionnaires - Type de congés pour configurer les différents types de congés. -HolidaySetup=Setup of module Holiday -HolidaysNumberingModules=Leave requests numbering models -TemplatePDFHolidays=Template for leave requests PDF -FreeLegalTextOnHolidays=Free text on PDF -WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaySetup=Configuration du module Congés +HolidaysNumberingModules=Modèles de numérotation des demandes de congés +TemplatePDFHolidays=Modèle de demande de congés PDF +FreeLegalTextOnHolidays=Texte libre sur PDF +WatermarkOnDraftHolidayCards=Filigranes sur les demandes de congés brouillons diff --git a/htdocs/langs/fr_FR/install.lang b/htdocs/langs/fr_FR/install.lang index 7035e0d8ed6..f9a0c1f4a04 100644 --- a/htdocs/langs/fr_FR/install.lang +++ b/htdocs/langs/fr_FR/install.lang @@ -2,37 +2,37 @@ InstallEasy=Veuillez suivre les étapes une à une. MiscellaneousChecks=Vérification des prérequis ConfFileExists=Le fichier de configuration %s existe. -ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileDoesNotExistsAndCouldNotBeCreated=Le fichier de configuration %s n'existe pas et n'a pu être créé ! ConfFileCouldBeCreated=Le fichier de configuration %s a pu être créé. -ConfFileIsNotWritable=Configuration file %s is not writable. Check permissions. For first install, your web server must be able to write into this file during configuration process ("chmod 666" for example on a Unix like OS). +ConfFileIsNotWritable=Le fichier %s n'est pas modifiable. Pour une première installation, modifiez ses permissions. Le serveur Web doit avoir le droit d'écrire dans ce fichier le temps de la configuration ("chmod 666" par exemple sur un OS compatible Unix). ConfFileIsWritable=Le fichier %s est modifiable. ConfFileMustBeAFileNotADir=Le fichier de configuration %s doit être un fichier, pas un répertoire. -ConfFileReload=Reloading parameters from configuration file. +ConfFileReload=Rechargement des paramètres depuis le fichier de configuration. PHPSupportSessions=Ce PHP prend en charge les sessions. PHPSupportPOSTGETOk=Ce PHP prend bien en charge les variables POST et GET. -PHPSupportPOSTGETKo=It's possible your PHP setup does not support variables POST and/or GET. Check the parameter variables_order in php.ini. -PHPSupportGD=This PHP supports GD graphical functions. +PHPSupportPOSTGETKo=Il est possible que votre configuration PHP ne supporte pas les variables POST et / ou GET. Vérifiez le paramètre variables_order dans le fichier php.ini. +PHPSupportGD=Ce PHP prend en charge les fonctions graphiques GD. PHPSupportCurl=PHP supporte l'extension Curl -PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportUTF8=Ce PHP prend en charge les fonctions UTF8. PHPMemoryOK=Votre mémoire maximum de session PHP est définie à %s. Ceci devrait être suffisant. -PHPMemoryTooLow=Your PHP max session memory is set to %s bytes. This is too low. Change your php.ini to set memory_limit parameter to at least %s bytes. -Recheck=Click here for a more detailed test -ErrorPHPDoesNotSupportSessions=Your PHP installation does not support sessions. This feature is required to allow Dolibarr to work. Check your PHP setup and permissions of the sessions directory. -ErrorPHPDoesNotSupportGD=Your PHP installation does not support GD graphical functions. No graphs will be available. +PHPMemoryTooLow=Votre mémoire maximum de session PHP est définie à %s octets. Ceci est trop faible. Il est recommandé de modifier le paramètre memory_limit de votre fichier php.ini à au moins %s octets. +Recheck=Cliquez ici pour un test plus détaillé +ErrorPHPDoesNotSupportSessions=Votre installation PHP ne supporte pas les sessions. Cette fonctionnalité est nécessaire pour permettre à Dolibarr de fonctionner. Vérifiez votre configuration PHP et les autorisations du répertoire des sessions. +ErrorPHPDoesNotSupportGD=Votre installation PHP ne supporte pas les fonctions graphiques GD. Aucun graphique ne sera disponible. ErrorPHPDoesNotSupportCurl=Votre version de PHP ne supporte pas l'extension Curl -ErrorPHPDoesNotSupportUTF8=Your PHP installation does not support UTF8 functions. Dolibarr cannot work correctly. Resolve this before installing Dolibarr. +ErrorPHPDoesNotSupportUTF8=Votre installation de PHP ne supporte pas les fonctions UTF8. Dolibarr ne peut pas fonctionner correctement. Résolvez ce problème avant d'installer Dolibarr. ErrorDirDoesNotExists=Le répertoire %s n'existe pas ou n'est pas accessible. -ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorGoBackAndCorrectParameters=Revenez en arrière et vérifiez / corrigez les paramètres. ErrorWrongValueForParameter=Vous avez peut-être saisi une mauvaise valeur pour le paramètre '%s'. ErrorFailedToCreateDatabase=Échec de la création de la base '%s'. ErrorFailedToConnectToDatabase=Échec de connexion à la base '%s'. ErrorDatabaseVersionTooLow=Version de base de donnée (%s) trop ancienne. La version %s ou supérieure est requise. ErrorPHPVersionTooLow=Version de PHP trop ancienne. La version %s est requise. -ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorConnectedButDatabaseNotFound=Connexion au serveur réussie mais base '%s' introuvable. ErrorDatabaseAlreadyExists=La base de données '%s' existe déjà. -IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseNotExistsGoBackAndUncheckCreate=Si la base de données n'existe pas, revenez en arrière et cochez l'option "Créer une base de données". IfDatabaseExistsGoBackAndCheckCreate=Si la base existe déjà, revenez en arrière et désactiver l'option "Créer la base de données". -WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +WarningBrowserTooOld=La version du navigateur est trop ancienne. La mise à niveau de votre navigateur vers une version récente de Firefox, Chrome ou Opera est vivement recommandée. PHPVersion=Version de PHP License=Licence d'utilisation ConfigurationFile=Fichier de configuration @@ -45,23 +45,23 @@ DolibarrDatabase=Base de données Dolibarr DatabaseType=Type de la base de données DriverType=Type du pilote Server=Serveur -ServerAddressDescription=Name or ip address for the database server. Usually 'localhost' when the database server is hosted on the same server as the web server. +ServerAddressDescription=Nom ou adresse IP du serveur de base de données. Habituellement, "hôte local" lorsque le serveur de base de données est hébergé sur le même serveur que le serveur Web. ServerPortDescription=Port du serveur. Ne rien mettre si inconnu. DatabaseServer=Serveur de base de données DatabaseName=Nom de la base de données -DatabasePrefix=Database table prefix -DatabasePrefixDescription=Database table prefix. If empty, defaults to llx_. -AdminLogin=User account for the Dolibarr database owner. -PasswordAgain=Retype password confirmation +DatabasePrefix=Préfixe de table de base de données +DatabasePrefixDescription=Préfixe de table de base de données. Si vide, la valeur par défaut est llx_. +AdminLogin=Compte utilisateur du propriétaire de la base de données Dolibarr. +PasswordAgain=Confirmer la confirmation du mot de passe AdminPassword=Mot de passe du propriétaire de la base de données Dolibarr. CreateDatabase=Créer la base de données -CreateUser=Create user account or grant user account permission on the Dolibarr database +CreateUser=Créer un compte utilisateur ou accorder une autorisation de compte utilisateur sur la base de données Dolibarr DatabaseSuperUserAccess=Serveur de base de données - Accès super utilisateur CheckToCreateDatabase=Check the box if the database does not exist yet and so must be created.
In this case, you must also fill in the user name and password for the superuser account at the bottom of this page. -CheckToCreateUser=Check the box if:
the database user account does not yet exist and so must be created, or
if the user account exists but the database does not exist and permissions must be granted.
In this case, you must enter the user account and password and also the superuser account name and password at the bottom of this page. If this box is unchecked, database owner and password must already exist. -DatabaseRootLoginDescription=Superuser account name (to create new databases or new users), mandatory if the database or its owner does not already exist. -KeepEmptyIfNoPassword=Leave empty if superuser has no password (NOT recommended) -SaveConfigurationFile=Saving parameters to +CheckToCreateUser=Cochez la case si: le compte d'utilisateur de la base de données n'existe pas encore et doit donc être créé, ou si le compte d'utilisateur existe mais que la base de données n'existe pas et que les autorisations doivent être accordées.
Dans ce cas, vous devez entrer le compte d'utilisateur et le mot de passe et aussi le nom et le mot de passe du compte superutilisateur au bas de cette page. Si cette case est décochée, le propriétaire de la base de données et le mot de passe doivent déjà exister. +DatabaseRootLoginDescription=Nom du compte superutilisateur (pour créer de nouvelles bases de données ou de nouveaux utilisateurs), obligatoire si la base de données ou son propriétaire n'existe pas déjà. +KeepEmptyIfNoPassword=Laisser vide si le superutilisateur n'a pas de mot de passe (NON recommandé) +SaveConfigurationFile=Enregistrement des paramètres dans ServerConnection=Connexion au serveur DatabaseCreation=Création de la base de données CreateDatabaseObjects=Création des objets de la base @@ -72,9 +72,9 @@ CreateOtherKeysForTable=Création des clés étrangères et des index pour la ta OtherKeysCreation=Création des clés étrangères et des index FunctionsCreation=Création des fonctions AdminAccountCreation=Création du compte administrateur -PleaseTypePassword=Please type a password, empty passwords are not allowed! -PleaseTypeALogin=Please type a login! -PasswordsMismatch=Passwords differs, please try again! +PleaseTypePassword=Veuillez saisir un mot de passe, les mots de passe vides ne sont pas autorisés! +PleaseTypeALogin=Veuillez taper un identifiant! +PasswordsMismatch=Les mots de passe diffèrent, veuillez réessayer! SetupEnd=Fin de l'installation SystemIsInstalled=Votre système est maintenant installé. SystemIsUpgraded=Dolibarr a été mis à jour avec succès. @@ -82,65 +82,65 @@ YouNeedToPersonalizeSetup=Vous devez maintenant configurer Dolibarr selon vos be AdminLoginCreatedSuccessfuly=Création du compte administrateur Dolibarr '%s' réussie. GoToDolibarr=Accéder à Dolibarr GoToSetupArea=Accéder à Dolibarr (espace de configuration) -MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +MigrationNotFinished=La version de la base de données n'est pas complètement à jour: exécutez à nouveau le processus de mise à niveau. GoToUpgradePage=Accéder à la page de migration à nouveau WithNoSlashAtTheEnd=Sans le slash "/" à la fin -DirectoryRecommendation=It is recommended to use a directory outside of the web pages. +DirectoryRecommendation=Il est recommandé d'utiliser un répertoire en dehors des pages Web. LoginAlreadyExists=Existe déjà DolibarrAdminLogin=Identifiant de l'utilisateur administrateur de Dolibarr -AdminLoginAlreadyExists=Dolibarr administrator account '%s' already exists. Go back if you want to create another one. +AdminLoginAlreadyExists=Le compte administrateur Dolibarr ' %s ' existe déjà. Retournez si vous voulez en créer un autre. FailedToCreateAdminLogin=Echec de la création du compte administrateur Dolibarr -WarningRemoveInstallDir=Warning, for security reasons, once the install or upgrade is complete, you should add a file called install.lock into the Dolibarr document directory in order to prevent the accidental/malicious use of the install tools again. -FunctionNotAvailableInThisPHP=Not available in this PHP +WarningRemoveInstallDir=Attention, pour des raisons de sécurité, une fois l'installation ou la mise à niveau terminée, vous devez ajouter un fichier nommé install.lock dans le répertoire du document Dolibarr afin d'éviter toute utilisation accidentelle / malveillante des outils d'installation. +FunctionNotAvailableInThisPHP=Non disponible dans ce PHP ChoosedMigrateScript=Choix du script de migration DataMigration=Migration de la base (données) DatabaseMigration=Migration de la base de données (structure + certaines données) ProcessMigrateScript=Exécution du script ChooseYourSetupMode=Choisissez votre mode d'installation et cliquez sur "Démarrer"… FreshInstall=Première installation -FreshInstallDesc=Use this mode if this is your first install. If not, this mode can repair a incomplete previous install. If you want to upgrade your version, choose "Upgrade" mode. +FreshInstallDesc=Utilisez ce mode s'il s'agit de votre première installation. Sinon, ce mode peut réparer une installation précédente incomplète. Si vous souhaitez mettre à niveau votre version, choisissez le mode "Mettre à niveau". Upgrade=Mise à jour UpgradeDesc=Utilisez ce mode après avoir écrasé les fichiers d'une ancienne installation Dolibarr par ceux d'une version plus récente. Ce choix permet de mettre à jour votre base et vos données pour cette nouvelle version. Start=Démarrer InstallNotAllowed=Installation non autorisée par les permissions du fichier conf.php YouMustCreateWithPermission=Vous devez créer un fichier %s et donner les droits d'écriture dans celui-ci au serveur web durant le processus d'installation. -CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +CorrectProblemAndReloadPage=Veuillez résoudre le problème et appuyez sur F5 pour recharger la page. AlreadyDone=Déjà migré DatabaseVersion=Version de la base ServerVersion=Version du serveur de base de données YouMustCreateItAndAllowServerToWrite=Vous devez créer ce dossier et permettre au serveur web d'écrire dans celui-ci. DBSortingCollation=Ordre de tri utilisé pour la base de données -YouAskDatabaseCreationSoDolibarrNeedToConnect=You selected create database %s, but for this, Dolibarr needs to connect to server %s with super user %s permissions. -YouAskLoginCreationSoDolibarrNeedToConnect=You selected create database user %s, but for this, Dolibarr needs to connect to server %s with super user %s permissions. -BecauseConnectionFailedParametersMayBeWrong=The database connection failed: the host or super user parameters must be wrong. +YouAskDatabaseCreationSoDolibarrNeedToConnect=Vous avez sélectionné la création de la base de données %s , mais Dolibarr doit se connecter au serveur %s avec les autorisations de super-utilisateur %s . +YouAskLoginCreationSoDolibarrNeedToConnect=Vous avez choisi de créer l'utilisateur de base de données %s , mais Dolibarr doit se connecter au serveur %s avec les autorisations de super-utilisateur %s . +BecauseConnectionFailedParametersMayBeWrong=La connexion à la base de données a échoué: les paramètres de l'hôte ou du super utilisateur doivent être erronés. OrphelinsPaymentsDetectedByMethod=Paiement orphelins détectés par la méthode %s RemoveItManuallyAndPressF5ToContinue=Supprimez-le manuellement et actualisez la page pour continuer (F5). FieldRenamed=Champ renommé -IfLoginDoesNotExistsCheckCreateUser=If the user does not exist yet, you must check option "Create user" -ErrorConnection=Server "%s", database name "%s", login "%s", or database password may be wrong or the PHP client version may be too old compared to the database version. +IfLoginDoesNotExistsCheckCreateUser=Si l'utilisateur n'existe pas encore, vous devez cocher l'option "Créer un utilisateur" +ErrorConnection=Serveur " %s ", nom de base de données " %s ", identifiez-vous " %s " ou le mot de passe de la base de données peut être incorrect ou la version du client PHP peut être incorrecte trop vieux par rapport à la version de base de données. InstallChoiceRecommanded=Choix recommandé pour installer la version %s depuis votre version actuelle %s InstallChoiceSuggested=Choix suggéré par l'installeur. -MigrateIsDoneStepByStep=The targeted version (%s) has a gap of several versions. The install wizard will come back to suggest a further migration once this one is complete. -CheckThatDatabasenameIsCorrect=Check that the database name "%s" is correct. +MigrateIsDoneStepByStep=La version ciblée (%s) présente un écart de plusieurs versions. L'assistant d'installation reviendra pour vous suggérer une migration supplémentaire une fois celle-ci terminée. +CheckThatDatabasenameIsCorrect=Vérifiez que le nom de la base de données " %s " est correct. IfAlreadyExistsCheckOption=Si ce nom est correct et que cette base n'existe pas déjà, vous devez cocher l'option "Créer la base de données". OpenBaseDir=Paramètre PHP openbasedir -YouAskToCreateDatabaseSoRootRequired=You checked the box "Create database". For this, you need to provide the login/password of superuser (bottom of form). -YouAskToCreateDatabaseUserSoRootRequired=You checked the box "Create database owner". For this, you need to provide the login/password of superuser (bottom of form). -NextStepMightLastALongTime=The current step may take several minutes. Please wait until the next screen is shown completely before continuing. +YouAskToCreateDatabaseSoRootRequired=Vous avez coché la case "Créer une base de données". Pour cela, vous devez fournir le nom d'utilisateur / mot de passe du superutilisateur (bas du formulaire). +YouAskToCreateDatabaseUserSoRootRequired=Vous avez coché la case "Créer une base de données propriétaire". Pour cela, vous devez fournir le nom d'utilisateur / mot de passe du superutilisateur (bas du formulaire). +NextStepMightLastALongTime=L'étape en cours peut prendre plusieurs minutes. Veuillez patienter jusqu'à ce que l'écran suivant apparaisse complètement avant de continuer. MigrationCustomerOrderShipping=Mise à jour stockage des expéditions des commandes clients MigrationShippingDelivery=Mise à jour stockage des expéditions MigrationShippingDelivery2=Mise à jour stockage des expéditions 2 MigrationFinished=Migration terminée -LastStepDesc=Last step: Define here the login and password you wish to use to connect to Dolibarr. Do not lose this as it is the master account to administer all other/additional user accounts. +LastStepDesc= Dernière étape : définissez ici le nom d'utilisateur et le mot de passe que vous souhaitez utiliser pour vous connecter à Dolibarr. Ne perdez pas cette information, car il s’agit du compte principal pour administrer tous les comptes d’utilisateurs supplémentaires / supplémentaires. ActivateModule=Activation du module %s ShowEditTechnicalParameters=Cliquer ici pour afficher/éditer les paramètres techniques (mode expert) -WarningUpgrade=Warning:\nDid you run a database backup first?\nThis is highly recommended. Loss of data (due to for example bugs in mysql version 5.5.40/41/42/43) may be possible during this process, so it is essential to take a complete dump of your database before starting any migration.\n\nClick OK to start migration process... +WarningUpgrade=Attention:\nAvez-vous d'abord effectué une sauvegarde de base de données?\nCeci est hautement recommandé. Une perte de données (due par exemple à des bogues dans mysql version 5.5.40 / 41/42/43) peut être possible au cours de ce processus. Il est donc essentiel de réaliser un vidage complet de votre base de données avant de commencer toute migration.\n\nCliquez sur OK pour démarrer le processus de migration ... ErrorDatabaseVersionForbiddenForMigration=La version de votre gestionnaire de base de données est %s. Celle-ci présente un défaut critique entraînant des pertes de données si vous changez la structure de votre base de données tel que requis par le processus de migration. C'est pourquoi la migration vous sera interdite tant que vous n'aurez pas mis à jour votre gestionnaire de base de données vers une version supérieure corrigée (Liste des versions affectées par le défaut: %s). KeepDefaultValuesWamp=Si vous utilisez l'installeur automatique DoliWamp, les données présentes ici sont pré-remplies. Ne les modifiez qu'en connaissance de cause. KeepDefaultValuesDeb=Vous utilisez l'assistant d'installation depuis un environnement Linux (Ubuntu, Debian, Fedora...). Les valeurs présentes ici sont pré-remplies. Seul le mot de passe d'accès du propriétaire de base de données à créer doit être renseigné. Les autres paramètres ne doivent être modifiés qu'en connaissance de cause. KeepDefaultValuesMamp=Vous utilisez l'assistant d'installation DoliMamp. Les valeurs présentes ici sont pré-remplies. Leur modification ne doit être effectuée qu'en connaissance de cause. KeepDefaultValuesProxmox=Vous utilisez l'assistant d'installation depuis une application Proxmox. Les valeurs présentes ici sont pré-remplies. Leur modification ne doit être effectuée qu'en connaissance de cause. -UpgradeExternalModule=Run dedicated upgrade process of external module +UpgradeExternalModule=Exécuter le processus de mise à niveau dédié du module externe SetAtLeastOneOptionAsUrlParameter=Définissez au moins une option en tant que paramètre dans l'URL. Par exemple: '... repair.php?standard=confirmed' NothingToDelete=Rien a supprimer NothingToDo=Rien à faire @@ -164,9 +164,9 @@ MigrationContractsUpdate=Mise à jour des contrats sans détail (gestion du cont MigrationContractsNumberToUpdate=%s contrat(s) a mettre à jour MigrationContractsLineCreation=Création ligne contrat pour contrat ref %s MigrationContractsNothingToUpdate=Pas ou plus de contrats (liés à un produit) sans ligne de détail à corriger. -MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsFieldDontExist=Le champ fk_facture n'existe plus. Rien à faire. MigrationContractsEmptyDatesUpdate=Mise à jour des dates de contrats non renseignées -MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesUpdateSuccess=Correction de la date de contrat vide effectuée avec succès MigrationContractsEmptyDatesNothingToUpdate=Pas ou plus de date de contrats à renseigner. MigrationContractsEmptyCreationDatesNothingToUpdate=Pas ou plus de date de création à renseigner. MigrationContractsInvalidDatesUpdate=Mise à jour dates contrat incorrectes (pour contrats avec détail en service) @@ -188,24 +188,24 @@ MigrationDeliveryDetail=Mise à jour bon réception MigrationStockDetail=Mise à jour valeur en stock des produits MigrationMenusDetail=Mise à jour table des menus dynamiques MigrationDeliveryAddress=Mise à jour des adresses de livraison dans les bons d'expédition -MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectTaskActors=Migration de données pour la table llx_projet_task_actors MigrationProjectUserResp=Migration du champ fk_user_resp de llx_projet vers llx_element_contact MigrationProjectTaskTime=Mise à jour du temps consommé en secondes MigrationActioncommElement=Mise à jour des données des actions des éléments MigrationPaymentMode=Migration des modes de paiement MigrationCategorieAssociation=Migration des categories -MigrationEvents=Migration of events to add event owner into assignment table -MigrationEventsContact=Migration of events to add event contact into assignment table +MigrationEvents=Migration d'événements pour ajouter le propriétaire d'événement dans la table d'affectation +MigrationEventsContact=Migration d'événements pour ajouter un contact d'événement dans la table d'affectation MigrationRemiseEntity=Mettre à jour le champ "entity" de la table "llx_societe_remise MigrationRemiseExceptEntity=Mettre à jour le champ "entity" de la table "llx_societe_remise_except" MigrationUserRightsEntity=Mise à jour du champ entity de llx_user_rights MigrationUserGroupRightsEntity=Mise à jour du champ entity de llx_usergroup_rights MigrationReloadModule=Rechargement du module %s MigrationResetBlockedLog=Réinitialiser le module BlockedLog pour l'algorithme v7 -ShowNotAvailableOptions=Show unavailable options -HideNotAvailableOptions=Hide unavailable options +ShowNotAvailableOptions=Afficher les options non disponibles +HideNotAvailableOptions=Masquer les options non disponibles ErrorFoundDuringMigration=Une erreur est survenu lors du processus de migration, aussi l'étape suivante ne peut pas être réalisée. Pour ignorer les erreurs, vous pouvez cliquer ici, mais l'application ou certaines fonctionnalités risquent de présenter des dysfonctionnements jusqu'à la résolution de la ou des erreurs -YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (directory renamed with .lock suffix).
-YouTryInstallDisabledByFileLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (by the existence of a lock file install.lock in the dolibarr documents directory).
+YouTryInstallDisabledByDirLock=L'application a tenté de se mettre à niveau automatiquement, mais les pages d'installation / de mise à niveau ont été désactivées pour des raisons de sécurité (répertoire renommé avec le suffixe .lock).
+YouTryInstallDisabledByFileLock=L'application a tenté de se mettre à niveau automatiquement, mais les pages d'installation / de mise à niveau ont été désactivées pour des raisons de sécurité (grâce à l'existence d'un fichier de verrouillage install.lock dans le répertoire de documents dolibarr).
ClickHereToGoToApp=Cliquez ici pour aller sur votre application -ClickOnLinkOrRemoveManualy=Click on the following link. If you always see this same page, you must remove/rename the file install.lock in the documents directory. +ClickOnLinkOrRemoveManualy=Cliquez sur le lien suivant. Si vous voyez toujours cette même page, vous devez supprimer / renommer le fichier install.lock dans le répertoire des documents. diff --git a/htdocs/langs/fr_FR/mails.lang b/htdocs/langs/fr_FR/mails.lang index 4aef2bc0467..5ef510ee957 100644 --- a/htdocs/langs/fr_FR/mails.lang +++ b/htdocs/langs/fr_FR/mails.lang @@ -45,10 +45,10 @@ MailingStatusReadAndUnsubscribe=Lu et désinscrit ErrorMailRecipientIsEmpty=L'adresse du destinataire est vide WarningNoEMailsAdded=Aucun nouvel email à ajouter à la liste des destinataires. ConfirmValidMailing=Confirmez-vous la validation de l'emailing ? -ConfirmResetMailing=Warning, by re-initializing emailing %s , you will allow resending this email in a mass mailing. Are you sure you want to do this? -ConfirmDeleteMailing=Are you sure you want to delete this emailing? -NbOfUniqueEMails=No. of unique emails -NbOfEMails=No. of EMails +ConfirmResetMailing=Attention, en réinitialisant l'e-mailing %s , vous autoriserez le renvoi de cet e-mail dans un envoi en masse. Est-vous sûr de vouloir faire ça? +ConfirmDeleteMailing=Êtes-vous sûr de vouloir supprimer cet email? +NbOfUniqueEMails=Nombre d'e-mails uniques +NbOfEMails=Nombre de courriels TotalNbOfDistinctRecipients=Nombre de destinataires uniques NoTargetYet=Aucun destinataire défini (Aller sur l'onglet Destinataires) NoRecipientEmail=Aucun e-mail de destinataire pour %s @@ -66,8 +66,8 @@ DateLastSend=Date de la dernière expédition DateSending=Date envoi SentTo=Envoyés à %s MailingStatusRead=Lu -YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list -ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +YourMailUnsubcribeOK=L'e-mail %s est correctement désabonné de la liste de diffusion +ActivateCheckReadKey=Clé utilisée pour chiffrer l'URL utilisée pour les fonctions "Lire accusé de réception" et "Se désabonner" EMailSentToNRecipients=Email envoyé à %s destinataires. EMailSentForNElements=Email envoyé pour %s enregistrements XTargetsAdded=%s destinataires ajoutés dans la liste cible @@ -166,4 +166,4 @@ InGoingEmailSetup=Configuration email entrant OutGoingEmailSetupForEmailing=Configuration des e-mail sortant (pour les e-mails de masse) DefaultOutgoingEmailSetup=Configuration des emails sortant Information=Information -ContactsWithThirdpartyFilter=Contacts with third party filter +ContactsWithThirdpartyFilter=Contacts avec filtre tiers diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang index d98af2bdd95..7b6f509625d 100644 --- a/htdocs/langs/fr_FR/main.lang +++ b/htdocs/langs/fr_FR/main.lang @@ -50,15 +50,15 @@ ErrorFailedToSendMail=Échec de l'envoi de l'email (émetteur=%s, destinataire=% ErrorFileNotUploaded=Le fichier n'a pas été transféré. Vérifiez que sa taille ne dépasse pas le maxium autorisé, que l'espace disque est disponible et qu'un fichier du même nom n'existe pas déjà. ErrorInternalErrorDetected=Erreur détectée ErrorWrongHostParameter=Mauvais paramètre Serveur -ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. -ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorYourCountryIsNotDefined=Votre pays n'est pas défini. Allez dans Home-Setup-Edit et publiez à nouveau le formulaire. +ErrorRecordIsUsedByChild=Impossible de supprimer cet enregistrement. Cet enregistrement est utilisé par au moins un enregistrement enfant. ErrorWrongValue=Valeur incorrecte ErrorWrongValueForParameterX=Valeur incorrecte pour le paramètre %s ErrorNoRequestInError=Aucune requête en erreur -ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorServiceUnavailableTryLater=Service non disponible pour le moment. Réessayez plus tard. ErrorDuplicateField=Doublon dans un champ unique -ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. -ErrorConfigParameterNotDefined=Parameter %s is not defined in Dolibarr config file conf.php. +ErrorSomeErrorWereFoundRollbackIsDone=Quelques erreurs ont été trouvées. Les modifications ont été annulées. +ErrorConfigParameterNotDefined=Le paramètre %s n'est pas défini dans le fichier de configuration Dolibarr conf.php . ErrorCantLoadUserFromDolibarrDatabase=Impossible de trouver l'utilisateur %s dans la base Dolibarr. ErrorNoVATRateDefinedForSellerCountry=Erreur, aucun taux tva défini pour le pays '%s'. ErrorNoSocialContributionForSellerCountry=Erreur, pas de types de charges sociales/fiscales définies pour le pays '%s'. @@ -78,10 +78,10 @@ FileRenamed=Le fichier a été renommé avec succès FileGenerated=Le fichier a été généré avec succès FileSaved=Fichier enregistré avec succès FileUploaded=Le fichier a été transféré avec succès -FileTransferComplete=File(s) uploaded successfully +FileTransferComplete=Fichier (s) chargé (s) avec succès FilesDeleted=Fichier(s) supprimé(s) avec succès FileWasNotUploaded=Un fichier a été sélectionné pour attachement mais n'a pas encore été uploadé. Cliquez sur "Joindre ce fichier" pour cela. -NbOfEntries=No. of entries +NbOfEntries=Nombre de Entrées GoToWikiHelpPage=Consulter l'aide (nécessite un accès internet) GoToHelpPage=Consulter l'aide RecordSaved=Enregistrement sauvegardé @@ -154,7 +154,7 @@ Update=Modifier Close=Clôturer CloseBox=Supprimer le widget du tableau de bord Confirm=Confirmer -ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +ConfirmSendCardByMail=Voulez-vous vraiment envoyer le contenu de cette carte par courrier à %s ? Delete=Supprimer Remove=Enlever Resiliate=Résilier @@ -328,7 +328,7 @@ Copy=Copier Paste=Coller Default=Défaut DefaultValue=Valeur par défaut -DefaultValues=Default values/filters/sorting +DefaultValues=Valeurs/filtres/tris par défaut Price=Prix PriceCurrency=Prix ​​(devise) UnitPrice=Prix unitaire @@ -429,7 +429,7 @@ ActionNotApplicable=Non applicable ActionRunningNotStarted=A réaliser ActionRunningShort=En cours ActionDoneShort=Terminé -ActionUncomplete=Incomplete +ActionUncomplete=Incomplet LatestLinkedEvents=Les %s derniers événements liés CompanyFoundation=Société/Organisation Accountant=Comptable @@ -437,6 +437,7 @@ ContactsForCompany=Contacts de ce tiers ContactsAddressesForCompany=Contacts/adresses de ce tiers AddressesForCompany=Adresses de ce tiers ActionsOnCompany=Événements vis à vis de ce tiers +ActionsOnContact=Événements à propos de ce contact/adresse ActionsOnMember=Événements vis à vis de cet adhérent ActionsOnProduct=Événements liés au produit NActionsLate=%s en retard @@ -455,7 +456,7 @@ Duration=Durée TotalDuration=Durée totale Summary=Résumé DolibarrStateBoard=Statistiques de la base -DolibarrWorkBoard=Pending Items +DolibarrWorkBoard=Éléments en attente NoOpenedElementToProcess=Aucun élément ouvert à traiter Available=Disponible NotYetAvailable=Pas encore disponible @@ -707,7 +708,7 @@ Merge=Fusionner DocumentModelStandardPDF=Modèle PDF standard PrintContentArea=Afficher page d'impression de la zone centrale MenuManager=Gestionnaire de menu -WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode, so only login %s is allowed to use the application at this time. +WarningYouAreInMaintenanceMode=Attention, vous êtes en mode maintenance, seul le login %s est autorisé à utiliser l'application pour le moment. CoreErrorTitle=Erreur système CoreErrorMessage=Désolé, une erreur s'est produite. Contacter votre administrateur système pour vérifier les logs ou désactiver l'option $dolibarr_main_prod=1 pour obtenir plus d'information. CreditCard=Carte de crédit @@ -715,7 +716,7 @@ ValidatePayment=Valider ce règlement CreditOrDebitCard=Carte de crédit ou débit FieldsWithAreMandatory=Les champs marqués par un %s sont obligatoires FieldsWithIsForPublic=Les champs marqués par %s seront affichés sur la liste publique des adhérents. Si vous ne le souhaitez pas, décochez la case "public". -AccordingToGeoIPDatabase=(according to GeoIP conversion) +AccordingToGeoIPDatabase=(selon conversion GeoIP) Line=Ligne NotSupported=Non pris en charge RequiredField=Champ obligatoire @@ -723,8 +724,8 @@ Result=Résultat ToTest=Tester ValidateBefore=La fiche doit être validée pour pouvoir utiliser cette fonction Visibility=Visibilité -Totalizable=Totalizable -TotalizableDesc=This field is totalizable in list +Totalizable=Totalisable +TotalizableDesc=Ce champ est totalisable en liste Private=Privé Hidden=Caché Resources=Ressources @@ -743,7 +744,7 @@ LinkTo=Lier à LinkToProposal=Lier à une proposition commerciale LinkToOrder=Lier à une commande LinkToInvoice=Lier à une facture -LinkToTemplateInvoice=Link to template invoice +LinkToTemplateInvoice=Lien vers le modèle de facture LinkToSupplierOrder=Lier à une commande fournisseur LinkToSupplierProposal=Lier à une proposition commerciale fournisseur LinkToSupplierInvoice=Lier à une facture fournisseur @@ -797,7 +798,7 @@ PrintFile=Imprimer fichier %s ShowTransaction=Afficher l'écriture sur le compte bancaire ShowIntervention=Afficher intervention ShowContract=Afficher contrat -GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +GoIntoSetupToChangeLogo=Allez à Accueil - Configuration - Société pour changer de logo ou allez à Accueil - Configuration - Afficher pour masquer. Deny=Refuser Denied=Refusé ListOf=Liste de %s @@ -817,8 +818,8 @@ TooManyRecordForMassAction=Trop d'enregistrements sélectionnés pour l'action d NoRecordSelected=Aucu enregistrement sélectionné MassFilesArea=Zone des fichiers générés en masse ShowTempMassFilesArea=Afficher la zone des fichiers générés en masse -ConfirmMassDeletion=Mass delete confirmation -ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record? +ConfirmMassDeletion=Confirmation de suppression en masse +ConfirmMassDeletionQuestion=Êtes-vous sûr de vouloir supprimer l’enregistrement sélectionné %s? RelatedObjects=Objets liés ClassifyBilled=Classer facturé ClassifyUnbilled=Classer non facturé @@ -836,7 +837,7 @@ Calendar=Calendrier GroupBy=Grouper par... ViewFlatList=Voir vue liste RemoveString=Supprimer la chaine '%s' -SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +SomeTranslationAreUncomplete=Certaines des langues proposées peuvent ne pas être traduites partiellement ou contenir des erreurs. Aidez-nous à corriger votre langue en vous inscrivant à l'adresse https://transifex.com/projects/p/dolibarr/. < / a> ajouter vos améliorations. DirectDownloadLink=Lien de téléchargement direct (public/externe) DirectDownloadInternalLink=Lien de téléchargement direct (requiert d'être logué et autorisé) Download=Téléchargement @@ -856,11 +857,11 @@ HR=HR HRAndBank=HR et banque AutomaticallyCalculated=Calculé automatiquement TitleSetToDraft=Retour à l'état de brouillon -ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ConfirmSetToDraft=Êtes-vous sûr de vouloir revenir au statut de brouillon? ImportId=Id import Events=Événements EMailTemplates=Modèles des courriels -FileNotShared=File not shared to external public +FileNotShared=Fichier non partagé avec un public externe Project=Projet Projects=Projets LeadOrProject=Opportunités | Projet @@ -873,8 +874,8 @@ NewLeadOrProject=Nouvelle opportunité ou projet Rights=Permissions LineNb=No ligne IncotermLabel=Incoterms -TabLetteringCustomer=Customer lettering -TabLetteringSupplier=Supplier lettering +TabLetteringCustomer=Lettrage client +TabLetteringSupplier=Lettrage fournisseur # Week day Monday=Lundi Tuesday=Mardi @@ -939,7 +940,7 @@ CommentAdded=Commentaire ajouté CommentDeleted=Commentaire supprimé Everybody=Tout le monde PayedBy=Payé par -PayedTo=Paid to +PayedTo=Versée à Monthly=Mensuel Quarterly=Trimestriel Annual=Annuel @@ -949,7 +950,8 @@ LocalAndRemote=Local et distant KeyboardShortcut=Raccourci clavier AssignedTo=Assigné à Deletedraft=Supprimer brouillon -ConfirmMassDraftDeletion=Draft mass delete confirmation +ConfirmMassDraftDeletion=Projet de confirmation de suppression en masse FileSharedViaALink=Fichier partagé via un lien -SelectAThirdPartyFirst=Select a third party first... +SelectAThirdPartyFirst=Sélectionnez d'abord un tiers ... YouAreCurrentlyInSandboxMode=Vous travaillez actuellement dans le mode "bac à sable" de %s +Inventory=Inventaire diff --git a/htdocs/langs/fr_FR/modulebuilder.lang b/htdocs/langs/fr_FR/modulebuilder.lang index fd4e66e5ff3..91e88835da4 100644 --- a/htdocs/langs/fr_FR/modulebuilder.lang +++ b/htdocs/langs/fr_FR/modulebuilder.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - loan -ModuleBuilderDesc=This tool must be used by only by experienced users or developers. It gives you utilities to build or edit your own module.
Documentation for alternative
manual development is here. +ModuleBuilderDesc=Cet outil ne doit être utilisé que par des utilisateurs expérimentés ou des développeurs. Il vous fournit des utilitaires pour construire ou éditer votre propre module.
La documentation relative au développement manuel alternatif est ici . EnterNameOfModuleDesc=Saisissez le nom du module/application à créer, sans espaces. Utilisez les majuscules pour identifier les mots (par exemple : MonModule, BoutiqueECommerce,...) EnterNameOfObjectDesc=Entrez le nom de l'objet à créer sans espaces. Utilisez les majuscules pour séparer des mots (par exemple: MyObject, Student, Teacher ...). Le fichier de classe CRUD, mais aussi le fichier API, les pages à afficher / ajouter / éditer / supprimer des objets et des fichiers SQL seront générés. ModuleBuilderDesc2=Chemin ou les modules sont générés/modifiés (premier répertoire alternatif défini dans %s):%s @@ -13,7 +13,7 @@ ModuleInitialized=Module initialisé FilesForObjectInitialized=Fichiers pour les nouvel objet '%s' initialisés FilesForObjectUpdated=Les fichiers pour l'objet '%s' ont été mis à jour ( fichiers .sql et .class.php ) ModuleBuilderDescdescription=Entrez ici toutes les informations générales qui décrivent votre module. -ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescspecifications=Vous pouvez entrer ici une description détaillée des spécifications de votre module qui n'est pas déjà structurée dans d'autres onglets. Vous avez donc à portée de main toutes les règles à développer. Ce contenu textuel sera également inclus dans la documentation générée (voir dernier onglet). Vous pouvez utiliser le format Markdown, mais il est recommandé d'utiliser le format Asciidoc (comparaison entre .md et .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). ModuleBuilderDescobjects=Définissez ici les objets que vous souhaitez gérer avec votre module. Une classe CRUD DAO, des fichiers SQL, une page pour lister l'enregistrement des objets, pour créer / modifier / afficher un enregistrement et une API sera générée. ModuleBuilderDescmenus=Cet onglet est dédié à la définition des entrées menu fournies par votre module. ModuleBuilderDescpermissions=Cet onglet est dédié à la définition des nouvelles permissions dont vous voulez fournir avec votre module. @@ -21,12 +21,12 @@ ModuleBuilderDesctriggers=Vue des triggers ajoutés par votre module. Pour inclu ModuleBuilderDeschooks=Cet onglet est dédié aux points d'accroche. ModuleBuilderDescwidgets=Cet onglet est dédié à la gestion/construction de widgets. ModuleBuilderDescbuildpackage=Vous pouvez générer ici un fichier de package "prêt à distribuer" (un fichier .zip normalisé) de votre module et un fichier de documentation "prêt à distribuer". Cliquez simplement sur le bouton pour créer le paquet ou le fichier de documentation. -EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: ALL files of module AND structured data and documentation will be deleted! -EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All files related to object will be deleted! +EnterNameOfModuleToDeleteDesc=Vous pouvez supprimer votre module\nATTENTION:\nTous fichiers relatifs a ce module ET toutes bases de donnes seront supprimes +EnterNameOfObjectToDeleteDesc=Vous pouvez supprimer un objet\nATTENTION:\nTous fichiers relatifs a cet objet seront supprimes DangerZone=Zone de danger BuildPackage=Générer package/documentation BuildDocumentation=Générez la documentation -ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsNotActive=Ce module n'est pas encore activé. Allez à %s pour le faire vivre ou cliquez ici: ModuleIsLive=Ce module a été activé. Tout changement sur lui pourrait casser une fonctionnalité actuellement activée. DescriptionLong=Description longue EditorName=Nom de l'éditeur @@ -47,7 +47,7 @@ RegenerateClassAndSql=Effacer et générer à nouveau les fichiers de classe et RegenerateMissingFiles=Générer les fichiers manquant SpecificationFile=Fichier de description des règles métiers LanguageFile=Fichier langue -ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +ConfirmDeleteProperty=Voulez-vous vraiment supprimer la propriété %s ? Cela modifiera le code de la classe PHP, mais supprimera également la colonne de la définition de la table de l'objet. NotNull=Non NULL NotNullDesc=1=Définir le champ en base à NOT NULL. -1=Autoriser les valeurs nulles et forcer la valeur à NULL si vide ('' ou 0). SearchAll=Utilisé par la "recherche globale" @@ -66,7 +66,7 @@ PageForLib=Fichier pour les librairies PHP SqlFileExtraFields=Fichier SQL pour les attributs complémentaires SqlFileKey=Fichier Sql pour les clés AnObjectAlreadyExistWithThisNameAndDiffCase=Un objet existe déjà avec ce nom dans une casse différente -UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +UseAsciiDocFormat=Vous pouvez utiliser le format Markdown, mais il est recommandé d'utiliser le format Asciidoc (comparaison entre .md et .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) IsAMeasure=Est une mesure DirScanned=Répertoire scanné NoTrigger=Pas de trigger @@ -78,7 +78,7 @@ SeeExamples=Voir des exemples ici EnabledDesc=Condition pour que ce champ soit actif (Exemples: 1 ou $conf->global->MYMODULE_MYOPTION) VisibleDesc=Le champ est-il visible ? (Exemples: 0 = Jamais visible, 1 = Visible sur les listes et formulaires de création/mise à jour/visualisation, 2 = Visible uniquement sur la liste, 3 = Visible uniquement sur le formulaire de création/mise à jour/affichage. Utiliser une valeur négative signifie que le champ n'est pas affiché par défaut sur la liste mais peut être sélectionné pour l'affichage) IsAMeasureDesc=Peut-on cumuler la valeur du champ pour obtenir un total dans les listes ? (Exemples: 1 ou 0) -SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SearchAllDesc=Le champ est-il utilisé pour effectuer une recherche à partir de l'outil de recherche rapide? (Exemples: 1 ou 0) SpecDefDesc=Entrez ici toute la documentation que vous souhaitez joindre au module et qui n'a pas encore été définis dans d'autres onglets. Vous pouvez utiliser .md ou, mieux, la syntaxe enrichie .asciidoc. LanguageDefDesc=Entrez dans ces fichiers, toutes les clés et la traduction pour chaque fichier de langue. MenusDefDesc=Définissez ici les menus fournis par votre module (une fois définis, ils sont visibles dans l'éditeur de menu %s) @@ -88,7 +88,7 @@ TriggerDefDesc=Définissez dans le fichier trigger le code que vous souhaitez ex SeeIDsInUse=Voir les IDs utilisés dans votre installation SeeReservedIDsRangeHere=Voir la plage des ID réservés ToolkitForDevelopers=Boîte à outils pour développeurs Dolibarr -TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
Enable the module %s and use the wizard by clicking the on the top right menu.
Warning: This is an advanced developer feature, do not experiment on your production site! +TryToUseTheModuleBuilder=Si vous connaissez SQL et PHP, vous pouvez utiliser l'assistant de création de module natif.
Activez le module %s et utilisez l'assistant en cliquant sur la . dans le menu en haut à droite.
Avertissement: Il s'agit d'une fonctionnalité avancée pour les développeurs. Ne pas d'expérimenter sur votre site de production! SeeTopRightMenu=Voir à droite de votre barre de menu principal AddLanguageFile=Ajouter le fichier de langue YouCanUseTranslationKey=Vous pouvez utiliser ici une clé qui est la clé de traduction trouvée dans le fichier de langue (voir l'onglet "Langues") @@ -96,7 +96,7 @@ DropTableIfEmpty=(Supprimer la table si vide) TableDoesNotExists=La table %s n'existe pas TableDropped=La table %s a été supprimée InitStructureFromExistingTable=Construire la chaîne du tableau de structure d'une table existante -UseAboutPage=Disable the about page -UseDocFolder=Disable the documentation folder +UseAboutPage=Désactiver la page "A propos" +UseDocFolder=Désactiver le dossier Documentation UseSpecificReadme=Utiliser un fichier ReadMe spécifique -RealPathOfModule=Real path of module +RealPathOfModule=Reel chemin du dossier du module diff --git a/htdocs/langs/fr_FR/multicurrency.lang b/htdocs/langs/fr_FR/multicurrency.lang index 3e4718a561e..7594442cb34 100644 --- a/htdocs/langs/fr_FR/multicurrency.lang +++ b/htdocs/langs/fr_FR/multicurrency.lang @@ -3,18 +3,18 @@ MultiCurrency=Multi-devise ErrorAddRateFail=Erreur lors de l'ajout du taux ErrorAddCurrencyFail=Erreur lors de l'ajout de la devise ErrorDeleteCurrencyFail=Erreur de suppression -multicurrency_syncronize_error=Erreur de synchronisation %s -MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Utilisez la date du document pour trouver le taux de change, au lieu d'utiliser dernier taux connu -multicurrency_useOriginTx=Quand un objet est créé à partir d'un autre, garder le taux original de l'objet source (sinon utiliser le dernier taux connu) +multicurrency_syncronize_error=Erreur de synchronisation: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Utilisez la date du document pour rechercher le taux de change, au lieu d'utiliser le dernier taux connu +multicurrency_useOriginTx=Lorsqu'un objet est créé à partir d'un autre, conservez le taux d'origine de l'objet source (sinon utilisez le dernier taux connu). CurrencyLayerAccount=API CurrencyLayer -CurrencyLayerAccount_help_to_synchronize=Vous devez créer un compte sur leur site web pour pouvoir utiliser cette fonctionnalité.
Obtenez votre Clé API
Si vous utilisez un compte gratuit, vous ne pouvez pas changer la devise source(USD par défaut)
Mais si votre devise principale n'est pas USD, vous pouvez utiliser une devise source alternative pour forcer votre devise principale

Vous êtes limité à 1000 synchronisations par mois. +CurrencyLayerAccount_help_to_synchronize=Vous devez créer un compte sur leur site Web pour utiliser cette fonctionnalité.
Obtenez votre clé d'API .
Si vous utilisez un compte gratuit, vous ne pouvez pas changer la source de devise (USD par défaut).
Si votre devise principale n'est pas le dollar américain, vous pouvez utiliser la source de devise alternative pour forcer votre devise principale.

Vous êtes limité à 1 000 synchronisations. par mois. multicurrency_appId=Clé API multicurrency_appCurrencySource=Devise source multicurrency_alternateCurrencySource=Devise du document source CurrenciesUsed=Devises utilisées -CurrenciesUsed_help_to_add=Ajoutez les différentes devises et taux dont vous avez besoin sur vos propositions commerciales,commandes, etc. +CurrenciesUsed_help_to_add=Ajoutez les différentes devises et taux que vous devez utiliser pour vos propositions , commandes , etc. rate=taux MulticurrencyReceived=Reçu, devise originale -MulticurrencyRemainderToTake=Montant restant, devise originale +MulticurrencyRemainderToTake=Montant restant, devise d'origine MulticurrencyPaymentAmount=Montant du règlement (devise d'origine) AmountToOthercurrency=Montant destination (en devise du compte de réception) diff --git a/htdocs/langs/fr_FR/opensurvey.lang b/htdocs/langs/fr_FR/opensurvey.lang index 0cf70c90257..1d85f539784 100644 --- a/htdocs/langs/fr_FR/opensurvey.lang +++ b/htdocs/langs/fr_FR/opensurvey.lang @@ -11,7 +11,7 @@ PollTitle=Titre sondage ToReceiveEMailForEachVote=Recevoir un email à chaque vote TypeDate=Type date TypeClassic=Type classique -OpenSurveyStep2=Sélectionner les dates parmis les jours libres (en gris). Les jours sélectionnés sont verts. Vous pouvez dé-sélectionner un jour en cliquant à nouveau dessus. +OpenSurveyStep2=Sélectionnez vos dates parmi les jours gratuits (gris). Les jours sélectionnés sont verts. Vous pouvez désélectionner un jour précédemment sélectionné en cliquant à nouveau dessus. RemoveAllDays=Efface tous les jours CopyHoursOfFirstDay=Copier heures du premier jour RemoveAllHours=Efface toutes les heures @@ -35,7 +35,7 @@ TitleChoice=Libellé du choix ExportSpreadsheet=Exporter feuille de résultats ExpireDate=Date expiration NbOfSurveys=Nombre de sondages -NbOfVoters=Nombre de votants +NbOfVoters=Nbre de votants SurveyResults=Résultats PollAdminDesc=Vous êtes habilité à modifier toutes les lignes de votes par le bouton "Éditer". Vous pouvez supprimer une colonne ou ligne avec %s. Vous pouvez aussi ajouter une nouvelle colonne avec %s. 5MoreChoices=5 choix suplémentaires @@ -58,4 +58,4 @@ MoreChoices=Entrez plus de choix pour les votants SurveyExpiredInfo=Le sondage a été fermé ou le délai de vote est expiré EmailSomeoneVoted=%s a rempli une ligne.\nVous pouvez trouver le sondage via le lien:\n%s ShowSurvey=Afficher le sondage -UserMustBeSameThanUserUsedToVote=You must have voted and use the same user name that the one used to vote, to post a comment +UserMustBeSameThanUserUsedToVote=Vous devez avoir voté et utiliser le même nom d'utilisateur que celui utilisé pour voter, pour poster un commentaire diff --git a/htdocs/langs/fr_FR/orders.lang b/htdocs/langs/fr_FR/orders.lang index 89a6c7dfebb..3e9e378c39f 100644 --- a/htdocs/langs/fr_FR/orders.lang +++ b/htdocs/langs/fr_FR/orders.lang @@ -19,7 +19,7 @@ SuppliersOrdersRunning=Commandes fournisseurs en cours CustomerOrder=Commande client CustomersOrders=Commandes clients CustomersOrdersRunning=Commandes clients en cours -CustomersOrdersAndOrdersLines=Customer orders and order details +CustomersOrdersAndOrdersLines=Commandes clients et détails de la commande OrdersDeliveredToBill=Commandes clients délivrées à facturer OrdersToBill=Commandes clients à délivrer OrdersInProcess=Commandes clients en traitement @@ -88,7 +88,7 @@ NumberOfOrdersByMonth=Nombre de commandes par mois AmountOfOrdersByMonthHT=Montant total de commandes par mois (HT) ListOfOrders=Liste des commandes CloseOrder=Clôturer commande -ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmCloseOrder=Voulez-vous vraiment que cette commande soit livrée? Une fois qu'une commande est livrée, elle peut être définie sur facturée. ConfirmDeleteOrder=Êtes-vous sûr de vouloir effacer cette commande ? ConfirmValidateOrder=Êtes-vous sûr de vouloir valider cette commande sous la référence %s ? ConfirmUnvalidateOrder=Êtes-vous sûr de vouloir restaurer la commande %s au statut brouillon ? diff --git a/htdocs/langs/fr_FR/other.lang b/htdocs/langs/fr_FR/other.lang index 5186a5313fd..1e49e3fdc4f 100644 --- a/htdocs/langs/fr_FR/other.lang +++ b/htdocs/langs/fr_FR/other.lang @@ -23,7 +23,7 @@ MessageForm=Message sur l'écran de paiement en ligne MessageOK=Message sur page de retour de paiement validé MessageKO=Message sur page de retour de paiement annulé ContentOfDirectoryIsNotEmpty=Le contenu de ce répertoire n'est pas vide. -DeleteAlsoContentRecursively=Check to delete all content recursively +DeleteAlsoContentRecursively=Cocher pour supprimer tout le contenu de manière récursive YearOfInvoice=Année de la date de facturation PreviousYearOfInvoice=Année précédente de la date de facturation @@ -38,8 +38,8 @@ Notify_ORDER_SUPPLIER_VALIDATE=Commande fournisseur enregistrée Notify_ORDER_SUPPLIER_APPROVE=Commande fournisseur approuvée Notify_ORDER_SUPPLIER_REFUSE=Commande fournisseur refusée Notify_PROPAL_VALIDATE=Validation proposition commerciale client -Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed -Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_CLOSE_SIGNED=Proposition client fermée signée +Notify_PROPAL_CLOSE_REFUSED=Proposition client fermée refusée Notify_PROPAL_SENTBYMAIL=Envoi proposition commerciale par email Notify_WITHDRAW_TRANSMIT=Transmission prélèvement Notify_WITHDRAW_CREDIT=Crédit prélèvement @@ -48,11 +48,11 @@ Notify_COMPANY_CREATE=Tiers créé Notify_COMPANY_SENTBYMAIL=Email envoyé depuis la fiche Tiers Notify_BILL_VALIDATE=Facture client validée Notify_BILL_UNVALIDATE=Dévalidation facture client -Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_PAYED=Facture client payée Notify_BILL_CANCEL=Annulation facture client Notify_BILL_SENTBYMAIL=Envoi facture client par email Notify_BILL_SUPPLIER_VALIDATE=Validation facture fournisseur -Notify_BILL_SUPPLIER_PAYED=Supplier invoice paid +Notify_BILL_SUPPLIER_PAYED=Facture fournisseur payée Notify_BILL_SUPPLIER_SENTBYMAIL=Envoi facture fournisseur par email Notify_BILL_SUPPLIER_CANCELED=Facture fournisseur annulée Notify_CONTRACT_VALIDATE=Validation contrat @@ -70,28 +70,29 @@ Notify_PROJECT_CREATE=Création de projet Notify_TASK_CREATE=Tâche créée Notify_TASK_MODIFY=Tâche modifiée Notify_TASK_DELETE=Tâche supprimée -Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) -Notify_EXPENSE_REPORT_APPROVE=Expense report approved -Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) -Notify_HOLIDAY_APPROVE=Leave request approved +Notify_EXPENSE_REPORT_VALIDATE=Rapport de dépenses validé (approbation requise) +Notify_EXPENSE_REPORT_APPROVE=Note de frais approuvé +Notify_HOLIDAY_VALIDATE=Demande de congé validée (approbation requise) +Notify_HOLIDAY_APPROVE=Demande de congé approuvée SeeModuleSetup=Voir la configuration du module %s NbOfAttachedFiles=Nombre de fichiers/documents liés TotalSizeOfAttachedFiles=Taille totale fichiers/documents liés MaxSize=Taille maximum AttachANewFile=Ajouter un nouveau fichier/document LinkedObject=Objet lié -NbOfActiveNotifications=Number of notifications (no. of recipient emails) +NbOfActiveNotifications=Nombre de notifications (nb d'e-mails de destinataires) PredefinedMailTest=__(Hello)__,\nCeci est un mail de test envoyé à __EMAIL__.\nLes deux lignes sont séparées par un saut de ligne.\n\n__USER_SIGNATURE__ PredefinedMailTestHtml=__(Hello)__\nCeci est un message de test (le mot test doit être en gras).
Les 2 lignes sont séparées par un retour à la ligne.

__SIGNATURE__ -PredefinedMailContentSendInvoice=__(Hello)__\n\nPlease find attached invoice __REF__\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=__(Hello)__\n\nWe would like to warn you that the invoice __REF__ seems to have not been paid. The invoice is attached, as a reminder.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendProposal=__(Hello)__\n\nPlease find attached commercial proposal __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentContract=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendInvoice=__(Bonjour)__\n\nVeuillez trouver la facture ci-jointe __REF__\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Cordialement)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__(Bonjour)__\n\nNous tenons à vous avertir que la facture __REF__ ne semble pas avoir été payée. La facture est jointe, à titre de rappel.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Cordialement)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendProposal=__(Bonjour)__\n\nVeuillez trouver ci-joint la proposition commerciale __REF__\n\n\n__(Cordialement)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nVeuillez trouver, ci-joint, une demande de prix avec la référence __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find attached order __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find attached our order __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=__(Hello)__\n\nPlease find attached invoice __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendShipping=__(Hello)__\n\nPlease find attached shipping __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentSendFichInter=__(Hello)__\n\nPlease find attached intervention __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Bonjour)__\n\nVeuillez trouver ci-joint l'ordre __REF__\n\n\n__(Cordialement)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nVeuillez trouver ci-joint notre commande __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__(Hello)__\n\nVeuillez trouver la facture ci-jointe __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendShipping=__(Hello)__\n\nVeuillez trouver ci-joint l'expédition __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendFichInter=__(Hello)__\n\nVeuillez trouver l'intervention ci-jointe __REF__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentThirdparty=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentUser=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentLink=Vous pouvez cliquer sur le lien ci-dessous pour effectuer votre paiement si ce n'est déjà fait.\n\n%s\n\n @@ -175,7 +176,7 @@ EnableGDLibraryDesc=Vous devez activer ou installer la librairie GD avec votre P ProfIdShortDesc=Id prof. %s est une information qui dépend du pays du tiers.
Par exemple, pour le pays %s, il s'agit du code %s. DolibarrDemo=Démonstration de Dolibarr ERP/CRM StatsByNumberOfUnits=Statistiques de quantités de produits/services -StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +StatsByNumberOfEntities=Statistiques en nombre d'entités référentes (n ° de facture, ou d'ordre ...) NumberOfProposals=Nombre de propositions commerciales NumberOfCustomerOrders=Nombre de commandes clients NumberOfCustomerInvoices=Nombre de factures clients @@ -191,7 +192,7 @@ NumberOfUnitsSupplierInvoices=Quantités présentes dans les factures fournisseu EMailTextInterventionAddedContact=Une nouvelle intervention %s vous a été assignée EMailTextInterventionValidated=La fiche intervention %s vous concernant a été validée. EMailTextInvoiceValidated=La facture %s vous concernant a été validée. -EMailTextInvoicePayed=The invoice %s has been paid. +EMailTextInvoicePayed=La facture %s a été payée. EMailTextProposalValidated=La proposition commerciale %s vous concernant a été validée. EMailTextProposalClosedSigned=La proposition %s a été clôturée signée. EMailTextOrderValidated=La commande %s vous concernant a été validée. @@ -201,10 +202,10 @@ EMailTextOrderApprovedBy=La commande %s a été approuvée par %s. EMailTextOrderRefused=La commande %s a été refusée. EMailTextOrderRefusedBy=La commande %s a été refusée par %s. EMailTextExpeditionValidated=L'expédition %s a été validée. -EMailTextExpenseReportValidated=The expense report %s has been validated. -EMailTextExpenseReportApproved=The expensereport %s has been approved. -EMailTextHolidayValidated=The leave request %s has been validated. -EMailTextHolidayApproved=The leave request %s has been approved. +EMailTextExpenseReportValidated=La note de frais %s a été validée. +EMailTextExpenseReportApproved=Le expensereport %s a été approuvé. +EMailTextHolidayValidated=La demande de congé %s a été validée. +EMailTextHolidayApproved=La demande de congé %s a été approuvée. ImportedWithSet=Lot d'importation (Import key) DolibarrNotification=Notification automatique ResizeDesc=Entrer la nouvelle largeur OU la nouvelle hauteur. Le ratio d'aspect est conservé lors du redimensionnement… @@ -243,7 +244,7 @@ YourPasswordMustHaveAtLeastXChars=Votre mot de passe doit avoir au moins &tag=value
à n'importe quelles de ces URL (obligatoire pour le paiement libre uniquement) pour ajouter votre propre "code commentaire" du paiement. SetupPayBoxToHavePaymentCreatedAutomatically=Configurez votre URL PayBox à %s pour avoir le paiement créé automatiquement si validé par Paybox. YourPaymentHasBeenRecorded=Cette page confirme que votre paiement a bien été enregistré. Merci. diff --git a/htdocs/langs/fr_FR/paypal.lang b/htdocs/langs/fr_FR/paypal.lang index 2e342fe9e5a..2d94ef5c1ff 100644 --- a/htdocs/langs/fr_FR/paypal.lang +++ b/htdocs/langs/fr_FR/paypal.lang @@ -11,7 +11,7 @@ PAYPAL_SSLVERSION=Curl Version SSL PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Proposer le paiement intégral (Carte+Paypal) ou Paypal seul PaypalModeIntegral=Intégral PaypalModeOnlyPaypal=PayPal seul -ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ONLINE_PAYMENT_CSS_URL=URL facultative de la feuille de style CSS sur la page de paiement en ligne ThisIsTransactionId=Voici l'identifiant de la transaction: %s PAYPAL_ADD_PAYMENT_URL=Ajouter l'URL de paiement Paypal lors de l'envoi d'un document par email NewOnlinePaymentReceived=Nouveau paiement en ligne reçu @@ -27,8 +27,8 @@ ShortErrorMessage=Message d'erreur court ErrorCode=Code erreur ErrorSeverityCode=Code d'erreur sévérité OnlinePaymentSystem=Système de paiement en ligne -PaypalLiveEnabled=PayPal live enabled (otherwise test/sandbox mode) -PaypalImportPayment=Import PayPal payments +PaypalLiveEnabled=PayPal live activé (sinon test / mode sandbox) +PaypalImportPayment=Importer des paiements PayPal PostActionAfterPayment=Actions complémentaires après paiement ARollbackWasPerformedOnPostActions=Une annulation a été effectuée sur toutes les actions Post paiement. Vous devez compléter les actions complémentaires manuellement si elles sont nécessaires. -ValidationOfPaymentFailed=Validation of payment has failed +ValidationOfPaymentFailed=La validation du paiement a échoué diff --git a/htdocs/langs/fr_FR/printing.lang b/htdocs/langs/fr_FR/printing.lang index 62cad4af2c5..e93ce936de1 100644 --- a/htdocs/langs/fr_FR/printing.lang +++ b/htdocs/langs/fr_FR/printing.lang @@ -2,7 +2,7 @@ Module64000Name=Impressions Directe Module64000Desc=Activer le système d'impression Directe PrintingSetup=Réglages du module Impression Directe -PrintingDesc=Ce module ajoute un bouton Imprimer afin d'envoyer directement les documents à une imprimante (sans ouvrir le document dans une application). +PrintingDesc=Ce module ajoute un bouton Imprimer à différents modules pour permettre aux documents d'être imprimés directement sur une imprimante sans avoir à ouvrir le document dans une autre application. MenuDirectPrinting=Travaux d'impressions directe DirectPrint=Impressions Directe PrintingDriverDesc=Paramètres de configuration pour le driver d'impression @@ -19,7 +19,7 @@ UserConf=Configuration par utilisateur PRINTGCP_INFO=Configuration Google OAuth API PRINTGCP_AUTHLINK=Authentification PRINTGCP_TOKEN_ACCESS=Token OAuth Google Cloud Impression -PrintGCPDesc=Ce driver permet d'envoyer des documents directement à l'imprimante via Google Cloud Print +PrintGCPDesc=Ce pilote permet d'envoyer des documents directement à une imprimante à l'aide de Google Cloud Print. GCP_Name=Nom GCP_displayName=Nom affiché GCP_Id=Id imprimante @@ -27,7 +27,7 @@ GCP_OwnerName=Nom propriétaire GCP_State=Etat imprimante GCP_connectionStatus=Etats en ligne GCP_Type=Type d'imprimante -PrintIPPDesc=Ce driver permet d'envoyer les documents directement à une imprimante. Il requiert un système Linux avec CUPS installé. +PrintIPPDesc=Ce pilote permet d’envoyer des documents directement à une imprimante. Il nécessite un système Linux avec CUPS installé. PRINTIPP_HOST=Serveur d'impression PRINTIPP_PORT=Port PRINTIPP_USER=Identifiant diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index eacad26cc39..3c66c355246 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -17,12 +17,12 @@ Reference=Référence NewProduct=Nouveau produit NewService=Nouveau service ProductVatMassChange=Changement TVA en masse -ProductVatMassChangeDesc=This page can be used to modify a VAT rate defined on products or services from one value to another. Warning, this change is global/done on all database. +ProductVatMassChangeDesc=Cette page peut être utilisée pour modifier un taux de TVA défini sur des produits ou services d’une valeur à une autre. Attention, cette modification est globale / effectuée sur toutes les bases. MassBarcodeInit=Initialisation codes-barre MassBarcodeInitDesc=Cette page peut être utilisée pour initialiser un code-barre sur des objets qui ne disposent pas de code-barre défini. Vérifiez avant que l'installation du module code-barres est complète. ProductAccountancyBuyCode=Code comptable (achat) ProductAccountancySellCode=Code comptable (vente) -ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellIntraCode=Code comptable (vente intra-communautaire) ProductAccountancySellExportCode=Code comptable (vente à l'export) ProductOrService=Produit ou Service ProductsAndServices=Produits et Services @@ -97,8 +97,8 @@ NoteNotVisibleOnBill=Note (non visible sur les factures, propals...) ServiceLimitedDuration=Si produit de type service à durée limitée : MultiPricesAbility=Plusieurs niveaux de prix par produit/service (chaque client est dans un et un seul niveau) MultiPricesNumPrices=Nombre de prix -AssociatedProductsAbility=Activate virtual products (kits) -AssociatedProducts=Virtual products +AssociatedProductsAbility=Activer des produits virtuels (kits) +AssociatedProducts=Produits virtuels AssociatedProductsNumber=Nbre de sous-produits constituant ce produit virtuel ParentProductsNumber=Nbre de produits virtuels/packages parent ParentProducts=Produits parents @@ -134,7 +134,7 @@ PredefinedServicesToSell=Services prédéfinis en vente PredefinedProductsAndServicesToSell=Produits/Services prédéfinis en vente PredefinedProductsToPurchase=Produits prédéfinis à acheter PredefinedServicesToPurchase=Services prédéfinis à acheter -PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +PredefinedProductsAndServicesToPurchase=Produits / services prédéfinis à l'achat NotPredefinedProducts=Pas de produit/service prédéfini GenerateThumb=Générer la vignette ServiceNb=Service no %s @@ -145,7 +145,7 @@ Finished=Produit manufacturé RowMaterial=Matière première CloneProduct=Cloner produit/service ConfirmCloneProduct=Êtes-vous sûr de vouloir cloner le produit ou service %s ? -CloneContentProduct=Clone all main information of product/service +CloneContentProduct=Cloner toutes les informations principales du produit / service ClonePricesProduct=Cloner les prix CloneCompositionProduct=Cloner le produits packagés CloneCombinationsProduct=Cloner les variantes @@ -233,7 +233,7 @@ BarCodeDataForThirdparty=Information de code barre du produit %s : ResetBarcodeForAllRecords=Définir la valeur de code-barres pour tous les enregistrements (cela réinitialiser également les valeurs de code-barres déjà défini par des nouvelles) PriceByCustomer=Prix différents pour chaque client PriceCatalogue=Un seul prix de vente par produit/service -PricingRule=Rules for selling prices +PricingRule=Règles de vente AddCustomerPrice=Ajouter prix par client ForceUpdateChildPriceSoc=Définir le même prix sur les filiales des clients PriceByCustomerLog=Historique des prix clients précédents @@ -293,8 +293,8 @@ ProductSheet=Fiche produit ServiceSheet=Fiche service PossibleValues=Valeurs possibles GoOnMenuToCreateVairants=Allez sur le menu %s - %s pour ajouter les attributs de variantes (comme les couleurs, tailles, ...) -UseProductFournDesc=Use supplier descriptions of products in supplier documents -ProductSupplierDescription=Supplier description for the product +UseProductFournDesc=Utiliser les descriptions des produits des fournisseurs dans les documents fournisseurs +ProductSupplierDescription=Description du fournisseur du produit #Attributes VariantAttributes=Attributs de variante ProductAttributes=Attributs de variantes pour les produits @@ -330,8 +330,8 @@ NbOfDifferentValues=Nb de valeurs différentes NbProducts=Nb de produits ParentProduct=Produit parent HideChildProducts=Cacher les variantes de produits -ShowChildProducts=Show variant products -NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ShowChildProducts=Afficher les variantes de produits +NoEditVariants=Accédez à la fiche produit parent et modifiez l'impact sur le prix des variantes dans l'onglet variantes. ConfirmCloneProductCombinations=Êtes-vous sur de vouloir copier les variantes du produits vers l'autre produit parent avec la référence donnée ? CloneDestinationReference=Référence du produit cible ErrorCopyProductCombinations=Une erreur s'est produite lors de la copie des variantes de produit diff --git a/htdocs/langs/fr_FR/projects.lang b/htdocs/langs/fr_FR/projects.lang index c7819e30c83..e279650cf37 100644 --- a/htdocs/langs/fr_FR/projects.lang +++ b/htdocs/langs/fr_FR/projects.lang @@ -39,8 +39,8 @@ ShowProject=Afficher projet ShowTask=Afficher tâche SetProject=Définir projet NoProject=Aucun projet défini ou responsable -NbOfProjects=No. of projects -NbOfTasks=No. of tasks +NbOfProjects=Nombre de projets +NbOfTasks=Nombre de tâches TimeSpent=Temps consommé TimeSpentByYou=Temps consommé par vous TimeSpentByUser=Temps consommé par utilisateur @@ -169,8 +169,8 @@ SelectElement=Séléctionnez l'élément AddElement=Associer l'élément # Documents models DocumentModelBeluga=Modèle de document project pour l'aperçu des objets liées -DocumentModelBaleine=Project document template for tasks -DocumentModelTimeSpent=Project report template for time spent +DocumentModelBaleine=Modèle de document de projet pour les tâches +DocumentModelTimeSpent=Modèle de rapport de projet pour le temps passé PlannedWorkload=Charge de travail prévue PlannedWorkloadShort=Charge de travail ProjectReferers=Objets associés @@ -184,7 +184,7 @@ ProjectsWithThisUserAsContact=Projets avec cet utilisateur comme contact TasksWithThisUserAsContact=Tâches assignées à cet utilisateur ResourceNotAssignedToProject=Non assigné au projet ResourceNotAssignedToTheTask=Non assigné à la tache -NoUserAssignedToTheProject=No users assigned to this project +NoUserAssignedToTheProject=Aucun utilisateur assigné à ce projet TimeSpentBy=Temps consommé par TasksAssignedTo=Tâches assignées à AssignTaskToMe=M'assigner la tâche @@ -195,7 +195,7 @@ ProjectOverview=Vue d'ensemble ManageTasks=Utiliser les projets pour suivre les tâches et/ou saisir du temps consommé (feuilles de temps) ManageOpportunitiesStatus=Utiliser les projets pour suivre les affaires / opportunités ProjectNbProjectByMonth=Nb de projets créés par mois -ProjectNbTaskByMonth=No. of created tasks by month +ProjectNbTaskByMonth=Nombre de tâches créées par mois ProjectOppAmountOfProjectsByMonth=Montant des opportunités par mois ProjectWeightedOppAmountOfProjectsByMonth=Montant pondéré des opportunités par mois ProjectOpenedProjectByOppStatus=Opportunités ouvertes par statut d'opportunité @@ -232,5 +232,5 @@ DontHavePermissionForCloseProject=Vous n'êtes pas autorisé à fermer le projet DontHaveTheValidateStatus=Le projet %s doit être ouvert pour être fermé RecordsClosed=%s projet(s) fermé(s) SendProjectRef=A propos du projet %s -ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Payment of employee wages' must be enabled to define employee hourly rate to have time spent valorized +ModuleSalaryToDefineHourlyRateMustBeEnabled=Le module 'Paiement des salaires des employés' doit être activé pour définir le taux horaire des employés afin de valoriser le temps passé NewTaskRefSuggested=Réf de tâche déjà utilisée, une nouvelle réference de tâche est suggérée diff --git a/htdocs/langs/fr_FR/propal.lang b/htdocs/langs/fr_FR/propal.lang index 0c9f8d9a9b2..9dffafa301b 100644 --- a/htdocs/langs/fr_FR/propal.lang +++ b/htdocs/langs/fr_FR/propal.lang @@ -33,7 +33,7 @@ PropalStatusSigned=Signée (à facturer) PropalStatusNotSigned=Non signée (fermée) PropalStatusBilled=Facturée PropalStatusDraftShort=Brouillon -PropalStatusValidatedShort=Validated (open) +PropalStatusValidatedShort=Validé (ouvert) PropalStatusClosedShort=Fermée PropalStatusSignedShort=Signée PropalStatusNotSignedShort=Non signée @@ -55,7 +55,7 @@ NoDraftProposals=Pas de propositions brouillons CopyPropalFrom=Créer proposition/devis par recopie d'un proposition existante CreateEmptyPropal=Créer proposition/devis vierge ou avec la liste des produits/services DefaultProposalDurationValidity=Délai de validité par défaut (en jours) -UseCustomerContactAsPropalRecipientIfExist=Utiliser l'adresse de contact suivi client si définie plutôt que l'adresse du tiers comme destinataire des propositions +UseCustomerContactAsPropalRecipientIfExist=Utiliser l'adresse de 'contact suivi client' si définie plutôt que l'adresse du tiers comme destinataire des propositions ClonePropal=Cloner proposition commerciale ConfirmClonePropal=Êtes-vous sûr de vouloir cloner la proposition commerciale %s ? ConfirmReOpenProp=Êtes-vous sûr de vouloir réouvrir la proposition commerciale %s ? diff --git a/htdocs/langs/fr_FR/resource.lang b/htdocs/langs/fr_FR/resource.lang index 05c91f0432a..be7547b36da 100644 --- a/htdocs/langs/fr_FR/resource.lang +++ b/htdocs/langs/fr_FR/resource.lang @@ -5,7 +5,7 @@ DeleteResource=Effacer ressource ConfirmDeleteResourceElement=Confirmer la suppression de cette ressource ? NoResourceInDatabase=Pas de ressource en base NoResourceLinked=Aucune ressource liée - +ActionsOnResource=Événements liés à cette ressource ResourcePageIndex=Liste des ressources ResourceSingular=Resource ResourceCard=Fiche diff --git a/htdocs/langs/fr_FR/salaries.lang b/htdocs/langs/fr_FR/salaries.lang index 6e36ddca890..ac9510d110f 100644 --- a/htdocs/langs/fr_FR/salaries.lang +++ b/htdocs/langs/fr_FR/salaries.lang @@ -1,10 +1,11 @@ # Dolibarr language file - Source file is en_US - salaries SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Compte comptable utilisé pour les utilisateurs -SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=Le compte comptable défini sur la carte utilisateur sera utilisé uniquement pour la comptabilité auxiliaire. Celui-ci sera utilisé pour le grand livre et comme valeur par défaut de la comptabilité auxiliaire si le compte dédié de l'utilisateur n'est pas défini. +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=Le compte de comptabilité dédié défini sur la carte d’utilisateur sera utilisé pour la comptabilité Subledger uniquement. Celui-ci sera utilisé pour le grand livre et comme valeur par défaut de la comptabilité Subledger si le compte de comptabilité utilisateur dédié sur utilisateur n'est pas défini. SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Compte comptable par défaut pour les paiements de salaires Salary=Salaire Salaries=Salaires NewSalaryPayment=Nouveau règlement de salaire +AddSalaryPayment=Ajouter un paiement de salaire SalaryPayment=Règlement salaire SalariesPayments=Règlements des salaires ShowSalaryPayment=Afficher règlement de salaire @@ -15,4 +16,4 @@ THMDescription=Cette valeur peut être utilisé pour calculer le coût horaire c TJMDescription=Cette valeur est actuellement seulement une information et n'est utilisé pour aucun calcul LastSalaries=Les %s derniers règlements de salaires AllSalaries=Tous les règlements de salaires -SalariesStatistics=Statistiques salaires +SalariesStatistics=Statistiques salariales diff --git a/htdocs/langs/fr_FR/stocks.lang b/htdocs/langs/fr_FR/stocks.lang index 5898f7384e5..8cd53d0aed4 100644 --- a/htdocs/langs/fr_FR/stocks.lang +++ b/htdocs/langs/fr_FR/stocks.lang @@ -44,7 +44,6 @@ TransferStock=Transférer stock MassStockTransferShort=Transfert stock en masse StockMovement=Mouvement de stock StockMovements=Mouvements de stock -LabelMovement=Libellé du mouvement NumberOfUnit=Nombre de pièces UnitPurchaseValue=Prix d'achat unitaire StockTooLow=Stock insuffisant @@ -55,20 +54,20 @@ PMPValueShort=PMP EnhancedValueOfWarehouses=Valorisation des stocks UserWarehouseAutoCreate=Créer automatiquement un stock/entrepôt propre à l'utilisateur lors de sa création AllowAddLimitStockByWarehouse=Autoriser l'ajout d'une limite et d'un stock désiré par produit et entrepôt à la place de produit seul -IndependantSubProductStock=Le stock du produit et le stock des sous-produits sont indépendant +IndependantSubProductStock=Le stock de produits et le stock de sous-produits sont indépendants QtyDispatched=Quantité ventilée QtyDispatchedShort=Qté ventilée QtyToDispatchShort=Qté à ventiler OrderDispatch=Biens reçus -RuleForStockManagementDecrease=Règle de gestion des décrémentations automatiques de stock (la décrémentation manuelle est toujours possible, même si une décrémentation automatique est activée) -RuleForStockManagementIncrease=Règle de gestion des incrémentations de stock (l'incrémentation manuelle est toujours possible, même si une incrémentation automatique est activée) -DeStockOnBill=Décrémenter les stocks physiques sur validation des factures/avoirs clients -DeStockOnValidateOrder=Décrémenterr les stocks physiques sur validation des commandes clients +RuleForStockManagementDecrease=Choisissez Règle pour la réduction automatique du stock (la réduction manuelle est toujours possible, même si une règle de diminution automatique est activée). +RuleForStockManagementIncrease=Choisissez Règle pour augmentation de stock automatique (une augmentation manuelle est toujours possible, même si une règle d’augmentation automatique est activée) +DeStockOnBill=Diminution des stocks réels lors de la validation de la facture client / note de crédit +DeStockOnValidateOrder=Diminuer les stocks réels lors de la validation de la commande client DeStockOnShipment=Décrémenter les stocks physiques sur validation des expéditions -DeStockOnShipmentOnClosing=Décrémenter les stocks phisiques au classement "clôturée" de l'expédition -ReStockOnBill=Incrémenter les stocks physiques sur validation des factures/avoirs fournisseurs -ReStockOnValidateOrder=Incrémenter les stocks physiques sur approbation des commandes fournisseurs -ReStockOnDispatchOrder=Incrémenter les stocks physiques sur ventilation manuelle dans les entrepôts, après réception de la marchandise +DeStockOnShipmentOnClosing=Décrémenter les stocks physiques au classement "clôturée" de l'expédition +ReStockOnBill=Augmenter les stocks réels lors de la validation de la facture fournisseur / de la note de crédit +ReStockOnValidateOrder=Augmenter les stocks réels lors de l'approbation des bons de commande +ReStockOnDispatchOrder=Augmenter les stocks réels lors de l'expédition manuelle dans l'entrepôt, après la réception de la commande fournisseur OrderStatusNotReadyToDispatch=La commande n'a pas encore ou n'a plus un statut permettant une ventilation en stock. StockDiffPhysicTeoric=Explication de l'écart stock physique-virtuel NoPredefinedProductToDispatch=Pas de produits prédéfinis dans cet objet. Aucune ventilation en stock n'est donc à faire. @@ -130,10 +129,11 @@ RecordMovement=Enregistrer transfert ReceivingForSameOrder=Réceptions pour cette commande StockMovementRecorded=Mouvement de stocks enregistré RuleForStockAvailability=Règles d'exigence sur les stocks -StockMustBeEnoughForInvoice=Le niveau de stock doit être suffisant pour ajouter ce produit/service à la facture (la vérification est faite sur le stock réel lors de l'ajout de la ligne de facture, quelquesoit la règle de modification automatique de stock) -StockMustBeEnoughForOrder=Le niveau de stock doit être suffisant pour ajouter ce produit/service à la commande (la vérification est faite sur le stock réel lors de l'ajout de la ligne de commande, quelquesoit la règle de modification automatique de stock) -StockMustBeEnoughForShipment= Le niveau de stock doit être suffisant pour ajouter ce produit/service à l'expédition (la vérification est faite sur le stock réel lors de l'ajout de la ligne à l'expédition, quelquesoit la règle de modification automatique de stock) +StockMustBeEnoughForInvoice=Le niveau de stock doit être suffisant pour ajouter un produit / service à la facture (le contrôle est effectué sur le stock réel actuel lors de l'ajout d'une ligne dans la facture, quelle que soit la règle de changement de stock automatique). +StockMustBeEnoughForOrder=Le niveau de stock doit être suffisant pour ajouter un produit / service à la commande (le contrôle est effectué sur le stock réel actuel lors de l'ajout d'une ligne à la commande, quelle que soit la règle de changement de stock automatique) +StockMustBeEnoughForShipment= Le niveau de stock doit être suffisant pour ajouter un produit / service à l'envoi (le contrôle est effectué sur le stock réel actuel lors de l'ajout d'une ligne dans l'envoi, quelle que soit la règle de changement de stock automatique) MovementLabel=Libellé du mouvement +TypeMovement=Type de mouvement DateMovement=Date de mouvement InventoryCode=Code mouvement ou inventaire IsInPackage=Inclus dans un package @@ -172,7 +172,7 @@ inventoryDraft=En service inventorySelectWarehouse=Chois de l'entrepôt inventoryConfirmCreate=Créer inventoryOfWarehouse=Enventaire pour l'entrepôt: %s -inventoryErrorQtyAdd=Erreur: une quantité est plus petite que zéro. +inventoryErrorQtyAdd=Erreur: une quantité est inférieure à zéro inventoryMvtStock=Par inventaire inventoryWarningProductAlreadyExists=Ce produit est déjà dans la liste SelectCategory=Filtre par catégorie @@ -195,12 +195,16 @@ AddInventoryProduct=Ajouter un produit à l'inventaire AddProduct=Ajouter ApplyPMP=Appliquer PMP FlushInventory=Vider l'inventaire -ConfirmFlushInventory=Confirmez vous cette action ? +ConfirmFlushInventory=Confirmez-vous cette action? InventoryFlushed=Inventaire vidé ExitEditMode=Quitter l'édition inventoryDeleteLine=Effacer ligne RegulateStock=Réguler le stock ListInventory=Liste -StockSupportServices=La gestion des stock s'applique aussi aux services +StockSupportServices=La gestion des stocks prend en charge les services StockSupportServicesDesc=Par défaut, seul les produits/services de type "produit" peuvent bénéficier d'une gestion de stock. En activant ce paramètre, et si le module Services est activé, la gestion de stock pourra être appliquée aux articles de type "service". ReceiveProducts=Recevoir produits +StockIncreaseAfterCorrectTransfer=Augmenter par correction / transfert +StockDecreaseAfterCorrectTransfer=Diminution par correction / transfert +StockIncrease=Augmentation du stock +StockDecrease=Diminution du stock diff --git a/htdocs/langs/fr_FR/users.lang b/htdocs/langs/fr_FR/users.lang index fa5e772fe7e..0eca5497155 100644 --- a/htdocs/langs/fr_FR/users.lang +++ b/htdocs/langs/fr_FR/users.lang @@ -35,7 +35,7 @@ SuperAdministrator=Super Administrateur SuperAdministratorDesc=Administrateur global AdministratorDesc=Administrateur DefaultRights=Permissions par défaut -DefaultRightsDesc=Définissez ici les permissions par défaut, c'est-à-dire les permissions qui seront attribuées automatiquement à un nouvel utilisateur lors de sa création (Voir la fiche utilisateur pour changer les permissions d'un utilisateur existant). +DefaultRightsDesc=Définissez ici les autorisations par défaut accordées automatiquement à un nouvel utilisateur créé (accédez à la carte d’utilisateur pour modifier l’autorisation d’un utilisateur existant). DolibarrUsers=Utilisateurs Dolibarr LastName=Nom FirstName=Prénom @@ -66,7 +66,7 @@ CreateDolibarrThirdParty=Créer un tiers LoginAccountDisableInDolibarr=Le compte est désactivé sur Dolibarr. UsePersonalValue=Utiliser valeur personnalisée InternalUser=Utilisateur interne -ExportDataset_user_1=Utilisateurs Dolibarr et attributs +ExportDataset_user_1=Les utilisateurs et leurs propriétés DomainUser=Utilisateur du domaine %s Reactivate=Réactiver CreateInternalUserDesc=Ce formulaire permet de créer un utilisateur interne à votre société/institution. Pour créer un utilisateur externe (client, fournisseur, ...), utilisez le bouton 'Créer compte utilisateur' qui se trouve sur la fiche du contact du tiers. @@ -93,7 +93,7 @@ NameToCreate=Nom du tiers à créer YourRole=Vos rôles YourQuotaOfUsersIsReached=Votre quota d'utilisateurs actifs est atteint ! NbOfUsers=Nombre d'utilisateurs -NbOfPermissions=Nb d'autorisations +NbOfPermissions=Nombre de permissions DontDowngradeSuperAdmin=Seul un superadministrateur peut rétrograder un superadministrateur HierarchicalResponsible=Responsable hiérarchique HierarchicView=Vue hiérarchique @@ -108,3 +108,4 @@ UserAccountancyCode=Code comptable de l'utilisateur UserLogoff=Déconnexion de l'utilisateur UserLogged=Utilisateur connecté DateEmployment=Date d'embauche +DateEmploymentEnd=Date de fin d'emploi diff --git a/htdocs/langs/fr_FR/website.lang b/htdocs/langs/fr_FR/website.lang index 8c34fa07f4c..2e7d0413d8f 100644 --- a/htdocs/langs/fr_FR/website.lang +++ b/htdocs/langs/fr_FR/website.lang @@ -22,7 +22,7 @@ EditCss=Modifier les propriétés du site web EditMenu=Modifier menu EditMedias=Editer médias EditPageMeta=Modifier les propriétés de la page/conteneur -EditInLine=Edit inline +EditInLine=Editer en ligne AddWebsite=Ajouter site web Webpage=Page/contenair Web AddPage=Ajouter une page/conteneur @@ -30,7 +30,7 @@ HomePage=Page d'accueil PageContainer=Page/conteneur PreviewOfSiteNotYetAvailable=La prévisualisation de votre site web %s n'est pas disponible actuellement. Vous devez d'abord 'Importer un modèle de site web complet' ou juste 'Ajouter une page/container. RequestedPageHasNoContentYet=La page demandée avec l'id=%s ne présente encore aucun contenu ou le fichier cache .tpl.php a été supprimé. Ajoutez du contenu à la page pour résoudre cela. -SiteDeleted=Web site '%s' deleted +SiteDeleted=Site Web '%s' supprimé PageContent=Page/Contenair PageDeleted=Page/Contenair '%s' du site '%s' supprimée PageAdded=Page/Contenair '%s' ajoutée @@ -40,7 +40,7 @@ SetAsHomePage=Définir comme page d'accueil RealURL=URL réelle ViewWebsiteInProduction=Pré-visualiser le site web en utilisant l'URL de la page d'accueil SetHereVirtualHost= Utilisation avec Apache/NGinx/...
Si vous pouvez créer sur votre serveur Web (Apache, Nginx, ...) un hôte virtuel dédié avec PHP activé et un répertoire racine sur
%s
alors entrez le nom de l'hôte virtuel que vous avez créé afin que l'aperçu puisse également être fait en utilisant cet accès au serveur Web dédié au lieu d'utiliser uniquement le serveur Dolibarr. -YouCanAlsoTestWithPHPS=Use with PHP embedded server
On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
php -S 0.0.0.0:8080 -t %s +YouCanAlsoTestWithPHPS= Utilisation avec un serveur PHP incorporé
Sous environnement de développement, vous pouvez préférer tester le site avec le serveur Web PHP intégré (PHP 5.5 requis) en exécutant
php -S 0.0. 0,0: 8080 -t %s CheckVirtualHostPerms=Vérifiez également que le virtual host a la permission %s sur les fichiers dans %s ReadPerm=Lire WritePerm=Écrire @@ -48,10 +48,10 @@ PreviewSiteServedByWebServer=Prévisualiser %s dans un nouvel onglet.
PreviewSiteServedByDolibarr=Aperçu %s dans un nouvel onglet.

Le %s sera servi par le serveur Dolibarr donc aucun serveur Web supplémentaire (comme Apache, Nginx, IIS) n'est nécessaire.
L'inconvénient est que l'URL des pages ne sont pas sexy et commencent par un chemin de votre Dolibarr.
URL servie par Dolibarr:
%s

Pour utiliser votre propre serveur web externe pour servir ce site web, créez un virtual host sur vote serveur web qui pointe sur le répertoire
%s
ensuite entrez le nom de ce virtual host et cliquer sur le bouton d'affichage de l'aperçu. VirtualHostUrlNotDefined=URL du virtual host servit par le serveur web externe non défini NoPageYet=Pas de page pour l'instant -YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +YouCanCreatePageOrImportTemplate=Vous pouvez créer une nouvelle page ou importer un modèle de site Web complet. SyntaxHelp=Aide sur quelques astuces spécifiques de syntaxe YouCanEditHtmlSourceckeditor=Vous pouvez éditer le code source en activant l'éditeur HTML avec le bouton "Source". -YouCanEditHtmlSource=
You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

You can also include content of another Page/Container with the following syntax:
<?php includeContainer('alias_of_container_to_include'); ?>

You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
<?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

To add a link to another page, use the syntax:
<a href="alias_of_page_to_link_to.php">mylink<a>

To include a link to download a file stored into the documents directory, use the document.php wrapper:
Example, for a file into documents/ecm (need to be logged), syntax is:
<a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
For a file into documents/medias (open directory for public access), syntax is:
<a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
For a file shared with a share link (open access using the sharing hash key of file), syntax is:
<a href="/document.php?hashp=publicsharekeyoffile">

To include an image stored into the documents directory, use the viewimage.php wrapper:
Example, for an image into documents/medias (open directory for public access), syntax is:
<img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">
+YouCanEditHtmlSource=
Vous pouvez inclure du code PHP dans cette source à l'aide des balises <? php? > . Les variables globales suivantes sont disponibles: $ conf, $ db, $ mysoc, $ user, $ website, $ websitepage, $ weblangs.

peut également inclure le contenu d'une autre page / conteneur avec la syntaxe suivante:
<? php includeContainer ('alias_of_container_to_include'); ? >

Vous pouvez effectuer une redirection vers une autre page / conteneur avec la syntaxe suivante (Remarque: ne pas générer de contenu avant. une redirection):
<? php redirectToContainer ('alias_of_container_to_redirect_to'); ? >

Pour ajouter un lien vers une autre page, utilisez la syntaxe suivante:
<a href = "alias_of_page_to_link_to .php ">mylink<a>

" fa-download-download "> Pour inclure un lien permettant de télécharger un fichier stocké dans le Documents , utilisez le wrapper document.php :
Exemple: pour un fichier dans documents / ecm (doit être enregistré), la syntaxe est la suivante:
<a href = "/ document.php? modulepart = ecm & file = [rép_relatif /] nom_fichier.ext" >
Pour un fichier dans documents / medias (répertoire ouvert pour l'accès public), la syntaxe est la suivante:
< strong> <a href = "/ document.php? modulepart = medias & file = [rép_identique /] nom_fichier.ext" >
Pour un fichier partagé avec un lien de partage (accès ouvert à l'aide de la clé de partage de partage) , la syntaxe est la suivante:
<a href = "/ document.php? hashp = publicsharekeyoffile" >

Pour inclure une image stockée dans le répertoire Documents , utilisez le viewimage.php wrapper:
Exemple, pour une image dans documents / medias (répertoire ouvert pour accès public), la syntaxe est la suivante:
<img src = "/ viewimage.php? modulepart = medias&file = [nom_relatif /] nom_fichier .ext ">
ClonePage=Cloner la page/contenair CloneSite=Cloner le site SiteAdded=Site web ajouté @@ -61,9 +61,9 @@ LanguageMustNotBeSameThanClonedPage=Vous clonez une page comme traduction. La la ParentPageId=Id de la page parent WebsiteId=ID site web CreateByFetchingExternalPage=Créer une page / un conteneur en récupérant une page à partir d'une URL externe ... -OrEnterPageInfoManually=Or create page from scratch or from a page template... +OrEnterPageInfoManually=Ou créez une page à partir de rien ou à partir d'un modèle de page ... FetchAndCreate=Récupérer et Créer -ExportSite=Export website +ExportSite=Site d'exportation ImportSite=Importer modèle de site web IDOfPage=Id de page Banner=Bandeau @@ -78,7 +78,7 @@ AnotherContainer=Un autre conteneur WEBSITE_USE_WEBSITE_ACCOUNTS=Activer la table des comptes du site Web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Activer la table pour stocker les comptes de site Web (login/pass) pour chaque site / tiers YouMustDefineTheHomePage=Vous devez d'abord définir la page d'accueil par défaut -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved to experienced user. Depending on the complexity of source page, the result of importation may differs once imported from original. Also if the source page use common CSS style or not compatible javascript, it may break the look or features of the Web site editor when working on this page. This method is faster way to have a page but it is recommanded to create your new page from scratch or from a suggested page template.
Note also that only edition of HTML source will be possible when a page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Avertissement: La création d'une page Web en important une page Web externe est réservée à un utilisateur expérimenté. Selon la complexité de la page source, le résultat de l'importation peut différer une fois importé de l'original. De même, si la page source utilise un style CSS commun ou un code JavaScript non compatible, cela peut casser l'apparence ou les fonctionnalités de l'éditeur de site Web lorsque vous travaillez sur cette page. Cette méthode est un moyen plus rapide d’avoir une page, mais il est recommandé de créer votre nouvelle page à partir de rien ou à partir d’un modèle de page suggéré.
Notez également que seule l’édition de la source HTML sera possible lorsqu’un contenu de page aura été initialisé par une capture. à partir d'une page externe (l'éditeur "en ligne" ne sera PAS disponible) OnlyEditionOfSourceForGrabbedContent=Seule l'édition de source HTML est possible lorsque le contenu a été aspiré depuis un site externe GrabImagesInto=Aspirer aussi les images trouvées dans les css et la page. ImagesShouldBeSavedInto=Les images doivent être sauvegardées dans le répertoire @@ -89,7 +89,7 @@ CorporateHomePage=Page d'accueil Entreprise EmptyPage=Page vide ExternalURLMustStartWithHttp=l'URL externe doit commencer par http:// ou https:// ZipOfWebsitePackageToImport=Fichier zip du package site Web -ShowSubcontainers=Show included containers -InternalURLOfPage=Internal URL of page -ThisPageIsTranslationOf=This page/container is translation of -ThisPageHasTranslationPages=This page/container has translation +ShowSubcontainers=Inclure contenu dynamique +InternalURLOfPage=URL interne de la page +ThisPageIsTranslationOf=Cette page / conteneur est la traduction de +ThisPageHasTranslationPages=Cette page / conteneur a traduction diff --git a/htdocs/supplier_proposal/list.php b/htdocs/supplier_proposal/list.php index 8915532ff22..795564984d4 100644 --- a/htdocs/supplier_proposal/list.php +++ b/htdocs/supplier_proposal/list.php @@ -360,20 +360,20 @@ if ($resql) $num = $db->num_rows($resql); $arrayofselected=is_array($toselect)?$toselect:array(); - - if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE)) + + if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) { $obj = $db->fetch_object($resql); - + $id = $obj->rowid; - + header("Location: ".DOL_URL_ROOT.'/supplier_proposal/card.php?id='.$id); exit; } - + llxHeader('',$langs->trans('CommRequest'),$help_url); - + $param=''; if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.$contextpage; if ($limit > 0 && $limit != $conf->liste_limit) $param.='&limit='.$limit; From e95c6091c4273a8505eb32d598eee5d2f51edafb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 27 Nov 2018 11:10:39 +0100 Subject: [PATCH 569/769] Fix lang --- htdocs/langs/fr_CA/multicurrency.lang | 1 - htdocs/langs/fr_CA/products.lang | 1 - htdocs/langs/fr_CA/stocks.lang | 2 - htdocs/langs/fr_FR/assets.lang | 59 +++++++++++++++++++++++++++ 4 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 htdocs/langs/fr_FR/assets.lang diff --git a/htdocs/langs/fr_CA/multicurrency.lang b/htdocs/langs/fr_CA/multicurrency.lang index 19d1191fe08..054df9a4203 100644 --- a/htdocs/langs/fr_CA/multicurrency.lang +++ b/htdocs/langs/fr_CA/multicurrency.lang @@ -2,7 +2,6 @@ ErrorAddRateFail=Erreur dans le taux ajouté ErrorAddCurrencyFail=Erreur dans la monnaie ajoutée ErrorDeleteCurrencyFail=Erreur de suppression d'échec -multicurrency_syncronize_error=Erreur de synchronisation: %s multicurrency_appCurrencySource=Source de devises CurrenciesUsed_help_to_add=Ajoutez les différentes devises et taux que vous devez utiliser sur propositions, commandes , etc. MulticurrencyReceived=Reçu, monnaie d'origine diff --git a/htdocs/langs/fr_CA/products.lang b/htdocs/langs/fr_CA/products.lang index b12ccf56bf2..02bd444e0e5 100644 --- a/htdocs/langs/fr_CA/products.lang +++ b/htdocs/langs/fr_CA/products.lang @@ -103,7 +103,6 @@ ListProductServiceByPopularity=Liste des produits / services par popularité Finished=Produit fabriqué CloneProduct=Clone produit ou service ConfirmCloneProduct=Êtes-vous sûr de vouloir cloner un produit ou un service %s? -CloneContentProduct=Cloner toutes les informations principales du produit / service CloneCompositionProduct=Produit / service emballé par clone CloneCombinationsProduct=Variantes de produit de clonage NewRefForClone=Réf. De nouveau produit / service diff --git a/htdocs/langs/fr_CA/stocks.lang b/htdocs/langs/fr_CA/stocks.lang index fbf6cdcbe0f..dda238f9e50 100644 --- a/htdocs/langs/fr_CA/stocks.lang +++ b/htdocs/langs/fr_CA/stocks.lang @@ -113,7 +113,6 @@ inventoryValidate=Validée inventoryDraft=Fonctionnement inventorySelectWarehouse=Choix d'entrepôt inventoryOfWarehouse=Inventaire pour entrepôt: %s -inventoryErrorQtyAdd=Erreur: une quantité est inférieure à zéro SelectCategory=Filtre de catégorie INVENTORY_DISABLE_VIRTUAL=Permettre au produit non déstocké d'un produit d'un kit d'inventaire INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Utilisez le prix d'achat si aucun dernier prix d'achat ne peut être trouvé @@ -125,7 +124,6 @@ LastPA=Dernière BP RealQty=Qté réelle RegulatedQty=Qté réglementée FlushInventory=Flush inventaire -ConfirmFlushInventory=Confirmez-vous cette action? InventoryFlushed=Inventaire rincé ExitEditMode=Édition de sortie inventoryDeleteLine=Suppression de ligne diff --git a/htdocs/langs/fr_FR/assets.lang b/htdocs/langs/fr_FR/assets.lang new file mode 100644 index 00000000000..356245e8761 --- /dev/null +++ b/htdocs/langs/fr_FR/assets.lang @@ -0,0 +1,59 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# +# Generic +# +Assets = Immobilisations +NewAsset = Nouvelle immobilisation +AccountancyCodeAsset = Code comptable (immobilisation) +AccountancyCodeDepreciationAsset = Code comptable (compte d'amortissement) +AccountancyCodeDepreciationExpense = Code comptable (compte de charges d'amortissement) +NewAssetType=Nouveau type d'immobilisation +AssetsTypeSetup=Configuration du type d'actifs +AssetTypeModified=Type d'actif modifié +AssetType=Type d'immobilisations +AssetsLines=Immobilisations +DeleteType=Supprimer +DeleteAnAssetType=Supprimer un type d'actif +ConfirmDeleteAssetType=Êtes-vous sûr de vouloir supprimer ce type d'actif? +ShowTypeCard=Voir type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Immobilisations +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Module pour suivre vos immobilisations + +# +# Admin page +# +AssetsSetup = Configuration du module immobilisations +Settings = Paramètres +AssetsSetupPage = Page de configuration des actifs +ExtraFieldsAssetsType = Attributs supplémentaires (type d'immobilisation) +AssetsType=Type d'immobilisations +AssetsTypeId=Id du type d'immobilisations +AssetsTypeLabel=Libellé du type d'immobilisations +AssetsTypes=Types d'immobilisations + +# +# Menu +# +MenuAssets = Immobilisations +MenuNewAsset = Nouvelle immobilisation +MenuTypeAssets = Type d'immobilisations +MenuListAssets = Liste +MenuNewTypeAssets = Nouveau type +MenuListTypeAssets = Liste From d8537a3c7696f83f6d17f79be50fbb3223ae84f8 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Tue, 27 Nov 2018 11:36:31 +0100 Subject: [PATCH 570/769] FIX Lines are not inserted correctly if VAT have code --- htdocs/comm/propal/class/propal.class.php | 21 +++++++------- htdocs/commande/class/commande.class.php | 29 ++++++++++--------- htdocs/contrat/class/contrat.class.php | 22 +++++++------- .../class/expensereport.class.php | 19 ++++++------ .../class/fournisseur.commande.class.php | 29 ++++++++++--------- 5 files changed, 62 insertions(+), 58 deletions(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 2b3ae7834e1..d30b430bc4b 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -13,6 +13,7 @@ * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2018 Frédéric France + * Copyright (C) 2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -424,6 +425,16 @@ class Propal extends CommonObject if (empty($rang)) $rang=0; if (empty($fk_parent_line) || $fk_parent_line < 0) $fk_parent_line=0; + $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); + + // Clean vat code + $vat_src_code=''; + if (preg_match('/\((.*)\)/', $txtva, $reg)) + { + $vat_src_code = $reg[1]; + $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. + } + $remise_percent=price2num($remise_percent); $qty=price2num($qty); $pu_ht=price2num($pu_ht); @@ -469,16 +480,6 @@ class Propal extends CommonObject // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. - $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - - // Clean vat code - $vat_src_code=''; - if (preg_match('/\((.*)\)/', $txtva, $reg)) - { - $vat_src_code = $reg[1]; - $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. - } - $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $mysoc, $localtaxes_type, 100, $this->multicurrency_tx, $pu_ht_devise); $total_ht = $tabprice[0]; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 739a6538612..6f795511a56 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -9,7 +9,7 @@ * Copyright (C) 2012 Cedric Salvador * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2015 Marcos García - * Copyright (C) 2016-2017 Ferran Marcet + * Copyright (C) 2016-2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1283,6 +1283,16 @@ class Commande extends CommonOrder if (empty($fk_parent_line) || $fk_parent_line < 0) $fk_parent_line=0; if (empty($this->fk_multicurrency)) $this->fk_multicurrency=0; + $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); + + // Clean vat code + $vat_src_code=''; + if (preg_match('/\((.*)\)/', $txtva, $reg)) + { + $vat_src_code = $reg[1]; + $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. + } + $remise_percent=price2num($remise_percent); $qty=price2num($qty); $pu_ht=price2num($pu_ht); @@ -1326,20 +1336,11 @@ class Commande extends CommonOrder return self::STOCK_NOT_ENOUGH_FOR_ORDER; } } + // Calcul du total TTC et de la TVA pour la ligne a partir de - // qty, pu, remise_percent et txtva - // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker - // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. - - $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - - // Clean vat code - $vat_src_code=''; - if (preg_match('/\((.*)\)/', $txtva, $reg)) - { - $vat_src_code = $reg[1]; - $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. - } + // qty, pu, remise_percent et txtva + // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker + // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $mysoc, $localtaxes_type, 100, $this->multicurrency_tx, $pu_ht_devise); diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index a460f6aff51..a827647c354 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -8,7 +8,7 @@ * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2015 Marcos García - * Copyright (C) 2015-2017 Ferran Marcet + * Copyright (C) 2015-2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1358,6 +1358,16 @@ class Contrat extends CommonObject { $this->db->begin(); + $localtaxes_type=getLocalTaxesFromRate($txtva, 0, $this->societe, $mysoc); + + // Clean vat code + $vat_src_code=''; + if (preg_match('/\((.*)\)/', $txtva, $reg)) + { + $vat_src_code = $reg[1]; + $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. + } + // Clean parameters $pu_ht=price2num($pu_ht); $pu_ttc=price2num($pu_ttc); @@ -1392,16 +1402,6 @@ class Contrat extends CommonObject // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. - $localtaxes_type=getLocalTaxesFromRate($txtva, 0, $this->societe, $mysoc); - - // Clean vat code - $vat_src_code=''; - if (preg_match('/\((.*)\)/', $txtva, $reg)) - { - $vat_src_code = $reg[1]; - $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. - } - $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, 1,$mysoc, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index c6debbe60ff..966f7b1af84 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -1,8 +1,8 @@ - * Copyright (C) 2015 Laurent Destailleur - * Copyright (C) 2015 Alexandre Spangaro - * Copyright (C) 2016 Ferran Marcet +/* Copyright (C) 2011 Dimitri Mouillard + * Copyright (C) 2015 Laurent Destailleur + * Copyright (C) 2015 Alexandre Spangaro + * Copyright (C) 2016-2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1685,6 +1685,12 @@ class ExpenseReport extends CommonObject if (empty($date)) $date = ''; if (empty($fk_project)) $fk_project = 0; + if (preg_match('/\((.*)\)/', $vatrate, $reg)) + { + $vat_src_code = $reg[1]; + $vatrate = preg_replace('/\s*\(.*\)/', '', $vatrate); // Remove code into vatrate. + } + $qty = price2num($qty); $vatrate = price2num($vatrate); $up = price2num($up); @@ -1695,11 +1701,6 @@ class ExpenseReport extends CommonObject $this->line = new ExpenseReportLine($this->db); - if (preg_match('/\((.*)\)/', $vatrate, $reg)) - { - $vat_src_code = $reg[1]; - $vatrate = preg_replace('/\s*\(.*\)/', '', $vatrate); // Remove code into vatrate. - } $vatrate = preg_replace('/\*/','',$vatrate); $seller = ''; // seller is unknown diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index 1dc68b34bc2..ca7651d641f 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -8,6 +8,7 @@ * Copyright (C) 2012-2015 Marcos García * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Cédric Salvador + * Copyright (C) 2018 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -1434,6 +1435,16 @@ class CommandeFournisseur extends CommonOrder if (empty($txlocaltax2)) $txlocaltax2=0; if (empty($remise_percent)) $remise_percent=0; + $localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc,$this->thirdparty); + + // Clean vat code + $vat_src_code=''; + if (preg_match('/\((.*)\)/', $txtva, $reg)) + { + $vat_src_code = $reg[1]; + $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. + } + $remise_percent=price2num($remise_percent); $qty=price2num($qty); $pu_ht=price2num($pu_ht); @@ -1526,20 +1537,10 @@ class CommandeFournisseur extends CommonOrder $product_type = $type; } - // Calcul du total TTC et de la TVA pour la ligne a partir de - // qty, pu, remise_percent et txtva - // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker - // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. - - $localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc,$this->thirdparty); - - // Clean vat code - $vat_src_code=''; - if (preg_match('/\((.*)\)/', $txtva, $reg)) - { - $vat_src_code = $reg[1]; - $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. - } + // Calcul du total TTC et de la TVA pour la ligne a partir de + // qty, pu, remise_percent et txtva + // TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker + // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $this->thirdparty, $localtaxes_type, 100, $this->multicurrency_tx,$pu_ht_devise); $total_ht = $tabprice[0]; From 70bd931d08108c3fe996ae43ca7b6d082f58d73e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 27 Nov 2018 16:20:31 +0100 Subject: [PATCH 571/769] FIX empty page due to preg_replace JIT error on large strings --- htdocs/core/lib/website.lib.php | 48 ++++++++++++++++++++++++++++++++- htdocs/website/index.php | 11 +++++--- 2 files changed, 54 insertions(+), 5 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 350014b3eb9..70f61055689 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -35,6 +35,8 @@ */ function dolWebsiteReplacementOfLinks($website, $content, $removephppart=0) { + $nbrep = 0; + // Replace php code. Note $content may come from database and does not contains body tags. $replacewith='...php...'; if ($removephppart) $replacewith=''; @@ -59,7 +61,12 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart=0) //$replacewith='...php...'; $replacewith='...php...'; if ($removephppart) $replacewith=''; - $content = preg_replace('/<\?php((?!\?>).)*\?>\n*/ims', $replacewith, $content); + //$content = preg_replace('/<\?php((?!\?toremove>).)*\?toremove>\n*/ims', $replacewith, $content); + /*if ($content === null) { + if (preg_last_error() == PREG_JIT_STACKLIMIT_ERROR) $content = 'preg_replace error (when removing php tags) PREG_JIT_STACKLIMIT_ERROR'; + }*/ + $content = dolStripPhpCode($content, $replacewith); + //var_dump($content); // Replace relative link / with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); @@ -88,6 +95,45 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart=0) } +/** + * Remove PHP code part from a string. + * + * @param string $str String to clean + * @param string $replacewith String to use as replacement + * @return string Result string without php code + */ +function dolStripPhpCode($str, $replacewith='') +{ + $newstr = ''; + + //split on each opening tag + $parts = explode('', $part); + if (!empty($partlings)) + { + //remove content before closing tag + if (count($partlings) > 1) $partlings[0] = ''; + //append to out string + $newstr .= $replacewith.implode('',$partlings); + } + } + } + return $newstr; +} + + /** * Render a string of an HTML content and output it. * Used to ouput the page when viewed from server (Dolibarr or Apache). diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 57dbe2d8984..0d3af42d0cf 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -1647,7 +1647,7 @@ print '
'; if (count($object->records) > 0) // There is at least one web site { // ***** Part for web sites - + print ''; print '
'; print $langs->trans("Website").' : '; print '
'; @@ -1807,6 +1807,7 @@ if (count($object->records) > 0) // There is at least one web site { print '
'; // Close current websitebar to open a new one + print ''; print '
'; print '
'; @@ -2732,7 +2733,7 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa $objectpage->fetch($pageid); $jscontent = @file_get_contents($filejs); - $out = ''."\n"; + $out = ''."\n"; // Include a html so we can benefit of the header of page. // Note: We can't use iframe as it can be used to include another external html file @@ -2742,7 +2743,8 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa $out .= "'; } } From bd8e6d884bdb92f791bd2c017f5a0c47a68acbc0 Mon Sep 17 00:00:00 2001 From: com4WEB <42214196+com4WEB@users.noreply.github.com> Date: Mon, 10 Dec 2018 22:17:18 +0100 Subject: [PATCH 743/769] Create README-DE --- doc/install/README-DE | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 doc/install/README-DE diff --git a/doc/install/README-DE b/doc/install/README-DE new file mode 100644 index 00000000000..c7ece3891f3 --- /dev/null +++ b/doc/install/README-DE @@ -0,0 +1,33 @@ +README (deutsch / german / allemand) +-------------------------------- + + +-------------------------------- +Download / Herunterladen +-------------------------------- + +* Dolibarr ERP/CRM kann man über die offizielle Dolibarr Website + https://www.dolibarr.org/downloads + oder direkt von Sourceforge + https://sourceforge.net/projects/dolibarr/files/ + herunterladen. + + + +* Die meisten externen Module/Themens sind über den DoliStore verfügbar: + https://www.dolistore.com/de/ + + +-------------------------------- +Installation +-------------------------------- + +* Für eine kurze Einleitung, schau auf die README Datei im Hauptverzeichnis. + +* Umfangreiche Dokumentationen sind im Dolibarr Wiki zu finden: + https://wiki.dolibarr.org/index.php/Hauptseite + +* eine Deutsche Community bietet der Dolibarr e.V. unter + https://www.dolibarr.de/ + + From b8a5f4b0526ae0fbbfbf941b8d7671f1658d54a7 Mon Sep 17 00:00:00 2001 From: com4WEB <42214196+com4WEB@users.noreply.github.com> Date: Mon, 10 Dec 2018 22:32:50 +0100 Subject: [PATCH 744/769] Update README https instead of http & dolistore.com instead of .org --- doc/install/README | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/install/README b/doc/install/README index 83bc6484cea..0c7341b196c 100644 --- a/doc/install/README +++ b/doc/install/README @@ -7,12 +7,12 @@ Download -------------------------------- * Dolibarr ERP/CRM can be downloaded at sourceforge: -http://sourceforge.net/projects/dolibarr/files -or from Dolibarr official web site: -http://www.dolibarr.org + https://sourceforge.net/projects/dolibarr/files + or from Dolibarr official web site: + https://www.dolibarr.org * Most external modules are only available on DoliStore: -http://www.dolistore.org + https://www.dolistore.com -------------------------------- @@ -22,4 +22,4 @@ Install * For a Quick guide, take a look at README file into root directory. * More complete documentations are also available on line on the Dolibarr Wiki: -http://wiki.dolibarr.org + https://wiki.dolibarr.org From 3213b3be07504767cd1edeae137042f89f40cd32 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 09:17:02 +0100 Subject: [PATCH 745/769] Standardize code: Move jabberid into social network module --- htdocs/admin/socialnetworks.php | 2 +- .../default/tpl/contactcard_edit.tpl.php | 5 ---- .../default/tpl/contactcard_view.tpl.php | 5 ---- htdocs/contact/card.php | 24 ++++++++++++------- htdocs/contact/list.php | 8 +++++++ htdocs/core/class/commonobject.class.php | 8 ++----- htdocs/core/lib/functions.lib.php | 8 +++++-- 7 files changed, 32 insertions(+), 28 deletions(-) diff --git a/htdocs/admin/socialnetworks.php b/htdocs/admin/socialnetworks.php index 9aba26b3fc4..959dd91f339 100644 --- a/htdocs/admin/socialnetworks.php +++ b/htdocs/admin/socialnetworks.php @@ -89,7 +89,7 @@ dol_fiche_head($head, 'setup', '', 0, 'user'); print '
'; -$arrayofsocialnetworks=array('skype'=>'Skype', 'twitter'=>'Twitter', 'facebook'=>'Facebook'); +$arrayofsocialnetworks=array('jabber'=>'Jabber', 'skype'=>'Skype', 'twitter'=>'Twitter', 'facebook'=>'Facebook'); foreach($arrayofsocialnetworks as $snkey => $snlabel) { diff --git a/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php index 39c3604416b..bc3b30c29ad 100644 --- a/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php +++ b/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php @@ -125,11 +125,6 @@ echo $this->control->tpl['ajax_selectcountry']; - - trans("IM"); ?> - - - trans("ContactVisibility"); ?> control->tpl['select_visibility']; ?> diff --git a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php index c1d6de80964..bb9bc1d06b5 100644 --- a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php +++ b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php @@ -110,11 +110,6 @@ dol_htmloutput_errors($this->control->tpl['error'],$this->control->tpl['errors'] - - trans("IM"); ?> - control->tpl['jabberid']; ?> - - trans("ContactVisibility"); ?> control->tpl['visibility']; ?> diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php index 770b19e5b75..15cbe110a6a 100644 --- a/htdocs/contact/card.php +++ b/htdocs/contact/card.php @@ -660,12 +660,14 @@ else } print ''; - // Instant message and no email - print ''; - print 'jabberid).'">'; - if (! empty($conf->socialnetworks->enabled)) { + // Jabber + if (! empty($conf->global->SOCIALNETWORKS_JABBER)) + { + print ''; + print 'jabberid).'">'; + } // Skype if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) { @@ -919,9 +921,8 @@ else } print ''; - // Jabberid - print ''; - print 'jabberid).'">'; + // Unsubscribe + print ''; if (! empty($conf->mailing->enabled)) { print ''; @@ -935,6 +936,12 @@ else if (! empty($conf->socialnetworks->enabled)) { + // Jabber ID + if (! empty($conf->global->SOCIALNETWORKS_JABBER)) + { + print ''; + print 'jabberid).'">'; + } // Skype if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) { @@ -1153,8 +1160,7 @@ else print ''.$object->getNbOfEMailings().''; } - // Instant message and no email - print ''.$langs->trans("IM").''.$object->jabberid.''; + // Unsubscribe if (!empty($conf->mailing->enabled)) { print ''.$langs->trans("No_Email").''.yn($object->no_email).''; diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 237b82f78d5..9ac7d9e258d 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -158,6 +158,7 @@ $arrayfields=array( 'p.phone_mobile'=>array('label'=>"PhoneMobile", 'checked'=>1), 'p.fax'=>array('label'=>"Fax", 'checked'=>0), 'p.email'=>array('label'=>"EMail", 'checked'=>1), + 'p.jabberid'=>array('label'=>"Jabber", 'checked'=>1, 'enabled'=>(! empty($conf->socialnetworks->enabled))), 'p.skype'=>array('label'=>"Skype", 'checked'=>1, 'enabled'=>(! empty($conf->socialnetworks->enabled))), 'p.twitter'=>array('label'=>"Twitter", 'checked'=>1, 'enabled'=>(! empty($conf->socialnetworks->enabled))), 'p.facebook'=>array('label'=>"Facebook", 'checked'=>1, 'enabled'=>(! empty($conf->socialnetworks->enabled))), @@ -822,12 +823,19 @@ while ($i < min($num,$limit)) print ''.dol_print_email($obj->email,$obj->rowid,$obj->socid,'AC_EMAIL',18).''; if (! $i) $totalarray['nbfield']++; } + // Skype if (! empty($arrayfields['p.skype']['checked'])) { if (! empty($conf->socialnetworks->enabled)) { print ''.dol_print_socialnetworks($obj->skype,$obj->rowid,$obj->socid,'skype').''; } if (! $i) $totalarray['nbfield']++; } + // Jabber + if (! empty($arrayfields['p.jabberid']['checked'])) + { + if (! empty($conf->socialnetworks->enabled)) { print ''.dol_print_socialnetworks($obj->jabberid,$obj->rowid,$obj->socid,'jabberid').''; } + if (! $i) $totalarray['nbfield']++; + } // Twitter if (! empty($arrayfields['p.twitter']['checked'])) { diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 0e4bee78afb..8942bcaabb3 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -620,14 +620,10 @@ abstract class CommonObject { if ($this->skype) $out.=dol_print_socialnetworks($this->skype,$this->id,$object->id,'skype'); $outdone++; - } - if (! empty($conf->socialnetworks->enabled)) - { + if ($this->jabberid) $out.=dol_print_socialnetworks($this->jabberid,$this->id,$object->id,'jabber'); + $outdone++; if ($this->twitter) $out.=dol_print_socialnetworks($this->twitter,$this->id,$object->id,'twitter'); $outdone++; - } - if (! empty($conf->socialnetworks->enabled)) - { if ($this->facebook) $out.=dol_print_socialnetworks($this->facebook,$this->id,$object->id,'facebook'); $outdone++; } diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 9cc9f315e82..f280825af08 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -3010,7 +3010,7 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ if (empty($srconly) && in_array($pictowithoutext, array( 'bank', 'close_title', 'delete', 'edit', 'ellipsis-h', 'filter', 'grip', 'grip_title', 'list', 'listlight', 'off', 'on', 'play', 'playdisabled', 'printer', 'resize', 'note','switch_off', 'switch_on', 'unlink', 'uparrow', '1downarrow', '1uparrow', - 'skype','twitter','facebook' + 'jabber','skype','twitter','facebook' ) )) { $fakey = $pictowithoutext; @@ -3093,10 +3093,14 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ elseif ($pictowithoutext == 'playdisabled') { $fakey = 'fa-play'; $facolor = '#ccc'; - } elseif ($pictowithoutext == 'play') { + } + elseif ($pictowithoutext == 'play') { $fakey = 'fa-play'; $facolor = '#444'; } + elseif ($pictowithoutext == 'jabber') { + $fakey = 'fa-comment-o'; + } else { $fakey = 'fa-'.$pictowithoutext; $facolor = '#444'; From b47e7b2267a88f7b71a41d8efc3431cff77e3d98 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 09:49:46 +0100 Subject: [PATCH 746/769] Work on new unsubscribe process --- .../mailing/class/advtargetemailing.class.php | 11 ++++- htdocs/contact/card.php | 49 ++++++++++++++++--- htdocs/contact/class/contact.class.php | 5 +- htdocs/install/mysql/tables/llx_socpeople.sql | 2 +- .../public/emailing/mailing-unsubscribe.php | 8 +-- htdocs/webservices/server_contact.php | 6 +-- 6 files changed, 61 insertions(+), 20 deletions(-) diff --git a/htdocs/comm/mailing/class/advtargetemailing.class.php b/htdocs/comm/mailing/class/advtargetemailing.class.php index baf48447bad..83833304d44 100644 --- a/htdocs/comm/mailing/class/advtargetemailing.class.php +++ b/htdocs/comm/mailing/class/advtargetemailing.class.php @@ -745,7 +745,16 @@ class AdvanceTargetingMailing extends CommonObject $sqlwhere[]= " (t.civility IN ('".$this->db->escape(implode("','",$arrayquery['contact_civility']))."'))"; } if ($arrayquery['contact_no_email']!='') { - $sqlwhere[]= " (t.no_email='".$this->db->escape($arrayquery['contact_no_email'])."')"; + $tmpwhere = ''; + if (! empty($arrayquery['contact_no_email'])) + { + $tmpwhere.= "(t.email IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE t.entity IN (".getEntity('mailing').") AND email = '".$this->db->escape($arrayquery['contact_no_email'])."'))"; + } + else + { + $tmpwhere.= "(t.email NOT IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE t.entity IN (".getEntity('mailing').") AND email = '".$this->db->escape($arrayquery['contact_no_email'])."'))"; + } + $sqlwhere[]= $tmpwhere; } if ($arrayquery['contact_update_st_dt']!='') { $sqlwhere[]= " (t.tms >= '".$this->db->idate($arrayquery['contact_update_st_dt'])."' AND t.tms <= '".$this->db->idate($arrayquery['contact_update_end_dt'])."')"; diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php index 15cbe110a6a..3ca9c4ae6bc 100644 --- a/htdocs/contact/card.php +++ b/htdocs/contact/card.php @@ -194,7 +194,6 @@ if (empty($reshook)) $object->phone_mobile = GETPOST("phone_mobile",'alpha'); $object->fax = GETPOST("fax",'alpha'); $object->jabberid = GETPOST("jabberid",'alpha'); - $object->no_email = GETPOST("no_email",'int'); $object->priv = GETPOST("priv",'int'); $object->note_public = GETPOST("note_public",'none'); $object->note_private = GETPOST("note_private",'none'); @@ -367,7 +366,6 @@ if (empty($reshook)) $object->phone_mobile = GETPOST("phone_mobile",'alpha'); $object->fax = GETPOST("fax",'alpha'); $object->jabberid = GETPOST("jabberid",'alpha'); - $object->no_email = GETPOST("no_email",'int'); $object->priv = GETPOST("priv",'int'); $object->note_public = GETPOST("note_public",'none'); $object->note_private = GETPOST("note_private",'none'); @@ -651,8 +649,21 @@ else print 'email).'">'; if (! empty($conf->mailing->enabled)) { + $noemail = ''; + if (empty($noemail) && ! empty($object->email)) + { + $sql="SELECT COUNT(*) as nb FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE entity IN (".getEntity('mailing').") AND email = '".$db->escape($object->email)."'"; + //print $sql; + $resql=$db->query($sql); + if ($resql) + { + $obj=$db->fetch_object($resql); + $noemail = $obj->nb; + } + } + print ''; - print ''.$form->selectyesno('no_email',(GETPOST("no_email",'alpha')?GETPOST("no_email",'alpha'):$object->no_email), 1).''; + print ''.$form->selectyesno('no_email',(GETPOSTISSET("no_email")?GETPOST("no_email",'alpha'):$noemail), 1).''; } else { @@ -925,8 +936,21 @@ else print ''; if (! empty($conf->mailing->enabled)) { + $noemail = ''; + if (empty($noemail) && ! empty($object->email)) + { + $sql="SELECT COUNT(*) as nb FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE entity IN (".getEntity('mailing').") AND email = '".$db->escape($object->email)."'"; + //print $sql; + $resql=$db->query($sql); + if ($resql) + { + $obj=$db->fetch_object($resql); + $noemail = $obj->nb; + } + } + print ''; - print ''.$form->selectyesno('no_email',(isset($_POST["no_email"])?$_POST["no_email"]:$object->no_email), 1).''; + print ''.$form->selectyesno('no_email',(GETPOSTISSET("no_email")?GETPOST("no_email",'alpha'):$noemail), 1).''; } else { @@ -1160,10 +1184,23 @@ else print ''.$object->getNbOfEMailings().''; } - // Unsubscribe + // Unsubscribe opt-out if (!empty($conf->mailing->enabled)) { - print ''.$langs->trans("No_Email").''.yn($object->no_email).''; + //print 'eee'.$object->email; + $noemail = $object->no_email; + if (empty($noemail) && ! empty($object->email)) + { + $sql="SELECT COUNT(*) as nb FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE entity IN (".getEntity('mailing').") AND email = '".$db->escape($object->email)."'"; + //print $sql; + $resql=$db->query($sql); + if ($resql) + { + $obj=$db->fetch_object($resql); + $noemail = $obj->nb; + } + } + print ''.$langs->trans("No_Email").''.yn($noemail).''; } print ''.$langs->trans("ContactVisibility").''; diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 3cafedaeceb..a5297750386 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -123,7 +123,6 @@ class Contact extends CommonObject public $birthday; public $default_lang; - public $no_email; // 1=Don't send e-mail to this contact, 0=do public $ref_facturation; // Reference number of invoice for which it is contact public $ref_contrat; // Nb de reference contrat pour lequel il est contact @@ -372,7 +371,6 @@ class Contact extends CommonObject $sql .= ", statut = ".$this->db->escape($this->statut); $sql .= ", fk_user_modif=".($user->id > 0 ? "'".$this->db->escape($user->id)."'":"NULL"); $sql .= ", default_lang=".($this->default_lang?"'".$this->db->escape($this->default_lang)."'":"NULL"); - $sql .= ", no_email=".($this->no_email?"'".$this->db->escape($this->no_email)."'":"0"); $sql .= ", entity = " . $this->db->escape($this->entity); $sql .= " WHERE rowid=".$this->db->escape($id); @@ -709,7 +707,7 @@ class Contact extends CommonObject $sql.= " c.birthday,"; $sql.= " c.poste, c.phone, c.phone_perso, c.phone_mobile, c.fax, c.email, c.jabberid, c.skype, c.twitter, c.facebook,"; $sql.= " c.photo,"; - $sql.= " c.priv, c.note_private, c.note_public, c.default_lang, c.no_email, c.canvas,"; + $sql.= " c.priv, c.note_private, c.note_public, c.default_lang, c.canvas,"; $sql.= " c.import_key,"; $sql.= " c.datec as date_creation, c.tms as date_modification,"; $sql.= " co.label as country, co.code as country_code,"; @@ -790,7 +788,6 @@ class Contact extends CommonObject $this->note_private = $obj->note_private; $this->note_public = $obj->note_public; $this->default_lang = $obj->default_lang; - $this->no_email = $obj->no_email; $this->user_id = $obj->user_id; $this->user_login = $obj->user_login; $this->canvas = $obj->canvas; diff --git a/htdocs/install/mysql/tables/llx_socpeople.sql b/htdocs/install/mysql/tables/llx_socpeople.sql index 94cf869543d..00456e3ece6 100644 --- a/htdocs/install/mysql/tables/llx_socpeople.sql +++ b/htdocs/install/mysql/tables/llx_socpeople.sql @@ -53,7 +53,7 @@ create table llx_socpeople whatsapp varchar(255), -- photo varchar(255), - no_email smallint NOT NULL DEFAULT 0, + no_email smallint NOT NULL DEFAULT 0, -- deprecated. Use table llx_mailing_unsubscribe instead priv smallint NOT NULL DEFAULT 0, fk_user_creat integer DEFAULT 0, -- user qui a creel'enregistrement fk_user_modif integer, diff --git a/htdocs/public/emailing/mailing-unsubscribe.php b/htdocs/public/emailing/mailing-unsubscribe.php index 67672f19e7c..d04d6eb8020 100644 --- a/htdocs/public/emailing/mailing-unsubscribe.php +++ b/htdocs/public/emailing/mailing-unsubscribe.php @@ -100,19 +100,21 @@ if (! empty($tag) && ($unsuscrib=='1')) $resql=$db->query($sql); if (! $resql) dol_print_error($db); - // Update status communication of thirdparty prospect (old data) + /* + // Update status communication of thirdparty prospect (old usage) $sql = "UPDATE ".MAIN_DB_PREFIX."societe SET fk_stcomm=-1 WHERE rowid IN (SELECT source_id FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE tag = '".$db->escape($tag)."' AND source_type='thirdparty' AND source_id is not null)"; $resql=$db->query($sql); if (! $resql) dol_print_error($db); - // Update status communication of contact prospect (old data) + // Update status communication of contact prospect (old usage) $sql = "UPDATE ".MAIN_DB_PREFIX."socpeople SET no_email=1 WHERE rowid IN (SELECT source_id FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE tag = '".$db->escape($tag)."' AND source_type='contact' AND source_id is not null)"; $resql=$db->query($sql); if (! $resql) dol_print_error($db); + */ - // Update status communication of contact prospect (old data) + // Update status communication of email (new usage) $sql = "INSERT INTO ".MAIN_DB_PREFIX."mailing_unsubscribe (date_creat, entity, email) VALUES ('".$db->idate(dol_now())."', ".$obj->entity.", '".$obj->email."')"; $resql=$db->query($sql); diff --git a/htdocs/webservices/server_contact.php b/htdocs/webservices/server_contact.php index 9ffde3cdf80..edb429af0d3 100644 --- a/htdocs/webservices/server_contact.php +++ b/htdocs/webservices/server_contact.php @@ -105,7 +105,6 @@ $contact_fields = array( 'birthday' => array('name'=>'birthday','type'=>'xsd:string'), 'default_lang' => array('name'=>'default_lang','type'=>'xsd:string'), 'note' => array('name'=>'note','type'=>'xsd:string'), - 'no_email' => array('name'=>'no_email','type'=>'xsd:string'), 'ref_facturation' => array('name'=>'ref_facturation','type'=>'xsd:string'), 'ref_contrat' => array('name'=>'ref_contrat','type'=>'xsd:string'), 'ref_commande' => array('name'=>'ref_commande','type'=>'xsd:string'), @@ -295,7 +294,6 @@ function getContact($authentication,$id,$ref_ext) 'birthday' => $contact->birthday, 'default_lang' => $contact->default_lang, 'note' => $contact->note, - 'no_email' => $contact->no_email, 'ref_facturation' => $contact->ref_facturation, 'ref_contrat' => $contact->ref_contrat, 'ref_commande' => $contact->ref_commande, @@ -406,7 +404,6 @@ function createContact($authentication,$contact) $newobject->birthday=$contact['birthday']; $newobject->default_lang=$contact['default_lang']; $newobject->note=$contact['note']; - $newobject->no_email=$contact['no_email']; $newobject->ref_facturation=$contact['ref_facturation']; $newobject->ref_contrat=$contact['ref_contrat']; $newobject->ref_commande=$contact['ref_commande']; @@ -496,7 +493,7 @@ function getContactsForThirdParty($authentication,$idthirdparty) $sql.= " c.fk_departement,"; $sql.= " c.birthday,"; $sql.= " c.poste, c.phone, c.phone_perso, c.phone_mobile, c.fax, c.email, c.jabberid,"; - //$sql.= " c.priv, c.note, c.default_lang, c.no_email, c.canvas,"; + //$sql.= " c.priv, c.note, c.default_lang, c.canvas,"; $sql.= " co.label as country, co.code as country_code,"; $sql.= " d.nom as state, d.code_departement as state_code,"; $sql.= " u.rowid as user_id, u.login as user_login,"; @@ -557,7 +554,6 @@ function getContactsForThirdParty($authentication,$idthirdparty) 'birthday' => $contact->birthday?$contact->birthday:'', 'default_lang' => $contact->default_lang?$contact->default_lang:'', 'note' => $contact->note?$contact->note:'', - 'no_email' => $contact->no_email?$contact->no_email:'', 'ref_facturation' => $contact->ref_facturation?$contact->ref_facturation:'', 'ref_contrat' => $contact->ref_contrat?$contact->ref_contrat:'', 'ref_commande' => $contact->ref_commande?$contact->ref_commande:'', From a107d16338d3d5c2d0710832d037eb26952563ff Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 09:52:00 +0100 Subject: [PATCH 747/769] Revert "clean and update code" This reverts commit 68de0ba93b0a0efc86640c7d08540b7dfe7bd014. --- htdocs/comm/mailing/cibles.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index 57d6adc1ba9..cc920e3d124 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -329,14 +329,16 @@ if ($object->fetch($id) >= 0) // Si le module mailing est qualifie if ($qualified) { + $var = ! $var; + if ($allowaddtarget) { - print ''; + print ''; print ''; } else { - print '
'; + print '
'; } print '
'; From 5ec9a1ca7fa85b4006e50e6779eacb19c22d4766 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 10:15:13 +0100 Subject: [PATCH 748/769] Remove deprecated parameter --- htdocs/comm/mailing/cibles.php | 8 ++------ .../core/modules/mailings/contacts1.modules.php | 3 +-- htdocs/core/modules/mailings/example.modules.php | 3 +-- htdocs/core/modules/mailings/fraise.modules.php | 8 +------- htdocs/core/modules/mailings/pomme.modules.php | 8 +------- .../modules/mailings/thirdparties.modules.php | 3 +-- .../thirdparties_services_expired.modules.php | 16 ++++++++-------- .../core/modules/mailings/xinputfile.modules.php | 3 +-- .../core/modules/mailings/xinputuser.modules.php | 3 +-- .../mailinglist_mymodule_myobject.modules.php | 10 ++++------ 10 files changed, 21 insertions(+), 44 deletions(-) diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index cc920e3d124..84c1f5954b9 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -72,7 +72,7 @@ $object = new Mailing($db); if ($action == 'add') { - $module=GETPOST("module"); + $module=GETPOST("module",'alpha'); $result=-1; foreach ($modulesdir as $dir) @@ -89,14 +89,10 @@ if ($action == 'add') { require_once $file; - // We fill $filtersarray. Using this variable is now deprecated. Kept for backward compatibility. - $filtersarray=array(); - if (isset($_POST["filter"])) $filtersarray[0]=$_POST["filter"]; - // Add targets into database $obj = new $classname($db); dol_syslog("Call add_to_target on class ".$classname); - $result=$obj->add_to_target($id,$filtersarray); + $result=$obj->add_to_target($id); } } if ($result > 0) diff --git a/htdocs/core/modules/mailings/contacts1.modules.php b/htdocs/core/modules/mailings/contacts1.modules.php index 7a4d53172f4..588d61faf5e 100644 --- a/htdocs/core/modules/mailings/contacts1.modules.php +++ b/htdocs/core/modules/mailings/contacts1.modules.php @@ -331,10 +331,9 @@ class mailing_contacts1 extends MailingTargets * Ajoute destinataires dans table des cibles * * @param int $mailing_id Id of emailing - * @param array $filtersarray Optional filter data (deprecated) * @return int <0 si erreur, nb ajout si ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable global $conf, $langs; diff --git a/htdocs/core/modules/mailings/example.modules.php b/htdocs/core/modules/mailings/example.modules.php index 0af52dc5bd2..cd0a0ee9d5a 100644 --- a/htdocs/core/modules/mailings/example.modules.php +++ b/htdocs/core/modules/mailings/example.modules.php @@ -61,10 +61,9 @@ class mailing_example extends MailingTargets * This is the main function that returns the array of emails * * @param int $mailing_id Id of mailing. No need to use it. - * @param array $filtersarray If you used the formFilter function. Empty otherwise. * @return int <0 if error, number of emails added if ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable $target = array(); diff --git a/htdocs/core/modules/mailings/fraise.modules.php b/htdocs/core/modules/mailings/fraise.modules.php index 43798799acd..151d828aa61 100644 --- a/htdocs/core/modules/mailings/fraise.modules.php +++ b/htdocs/core/modules/mailings/fraise.modules.php @@ -225,17 +225,11 @@ class mailing_fraise extends MailingTargets * Ajoute destinataires dans table des cibles * * @param int $mailing_id Id of emailing - * @param array $filtersarray Param to filter sql request. Deprecated. Should use $_POST instead. * @return int < 0 si erreur, nb ajout si ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable - // Deprecation warning - if ($filtersarray) { - dol_syslog(__METHOD__ . ": filtersarray parameter is deprecated", LOG_WARNING); - } - global $langs,$_POST; // Load translation files required by the page diff --git a/htdocs/core/modules/mailings/pomme.modules.php b/htdocs/core/modules/mailings/pomme.modules.php index b2477c1fd55..91539359d6e 100644 --- a/htdocs/core/modules/mailings/pomme.modules.php +++ b/htdocs/core/modules/mailings/pomme.modules.php @@ -151,17 +151,11 @@ class mailing_pomme extends MailingTargets * Ajoute destinataires dans table des cibles * * @param int $mailing_id Id of emailing - * @param array $filtersarray Requete sql de selection des destinataires * @return int < 0 si erreur, nb ajout si ok */ - function add_to_target($mailing_id, $filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable - // Deprecation warning - if ($filtersarray) { - dol_syslog(__METHOD__ . ": filtersarray parameter is deprecated", LOG_WARNING); - } - global $conf, $langs; $langs->load("companies"); diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/htdocs/core/modules/mailings/thirdparties.modules.php index 49205cf6f80..5465b0af5c3 100644 --- a/htdocs/core/modules/mailings/thirdparties.modules.php +++ b/htdocs/core/modules/mailings/thirdparties.modules.php @@ -57,10 +57,9 @@ class mailing_thirdparties extends MailingTargets * This is the main function that returns the array of emails * * @param int $mailing_id Id of mailing. No need to use it. - * @param array $filtersarray If you used the formFilter function. Empty otherwise. * @return int <0 if error, number of emails added if ok */ - function add_to_target($mailing_id, $filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable global $conf, $langs; diff --git a/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php b/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php index 91bd5127c1f..fc57a364c9d 100644 --- a/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php +++ b/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php @@ -82,26 +82,26 @@ class mailing_thirdparties_services_expired extends MailingTargets * This is the main function that returns the array of emails * * @param int $mailing_id Id of mailing. No need to use it. - * @param array $filtersarray If you used the formFilter function. Empty otherwise. * @return int <0 if error, number of emails added if ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable - $target = array(); - - // ----- Your code start here ----- + $key=GETPOST('filter','int'); $cibles = array(); $j = 0; $product=''; - foreach($filtersarray as $key) + if ($key == '0') { - if ($key == '0') return "Error: You must choose a filter"; - $product=$this->arrayofproducts[$key]; + $this->error = "Error: You must choose a filter"; + $this->errors[] = $this->error; + return $this->error; } + $product=$this->arrayofproducts[$key]; + $now=dol_now(); // La requete doit retourner: id, email, name diff --git a/htdocs/core/modules/mailings/xinputfile.modules.php b/htdocs/core/modules/mailings/xinputfile.modules.php index 7de27a0c753..a4caef12af8 100644 --- a/htdocs/core/modules/mailings/xinputfile.modules.php +++ b/htdocs/core/modules/mailings/xinputfile.modules.php @@ -115,10 +115,9 @@ class mailing_xinputfile extends MailingTargets * Ajoute destinataires dans table des cibles * * @param int $mailing_id Id of emailing - * @param array $filtersarray Requete sql de selection des destinataires * @return int < 0 si erreur, nb ajout si ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable global $conf,$langs,$_FILES; diff --git a/htdocs/core/modules/mailings/xinputuser.modules.php b/htdocs/core/modules/mailings/xinputuser.modules.php index 2364eeb08ef..bcbf5d9a41b 100644 --- a/htdocs/core/modules/mailings/xinputuser.modules.php +++ b/htdocs/core/modules/mailings/xinputuser.modules.php @@ -113,10 +113,9 @@ class mailing_xinputuser extends MailingTargets * Ajoute destinataires dans table des cibles * * @param int $mailing_id Id of emailing - * @param array $filtersarray Requete sql de selection des destinataires * @return int < 0 si erreur, nb ajout si ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable global $conf,$langs,$_FILES; diff --git a/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php b/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php index 545e53d350a..460df7e96bf 100644 --- a/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php +++ b/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php @@ -97,14 +97,12 @@ class mailing_mailinglist_mymodule_myobject extends MailingTargets * This is the main function that returns the array of emails * * @param int $mailing_id Id of emailing - * @param array $filtersarray Requete sql de selection des destinataires * @return int <0 if error, number of emails added if ok */ - function add_to_target($mailing_id,$filtersarray=array()) + function add_to_target($mailing_id) { // phpcs:enable $target = array(); - $cibles = array(); $j = 0; @@ -114,7 +112,7 @@ class mailing_mailinglist_mymodule_myobject extends MailingTargets if (! empty($_POST['filter']) && $_POST['filter'] != 'none') $sql.= " AND status = '".$this->db->escape($_POST['filter'])."'"; $sql.= " ORDER BY email"; - // Stocke destinataires dans cibles + // Stocke destinataires dans target $result=$this->db->query($sql); if ($result) { @@ -129,7 +127,7 @@ class mailing_mailinglist_mymodule_myobject extends MailingTargets $obj = $this->db->fetch_object($result); if ($old <> $obj->email) { - $cibles[$j] = array( + $target[$j] = array( 'email' => $obj->email, 'name' => $obj->lastname, 'id' => $obj->id, @@ -162,7 +160,7 @@ class mailing_mailinglist_mymodule_myobject extends MailingTargets // ----- Your code end here ----- - return parent::add_to_target($mailing_id, $cibles); + return parent::add_to_target($mailing_id, $target); } From 85af3ad513121d0158e4a9b5983dda227cc4f0df Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 10:24:57 +0100 Subject: [PATCH 749/769] NEW Unsubscribed emails are now stored in dedicated table --- .../core/modules/mailings/modules_mailings.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/htdocs/core/modules/mailings/modules_mailings.php b/htdocs/core/modules/mailings/modules_mailings.php index f7136d4aa63..d3158ba9775 100644 --- a/htdocs/core/modules/mailings/modules_mailings.php +++ b/htdocs/core/modules/mailings/modules_mailings.php @@ -166,7 +166,7 @@ class MailingTargets // This can't be abstract as it is used for some method $this->db->begin(); - // Insert emailing targest from array into database + // Insert emailing targets from array into database $j = 0; $num = count($cibles); foreach ($cibles as $targetarray) @@ -211,6 +211,7 @@ class MailingTargets // This can't be abstract as it is used for some method dol_syslog(get_class($this)."::".__METHOD__.": mailing ".$j." targets added"); + /* //Update the status to show thirdparty mail that don't want to be contacted anymore' $sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles"; $sql .= " SET statut=3"; @@ -219,8 +220,6 @@ class MailingTargets // This can't be abstract as it is used for some method dol_syslog(get_class($this)."::".__METHOD__.": mailing update status to display thirdparty mail that do not want to be contacted"); $result=$this->db->query($sql); - - //Update the status to show contact mail that don't want to be contacted anymore' $sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles"; $sql .= " SET statut=3"; @@ -228,11 +227,23 @@ class MailingTargets // This can't be abstract as it is used for some method $sql .= " INNER JOIN ".MAIN_DB_PREFIX."societe s ON s.rowid=sc.fk_soc WHERE s.fk_stcomm=-1 OR no_email=1))"; dol_syslog(get_class($this)."::".__METHOD__.": mailing update status to display contact mail that do not want to be contacted",LOG_DEBUG); $result=$this->db->query($sql); + */ + $sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles"; + $sql .= " SET statut=3"; + $sql .= " WHERE fk_mailing=".$mailing_id." AND email IN (SELECT mu.email FROM ".MAIN_DB_PREFIX."mailing_unsubscribe AS mu WHERE mu.entity IN ('".getEntity('mailing')."'))"; + + dol_syslog(get_class($this)."::".__METHOD__.":mailing update status to display emails that do not want to be contacted anymore", LOG_DEBUG); + $result=$this->db->query($sql); + if (! $result) + { + dol_print_error($this->db); + } $this->update_nb($mailing_id); $this->db->commit(); + return $j; } From 4aff0b6471752cd753587dd5f9c89f29f8203a11 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 10:52:59 +0100 Subject: [PATCH 750/769] Fix opensurvey --- htdocs/opensurvey/results.php | 16 +++++++++------- htdocs/public/opensurvey/studs.php | 9 ++++++--- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/htdocs/opensurvey/results.php b/htdocs/opensurvey/results.php index f3fd135f16d..34945504943 100644 --- a/htdocs/opensurvey/results.php +++ b/htdocs/opensurvey/results.php @@ -1050,18 +1050,20 @@ $toutsujet = explode(",", $object->sujet); // With old versions, this field was $compteursujet = 0; $meilleursujet = ''; -for ($i = 0; $i < $nbcolonnes; $i++) { - if (isset($sumfor[$i]) === true && isset($meilleurecolonne) === true && $sumfor[$i] == $meilleurecolonne) { +for ($i = 0; $i < $nbcolonnes; $i++) +{ + if (isset($sumfor[$i]) === true && isset($meilleurecolonne) === true && $sumfor[$i] == $meilleurecolonne) + { $meilleursujet.=", "; if ($object->format == "D") { $meilleursujetexport = $toutsujet[$i]; - + //var_dump($toutsujet); if (strpos($toutsujet[$i], '@') !== false) { $toutsujetdate = explode("@", $toutsujet[$i]); - $meilleursujet .= dol_print_date($toutsujetdate[0],'daytext'). ' ('.dol_print_date($toutsujetdate[0],'%A').')' . ' - ' . $toutsujetdate[1]; + $meilleursujet .= dol_print_date($toutsujetdate[0],'daytext'). ($toutsujetdate[0] ? ' ('.dol_print_date($toutsujetdate[0],'%A').')' : '') . ' - ' . $toutsujetdate[1]; } else { - $meilleursujet .= dol_print_date($toutsujet[$i],'daytext'). ' ('.dol_print_date($toutsujet[$i],'%A').')'; + $meilleursujet .= dol_print_date($toutsujet[$i],'daytext'). ($toutsujet[$i] ? ' ('.dol_print_date($toutsujet[$i],'%A').')' : ''); } } else @@ -1083,9 +1085,9 @@ if ($nbofcheckbox >= 2) print '

'."\n"; if (isset($meilleurecolonne) && $compteursujet == "1") { - print " " . $langs->trans('TheBestChoice') . ": ".$meilleursujet." " . $langs->trans("with") . " ".$meilleurecolonne."" . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoice') . ": ".$meilleursujet." " . $langs->trans("with") . " ".$meilleurecolonne." " . $vote_str . ".\n"; } elseif (isset($meilleurecolonne)) { - print " " . $langs->trans('TheBestChoices') . ": ".$meilleursujet." " . $langs->trans("with") . " ".$meilleurecolonne."" . $vote_str . ".\n"; + print " " . $langs->trans('TheBestChoices') . ": ".$meilleursujet." " . $langs->trans("with") . " ".$meilleurecolonne." " . $vote_str . ".\n"; } print '


'."\n"; } diff --git a/htdocs/public/opensurvey/studs.php b/htdocs/public/opensurvey/studs.php index a9bd8a0fb70..acf986bb226 100644 --- a/htdocs/public/opensurvey/studs.php +++ b/htdocs/public/opensurvey/studs.php @@ -95,7 +95,7 @@ if (GETPOST('ajoutcomment','alpha')) } // Add vote -if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // boutonp for chrom, boutonp_x for firefox +if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // boutonp for chrome, boutonp_x for firefox { if (!$canbemodified) accessforbidden(); @@ -160,9 +160,12 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // bout if ($email) { include_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $body = $langs->trans('EmailSomeoneVoted', $nom, getUrlSondage($numsondage, true)); + $application = ($conf->global->MAIN_APPLICATION_TITLE ? $conf->global->MAIN_APPLICATION_TITLE : 'Dolibarr ERP/CRM'); - $cmailfile=new CMailFile("[".MAIN_APPLICATION_TITLE."] ".$langs->trans("Poll").': '.$object->titre, $email, $conf->global->MAIN_MAIL_EMAIL_FROM, $body); + $body = str_replace('\n', '
', $langs->transnoentities('EmailSomeoneVoted', $nom, getUrlSondage($numsondage, true))); + //var_dump($body);exit; + + $cmailfile=new CMailFile("[".$application."] ".$langs->trans("Poll").': '.$object->titre, $email, $conf->global->MAIN_MAIL_EMAIL_FROM, $body, null, null, null, '', '', 0, -1); $result=$cmailfile->sendfile(); } } From 760dcf21ba83a94ddcc4e260c3d488671c6857f6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 13:47:39 +0100 Subject: [PATCH 751/769] FIX Missing generic css --- htdocs/theme/eldy/style.css.php | 8 ++++++++ htdocs/theme/md/style.css.php | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 05fd488e948..4a36fa4a197 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1823,6 +1823,14 @@ foreach($mainmenuusedarray as $val) print "}\n"; } } +$j=0; +while ($j++ < 4) +{ + $url=dol_buildpath($path.'/theme/'.$theme.'/img/menus/generic'.$j."_over.png",1); + print "div.mainmenu.generic".$j." {\n"; + print " background-image: url(".$url.");\n"; + print "}\n"; +} // End of part to add more div class css ?> diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 3422135628c..7e4d8ec11d2 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1828,6 +1828,14 @@ foreach($mainmenuusedarray as $val) print "}\n"; } } +$j=0; +while ($j++ < 4) +{ + $url=dol_buildpath($path.'/theme/'.$theme.'/img/menus/generic'.$j."_over.png",1); + print "div.mainmenu.generic".$j." {\n"; + print " background-image: url(".$url.");\n"; + print "}\n"; +} // End of part to add more div class css ?> From 250725663d705b0e1cadc3f543b424bd33edfa9f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 13:47:39 +0100 Subject: [PATCH 752/769] FIX Missing generic css --- htdocs/theme/eldy/style.css.php | 8 ++++++++ htdocs/theme/md/style.css.php | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 05fd488e948..4a36fa4a197 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1823,6 +1823,14 @@ foreach($mainmenuusedarray as $val) print "}\n"; } } +$j=0; +while ($j++ < 4) +{ + $url=dol_buildpath($path.'/theme/'.$theme.'/img/menus/generic'.$j."_over.png",1); + print "div.mainmenu.generic".$j." {\n"; + print " background-image: url(".$url.");\n"; + print "}\n"; +} // End of part to add more div class css ?> diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 3422135628c..7e4d8ec11d2 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1828,6 +1828,14 @@ foreach($mainmenuusedarray as $val) print "}\n"; } } +$j=0; +while ($j++ < 4) +{ + $url=dol_buildpath($path.'/theme/'.$theme.'/img/menus/generic'.$j."_over.png",1); + print "div.mainmenu.generic".$j." {\n"; + print " background-image: url(".$url.");\n"; + print "}\n"; +} // End of part to add more div class css ?> From 98c14efa78ef9e1c8fdc3629dbd6d9835cae8cfd Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 14:10:20 +0100 Subject: [PATCH 753/769] Fix missing picto --- htdocs/theme/md/img/menus/generic1.png | Bin 133 -> 570 bytes htdocs/theme/md/img/menus/generic1_over.png | Bin 0 -> 486 bytes htdocs/theme/md/img/menus/generic2.png | Bin 133 -> 570 bytes htdocs/theme/md/img/menus/generic2_over.png | Bin 0 -> 548 bytes htdocs/theme/md/img/menus/generic3.png | Bin 133 -> 570 bytes htdocs/theme/md/img/menus/generic3_over.png | Bin 0 -> 486 bytes htdocs/theme/md/img/menus/generic4.png | Bin 133 -> 570 bytes htdocs/theme/md/img/menus/generic4_over.png | Bin 0 -> 486 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 htdocs/theme/md/img/menus/generic1_over.png create mode 100644 htdocs/theme/md/img/menus/generic2_over.png create mode 100644 htdocs/theme/md/img/menus/generic3_over.png create mode 100644 htdocs/theme/md/img/menus/generic4_over.png diff --git a/htdocs/theme/md/img/menus/generic1.png b/htdocs/theme/md/img/menus/generic1.png index b51ce3ed95a437af48d672cb4b8494807587c080..39f808bed32f27c7d591d2e68e170ee96468356b 100644 GIT binary patch literal 570 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?`XeJfkzEgKWroxlsyxRP*3bOO7PRLHVh5B4-HKdZBWO-EYDbZd43|BdSh)=a+78s?*nvSYh+ zU}C;r_LJ=m#t*JspB8eYAv1UOst3<6w%?Jr``y57dsb_9$Bcwvmpqr0XqTk6}LjodY}Ekti%cR>yn?%_pxT%nIX%f*6>cC^FE{avej=wKQ5T|;QOML@*NQhbFNQ4 z%Ovl}R%N=6&8<;SS2<+gW__moeV>+2J8AoU%F7emC4b5vbQIsgZ7L84igiy{KbLh* G2~7Z_uj}Ff literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1A5Ry@5R21q&u~5;q+UmdnXs1e(j>>FVdQ&MBb@07N}3VE_OC diff --git a/htdocs/theme/md/img/menus/generic1_over.png b/htdocs/theme/md/img/menus/generic1_over.png new file mode 100644 index 0000000000000000000000000000000000000000..adfa8c1599b9c2b74e15d0b86e5cba6dfbe8587a GIT binary patch literal 486 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?if!v#l>^8Umr0u{387!;VsMgq7~=$b(UP6Ti&X<-Ic9C+F;Y{zHhH(ZWm89 z3enS95<2PAi4Rh%W-jU7DjcHrP2JRVZR673pv%RM+l|9#&F@dre(}3~uc2+(y|q>o zSN=@hJ%Ks=`L^vZfBl~OUQ71gLp0RRbAQf+%&Ag!oIW1&b8c-9S29YA>}TFO(=_0c za_q<6wLg6p+6d2FexA>UH^(@QHU6@+edKJh%=KRtd(-Qty!`N==O6Q5>Ds50%W@q- OG34p$=d#Wzp$PyNUC@aD literal 0 HcmV?d00001 diff --git a/htdocs/theme/md/img/menus/generic2.png b/htdocs/theme/md/img/menus/generic2.png index b51ce3ed95a437af48d672cb4b8494807587c080..f4dfc5f360a87341fd9e6a59f10bc733c68028ee 100644 GIT binary patch literal 570 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?&`c`6eW&h%Oob=M$&=N7_nyQF`MYFDKH7{u|d1teJeDHOzV1N9zqM z4n`>NXMA%dQ{Ijt+067mm&j|Ef2Y5-*|JPJP<7%+vEws?slG9?#~Vd9FdWgDWXE>t zz{GsL>?hkBj2~RNJ}u-(LuT&mRS%wDY`-IK_q&1F_N>WTt$*DX8t25R&EpBcJeij|| z+0P6F^*;N7S&0+s*Cjuj?_K+O=Y2-;WvkzWeq1o^!S_Wg~5;q+UmdnXs1e(j>>FVdQ&MBb@07N}3VE_OC diff --git a/htdocs/theme/md/img/menus/generic2_over.png b/htdocs/theme/md/img/menus/generic2_over.png new file mode 100644 index 0000000000000000000000000000000000000000..c8e58fc222091713ae13ff57f13fef53b96a4511 GIT binary patch literal 548 zcmV+<0^9wGP)Px#24YJ`L;wH)0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^=8 z0UbDk&Ws2E00E>)L_t(o!|j>dO~Wu0hQ9z(ctC0e0}#XjWCOYZY*5&s8_*398)SsC zLD?YPpnV2J5lH2JcsZ3Kgo>RwH|irDwY3`iv;F(G>jol1TVsP3hlj5#wo0nE3&i?< zs@W*`o@S&O1093sCcqpRYp2G!J0~JG*%OgOMCRf)QV|)5NY{oZu&~Mm=$9?%k4V-H`#&hw(Pdav@NjFJB>LX}>qKPkgMI`gT3 mU;4Tz(s%A_P)Px#24YJ`L;wH)0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^=8 z0UsIsk^a;G00Fv5L_t(o!|jQgSZP0byDzW z=znlk2M2#a9qg*8pt#sU1S<#%R*Q?Z9tY2GDPnWm+qP#`_J%zKlE8Y%#B)LBFqKVQ9mjzb zumHp?l0F8~z>#k*Yvi|pGvL(MmQ=)mX>FUT;OEhY+#f#sfCD|vDw~LyU{geHL}Xh; zVuoXaVnsyKI*-v9Q_X+thFwx*ffL{yxCIJTNM%GZ3CsgM+FrE1VM}FBhZHGa+ohHT z4bE@9z_8W_6y+B9Gz*&f|7_G(pQ+H-%CQ?H^PjEyS6Qm#N2(#RY3j^7**Mv>Q|4P* z^G-HSHcmD!^G@?lHcmESkbkaY=ATSE2DxY*1SWv)5Q*Ob7pAN1Rq>#f;P;}bABb2W zoY$4j0v|yJdNsZVMu9FZBUHY#F9L7A@}-u^J@=I9$hR5!AHhKvxC=E9UH||907*qo IM6N<$f;5xuNdN!< literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1A5Ry@5R21q&u~5;q+UmdnXs1e(j>>FVdQ&MBb@07N}3VE_OC diff --git a/htdocs/theme/md/img/menus/generic3_over.png b/htdocs/theme/md/img/menus/generic3_over.png new file mode 100644 index 0000000000000000000000000000000000000000..0672d20bce4bb1776f71dc8038e32a8382f5ae87 GIT binary patch literal 486 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?5iL3@)IZ1~;#a?Jzp;5@B{K!=^C8I!mt3EpOG_?#fmmZLn!}-?!H?w~Hql zh3M%l37z!m#0RNWGne#k6%JARrfzDwwsC21(B)#s?Z)A==JzLQzxdt0*U+}?-dd}P zD}Sc$p1>UbeB1VyzkbhsuO)l$AsTAuxj$z@=2WRVP9Kl?Ik&clD;cFl_A_stX&P`z zIrd}k+MhlPZG>koKhI~wn`4~D8h=^ZK618L=K8OSz3FvRUViw`^N;zjbnVm0Wx0-^ O81i)Wb6Mw<&;$S`U(e_O literal 0 HcmV?d00001 diff --git a/htdocs/theme/md/img/menus/generic4.png b/htdocs/theme/md/img/menus/generic4.png index b51ce3ed95a437af48d672cb4b8494807587c080..5f9240240da3f037ca1918367f6b6489b972c260 100644 GIT binary patch literal 570 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?&`c`6eW&h%Oob=M$&=N7_nyQF`MYFDKH7{u|d1teJeDHOzV1N9zqM z4n`>NXMA%dQ{Ijt+067mm&j|Ef2Y5-*|JPJP<7%+vEws?slG9?#~Vd9FdWgDWXE>t zz{GsL>?hkBj2~RNJ}u-(LuT&mRS%wDY`-IK_q&1F_N>WTt$*DX8t25R&EpBcJeij|| z+0P6F^*;N7S&0+s*Cjuj?_K+O=Y2-;WvkzWeq1o^!S_Wg~5;q+UmdnXs1e(j>>FVdQ&MBb@07N}3VE_OC diff --git a/htdocs/theme/md/img/menus/generic4_over.png b/htdocs/theme/md/img/menus/generic4_over.png new file mode 100644 index 0000000000000000000000000000000000000000..6a4d7b1acce5db322cde66f1e2fad71876449e3f GIT binary patch literal 486 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?5iL3@)IZ1~;#a?Jzp;5@B{K!=^C8I!mt3EpOG_?#fmmZLn!}-?!H?w~Hql zh3M%l37z!m#0RNWGne#k6%JARrfzDwwsC21(B)#s?Z)A==JzLQzxdt0*U+}?-dd}P zD}Sc$p1>UbeB1VyzkbhsuO)l$AsTAuxj$z@=2WRVP9Kl?Ik&clD;cFl_A_stX&P`z zIrd}k+MhlPZG>koKhI~wn`4~D8h=^ZK618L=K8OSz3FvRUViw`^N;zjbnVm0Wx0-^ O81i)Wb6Mw<&;$Tu*w1GG literal 0 HcmV?d00001 From 024e1673e36d2d5a1aa919bac5639d1ff008197d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 18:18:47 +0100 Subject: [PATCH 754/769] Fix merge lost --- htdocs/ticket/class/ticket.class.php | 54 +++++++++++----------------- 1 file changed, 21 insertions(+), 33 deletions(-) diff --git a/htdocs/ticket/class/ticket.class.php b/htdocs/ticket/class/ticket.class.php index 2ac28f6b81b..655fc7eeeaa 100644 --- a/htdocs/ticket/class/ticket.class.php +++ b/htdocs/ticket/class/ticket.class.php @@ -1495,15 +1495,17 @@ class Ticket extends CommonObject * 1- create entry into database for message storage * 2- if trigger, send an email to ticket contacts * - * @param User $user User that create - * @param string $message Log message - * @param int $noemail 0=send email after, 1=disable emails - * @return int <0 if KO, >0 if OK + * @param User $user User that create + * @param string $message Log message + * @param int $noemail 0=send email after, 1=disable emails + * @return int <0 if KO, >0 if OK */ public function createTicketLog(User $user, $message, $noemail = 0) { global $conf, $langs; + $error = 0; + $this->db->begin(); // Clean parameters @@ -1515,37 +1517,23 @@ class Ticket extends CommonObject return -1; } - // Insert request - $sql = "INSERT INTO " . MAIN_DB_PREFIX . "ticket_logs("; - $sql .= "entity,"; - $sql .= "datec,"; - $sql .= "fk_track_id,"; - $sql .= "fk_user_create,"; - $sql .= "message"; - $sql .= ") VALUES ("; - $sql .= " " . $conf->entity . ","; - $sql .= " '" . $this->db->idate(dol_now()) . "',"; - $sql .= " '" . $this->db->escape($this->track_id) . "',"; - $sql .= " " . ($user->id > 0 ? $user->id : 'NULL') . ","; - $sql .= " '" . $this->db->escape($message) . "'"; - $sql .= ")"; + // TODO Should call the trigger TICKET_MODIFY with $this->context with all data to record event + // so the event is stored by the agenda/event trigger - dol_syslog(get_class($this) . "::create_ticket_log sql=" . $sql, LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) { - if ($conf->global->TICKET_ACTIVATE_LOG_BY_EMAIL && !$noemail) { - $this->sendLogByEmail($user, $message); - } + if (!$error) { + $this->db->commit(); - if (!$error) { - $this->db->commit(); - return 1; - } - } else { - $this->db->rollback(); - $this->error = "Error " . $this->db->lasterror(); - dol_syslog(get_class($this) . "::create_ticket_log " . $this->error, LOG_ERR); - return -1; + if ($conf->global->TICKET_ACTIVATE_LOG_BY_EMAIL && !$noemail) { + $this->sendLogByEmail($user, $message); + } + + return 1; + } + else + { + $this->db->rollback(); + + return -1; } } From 919443a101fdfea3349f468193a34488aa4846b3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 11 Dec 2018 18:23:45 +0100 Subject: [PATCH 755/769] Fix merge lost --- htdocs/ticket/class/ticket.class.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/ticket/class/ticket.class.php b/htdocs/ticket/class/ticket.class.php index 655fc7eeeaa..3bd35199d2f 100644 --- a/htdocs/ticket/class/ticket.class.php +++ b/htdocs/ticket/class/ticket.class.php @@ -1643,6 +1643,8 @@ class Ticket extends CommonObject } // Cache deja charge + // TODO Read the table llx_actioncomm + /* $sql = "SELECT rowid, fk_user_create, datec, message"; $sql .= " FROM " . MAIN_DB_PREFIX . "ticket_logs"; $sql .= " WHERE fk_track_id ='" . $this->db->escape($this->track_id) . "'"; @@ -1665,7 +1667,9 @@ class Ticket extends CommonObject $this->error = "Error " . $this->db->lasterror(); dol_syslog(get_class($this) . "::loadCacheLogsTicket " . $this->error, LOG_ERR); return -1; - } + }*/ + + return 0; } /** From 946d55a7bb9c1b3b3724923c3a9ef5bcc5fafeab Mon Sep 17 00:00:00 2001 From: BENKE Charlene <1179011+defrance@users.noreply.github.com> Date: Wed, 12 Dec 2018 00:41:11 +0100 Subject: [PATCH 756/769] fk_default_warehouse not defined --- htdocs/product/class/product.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 6d3a0724006..ae6d193b80f 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -310,6 +310,7 @@ class Product extends CommonObject public $oldcopy; + public $fk_default_warehouse; /** * @var int ID */ From 13f54766781cd961651a0d0314249ba69d75c71f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 11:50:10 +0100 Subject: [PATCH 757/769] Responsive --- htdocs/admin/mails_templates.php | 82 ++++++++++++++++---------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php index a9068544e35..79614cbd3a0 100644 --- a/htdocs/admin/mails_templates.php +++ b/htdocs/admin/mails_templates.php @@ -448,8 +448,6 @@ $sql.=$db->plimit($listlimit+1,$offset); $fieldlist=explode(',',$tabfield[$id]); // Form to add a new line -$alabelisused=0; - print ''; print ''; print ''; @@ -461,38 +459,37 @@ print ''; print ''; foreach ($fieldlist as $field => $value) { - // Determine le nom du champ par rapport aux noms possibles - // dans les dictionnaires de donnees - $valuetoshow=ucfirst($fieldlist[$field]); // Par defaut - $valuetoshow=$langs->trans($valuetoshow); // try to translate - $align="left"; - if ($fieldlist[$field]=='fk_user') { $valuetoshow=$langs->trans("Owner");} - if ($fieldlist[$field]=='lang') { $valuetoshow=(empty($conf->global->MAIN_MULTILANGS) ? ' ' : $langs->trans("Language")); } - if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); } - if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); } - if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$langs->trans("Code"); } - if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } - if ($fieldlist[$field]=='private') { $align='center'; } - if ($fieldlist[$field]=='position') { $align='center'; } + // Determine le nom du champ par rapport aux noms possibles + // dans les dictionnaires de donnees + $valuetoshow=ucfirst($fieldlist[$field]); // Par defaut + $valuetoshow=$langs->trans($valuetoshow); // try to translate + $align="left"; + if ($fieldlist[$field]=='fk_user') { $valuetoshow=$langs->trans("Owner");} + if ($fieldlist[$field]=='lang') { $valuetoshow=(empty($conf->global->MAIN_MULTILANGS) ? ' ' : $langs->trans("Language")); } + if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); } + if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); } + if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$langs->trans("Code"); } + if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } + if ($fieldlist[$field]=='private') { $align='center'; } + if ($fieldlist[$field]=='position') { $align='center'; } - if ($fieldlist[$field]=='topic') { $valuetoshow=''; } - if ($fieldlist[$field]=='joinfiles') { $valuetoshow=''; } - if ($fieldlist[$field]=='content') { $valuetoshow=''; } - if ($fieldlist[$field]=='content_lines') { $valuetoshow=''; } + if ($fieldlist[$field]=='topic') { $valuetoshow=''; } + if ($fieldlist[$field]=='joinfiles') { $valuetoshow=''; } + if ($fieldlist[$field]=='content') { $valuetoshow=''; } + if ($fieldlist[$field]=='content_lines') { $valuetoshow=''; } - if ($valuetoshow != '') - { - print ''; - } - if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') $alabelisused=1; + if ($valuetoshow != '') + { + print ''; + } } print ''; print ""; +// Show fields for topic, join files and body $fieldsforcontent = array('topic', 'joinfiles', 'content'); if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) { $fieldsforcontent = array('content','content_lines'); } foreach ($fieldsforcontent as $tmpfieldlist) @@ -631,11 +629,11 @@ if ($resql) $filterfound=0; foreach ($fieldlist as $field => $value) { - if ($value == 'label') print ''; + if ($value == 'label') print ''; elseif ($value == 'lang') { print ''; } elseif ($value == 'fk_user') @@ -644,13 +642,13 @@ if ($resql) $restrictid=array(); if (! $user->admin) $restrictid=array($user->id); //var_dump($restrictid); - print $form->select_dolusers($search_fk_user, 'search_fk_user', 1, null, 0, 'hierarchyme', null, 0, 0, 1, '', 0, '', 'maxwidth200'); + print $form->select_dolusers($search_fk_user, 'search_fk_user', 1, null, 0, 'hierarchyme', null, 0, 0, 1, '', 0, '', 'maxwidth100'); print ''; } elseif ($value == 'topic') print ''; elseif ($value == 'type_template') { - print ''; + print ''; } elseif (! in_array($value, array('content', 'content_lines'))) print ''; } @@ -672,6 +670,7 @@ if ($resql) $align="left"; $sortable=1; $valuetoshow=''; + $forcenowrap=1; /* $tmparray=getLabelOfField($fieldlist[$field]); $showfield=$tmp['showfield']; @@ -689,7 +688,7 @@ if ($resql) if ($fieldlist[$field]=='private') { $align='center'; } if ($fieldlist[$field]=='position') { $align='center'; } - if ($fieldlist[$field]=='joinfiles') { $valuetoshow=$langs->trans("FilesAttachedToEmail"); $align='center'; } + if ($fieldlist[$field]=='joinfiles') { $valuetoshow=$langs->trans("FilesAttachedToEmail"); $align='center'; $forcenowrap=0; } if ($fieldlist[$field]=='content') { $valuetoshow=$langs->trans("Content"); $showfield=0;} if ($fieldlist[$field]=='content_lines') { $valuetoshow=$langs->trans("ContentLines"); $showfield=0; } @@ -698,8 +697,8 @@ if ($resql) { if (! empty($tabhelp[$id][$value])) { - if (in_array($value, array('topic'))) $valuetoshow = $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, 'tooltip'.$value); // Tooltip on click - else $valuetoshow = $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, '', 1); // Tooltip on hover + if (in_array($value, array('topic'))) $valuetoshow = $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, 'tooltip'.$value, $forcenowrap); // Tooltip on click + else $valuetoshow = $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, '', $forcenowrap); // Tooltip on hover } print getTitleFieldOfList($valuetoshow, 0, $_SERVER["PHP_SELF"], ($sortable?$fieldlist[$field]:''), ($page?'page='.$page.'&':''), $param, "align=".$align, $sortfield, $sortorder); } @@ -1024,17 +1023,18 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='') } else { - print $form->selectarray('type_template', $elementList, (! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:''), 1, 0, 0, '', 0, 0, 0, '', 'maxwidth200'); + print $form->selectarray('type_template', $elementList, (! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:''), 1, 0, 0, '', 0, 0, 0, '', 'maxwidth150 maxwidth100onsmartphone'); } print ''; } - elseif ($context == 'add' && in_array($fieldlist[$field], array('topic', 'joinfiles', 'content', 'content_lines'))) continue; + elseif ($context == 'add' && in_array($fieldlist[$field], array('topic', 'joinfiles', 'content', 'content_lines'))) continue; elseif ($context == 'edit' && in_array($fieldlist[$field], array('topic', 'joinfiles', 'content', 'content_lines'))) continue; elseif ($context == 'hide' && in_array($fieldlist[$field], array('topic', 'joinfiles', 'content', 'content_lines'))) continue; else { $size=''; $class=''; $classtd=''; if ($fieldlist[$field]=='code') $class='maxwidth100'; + if ($fieldlist[$field]=='label') $class='maxwidth100'; if ($fieldlist[$field]=='private') { $class='maxwidth50'; $classtd='center'; } if ($fieldlist[$field]=='position') { $class='maxwidth50'; $classtd='center'; } if ($fieldlist[$field]=='libelle') $class='quatrevingtpercent'; From c09d454938d71580b260904ede1a5886e634cba9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 12:16:57 +0100 Subject: [PATCH 758/769] Fix status in cron task list --- htdocs/cron/list.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php index 2ddfbee5e8c..c89cfe1895d 100644 --- a/htdocs/cron/list.php +++ b/htdocs/cron/list.php @@ -230,6 +230,7 @@ $sql.= " t.params,"; $sql.= " t.md5params,"; $sql.= " t.module_name,"; $sql.= " t.priority,"; +$sql.= " t.processing,"; $sql.= " t.datelastrun,"; $sql.= " t.datenextrun,"; $sql.= " t.dateend,"; @@ -418,10 +419,9 @@ print "\n"; if ($num > 0) { // Loop on each job - $style='pair'; $now = dol_now(); $i=0; - $totalarray=array(); + while ($i < min($num,$limit)) { $obj = $db->fetch_object($result); @@ -434,6 +434,7 @@ if ($num > 0) $object->label = $obj->label; $object->status = $obj->status; $object->priority = $obj->priority; + $object->processing = $obj->processing; print ''; From 58175b76f26744c34eabd773900c8d12d85aa309 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Wed, 12 Dec 2018 12:17:28 +0100 Subject: [PATCH 759/769] to avoid html issue --- htdocs/core/class/commondocgenerator.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index e3350dbe14a..93b18e97641 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -1028,7 +1028,7 @@ abstract class CommonDocGenerator if(empty($columnText)) return; $pdf->SetXY($this->getColumnContentXStart($colKey),$curY); // Set curent position $colDef = $this->cols[$colKey]; - $pdf->MultiCell( $this->getColumnContentWidth($colKey),2, $columnText,'',$colDef['content']['align']); + $pdf->writeHTMLCell( $this->getColumnContentWidth($colKey),2,$this->getColumnContentXStart($colKey),$curY, $columnText,'',$colDef['content']['align']); } } From a31c4aff524627061e99dad50da2462f7a930234 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 12:21:02 +0100 Subject: [PATCH 760/769] Fix picto for status of cron task --- htdocs/cron/class/cronjob.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index df640576d9a..6873bff157e 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -1338,22 +1338,22 @@ class Cronjob extends CommonObject } elseif ($mode == 2) { - if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4','class="pictostatus"').' '.$langs->trans('Enabled').$moretext; + if ($status == 1) return img_picto($langs->trans('Enabled'),'statut'.($processing?'1':'4'),'class="pictostatus"').' '.$langs->trans('Enabled').$moretext; elseif ($status == 0) return img_picto($langs->trans('Disabled'),'statut5','class="pictostatus"').' '.$langs->trans('Disabled').$moretext; } elseif ($mode == 3) { - if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"'); + if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut'.($processing?'1':'4'),'class="pictostatus"'); elseif ($status == 0) return img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"'); } elseif ($mode == 4) { - if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"').' '.$langs->trans('Enabled').$moretext; + if ($status == 1) return img_picto($langs->trans('Enabled').$moretext,'statut'.($processing?'1':'4'),'class="pictostatus"').' '.$langs->trans('Enabled').$moretext; elseif ($status == 0) return img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"').' '.$langs->trans('Disabled').$moretext; } elseif ($mode == 5) { - if ($status == 1) return $langs->trans('Enabled').$moretext.' '.img_picto($langs->trans('Enabled').$moretext,'statut4','class="pictostatus"'); + if ($status == 1) return $langs->trans('Enabled').$moretext.' '.img_picto($langs->trans('Enabled').$moretext,'statut'.($processing?'1':'4'),'class="pictostatus"'); elseif ($status == 0) return $langs->trans('Disabled').$moretext.' '.img_picto($langs->trans('Disabled').$moretext,'statut5','class="pictostatus"'); } } From ea041693b62efb9397627457fc1b95eb0acd3171 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 12:54:10 +0100 Subject: [PATCH 761/769] Code comment --- htdocs/install/mysql/tables/llx_links.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/tables/llx_links.sql b/htdocs/install/mysql/tables/llx_links.sql index 4d4ab401ba4..7e9fba8e2c5 100644 --- a/htdocs/install/mysql/tables/llx_links.sql +++ b/htdocs/install/mysql/tables/llx_links.sql @@ -15,7 +15,7 @@ -- along with this program. If not, see . -- -- --- Actions commerciales +-- Table to store external URL links to documents -- ======================================================================== create table llx_links From 95660f0671e3379b74c29779b44f56b845c5b062 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 13:01:15 +0100 Subject: [PATCH 762/769] Update Dolibarr schema --- dev/resources/dbmodel/dolibarr_schema.mwb | Bin 296494 -> 279274 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dev/resources/dbmodel/dolibarr_schema.mwb b/dev/resources/dbmodel/dolibarr_schema.mwb index aec0f2d22990c878c2492245549c35213b42d7a5..80d1d612d6555a603e2e33aa7782871e618ba5ef 100644 GIT binary patch literal 279274 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 Km|yf*H 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'; + switch($objp->type_mouvement){ + case "0": + print ''; + break; + case "1": + print ''; + break; + case "2": + print ''; + break; + case "3": + print ''; + break; + } } if (! empty($arrayfields['origin']['checked'])) { From 3484b50511d229a7b7a3fe470be1124532e17e49 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 13 Dec 2018 20:51:45 +0100 Subject: [PATCH 766/769] Update html.form.class.php --- htdocs/core/class/html.form.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index cb9e9860c46..cde19590d4a 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -4895,7 +4895,8 @@ class Form if (is_object($societe_vendeuse) && $societe_vendeuse->id == $mysoc->id && $societe_vendeuse->tva_assuj == "0") { // Override/enable VAT for expense report regardless of global setting - needed if expense report used for business expenses - if (empty ($conf->global->OVERRIDE_VAT_FOR_EXPENSE_REPORT)) { + if (empty($conf->global->OVERRIDE_VAT_FOR_EXPENSE_REPORT)) + { $title=' title="'.$langs->trans('VATIsNotUsed').'"'; $disabled=true; } From 5d5add641b3015efcd9486c9a93edb053d309502 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 14 Dec 2018 09:58:23 +0100 Subject: [PATCH 767/769] Fix scrutinizer --- htdocs/core/class/html.form.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index fce7e0607cd..800fa6e59d1 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -4896,7 +4896,7 @@ class Form if (is_object($societe_vendeuse) && $societe_vendeuse->id == $mysoc->id && $societe_vendeuse->tva_assuj == "0") { // Override/enable VAT for expense report regardless of global setting - needed if expense report used for business expenses - if (empty($conf->global->OVERRIDE_VAT_FOR_EXPENSE_REPORT)) + if (empty($conf->global->OVERRIDE_VAT_FOR_EXPENSE_REPORT)) { $title=' title="'.$langs->trans('VATIsNotUsed').'"'; $disabled=true; From e1baf3ab2be05ec7667a3f356d6d8bfa7329cee3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 14 Dec 2018 10:01:12 +0100 Subject: [PATCH 768/769] Update html.form.class.php --- htdocs/core/class/html.form.class.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 721c1997086..77b36354f15 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -2017,12 +2017,15 @@ class Form $sql = "SELECT "; $sql.= $selectFields . $selectFieldsGrouped; - //Product category - $sql.= ", (SELECT ".MAIN_DB_PREFIX."categorie_product.fk_categorie - FROM ".MAIN_DB_PREFIX."categorie_product - WHERE ".MAIN_DB_PREFIX."categorie_product.fk_product=p.rowid - LIMIT 1 + if (! empty($conf->global->PRODUCT_SORT_BY_CATEGORY)) + { + //Product category + $sql.= ", (SELECT ".MAIN_DB_PREFIX."categorie_product.fk_categorie + FROM ".MAIN_DB_PREFIX."categorie_product + WHERE ".MAIN_DB_PREFIX."categorie_product.fk_product=p.rowid + LIMIT 1 ) AS categorie_product_id "; + } //Price by customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) From fab6dde593351d715168ccd18c6d7259d65f5826 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 14 Dec 2018 10:51:32 +0100 Subject: [PATCH 769/769] Close #9825 --- htdocs/categories/class/categorie.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index fba393edc08..e4d95d490ed 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -1536,7 +1536,7 @@ class Categorie extends CommonObject if (colorIsLight($this->color)) $forced_color='categtextblack'; } - $link = ''; + $link = ''; $linkend=''; $picto='category';
'; - if (! empty($tabhelp[$id][$value]) && preg_match('/^http(s*):/i',$tabhelp[$id][$value])) print ''.$valuetoshow.' '.img_help(1,$valuetoshow).''; - else if (! empty($tabhelp[$id][$value])) - { - if (in_array($value, array('topic'))) print $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, $value); // Tooltip on click - else print $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2); // Tooltip on hover - } - else print $valuetoshow; - print ''; + if (! empty($tabhelp[$id][$value]) && preg_match('/^http(s*):/i',$tabhelp[$id][$value])) print ''.$valuetoshow.' '.img_help(1,$valuetoshow).''; + else if (! empty($tabhelp[$id][$value])) + { + if (in_array($value, array('topic'))) print $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2, $value); // Tooltip on click + else print $form->textwithpicto($valuetoshow, $tabhelp[$id][$value], 1, 'help', '', 0, 2); // Tooltip on hover + } + else print $valuetoshow; + print ''; print ''; @@ -535,6 +532,7 @@ print ''; print '
'; - print $formadmin->select_language($search_lang, 'search_lang', 0, null, 1, 0, 0, 'maxwidth150'); + print $formadmin->select_language($search_lang, 'search_lang', 0, null, 1, 0, 0, 'maxwidth100'); print ''.$form->selectarray('search_type_template', $elementList, $search_type_template, 1, 0, 0, '', 0, 0, 0, '', 'maxwidth200 maxwidth100onsmartphone').''.$form->selectarray('search_type_template', $elementList, $search_type_template, 1, 0, 0, '', 0, 0, 0, '', 'maxwidth100 maxwidth100onsmartphone').'
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

_i6TRN6(6iWUvh0n9v)eslf~S^NX0 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 From 911f343c97f2b85debf4e7bc4951e329525da8b8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 12 Dec 2018 13:01:34 +0100 Subject: [PATCH 763/769] Removed deprecated files --- dev/resources/dbmodel/dolibarr.uml | 12 ------- dev/resources/dbmodel/dolibarr.umldi | 53 ---------------------------- 2 files changed, 65 deletions(-) delete mode 100644 dev/resources/dbmodel/dolibarr.uml delete mode 100644 dev/resources/dbmodel/dolibarr.umldi diff --git a/dev/resources/dbmodel/dolibarr.uml b/dev/resources/dbmodel/dolibarr.uml deleted file mode 100644 index 57078d6668b..00000000000 --- a/dev/resources/dbmodel/dolibarr.uml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/dev/resources/dbmodel/dolibarr.umldi b/dev/resources/dbmodel/dolibarr.umldi deleted file mode 100644 index ff97a2a25b1..00000000000 --- a/dev/resources/dbmodel/dolibarr.umldi +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 1512ba924263d7c23ef8080ee377e3a8a18a74a5 Mon Sep 17 00:00:00 2001 From: Lionel VESSILLER Date: Wed, 12 Dec 2018 14:20:04 +0100 Subject: [PATCH 764/769] Add contact status in category export --- htdocs/core/modules/modCategorie.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/core/modules/modCategorie.class.php b/htdocs/core/modules/modCategorie.class.php index 1006869d69f..f0561757eae 100644 --- a/htdocs/core/modules/modCategorie.class.php +++ b/htdocs/core/modules/modCategorie.class.php @@ -284,6 +284,7 @@ class modCategorie extends DolibarrModules 'p.email' => 'Email', 'p.note_private' => 'NotePrivate', 'p.note_public' => 'NotePublic', + 'p.statut' => 'Status', 's.nom'=>"Name", 's.client'=>"Customer", 's.fournisseur'=>"Supplier", @@ -301,6 +302,7 @@ class modCategorie extends DolibarrModules 'u.description' => "Text", 'p.lastname' => 'Text', 'p.firstname' => 'Text', + 'p.statut'=>"Numeric", 's.nom'=>"Text", 's.status'=>"Text", 's.address'=>"Text", @@ -333,6 +335,7 @@ class modCategorie extends DolibarrModules 'p.email' => 'contact', 'p.note_private' => 'contact', 'p.note_public' => 'contact', + 'p.statut' => 'contact', 's.nom'=>"company", 's.client'=>"company", 's.fournisseur'=>"company", From 3159c3f8d1afb88bfa0cbd4c82b5c2c86c9492f9 Mon Sep 17 00:00:00 2001 From: madx666 Date: Thu, 13 Dec 2018 11:28:49 +0100 Subject: [PATCH 765/769] Change type_mouvement on movement_list --- htdocs/product/stock/movement_list.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index bd5ac4a4345..f6a694c57fa 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -1048,7 +1048,20 @@ if ($resql) if (! empty($arrayfields['m.type_mouvement']['checked'])) { // Type of movement - print '

'.$objp->type_mouvement.''.$langs->trans('StockIncreaseAfterCorrectTransfer').''.$langs->trans('StockDecreaseAfterCorrectTransfer').''.$langs->trans('StockDecrease').''.$langs->trans('StockIncrease').'