Merge branch '3.7' of git@github.com:Dolibarr/dolibarr.git into 3.7
This commit is contained in:
commit
0b766b1f47
@ -36,6 +36,7 @@ before_script:
|
||||
- echo Install phpcs then show installed rules
|
||||
- pyrus install pear/PHP_CodeSniffer
|
||||
- phpenv rehash
|
||||
- phpcs --version
|
||||
- phpcs -i
|
||||
- echo Create dir $(pwd)/htdocs/documents
|
||||
- sudo mkdir -p $(pwd)/htdocs/documents/admin/temp;
|
||||
@ -103,7 +104,7 @@ script:
|
||||
- phpunit -d memory_limit=-1 --configuration test/phpunit/phpunittest.xml test/phpunit/AllTests.php
|
||||
- date
|
||||
# - phpcs -p --warning-severity=0 -s --report-summary --standard=dev/codesniffer/ruleset.xml --tab-width=4 --ignore=/build/html/,/dev/vagrant/,/documents/,/includes/,/test/report/ htdocs/core/class/dolgraph.class.php 2>&1
|
||||
- phpcs -p --warning-severity=0 -s --report-checkstyle --report-summary --standard=dev/codesniffer/ruleset.xml --tab-width=4 --ignore=/build/html/,/dev/vagrant/,/documents/,/includes/,/test/report/ . 2>&1
|
||||
- phpcs -p --warning-severity=0 -s --report-checkstyle --report-summary --standard=dev/codesniffer/ruleset.xml --tab-width=4 --ignore=/htdocs/conf/conf.php,/build/html/,/dev/vagrant/,/documents/,/includes/,/test/report/ . 2>&1
|
||||
- date
|
||||
|
||||
after_script:
|
||||
|
||||
@ -103,6 +103,7 @@ For users:
|
||||
- Fix: [ bug #1469 ] Triggers CONTACT_MODIFY and CONTACT_DELETE duplicates error message
|
||||
- Fix: [ bug #1537 ] Difference between societe.nom and adherent.societe.
|
||||
- Fix: [ bug #1535 ] Supplier invoice Extrafields are not shown
|
||||
- Fix: datepicker first day of week can be monday by setting into display setup
|
||||
|
||||
For users, new experimental module (need to set feature level of instance to experimental to see them):
|
||||
- New: Module Accounting Expert to manage accountancy
|
||||
|
||||
@ -29,12 +29,18 @@ To submit a snapshot for building, we should have a service file with content
|
||||
</services>
|
||||
|
||||
How to have such a service file created automatically ?
|
||||
Click on "Add file", then select mode "Upload From: Remote URL"
|
||||
Enter the Remote URL that should looks like this: http://www.dolibarr.org/files/stable/package_rpm_generic/dolibarr-x.y.v-3.src.rpm
|
||||
|
||||
Then add into advanded - attributes
|
||||
Go into project you want to update. It mught be:
|
||||
- openSUSE Build Service > Projects > Application:ERP:Dolibarr > dolibarr
|
||||
- or your private project
|
||||
|
||||
Once logged, click on "Add file" in section "Source Files", then select mode "Upload From: Remote URL"
|
||||
Keep empty for "Filename", choose "Remote URL" and enter into last field, URL that should looks like this:
|
||||
http://www.dolibarr.org/files/stable/package_rpm_generic/dolibarr-x.y.v-0.3.src.rpm
|
||||
|
||||
Then add into Advanded - Attributes
|
||||
OBS:Screenshots http://www.dolibarr.org/images/dolibarr_screenshot1.png
|
||||
OBS:QualityCategory Testing
|
||||
OBS:QualityCategory Stable|Testing|Development|Private
|
||||
|
||||
|
||||
# Move project into official directory
|
||||
|
||||
@ -6,6 +6,7 @@
|
||||
<exclude-pattern>*/conf.php</exclude-pattern>
|
||||
<exclude-pattern>*/includes/*</exclude-pattern>
|
||||
<exclude-pattern>*/documents/*</exclude-pattern>
|
||||
<exclude-pattern>*/dev/vagrant/*</exclude-pattern>
|
||||
<exclude-pattern>*/custom/*</exclude-pattern>
|
||||
<exclude-pattern>*/nltechno*</exclude-pattern>
|
||||
|
||||
@ -169,6 +170,40 @@
|
||||
<rule ref="PEAR.Commenting.ClassComment.MissingTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing@authorTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing@categoryTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing@licenseTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing@linkTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing@packageTag">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.FunctionComment.SpacingAfterParamType">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.FunctionComment.SpacingAfterParamName">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<!-- TODO Remove this and fix reported errors -->
|
||||
<rule ref="PEAR.Commenting.ClassComment.Missing">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.FunctionComment.MissingReturn">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.FunctionComment.ReturnNotRequired">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Commenting.FunctionComment.Missing">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
|
||||
<!--
|
||||
<rule ref="PEAR.Commenting.FileComment" />
|
||||
@ -226,6 +261,24 @@
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.Indent">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceBeforeOpenBracket">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceAfterOpenBracket">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceBeforeCloseBracket">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.SpaceAfterCloseBracket">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.CloseBracketLine">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
<rule ref="PEAR.Functions.FunctionCallSignature.ContentAfterOpenBracket">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
|
||||
<rule ref="PEAR.Functions.ValidDefaultValue" />
|
||||
|
||||
|
||||
@ -48,7 +48,6 @@ class AdherentStats extends Stats
|
||||
* @param DoliDB $db Database handler
|
||||
* @param int $socid Id third party
|
||||
* @param int $userid Id user for filter
|
||||
* @return AdherentStats
|
||||
*/
|
||||
function __construct($db, $socid=0, $userid=0)
|
||||
{
|
||||
|
||||
@ -113,35 +113,20 @@ $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToM
|
||||
print_fiche_titre($langs->trans("StockSetup"),$linkback,'setup');
|
||||
|
||||
$form=new Form($db);
|
||||
$var=true;
|
||||
print '<table class="noborder" width="100%">';
|
||||
|
||||
print '<tr class="liste_titre">';
|
||||
print " <td>".$langs->trans("Parameters")."</td>\n";
|
||||
print " <td align=\"right\" width=\"160\"> </td>\n";
|
||||
print '</tr>'."\n";
|
||||
|
||||
/*
|
||||
* Formulaire parametres divers
|
||||
*/
|
||||
$disabled='';
|
||||
if (! empty($conf->productbatch->enabled))
|
||||
{
|
||||
$langs->load("productbatch");
|
||||
$disabled=' disabled="disabled"';
|
||||
print info_admin($langs->trans("WhenProductBatchModuleOnOptionAreForced"));
|
||||
}
|
||||
|
||||
$var=!$var;
|
||||
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td width="60%">'.$langs->trans("UserWarehouseAutoCreate").'</td>';
|
||||
|
||||
print '<td width="160" align="right">';
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_USERSTOCK_AUTOCREATE\">";
|
||||
print $form->selectyesno("STOCK_USERSTOCK_AUTOCREATE",$conf->global->STOCK_USERSTOCK_AUTOCREATE,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print '</form>';
|
||||
print "</td>\n";
|
||||
print "</tr>\n";
|
||||
print '<br>';
|
||||
print '</table>';
|
||||
print '<br>';
|
||||
//if (! empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) || ! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT))
|
||||
//{
|
||||
print info_admin($langs->trans("IfYouUsePointOfSaleCheckModule"));
|
||||
//}
|
||||
|
||||
// Title rule for stock decrease
|
||||
print '<table class="noborder" width="100%">';
|
||||
@ -160,8 +145,8 @@ if (! empty($conf->facture->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_BILL\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_BILL",$conf->global->STOCK_CALCULATE_ON_BILL,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_BILL",$conf->global->STOCK_CALCULATE_ON_BILL,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
|
||||
@ -174,8 +159,8 @@ if (! empty($conf->commande->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_VALIDATE_ORDER\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_VALIDATE_ORDER",$conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_VALIDATE_ORDER",$conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
|
||||
@ -188,16 +173,12 @@ if (! empty($conf->expedition->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_SHIPMENT\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SHIPMENT",$conf->global->STOCK_CALCULATE_ON_SHIPMENT,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SHIPMENT",$conf->global->STOCK_CALCULATE_ON_SHIPMENT,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
print '</table>';
|
||||
|
||||
//if (! empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) || ! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT))
|
||||
//{
|
||||
print info_admin($langs->trans("IfYouUsePointOfSaleCheckModule"));
|
||||
//}
|
||||
print '<br>';
|
||||
|
||||
// Title rule for stock increase
|
||||
@ -217,8 +198,8 @@ if (! empty($conf->fournisseur->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_SUPPLIER_BILL\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_BILL",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_BILL,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_BILL",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_BILL,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
|
||||
@ -231,8 +212,8 @@ if (! empty($conf->fournisseur->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
if (! empty($conf->fournisseur->enabled))
|
||||
@ -244,8 +225,8 @@ if (! empty($conf->fournisseur->enabled))
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER\">";
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print $form->selectyesno("STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER",$conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER,1,$disabled);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'"'.$disabled.'>';
|
||||
print "</form>\n</td>\n</tr>\n";
|
||||
}
|
||||
|
||||
@ -334,6 +315,34 @@ if ($virtualdiffersfromphysical)
|
||||
print '</table>';
|
||||
}
|
||||
|
||||
|
||||
$var=true;
|
||||
print '<table class="noborder" width="100%">';
|
||||
|
||||
print '<tr class="liste_titre">';
|
||||
print " <td>".$langs->trans("Other")."</td>\n";
|
||||
print " <td align=\"right\" width=\"160\"> </td>\n";
|
||||
print '</tr>'."\n";
|
||||
|
||||
$var=!$var;
|
||||
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td width="60%">'.$langs->trans("UserWarehouseAutoCreate").'</td>';
|
||||
|
||||
print '<td width="160" align="right">';
|
||||
print "<form method=\"post\" action=\"stock.php\">";
|
||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||
print "<input type=\"hidden\" name=\"action\" value=\"STOCK_USERSTOCK_AUTOCREATE\">";
|
||||
print $form->selectyesno("STOCK_USERSTOCK_AUTOCREATE",$conf->global->STOCK_USERSTOCK_AUTOCREATE,1);
|
||||
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||
print '</form>';
|
||||
print "</td>\n";
|
||||
print "</tr>\n";
|
||||
print '<br>';
|
||||
print '</table>';
|
||||
print '<br>';
|
||||
|
||||
|
||||
llxFooter();
|
||||
|
||||
$db->close();
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
// Instanciation et initialisation de l'objet xmlhttprequest
|
||||
function file (fichier) {
|
||||
function file(fichier) {
|
||||
|
||||
// Instanciation de l'objet pour Mozilla, Konqueror, Opera, Safari, etc ...
|
||||
if (window.XMLHttpRequest) {
|
||||
@ -51,7 +51,7 @@ function file (fichier) {
|
||||
|
||||
|
||||
// Affichage des donnees aTexte dans le bloc identifie par aId
|
||||
function afficheDonnees (aId, aTexte) {
|
||||
function afficheDonnees(aId, aTexte) {
|
||||
|
||||
document.getElementById(aId).innerHTML = aTexte;
|
||||
|
||||
@ -59,7 +59,7 @@ function afficheDonnees (aId, aTexte) {
|
||||
|
||||
|
||||
// aCible : id du bloc de destination; aCode : argument a passer a la page php chargee du traitement et de l'affichage
|
||||
function verifResultat (aCible, aCode) {
|
||||
function verifResultat(aCible, aCode) {
|
||||
if (aCode != '') {
|
||||
|
||||
if (texte = file ('facturation_dhtml.php?code='+escape(aCode))) {
|
||||
@ -76,21 +76,9 @@ function verifResultat (aCible, aCode) {
|
||||
|
||||
|
||||
// Change dynamiquement la classe de l'element ayant l'id aIdElement pour aClasse
|
||||
function setStyle (aIdElement, aClasse) {
|
||||
function setStyle(aIdElement, aClasse) {
|
||||
|
||||
aIdElement.className = aClasse;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
// Calcul et affichage en temps reel des informations sur le produit en cours
|
||||
function modif () {
|
||||
function modif() {
|
||||
|
||||
var prix_unit = parseFloat ( document.getElementById('frmQte').txtPrixUnit.value );
|
||||
var qte = parseFloat ( document.getElementById('frmQte').txtQte.value );
|
||||
@ -71,7 +71,7 @@ function modif () {
|
||||
}
|
||||
|
||||
// Affecte la source de la requete (liste deroulante ou champ texte 'ref') au champ cache
|
||||
function setSource (aSrc) {
|
||||
function setSource(aSrc) {
|
||||
|
||||
document.getElementById('frmFacturation').hdnSource.value = aSrc;
|
||||
document.getElementById('frmFacturation').submit();
|
||||
@ -79,7 +79,7 @@ function setSource (aSrc) {
|
||||
}
|
||||
|
||||
// Verification de la coherence des informations saisies dans le formulaire de choix du nombre d'articles
|
||||
function verifSaisie () {
|
||||
function verifSaisie() {
|
||||
|
||||
if ( document.getElementById('frmQte').txtQte.value ) {
|
||||
|
||||
@ -95,17 +95,17 @@ function verifSaisie () {
|
||||
}
|
||||
|
||||
// Verification de la coherence des informations saisies dans le formulaire de calcul de la difference
|
||||
function verifDifference () {
|
||||
function verifDifference() {
|
||||
|
||||
var du = parseFloat ( document.getElementById('frmDifference').txtDu.value );
|
||||
var encaisse = parseFloat ( document.getElementById('frmDifference').txtEncaisse.value );
|
||||
|
||||
if ( encaisse > du ) {
|
||||
if (encaisse > du) {
|
||||
|
||||
resultat = Math.round ( (encaisse - du) * 100 ) / 100;
|
||||
document.getElementById('frmDifference').txtRendu.value = resultat.toFixed(2);
|
||||
|
||||
} else if ( encaisse == du ) {
|
||||
} else if (encaisse == du) {
|
||||
|
||||
document.getElementById('frmDifference').txtRendu.value = '0';
|
||||
|
||||
@ -118,14 +118,14 @@ function verifDifference () {
|
||||
}
|
||||
|
||||
// Affecte le moyen de paiement (ESP, CB ou CHQ) au champ cache en fonction du bouton clique
|
||||
function verifClic (aChoix) {
|
||||
function verifClic(aChoix) {
|
||||
|
||||
document.getElementById('frmDifference').hdnChoix.value = aChoix;
|
||||
|
||||
}
|
||||
|
||||
// Determination du moyen de paiement, et validation du formulaire si les donnees sont coherentes
|
||||
function verifReglement () {
|
||||
function verifReglement() {
|
||||
|
||||
var choix = document.getElementById('frmDifference').hdnChoix.value;
|
||||
var du = parseFloat (document.getElementById('frmDifference').txtDu.value);
|
||||
@ -172,5 +172,4 @@ function verifReglement () {
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -57,7 +57,7 @@ class ActionComm extends CommonObject
|
||||
var $datef; // Date action end (datep2)
|
||||
var $durationp = -1; // -1=Unkown duration // deprecated
|
||||
var $fulldayevent = 0; // 1=Event on full day
|
||||
var $punctual = 1; // Milestone // TODO Not sure we need this. Milestone is already event with end date = start date
|
||||
var $punctual = 1; // Milestone // deprecated. Milestone is already event with end date = start date
|
||||
var $percentage; // Percentage
|
||||
var $location; // Location
|
||||
|
||||
|
||||
@ -180,7 +180,7 @@ $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as ut ON a.fk_user_action = ut.rowid";
|
||||
if ($usergroup > 0) $sql.= ", ".MAIN_DB_PREFIX."usergroup_user as ugu";
|
||||
$sql.= " WHERE c.id = a.fk_action";
|
||||
$sql.= ' AND a.fk_user_author = u.rowid';
|
||||
$sql.= ' AND a.entity IN ('.getEntity('agenda', 1).')'; // To limit to entity
|
||||
$sql.= ' AND a.entity IN ('.getEntity('agenda', 1).')';
|
||||
if ($actioncode) $sql.=" AND c.code='".$db->escape($actioncode)."'";
|
||||
if ($pid) $sql.=" AND a.fk_project=".$db->escape($pid);
|
||||
if (! $user->rights->societe->client->voir && ! $socid) $sql.= " AND (a.fk_soc IS NULL OR sc.fk_user = " .$user->id . ")";
|
||||
|
||||
@ -610,7 +610,7 @@ else
|
||||
$sql = "SELECT u.rowid, u.lastname as lastname, u.firstname, u.statut, u.login, u.admin, u.entity";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."user as u";
|
||||
if ($usergroup > 0) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."usergroup_user as ug ON u.rowid = ug.fk_user";
|
||||
$sql.= " WHERE u.entity IN (".getEntity('user').")";
|
||||
$sql.= " WHERE u.entity IN (".getEntity('user',1).")";
|
||||
if ($usergroup > 0) $sql.= " AND ug.fk_usergroup = ".$usergroup;
|
||||
if (GETPOST("usertodo","int",3) > 0) $sql.=" AND u.rowid = ".GETPOST("usertodo","int",3);
|
||||
//print $sql;
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?php
|
||||
/* Copyright (C) 2001-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||
* Copyright (C) 2003 Eric Seigne <erics@rycks.com>
|
||||
* Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@ -55,6 +55,7 @@ $result = restrictedArea($user, 'agenda', $socid, '', 'myactions');
|
||||
/*
|
||||
* Actions
|
||||
*/
|
||||
|
||||
if ($action == 'builddoc')
|
||||
{
|
||||
$cat = new CommActionRapport($db, $month, $year);
|
||||
@ -79,7 +80,7 @@ $sql.= " date_format(a.datep, '%Y') as year";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."actioncomm as a,";
|
||||
$sql.= " ".MAIN_DB_PREFIX."user as u";
|
||||
$sql.= " WHERE a.fk_user_author = u.rowid";
|
||||
$sql.= " AND a.entity = ".$conf->entity;
|
||||
$sql.= ' AND a.entity IN ('.getEntity('agenda', 1).')';
|
||||
//$sql.= " AND percent = 100";
|
||||
$sql.= " GROUP BY year, month, df";
|
||||
$sql.= " ORDER BY year DESC, month DESC, df DESC";
|
||||
|
||||
@ -366,6 +366,16 @@ class Conf
|
||||
unset($this->global->CONTACT_USE_SEARCH_TO_SELECT);
|
||||
}
|
||||
|
||||
if (! empty($conf->productbatch->enabled))
|
||||
{
|
||||
$this->global->STOCK_CALCULATE_ON_BILL=0;
|
||||
$this->global->STOCK_CALCULATE_ON_VALIDATE_ORDER=0;
|
||||
$this->global->STOCK_CALCULATE_ON_SHIPMENT=1;
|
||||
$this->global->STOCK_CALCULATE_ON_SUPPLIER_BILL=0;
|
||||
$this->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER=0;
|
||||
$this->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER=1;
|
||||
}
|
||||
|
||||
// conf->currency
|
||||
if (empty($this->global->MAIN_MONNAIE)) $this->global->MAIN_MONNAIE='EUR';
|
||||
$this->currency=$this->global->MAIN_MONNAIE;
|
||||
@ -373,6 +383,9 @@ class Conf
|
||||
// conf->global->ACCOUNTING_MODE = Option des modules Comptabilites (simple ou expert). Defini le mode de calcul des etats comptables (CA,...)
|
||||
if (empty($this->global->ACCOUNTING_MODE)) $this->global->ACCOUNTING_MODE='RECETTES-DEPENSES'; // By default. Can be 'RECETTES-DEPENSES' ou 'CREANCES-DETTES'
|
||||
|
||||
// By default, suppliers objects can be linked to all projects
|
||||
$conf->global->PROJECT_CAN_ALWAYS_LINK_TO_ALL_SUPPLIERS = 1;
|
||||
|
||||
// conf->liste_limit = constante de taille maximale des listes
|
||||
if (empty($this->global->MAIN_SIZE_LISTE_LIMIT)) $this->global->MAIN_SIZE_LISTE_LIMIT=25;
|
||||
$this->liste_limit=$this->global->MAIN_SIZE_LISTE_LIMIT;
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
/* Copyright (C) phpBSM
|
||||
* Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2007 Regis Houssin <regis.houssin@capnetworks.com>
|
||||
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
|
||||
*
|
||||
* This file is a modified version of datepicker.php from phpBSM to fix some
|
||||
* bugs, to add new features and to dramatically increase speed.
|
||||
@ -184,6 +185,19 @@ function displayBox($selectedDate,$month,$year)
|
||||
onClick="loadMonth('<?php echo DOL_URL_ROOT.'/core/' ?>','<?php echo $month?>','<?php echo $year+1?>','<?php echo $xyz ?>','<?php echo $langs->defaultlang ?>')">>></td>
|
||||
</tr>
|
||||
<tr class="dpDayNames">
|
||||
<?php
|
||||
$startday=isset($conf->global->MAIN_START_WEEK)?$conf->global->MAIN_START_WEEK:1;
|
||||
if($startday==1)
|
||||
{?>
|
||||
<td width="14%"><?php echo $langs->trans("ShortMonday") ?></td>
|
||||
<td width="15%"><?php echo $langs->trans("ShortTuesday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortWednesday") ?></td>
|
||||
<td width="15%"><?php echo $langs->trans("ShortThursday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortFriday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortSaturday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortSunday") ?></td>
|
||||
<?php
|
||||
}else {?>
|
||||
<td width="14%"><?php echo $langs->trans("ShortSunday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortMonday") ?></td>
|
||||
<td width="15%"><?php echo $langs->trans("ShortTuesday") ?></td>
|
||||
@ -191,6 +205,8 @@ function displayBox($selectedDate,$month,$year)
|
||||
<td width="15%"><?php echo $langs->trans("ShortThursday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortFriday") ?></td>
|
||||
<td width="14%"><?php echo $langs->trans("ShortSaturday") ?></td>
|
||||
<?php
|
||||
}?>
|
||||
</tr>
|
||||
<?php
|
||||
//print "x ".$thedate." y";
|
||||
|
||||
@ -357,7 +357,6 @@ class DoliDBMysqli extends DoliDB
|
||||
* @return int Nombre de lignes
|
||||
* @see num_rows
|
||||
*/
|
||||
|
||||
function affected_rows($resultset)
|
||||
{
|
||||
// If resultset not provided, we take the last used by connexion
|
||||
|
||||
@ -1028,6 +1028,8 @@ function dol_print_date($time,$format='',$tzoutput='tzserver',$outputlangs='',$e
|
||||
*/
|
||||
function dol_getdate($timestamp,$fast=false)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$usealternatemethod=false;
|
||||
if ($timestamp <= 0) $usealternatemethod=true; // <= 1970
|
||||
if ($timestamp >= 2145913200) $usealternatemethod=true; // >= 2038
|
||||
@ -1039,6 +1041,19 @@ function dol_getdate($timestamp,$fast=false)
|
||||
else
|
||||
{
|
||||
$arrayinfo=getdate($timestamp);
|
||||
|
||||
$startday=isset($conf->global->MAIN_START_WEEK)?$conf->global->MAIN_START_WEEK:1;
|
||||
if($startday==1)
|
||||
{
|
||||
if ($arrayinfo["wday"]==0)
|
||||
{
|
||||
$arrayinfo["wday"]=6;
|
||||
}
|
||||
else
|
||||
{
|
||||
$arrayinfo["wday"]=$arrayinfo["wday"]-1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $arrayinfo;
|
||||
|
||||
@ -67,7 +67,7 @@ class modProductBatch extends DolibarrModules
|
||||
$this->config_page_url = array();
|
||||
|
||||
// Dependencies
|
||||
$this->depends = array("modProduct","modStock"); // List of modules id that must be enabled if this module is enabled
|
||||
$this->depends = array("modProduct","modStock","modExpedition","modSupplier"); // List of modules id that must be enabled if this module is enabled. modExpedition is required to manage batch exit (by manual stock decrease on shipment), modSupplier to manage batch entry (after supplier order).
|
||||
$this->requiredby = array(); // List of modules id to disable if this one is disabled
|
||||
$this->phpmin = array(5,0); // Minimum version of PHP required by module
|
||||
$this->need_dolibarr_version = array(3,0); // Minimum version of Dolibarr required by module
|
||||
|
||||
@ -84,9 +84,24 @@ if ($id > 0 || ! empty($ref))
|
||||
// Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array
|
||||
$hookmanager->initHooks(array('expeditioncard','globalcard'));
|
||||
|
||||
|
||||
/*
|
||||
* Actions
|
||||
*/
|
||||
|
||||
$warehousecanbeselectedlater=1;
|
||||
if (! empty($conf->productbatch->enabled))
|
||||
{
|
||||
if (! (GETPOST('entrepot_id','int') > 0))
|
||||
{
|
||||
$langs->load("errors");
|
||||
setEventMessage($langs->trans("WarhouseMustBeSelectedAtFirstStepWhenProductBatchModuleOn"),'errors');
|
||||
header("Location: ".DOL_URL_ROOT.'/expedition/shipment.php?id='.$id);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$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');
|
||||
@ -593,7 +608,7 @@ if ($action == 'create')
|
||||
print_fiche_titre($langs->trans("CreateASending"));
|
||||
if (! $origin)
|
||||
{
|
||||
$mesg='<div class="error">'.$langs->trans("ErrorBadParameters").'</div>';
|
||||
setEventMessage($langs->trans("ErrorBadParameters"),'errors');
|
||||
}
|
||||
|
||||
dol_htmloutput_mesg($mesg);
|
||||
@ -771,10 +786,13 @@ if ($action == 'create')
|
||||
print '</td>';
|
||||
if (! empty($conf->stock->enabled))
|
||||
{
|
||||
if (empty($conf->productbatch->enabled)) {
|
||||
print '<td align="left">'.$langs->trans("Warehouse").' / '.$langs->trans("Stock").'</td>';
|
||||
} else {
|
||||
print '<td align="left">'.$langs->trans("Warehouse").' / '.$langs->trans("Batch").' / '.$langs->trans("Stock").'</td>';
|
||||
if (empty($conf->productbatch->enabled))
|
||||
{
|
||||
print '<td align="left">'.$langs->trans("Warehouse").' ('.$langs->trans("Stock").')</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
print '<td align="left">'.$langs->trans("Warehouse").' / '.$langs->trans("Batch").' ('.$langs->trans("Stock").')</td>';
|
||||
}
|
||||
}
|
||||
print "</tr>\n";
|
||||
@ -828,7 +846,7 @@ if ($action == 'create')
|
||||
print '</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
print "<td>";
|
||||
if ($type==1) $text = img_object($langs->trans('Service'),'service');
|
||||
else $text = img_object($langs->trans('Product'),'product');
|
||||
@ -861,17 +879,19 @@ if ($action == 'create')
|
||||
$quantityAsked = $line->qty;
|
||||
$quantityToBeDelivered = $quantityAsked - $quantityDelivered;
|
||||
|
||||
$warehouse_id = GETPOST('entrepot_id','int');
|
||||
|
||||
$defaultqty=0;
|
||||
if (GETPOST('entrepot_id','int') > 0)
|
||||
if ($warehouse_id > 0)
|
||||
{
|
||||
//var_dump($product);
|
||||
$stock = $product->stock_warehouse[GETPOST('entrepot_id','int')]->real;
|
||||
$stock = $product->stock_warehouse[$warehouse_id]->real;
|
||||
$stock+=0; // Convertit en numerique
|
||||
$defaultqty=min($quantityToBeDelivered, $stock);
|
||||
if (($line->product_type == 1 && empty($conf->global->STOCK_SUPPORTS_SERVICES)) || $defaultqty < 0) $defaultqty=0;
|
||||
}
|
||||
|
||||
if (empty($conf->productbatch->enabled) || ! ($product->hasbatch() and is_object($product->stock_warehouse[GETPOST('entrepot_id','int')])))
|
||||
if (empty($conf->productbatch->enabled) || ! ($product->hasbatch() and is_object($product->stock_warehouse[$warehouse_id])))
|
||||
{
|
||||
// Quantity to send
|
||||
print '<td align="center">';
|
||||
@ -892,14 +912,14 @@ if ($action == 'create')
|
||||
// Show warehouse combo list
|
||||
$ent = "entl".$indiceAsked;
|
||||
$idl = "idl".$indiceAsked;
|
||||
$tmpentrepot_id = is_numeric(GETPOST($ent,'int'))?GETPOST($ent,'int'):GETPOST('entrepot_id','int');
|
||||
$tmpentrepot_id = is_numeric(GETPOST($ent,'int'))?GETPOST($ent,'int'):$warehouse_id;
|
||||
print $formproduct->selectWarehouses($tmpentrepot_id,'entl'.$indiceAsked,'',1,0,$line->fk_product);
|
||||
if ($tmpentrepot_id > 0 && $tmpentrepot_id == GETPOST('entrepot_id','int'))
|
||||
if ($tmpentrepot_id > 0 && $tmpentrepot_id == $warehouse_id)
|
||||
{
|
||||
//print $stock.' '.$quantityToBeDelivered;
|
||||
if ($stock < $quantityToBeDelivered)
|
||||
{
|
||||
print ' '.img_warning($langs->trans("StockTooLow")); // Stock too low for entrepot_id but we may have change warehouse
|
||||
print ' '.img_warning($langs->trans("StockTooLow")); // Stock too low for this $warehouse_id but you can change warehouse
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -934,11 +954,14 @@ if ($action == 'create')
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
print '<td></td><td></td></tr>';
|
||||
$subj=0;
|
||||
print '<input name="idl'.$indiceAsked.'" type="hidden" value="'.$line->id.'">';
|
||||
foreach ($product->stock_warehouse[GETPOST('entrepot_id','int')]->detail_batch as $dbatch) {
|
||||
foreach ($product->stock_warehouse[$warehouse_id]->detail_batch as $dbatch)
|
||||
{
|
||||
//var_dump($dbatch);
|
||||
$substock=$dbatch->qty +0 ;
|
||||
print '<tr><td colspan="3" ></td><td align="center">';
|
||||
@ -946,8 +969,13 @@ if ($action == 'create')
|
||||
print '</td>';
|
||||
|
||||
print '<td align="left">';
|
||||
|
||||
$staticwarehouse=new Entrepot($db);
|
||||
$staticwarehouse->fetch($warehouse_id);
|
||||
print $staticwarehouse->getNomUrl(0).' / ';
|
||||
|
||||
print '<input name="batchl'.$indiceAsked.'_'.$subj.'" type="hidden" value="'.$dbatch->id.'">';
|
||||
print $langs->trans("DetailBatchFormat", dol_print_date($dbatch->eatby,"day"), dol_print_date($dbatch->sellby,"day"), $dbatch->batch, $dbatch->qty);
|
||||
print $langs->trans("DetailBatchFormat", $dbatch->batch, dol_print_date($dbatch->eatby,"day"), dol_print_date($dbatch->sellby,"day"), $dbatch->qty);
|
||||
if ($defaultqty<=0) {
|
||||
$defaultqty=0;
|
||||
} else {
|
||||
@ -1451,12 +1479,14 @@ else if ($id || $ref)
|
||||
}
|
||||
|
||||
// Batch number managment
|
||||
if (! empty($conf->productbatch->enabled)) {
|
||||
if (isset($lines[$i]->detail_batch) ) {
|
||||
print '<td align="center">';
|
||||
if (! empty($conf->productbatch->enabled))
|
||||
{
|
||||
if (isset($lines[$i]->detail_batch))
|
||||
{
|
||||
print '<td>';
|
||||
$detail = '';
|
||||
foreach ($lines[$i]->detail_batch as $dbatch) {
|
||||
$detail.= $langs->trans("DetailBatchFormat",dol_print_date($dbatch->eatby,"day"),dol_print_date($dbatch->sellby,"day"),$dbatch->batch,$dbatch->dluo_qty).'<br/>';
|
||||
$detail.= $langs->trans("DetailBatchFormat",$dbatch->batch,dol_print_date($dbatch->eatby,"day"),dol_print_date($dbatch->sellby,"day"),$dbatch->dluo_qty).'<br/>';
|
||||
}
|
||||
print $form->textwithtooltip($langs->trans("DetailBatchNumber"),$detail);
|
||||
print '</td>';
|
||||
|
||||
@ -114,7 +114,7 @@ if ($resql)
|
||||
/*
|
||||
* Commandes a traiter
|
||||
*/
|
||||
$sql = "SELECT c.rowid, c.ref, s.nom as name, s.rowid as socid";
|
||||
$sql = "SELECT c.rowid, c.ref, c.fk_statut, s.nom as name, s.rowid as socid";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."commande as c";
|
||||
$sql.= ", ".MAIN_DB_PREFIX."societe as s";
|
||||
if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
|
||||
@ -136,7 +136,7 @@ if ($resql)
|
||||
$i = 0;
|
||||
print '<table class="noborder" width="100%">';
|
||||
print '<tr class="liste_titre">';
|
||||
print '<td colspan="2">'.$langs->trans("OrdersToProcess").'</td></tr>';
|
||||
print '<td colspan="3">'.$langs->trans("OrdersToProcess").'</td></tr>';
|
||||
$var = True;
|
||||
while ($i < $num)
|
||||
{
|
||||
@ -146,13 +146,19 @@ if ($resql)
|
||||
print '<td class="nowrap">';
|
||||
$orderstatic->id=$obj->rowid;
|
||||
$orderstatic->ref=$obj->ref;
|
||||
$orderstatic->statut=$obj->fk_statut;
|
||||
$orderstatic->facturee=0;
|
||||
print $orderstatic->getNomUrl(1);
|
||||
print '</td>';
|
||||
print '<td>';
|
||||
$companystatic->name=$obj->name;
|
||||
$companystatic->id=$obj->socid;
|
||||
print $companystatic->getNomUrl(1,'customer',32);
|
||||
print '</td></tr>';
|
||||
print '</td>';
|
||||
print '<td align="right">';
|
||||
print $orderstatic->getLibStatut(3);
|
||||
print '</td>';
|
||||
print '</tr>';
|
||||
$i++;
|
||||
}
|
||||
print "</table><br>";
|
||||
|
||||
@ -643,7 +643,10 @@ if ($id > 0 || ! empty($ref))
|
||||
|
||||
if (! empty($conf->stock->enabled))
|
||||
{
|
||||
print '<td>'.$langs->trans("WarehouseSource").'</td>';
|
||||
$warehousecanbeselectedlater=1;
|
||||
if (! empty($conf->productbatch->enabled)) $warehousecanbeselectedlater=0;
|
||||
|
||||
print '<td'.($warehousecanbeselectedlater?'':' class="fieldrequired"').'>'.$langs->trans("WarehouseSource").'</td>';
|
||||
print '<td>';
|
||||
print $formproduct->selectWarehouses(-1,'entrepot_id','',1);
|
||||
if (count($formproduct->cache_warehouses) <= 0)
|
||||
|
||||
@ -1140,6 +1140,8 @@ ALTER TABLE llx_facture_rec ADD COLUMN revenuestamp double(24,8) DEFAULT 0;
|
||||
ALTER TABLE llx_facturedet_rec MODIFY COLUMN tva_tx double(6,3);
|
||||
ALTER TABLE llx_facturedet_rec ADD COLUMN fk_contract_line integer NULL;
|
||||
|
||||
ALTER TABLE llx_resource MODIFY COLUMN entity integer DEFAULT 1 NOT NULL;
|
||||
|
||||
-- This request make mysql drop (mysql bug, so we add it at end):
|
||||
--ALTER TABLE llx_product ADD CONSTRAINT fk_product_barcode_type FOREIGN KEY (fk_barcode_type) REFERENCES llx_c_barcode_type(rowid);
|
||||
|
||||
|
||||
@ -51,10 +51,10 @@ create table llx_actioncomm
|
||||
|
||||
priority smallint,
|
||||
fulldayevent smallint NOT NULL default 0,
|
||||
punctual smallint NOT NULL default 1,
|
||||
punctual smallint NOT NULL default 1, -- deprecated. milestone is event with date start = date end
|
||||
percent smallint NOT NULL default 0,
|
||||
location varchar(128),
|
||||
durationp real, -- duree planifiee
|
||||
durationp real, -- planed duration
|
||||
durationa real, -- deprecated
|
||||
note text,
|
||||
|
||||
|
||||
@ -17,7 +17,7 @@
|
||||
CREATE TABLE llx_resource
|
||||
(
|
||||
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||
entity integer,
|
||||
entity integer DEFAULT 1 NOT NULL,
|
||||
ref varchar(255),
|
||||
description text,
|
||||
fk_code_type_resource varchar(32),
|
||||
|
||||
@ -5,16 +5,17 @@ ProductStatusOnBatch=Managed
|
||||
ProductStatusNotOnBatch=Not Managed
|
||||
ProductStatusOnBatchShort=Managed
|
||||
ProductStatusNotOnBatchShort=Not Managed
|
||||
Batch=Batch
|
||||
atleast1batchfield= Eat-by date or Sell-by date or Batch number
|
||||
batch_number= Batch number
|
||||
l_eatby= Eat-by date
|
||||
l_sellby= Sell-by date
|
||||
DetailBatchNumber= Batch details
|
||||
DetailBatchFormat= E:%s S: %s BATCH: %s (Qty : %d)
|
||||
printBatch= Batch: %s
|
||||
printEatby= Eat-by: %s
|
||||
printSellby= Sell-by: %s
|
||||
printQty= Qty: %d
|
||||
Batch=Batch/Serial
|
||||
atleast1batchfield=Eat-by date or Sell-by date or Batch number
|
||||
batch_number=Batch/Serial number
|
||||
l_eatby=Eat-by date
|
||||
l_sellby=Sell-by date
|
||||
DetailBatchNumber=Batch/Serial details
|
||||
DetailBatchFormat=Batch/Serial: %s - E:%s - S: %s (Qty : %d)
|
||||
printBatch=Batch: %s
|
||||
printEatby=Eat-by: %s
|
||||
printSellby=Sell-by: %s
|
||||
printQty=Qty: %d
|
||||
AddDispatchBatchLine=Add a line for Shelf Life dispatching
|
||||
BatchDefaultNumber= Undefined
|
||||
BatchDefaultNumber=Undefined
|
||||
WhenProductBatchModuleOnOptionAreForced=When module Batch/Serial is on, increase/decrease stock mode is forced to last choice and can't be edited. Other options can be defined as you want.
|
||||
|
||||
@ -25,12 +25,12 @@ Selectchartofaccounts=Seleccione un plan contable
|
||||
Validate=Validar
|
||||
Addanaccount=Añadir una cuenta contable
|
||||
AccountAccounting=Cuenta contable
|
||||
Ventilation=Breakdown
|
||||
Ventilation=Contabilizar
|
||||
ToDispatch=A realizar
|
||||
Dispatched=Realizadas
|
||||
|
||||
CustomersVentilation=Breakdown customers
|
||||
SuppliersVentilation=Breakdown suppliers
|
||||
CustomersVentilation=Contabilizar clientes
|
||||
SuppliersVentilation=Contabilizar proveedores
|
||||
TradeMargin=Margen de beneficio
|
||||
Reports=Informes
|
||||
ByCustomerInvoice=Por facturas a clientes
|
||||
@ -45,9 +45,9 @@ WriteBookKeeping=Registrar los asientos en el libro mayor
|
||||
Bookkeeping=Libro Mayor
|
||||
AccountBalanceByMonth=Saldo mensual
|
||||
|
||||
AccountingVentilation=Breakdown accounting
|
||||
AccountingVentilationSupplier=Breakdown accounting supplier
|
||||
AccountingVentilationCustomer=Breakdown accounting customer
|
||||
AccountingVentilation=Descuadre contabilidad
|
||||
AccountingVentilationSupplier=Contablilización compras
|
||||
AccountingVentilationCustomer=Contabilización ventas
|
||||
Line=Línea
|
||||
|
||||
CAHTF=Total (base imponible) compras a proveedor
|
||||
@ -56,7 +56,7 @@ InvoiceLinesDone=Líneas de facturas contabilizadas
|
||||
IntoAccount=En la cuenta
|
||||
|
||||
Ventilate=Contabilizar
|
||||
VentilationAuto=Automatic breakdown
|
||||
VentilationAuto=Contabilización automática
|
||||
|
||||
Processing=Tratamiento
|
||||
EndProcessing=Final del tratamiento
|
||||
@ -68,9 +68,9 @@ NotVentilatedinAccount=Cuenta sin contabilización en la contabilidad
|
||||
|
||||
ACCOUNTING_SEPARATORCSV=Separador CSV
|
||||
|
||||
ACCOUNTING_LIMIT_LIST_VENTILATION=Number of elements to be breakdown shown by page (maximum recommended : 50)
|
||||
ACCOUNTING_LIST_SORT_VENTILATION_TODO=Begin the sorting of the breakdown pages "Has to breakdown" by the most recent elements
|
||||
ACCOUNTING_LIST_SORT_VENTILATION_DONE=Begin the sorting of the breakdown pages "Breakdown" by the most recent elements
|
||||
ACCOUNTING_LIMIT_LIST_VENTILATION=Número de elementos a contabilizar que se muestran por página (máximo recomendado: 50)
|
||||
ACCOUNTING_LIST_SORT_VENTILATION_TODO=Ordenar las páginas de contabilización "A contabilizar" por los elementos más recientes
|
||||
ACCOUNTING_LIST_SORT_VENTILATION_DONE=Ordenar las páginas de contabilización "Contabilizadas" por los elementos más recientes
|
||||
|
||||
AccountLength=Longitud de las cuentas contables mostradas en Dolibarr
|
||||
AccountLengthDesc=Función para simular una longitud de cuenta contable sustituyendo los espacios por cero. Esta función sólo afecta a la pantalla, no cambia las cuentas contables registradas en Dolibarr. Esta función es necesaria para la exportación, para ser compatible con algunos programas.
|
||||
@ -140,14 +140,14 @@ Active=Estado
|
||||
|
||||
NewFiscalYear=Nuevo año fiscal
|
||||
|
||||
DescVentilCustomer=Consult here the annual breakdown accounting of your invoices customers
|
||||
DescVentilCustomer=Consulte aquí la contabilización anual de sus facturas a clientes
|
||||
TotalVente=Total ventas (base imponible)
|
||||
TotalMarge=Total margen ventas
|
||||
DescVentilDoneCustomer=Consulte aquí las líneas de facturas a clientes y sus cuentas contables
|
||||
DescVentilTodoCustomer=Contabilice sus líneas de facturas a clientes con una cuenta contable
|
||||
ChangeAccount=Cambie la cuenta para las líneas seleccionadas a la cuenta:
|
||||
Vide=-
|
||||
DescVentilSupplier=Consult here the annual breakdown accounting of your invoices suppliers
|
||||
DescVentilSupplier=Consulte aquí la contabilidad anual de sus facturas de proveedores
|
||||
DescVentilTodoSupplier=Contabilize sus líneas de facturas de proveedores
|
||||
DescVentilDoneSupplier=Consulte aquí la lista de facturas de proveedores y sus cuentas contables
|
||||
|
||||
@ -155,4 +155,4 @@ ValidateHistory=Validar automáticamente
|
||||
|
||||
ErrorAccountancyCodeIsAlreadyUse=Error, no puede eliminar esta cuenta ya que está siendo usada
|
||||
|
||||
FicheVentilation=Breakdown card
|
||||
FicheVentilation=Ficha contable
|
||||
|
||||
@ -437,8 +437,8 @@ Module52Name=Stocks de productos
|
||||
Module52Desc=Gestión de stocks de productos
|
||||
Module53Name=Servicios
|
||||
Module53Desc=Gestión de servicios
|
||||
Module54Name=Contracts/Subscriptions
|
||||
Module54Desc=Management of contracts (services or reccuring subscriptions)
|
||||
Module54Name=Contratos/Suscripciones
|
||||
Module54Desc=Gestión de contratos (servicios o suscripciones recurrentes)
|
||||
Module55Name=Códigos de barras
|
||||
Module55Desc=Gestión de los códigos de barras
|
||||
Module56Name=Telefonía
|
||||
@ -475,8 +475,8 @@ Module320Name=Hilos RSS
|
||||
Module320Desc=Adición de hilos de información RSS en las pantallas Dolibarr
|
||||
Module330Name=Marcadores
|
||||
Module330Desc=Gestión de marcadores
|
||||
Module400Name=Projects/Opportunity
|
||||
Module400Desc=Management of projects or opportunity. You can then assign all other elements (invoice, order, proposal, intervention, ...) to this projects
|
||||
Module400Name=Proyectos/Oportunidades
|
||||
Module400Desc=Gestión de proyectos o oportunidades. Puede asignar otros elementos (facturas, pedidos, presupuestos, intervenciones, etc.) a los proyectos
|
||||
Module410Name=Webcalendar
|
||||
Module410Desc=Interfaz con el calendario Webcalendar
|
||||
Module500Name=Gastos especiales (impuestos, gastos sociales, dividendos)
|
||||
@ -495,6 +495,8 @@ Module1780Name=Categorías
|
||||
Module1780Desc=Gestión de categorías (productos, proveedores y clientes)
|
||||
Module2000Name=Editor WYSIWYG
|
||||
Module2000Desc=Permite la edición de ciertas zonas de texto mediante un editor avanzado
|
||||
Module2200Name=Precios dinámicos
|
||||
Module2200Desc=Activar el uso de expresiones matemáticas para precios
|
||||
Module2300Name=Programador
|
||||
Module2300Desc=Tareas programadas
|
||||
Module2400Name=Agenda
|
||||
@ -503,6 +505,8 @@ Module2500Name=Gestión Electrónica de Documentos
|
||||
Module2500Desc=Permite administrar una base de documentos
|
||||
Module2600Name=WebServices
|
||||
Module2600Desc=Activa los servicios de servidor web services de Dolibarr
|
||||
Module2650Name=WebServices (cliente)
|
||||
Module2650Desc=Habilitar los servicios web cliente de Dolibarr (puede ser utilizado para grabar datos/solicitudes de servidores externos. De momento solo se soporta pedidos a proveedor)
|
||||
Module2700Name=Gravatar
|
||||
Module2700Desc=Utiliza el servicio en línea de Gravatar (www.gravatar.com) para mostrar fotos de los usuarios/miembros (que se encuentran en sus mensajes de correo electrónico). Necesita un acceso a Internet
|
||||
Module2800Desc=Cliente FTP
|
||||
@ -517,7 +521,7 @@ Module6000Desc=Gestión del flujo de trabajo
|
||||
Module20000Name=Gestión de días libres retribuidos
|
||||
Module20000Desc=Gestión de los días libres retribuidos de los empleados
|
||||
Module39000Name=Lotes de productos
|
||||
Module39000Desc=Gestión de lotes y fechas de caducidad y venta de los productos
|
||||
Module39000Desc=Gestión de lotes o series, fechas de caducidad y venta de los productos
|
||||
Module50000Name=PayBox
|
||||
Module50000Desc=Módulo para proporcionar un pago en línea con tarjeta de crédito mediante Paybox
|
||||
Module50100Name=TPV
|
||||
@ -606,11 +610,11 @@ Permission151=Consultar domiciliaciones
|
||||
Permission152=Crear/modificar domiciliaciones
|
||||
Permission153=Enviar domiciliaciones
|
||||
Permission154=Abonar/devolver domiciliaciones
|
||||
Permission161=Read contracts/subscriptions
|
||||
Permission162=Create/modify contracts/subscriptions
|
||||
Permission163=Activate a service/subscription of a contract
|
||||
Permission164=Disable a service/subscription of a contract
|
||||
Permission165=Delete contracts/subscriptions
|
||||
Permission161=Consultar contratos/suscripciones
|
||||
Permission162=Crear/modificar contratos/suscripciones
|
||||
Permission163=Activar un servicio/suscripción de un contrato
|
||||
Permission164=Desactivar un servicio/suscripcion de un contrato
|
||||
Permission165=Eliminar contratos/suscripciones
|
||||
Permission171=Leer honorarios (propios y de sus subordinados)
|
||||
Permission172=Crear/modificar honorarios
|
||||
Permission173=Eliminar honorarios
|
||||
@ -672,7 +676,7 @@ Permission300=Consultar códigos de barras
|
||||
Permission301=Crear/modificar códigos de barras
|
||||
Permission302=Eliminar código de barras
|
||||
Permission311=Consultar servicios
|
||||
Permission312=Assign service/subscription to contract
|
||||
Permission312=Asignar servicios/suscripciones a un contrato
|
||||
Permission331=Consultar marcadores
|
||||
Permission332=Crear/modificar marcadores
|
||||
Permission333=Eliminar marcadores
|
||||
@ -702,8 +706,8 @@ Permission701=Consultar donaciones
|
||||
Permission702=Crear/modificar donaciones
|
||||
Permission703=Eliminar donaciones
|
||||
Permission1001=Consultar stocks
|
||||
Permission1002=Create/modify warehouses
|
||||
Permission1003=Delete warehouses
|
||||
Permission1002=Crear/modificar almacenes
|
||||
Permission1003=Eliminar almacenes
|
||||
Permission1004=Consultar movimientos de stock
|
||||
Permission1005=Crear/modificar movimientos de stock
|
||||
Permission1101=Consultar ordenes de envío
|
||||
@ -1138,7 +1142,7 @@ AddDeliveryAddressAbility=Posibilidad de seleccionar una dirección de envío
|
||||
UseOptionLineIfNoQuantity=Una línea de producto/servicio que tiene una cantidad nula se considera como una opción
|
||||
FreeLegalTextOnProposal=Texto libre en presupuestos
|
||||
WatermarkOnDraftProposal=Marca de agua en presupuestos borrador (en caso de estar vacío)
|
||||
BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal
|
||||
BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Preguntar por cuenta bancaria a usar en el presupuesto
|
||||
##### Orders #####
|
||||
OrdersSetup=Configuración del módulo pedidos
|
||||
OrdersNumberingModules=Módulos de numeración de los pedidos
|
||||
@ -1160,7 +1164,7 @@ FicheinterNumberingModules=Módulos de numeración de las fichas de intervenció
|
||||
TemplatePDFInterventions=Modelo de documentos de las fichas de intervención
|
||||
WatermarkOnDraftInterventionCards=Marca de agua en fichas de intervención (en caso de estar vacío)
|
||||
##### Contracts #####
|
||||
ContractsSetup=Contracts/Subscriptions module setup
|
||||
ContractsSetup=Configuración del módulo Contratos/suscripciones
|
||||
ContractsNumberingModules=Módulos de numeración de los contratos
|
||||
TemplatePDFContracts=Modelos de documento de contratos
|
||||
FreeLegalTextOnContracts=Texto libre en contratos
|
||||
@ -1324,7 +1328,7 @@ FilesOfTypeNotCompressed=Archivos de tipo %s no son comprimidos por el servidor
|
||||
CacheByServer=Caché mediante el servidor
|
||||
CacheByClient=Caché mediante el navegador
|
||||
CompressionOfResources=Compresión de las respuestas HTTP
|
||||
TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers
|
||||
TestNotPossibleWithCurrentBrowsers=La detección automática no es posible con el navegador actual
|
||||
##### Products #####
|
||||
ProductSetup=Configuración del módulo Productos
|
||||
ServiceSetup=Configuración del módulo Servicios
|
||||
@ -1415,9 +1419,9 @@ OSCommerceTestOk=La conexión al servidor '%s' sobre la base '%s' por el usuario
|
||||
OSCommerceTestKo1=La conexión al servidor '%s' sobre la base '%s' por el usuario '%s' no se pudo efectuar.
|
||||
OSCommerceTestKo2=La conexión al servidor '%s' por el usuario '%s' ha fallado.
|
||||
##### Stock #####
|
||||
StockSetup=Warehouse module setup
|
||||
UserWarehouse=Use user personal warehouses
|
||||
IfYouUsePointOfSaleCheckModule=If you use a Point of Sale module (POS module provided by default or another external module), this setup may be ignored by your Point Of Sale module. Most point of sales modules are designed to create immediatly an invoice and decrease stock by default whatever are options here. So, if you need or not to have a stock decrease when registering a sell from your Point Of Sale, check also your POS module set up.
|
||||
StockSetup=Configuración del módulo Almacenes
|
||||
UserWarehouse=Utilizar almacenes personales de usuarios
|
||||
IfYouUsePointOfSaleCheckModule=Si utiliza un módulo de Punto de Venta (módulo TPV por defecto u otro módulo externo), esta configuración puede ser ignorada por su módulo de Punto de Venta. La mayor parte de módulos TPV están diseñados para crear inmediatamente una factura y decrementar stocks cualquiera que sean estas opciones. Por lo tanto, si usted necesita o no decrementar stocks en el registro de una venta de su punto de venta, controle también la configuración de su módulo TPV.
|
||||
##### Menu #####
|
||||
MenuDeleted=Menú eliminado
|
||||
TreeMenu=Estructura de los menús
|
||||
@ -1482,14 +1486,14 @@ ClickToDialDesc=Este módulo permite agregar un icono después del número de te
|
||||
##### Point Of Sales (CashDesk) #####
|
||||
CashDesk=TPV
|
||||
CashDeskSetup=Configuración del módulo Terminal Punto de Venta
|
||||
CashDeskThirdPartyForSell=Default generic third party to use for sells
|
||||
CashDeskThirdPartyForSell=Tercero genérico a usar para las ventas
|
||||
CashDeskBankAccountForSell=Cuenta por defecto a utilizar para los cobros en efectivo (caja)
|
||||
CashDeskBankAccountForCheque= Cuenta por defecto a utilizar para los cobros con cheques
|
||||
CashDeskBankAccountForCB= Cuenta por defecto a utilizar para los cobros con tarjeta de crédito
|
||||
CashDeskDoNotDecreaseStock=Disable stock decrease when a sell is done from Point of Sale
|
||||
CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease
|
||||
StockDecreaseForPointOfSaleDisabled=Stock decrease from Point Of Sale disabled
|
||||
CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sell from Point Of Sale. So a warehouse is required.
|
||||
CashDeskDoNotDecreaseStock=Desactivar decrementos de stock si una venta se realiza desde TPV
|
||||
CashDeskIdWareHouse=Forzar y restringir almacén a usar para decremento de stock
|
||||
StockDecreaseForPointOfSaleDisabled=Decremento de stock desde TPV desactivado
|
||||
CashDeskYouDidNotDisableStockDecease=Usted no ha desactivado el decremento de stock al hacer una venta desde TPV. Así que se requiere un almacén.
|
||||
##### Bookmark #####
|
||||
BookmarkSetup=Configuración del módulo Marcadores
|
||||
BookmarkDesc=Este módulo le permite gestionar los enlaces y accesos directos. También permite añadir cualquier página de Dolibarr o enlace web en el menú de acceso rápido de la izquierda.
|
||||
@ -1543,13 +1547,13 @@ ConfirmDeleteFiscalYear=¿Está seguro de querer eliminar este año fiscal?
|
||||
Opened=Abierto
|
||||
Closed=Cerrado
|
||||
AlwaysEditable=Puede editarse siempre
|
||||
MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application)
|
||||
NbMajMin=Minimum number of uppercase characters
|
||||
NbNumMin=Minimum number of numeric characters
|
||||
NbSpeMin=Minimum number of special characters
|
||||
NbIteConsecutive=Maximum number of repeating same characters
|
||||
NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation
|
||||
SalariesSetup=Setup of module salaries
|
||||
SortOrder=Sort order
|
||||
MAIN_APPLICATION_TITLE=Forzar visibilidad del nombre de aplicación (advertencia: indicar su propio nombre aquí puede romper la característica de relleno automático de inicio de sesión al utilizar la aplicación móvil DoliDroid)
|
||||
NbMajMin=Número mínimo de caracteres en mayúsculas
|
||||
NbNumMin=Número mínimo de caracteres numéricos
|
||||
NbSpeMin=Número mínimo de caracteres especiales
|
||||
NbIteConsecutive=Número máximo de repeticiones de los mismos caracteres
|
||||
NoAmbiCaracAutoGeneration=No usar caracteres ambiguos ("1","l","i","|","0","O") para la generación automática
|
||||
SalariesSetup=Configuración del módulo salarios
|
||||
SortOrder=Ordenación
|
||||
Format=Formatear
|
||||
TypePaymentDesc=0:Pago cliente,1:Pago proveedor,2:Tanto pago de cliente como de proveedor
|
||||
|
||||
@ -44,7 +44,7 @@ AgendaExtSitesDesc=Esta página le permite configurar calendarios externos para
|
||||
ActionsEvents=Eventos para que Dolibarr cree un evento en la agenda de forma automática
|
||||
PropalValidatedInDolibarr=Presupuesto %s validado
|
||||
InvoiceValidatedInDolibarr=Factura %s validada
|
||||
InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS
|
||||
InvoiceValidatedInDolibarrFromPos=Factura %s validada desde TPV
|
||||
InvoiceBackToDraftInDolibarr=Factura %s devuelta a borrador
|
||||
InvoiceDeleteDolibarr=Factura %s eliminada
|
||||
OrderValidatedInDolibarr= Pedido %s validado
|
||||
|
||||
@ -217,7 +217,7 @@ NoInvoice=Ninguna factura
|
||||
ClassifyBill=Clasificar la factura
|
||||
SupplierBillsToPay=Facturas de proveedores a pagar
|
||||
CustomerBillsUnpaid=Facturas a clientes pendientes de cobro
|
||||
DispenseMontantLettres=The written invoices through mecanographic procedures are dispensed by the order in letters
|
||||
DispenseMontantLettres=Las facturas escritas a través de procedimientos mecanograficos son dispensadas por la orden en letras
|
||||
NonPercuRecuperable=No percibido recuperable
|
||||
SetConditions=Definir condiciones de pago
|
||||
SetMode=Definir modo de pago
|
||||
|
||||
@ -109,4 +109,4 @@ CategoriesSetup=Configuración de categorías
|
||||
CategorieRecursiv=Enlazar con la categoría padre automáticamente
|
||||
CategorieRecursivHelp=Si está activado, el producto se enlazará a la categoría padre si lo añadimos a una subcategoría
|
||||
AddProductServiceIntoCategory=Añadir el siguiente producto/servicio
|
||||
ShowCategory=Show category
|
||||
ShowCategory=Mostrar categoría
|
||||
|
||||
@ -108,7 +108,7 @@ ErrorWrongAccountancyCodeForCompany=Código contable incorrecto para %s
|
||||
SuppliersProductsSellSalesTurnover=Volumen de ventas generado por la venta de los productos de los proveedores
|
||||
CheckReceipt=Lista de remesas
|
||||
CheckReceiptShort=Remesas
|
||||
LastCheckReceiptShort=Last %s check receipts
|
||||
LastCheckReceiptShort=%s Últimas remesas
|
||||
NewCheckReceipt=Nueva remesa
|
||||
NewCheckDeposit=Nuevo ingreso
|
||||
NewCheckDepositOn=Crear nueva remesa en la cuenta: %s
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# Dolibarr language file - Source file is en_US - contracts
|
||||
ContractsArea=Área contratos
|
||||
ListOfContracts=Listado de contratos
|
||||
LastModifiedContracts=Last %s modified contracts
|
||||
LastModifiedContracts=%s Últimos contratos modificados
|
||||
AllContracts=Todos los contratos
|
||||
ContractCard=Ficha contrato
|
||||
ContractStatus=Estado del contrato
|
||||
@ -53,7 +53,7 @@ ListOfRunningContractsLines=Listado de líneas de contratos en servicio
|
||||
ListOfRunningServices=Listado de servicios activos
|
||||
NotActivatedServices=Servicios no activados (con los contratos validados)
|
||||
BoardNotActivatedServices=Servicios a activar con los contratos validados
|
||||
LastContracts=Last % contracts
|
||||
LastContracts=%s Últimos contratos
|
||||
LastActivatedServices=Los %s últimos servicios activados
|
||||
LastModifiedServices=Los %s últimos servicios modificados
|
||||
EditServiceLine=Edición línea del servicio
|
||||
|
||||
@ -18,7 +18,7 @@ CronExplainHowToRunUnix=En entorno Unix debes usar crontab para ejecutar el coma
|
||||
CronExplainHowToRunWin=En un entorno de Microsoft(tm) Windows puedes usar el programador de tareas para ejecutar el comando cada varios minutos
|
||||
# Menu
|
||||
CronJobs=Tareas programadas
|
||||
CronListActive=List of active/scheduled jobs
|
||||
CronListActive=Listado de tareas activas/programadas
|
||||
CronListInactive=Tareas Inactivas
|
||||
# Page list
|
||||
CronDateLastRun=Últ. ejec.
|
||||
|
||||
@ -31,8 +31,8 @@ DonationRecipient=Beneficiario
|
||||
ThankYou=Muchas gracias
|
||||
IConfirmDonationReception=El beneficiario confirma la recepción, como donación, de la siguiente cantidad
|
||||
MinimumAmount=El importe mínimo es %s
|
||||
FreeTextOnDonations=Free text to show in footer
|
||||
FrenchOptions=Options for France
|
||||
DONATION_ART200=Show article 200 from CGI if you are concerned
|
||||
DONATION_ART238=Show article 238 from CGI if you are concerned
|
||||
DONATION_ART885=Show article 885 from CGI if you are concerned
|
||||
FreeTextOnDonations=Texto libre a mostrar a pié de página
|
||||
FrenchOptions=Opciones para Francia
|
||||
DONATION_ART200=Mostrar artículo 200 del CGI si se está interesado
|
||||
DONATION_ART238=Mostrar artículo 238 del CGI si se está interesado
|
||||
DONATION_ART885=Mostrar artículo 885 del CGI si se está interesado
|
||||
|
||||
@ -138,6 +138,24 @@ ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, este miembro aún no es
|
||||
ErrorThereIsSomeDeliveries=Error, hay entregas vinculadas a este envío. No se puede eliminar.
|
||||
ErrorCantDeletePaymentReconciliated=No se puede eliminar un pago que ha generado una transacción bancaria que se encuentra conciliada
|
||||
ErrorCantDeletePaymentSharedWithPayedInvoice=No se puede eliminar un pago de varias factura con alguna factura con estado Pagada
|
||||
ErrorPriceExpression1=No se puede asignar a la constante '%s'
|
||||
ErrorPriceExpression2=No se puede redefinir la función incorporada '%s'
|
||||
ErrorPriceExpression3=Variable '%s' no definida en la definición de la función
|
||||
ErrorPriceExpression4=Carácter '%s' ilegal
|
||||
ErrorPriceExpression5=No se esperaba '%s'
|
||||
ErrorPriceExpression6=Número de argumentos inadecuados (%s dados, %s esperados)
|
||||
ErrorPriceExpression8=Operador '%s' no esperado
|
||||
ErrorPriceExpression9=Ha ocurrido un error no esperado
|
||||
ErrorPriceExpression10=Operador '%s' carece de operando
|
||||
ErrorPriceExpression11=Se esperaba '%s'
|
||||
ErrorPriceExpression14=División por cero
|
||||
ErrorPriceExpression17=Variable '%s' indefinida
|
||||
ErrorPriceExpression19=Expresión no encontrada
|
||||
ErrorPriceExpression20=Expresión vacía
|
||||
ErrorPriceExpression21=Resultado '%s' vacío
|
||||
ErrorPriceExpression22=Resultado '%s' negativo
|
||||
ErrorPriceExpressionInternal=Error interno '%s'
|
||||
ErrorPriceExpressionUnknown=Error desconocido '%s'
|
||||
|
||||
# Warnings
|
||||
WarningMandatorySetupNotComplete=Los parámetros obligatorios de configuración no están todavía definidos
|
||||
|
||||
@ -2,4 +2,4 @@
|
||||
ExternalSiteSetup=Configuración del enlace al sitio web externo
|
||||
ExternalSiteURL=URL del sitio externo
|
||||
ExternalSiteModuleNotComplete=El módulo Sitio web externo no ha sido configurado correctamente.
|
||||
ExampleMyMenuEntry=My menu entry
|
||||
ExampleMyMenuEntry=Mi entrada de menú
|
||||
|
||||
@ -31,14 +31,14 @@ RelatedInterventions=Intervenciones adjuntas
|
||||
ShowIntervention=Mostrar intervención
|
||||
SendInterventionRef=Envío de la intervención %s
|
||||
SendInterventionByMail=Enviar intervención por e-mail
|
||||
InterventionCreatedInDolibarr=Intervention %s created
|
||||
InterventionValidatedInDolibarr=Intervention %s validated
|
||||
InterventionModifiedInDolibarr=Intervention %s modified
|
||||
InterventionClassifiedBilledInDolibarr=Intervention %s set as billed
|
||||
InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled
|
||||
InterventionSentByEMail=Intervention %s sent by EMail
|
||||
InterventionDeletedInDolibarr=Intervention %s deleted
|
||||
SearchAnIntervention=Search an intervention
|
||||
InterventionCreatedInDolibarr=Intervención %s creada
|
||||
InterventionValidatedInDolibarr=Intervención %s validada
|
||||
InterventionModifiedInDolibarr=Intervención %s modificada
|
||||
InterventionClassifiedBilledInDolibarr=Intervención %s clasificada como facturada
|
||||
InterventionClassifiedUnbilledInDolibarr=Intervención %s clasificada como no facturada
|
||||
InterventionSentByEMail=Intervención %s enviada por E-Mail
|
||||
InterventionDeletedInDolibarr=Intervención %s eliminada
|
||||
SearchAnIntervention=Buscar una intervención
|
||||
##### Types de contacts #####
|
||||
TypeContact_fichinter_internal_INTERREPFOLL=Responsable seguimiento de la intervención
|
||||
TypeContact_fichinter_internal_INTERVENING=Interventor
|
||||
|
||||
@ -115,7 +115,7 @@ SentBy=Enviado por
|
||||
MailingNeedCommand=Por razones de seguridad, el envío de un E-Mailing en masa debe realizarse en línea de comandos. Pida a su administrador que lance el comando siguiente para para enviar la correspondencia a a todos los destinatarios:
|
||||
MailingNeedCommand2=Puede enviar en línea añadiendo el parámetro MAILING_LIMIT_SENDBYWEB con un valor numérico que indica el máximo nº de e-mails a enviar por sesión. Para ello vaya a Inicio - Configuración - Varios.
|
||||
ConfirmSendingEmailing=¿Confirma el envío del e-mailing?
|
||||
LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, <b>%s</b> recipients at a time for each sending session.
|
||||
LimitSendingEmailing=Nota: El envío de e-mailings desde la interfaz web se realiza en tandas por razones de seguridad y timeouts, se enviarán a <b>%s</b> destinatarios por tanda.
|
||||
TargetsReset=Vaciar lista
|
||||
ToClearAllRecipientsClickHere=Para vaciar la lista de los destinatarios de este E-Mailing, haga click en el botón
|
||||
ToAddRecipientsChooseHere=Para añadir destinatarios, escoja los que figuran en las listas a continuación
|
||||
@ -136,6 +136,6 @@ SomeNotificationsWillBeSent=%s notificaciones van a ser enviadas por e-mail
|
||||
AddNewNotification=Activar un nuevo destinatario de notificaciones
|
||||
ListOfActiveNotifications=Listado de todos los destinatarios de notificaciones
|
||||
ListOfNotificationsDone=Listado de notificaciones enviadas
|
||||
MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing.
|
||||
MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter <strong>'%s'</strong> to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature.
|
||||
MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s.
|
||||
MailSendSetupIs=La configuración de e-mailings está a '%s'. Este modo no puede ser usado para enviar e-mails masivos.
|
||||
MailSendSetupIs2=Antes debe, con una cuenta de administrador, en el menú %sInicio - Configuración - E-Mails%s, cambiar el parámetro <strong>'%s'</strong> para usar el modo '%s'. Con este modo puede configurar un servidor SMTP de su proveedor de servicios de internet.
|
||||
MailSendSetupIs3=Si tiene preguntas de como configurar su servidor SMTP, puede contactar con %s.
|
||||
|
||||
@ -367,7 +367,7 @@ ActionsOnCompany=Eventos respecto a este tercero
|
||||
ActionsOnMember=Eventos respecto a este miembro
|
||||
NActions=%s eventos
|
||||
NActionsLate=%s en retraso
|
||||
RequestAlreadyDone=Request already recorded
|
||||
RequestAlreadyDone=Solicitud ya registrada
|
||||
Filter=Filtro
|
||||
RemoveFilter=Eliminar filtro
|
||||
ChartGenerated=Gráficos generados
|
||||
|
||||
@ -41,4 +41,4 @@ AgentContactType=Tipo de contacto comisionado
|
||||
AgentContactTypeDetails=Indique qué tipo de contacto (enlazado a las facturas) será el utilizado para el informe de márgenes de agentes comerciales
|
||||
rateMustBeNumeric=El margen debe ser un valor numérico
|
||||
markRateShouldBeLesserThan100=El margen tiene que ser menor que 100
|
||||
ShowMarginInfos=Show margin infos
|
||||
ShowMarginInfos=Mostrar info de márgenes
|
||||
|
||||
@ -203,3 +203,4 @@ MembersByNature=Miembros por naturaleza
|
||||
VATToUseForSubscriptions=Tasa de IVA para las afiliaciones
|
||||
NoVatOnSubscription=Sin IVA para en las afiliaciones
|
||||
MEMBER_PAYONLINE_SENDEMAIL=E-Mail para advertir en caso de recepción de confirmación de un pago validado de una afiliación
|
||||
ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Producto usado para las suscripciones en línea en facturas: %s
|
||||
|
||||
@ -53,7 +53,7 @@ ShippingExist=Existe una expedición
|
||||
DraftOrWaitingApproved=Borrador o aprobado aún no controlado
|
||||
DraftOrWaitingShipped=Borrador o validado aún no expedido
|
||||
MenuOrdersToBill=Pedidos a facturar
|
||||
MenuOrdersToBill2=Billable orders
|
||||
MenuOrdersToBill2=Pedidos facturables
|
||||
SearchOrder=Buscar un pedido
|
||||
SearchACustomerOrder=Buscar un pedido de cliente
|
||||
ShipProduct=Enviar producto
|
||||
|
||||
@ -203,26 +203,26 @@ ForgetIfNothing=Si usted no ha solicitado este cambio, simplemente ignore este e
|
||||
|
||||
##### Calendar common #####
|
||||
AddCalendarEntry=Añadir entrada en el calendario
|
||||
NewCompanyToDolibarr=Company %s added
|
||||
ContractValidatedInDolibarr=Contract %s validated
|
||||
ContractCanceledInDolibarr=Contract %s canceled
|
||||
ContractClosedInDolibarr=Contract %s closed
|
||||
PropalClosedSignedInDolibarr=Proposal %s signed
|
||||
PropalClosedRefusedInDolibarr=Proposal %s refused
|
||||
PropalValidatedInDolibarr=Proposal %s validated
|
||||
PropalClassifiedBilledInDolibarr=Proposal %s classified billed
|
||||
InvoiceValidatedInDolibarr=Invoice %s validated
|
||||
InvoicePaidInDolibarr=Invoice %s changed to paid
|
||||
InvoiceCanceledInDolibarr=Invoice %s canceled
|
||||
PaymentDoneInDolibarr=Payment %s done
|
||||
CustomerPaymentDoneInDolibarr=Customer payment %s done
|
||||
SupplierPaymentDoneInDolibarr=Supplier payment %s done
|
||||
MemberValidatedInDolibarr=Member %s validated
|
||||
MemberResiliatedInDolibarr=Member %s resiliated
|
||||
MemberDeletedInDolibarr=Member %s deleted
|
||||
MemberSubscriptionAddedInDolibarr=Subscription for member %s added
|
||||
ShipmentValidatedInDolibarr=Shipment %s validated
|
||||
ShipmentDeletedInDolibarr=Shipment %s deleted
|
||||
NewCompanyToDolibarr=Empresa %s añadida
|
||||
ContractValidatedInDolibarr=Contrato %s validado
|
||||
ContractCanceledInDolibarr=Contrato %s cancelado
|
||||
ContractClosedInDolibarr=Contrato %s cerrado
|
||||
PropalClosedSignedInDolibarr=Presupuesto %s firmado
|
||||
PropalClosedRefusedInDolibarr=Presupuesto %s rechazado
|
||||
PropalValidatedInDolibarr=Presupuesto %s validado
|
||||
PropalClassifiedBilledInDolibarr=Presupuesto %s clasificado facturado
|
||||
InvoiceValidatedInDolibarr=Factura %s validada
|
||||
InvoicePaidInDolibarr=Factura %s pasada a pagada
|
||||
InvoiceCanceledInDolibarr=Factura %s cancelada
|
||||
PaymentDoneInDolibarr=Pago %s realizado
|
||||
CustomerPaymentDoneInDolibarr=Pago de cliente %s realizado
|
||||
SupplierPaymentDoneInDolibarr=Pago a proveedor %s realizado
|
||||
MemberValidatedInDolibarr=Miembro %s validado
|
||||
MemberResiliatedInDolibarr=Miembro %s dado de baja
|
||||
MemberDeletedInDolibarr=Miembro %s eliminado
|
||||
MemberSubscriptionAddedInDolibarr=Subscripción del miembro %s añadida
|
||||
ShipmentValidatedInDolibarr=Expedición %s validada
|
||||
ShipmentDeletedInDolibarr=Expedición %s eliminada
|
||||
##### Export #####
|
||||
Export=Exportación
|
||||
ExportsArea=Área de exportaciones
|
||||
|
||||
@ -35,6 +35,6 @@ MessageKO=Mensaje en la página de retorno de pago cancelado
|
||||
NewPayboxPaymentReceived=Nuevo pago Paybox recibido
|
||||
NewPayboxPaymentFailed=Nuevo intento de pago Paybox sin éxito
|
||||
PAYBOX_PAYONLINE_SENDEMAIL=E-Mail a avisar en caso de pago (con éxito o no)
|
||||
PAYBOX_PBX_SITE=Value for PBX SITE
|
||||
PAYBOX_PBX_RANG=Value for PBX Rang
|
||||
PAYBOX_PBX_IDENTIFIANT=Value for PBX ID
|
||||
PAYBOX_PBX_SITE=Valor para PBX SITE
|
||||
PAYBOX_PBX_RANG=valor para PBX Rang
|
||||
PAYBOX_PBX_IDENTIFIANT=Valor para PBX ID
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
# Dolibarr language file - Source file is en_US - printipp
|
||||
PrintIPPSetup=Configuración del módulo Impresión directa IPP
|
||||
PrintIPPDesc=Este módulo permite añadir un botón de impresión directa de sus documentos hacia su impresora. Se requiere un sistema Linux equipado con Cups.
|
||||
PRINTIPP_ENABLED=Muestra el logo "Impresión directa" en los listados de documentos
|
||||
PrintIPPSetup=Configuración del módulo Impresión Directa
|
||||
PrintIPPDesc=Este módulo añade un botón para enviar documentos directamente a una impresora. Es necesario un SO Linux con CUPS instalado.
|
||||
PRINTIPP_ENABLED=Mostrar icono "Impresión directa" en los listados de documentos
|
||||
PRINTIPP_HOST=Servidor de impresión
|
||||
PRINTIPP_PORT=Puerto
|
||||
PRINTIPP_USER=Login
|
||||
PRINTIPP_USER=Usuario
|
||||
PRINTIPP_PASSWORD=Contraseña
|
||||
NoPrinterFound=No se ha encontrado ninguna impresora (compruebe su configuración Cups)
|
||||
NoPrinterFound=No se han encontrado impresoras (Compruebe la configuración de su CUPS)
|
||||
|
||||
19
htdocs/langs/es_ES/productbatch.lang
Normal file
19
htdocs/langs/es_ES/productbatch.lang
Normal file
@ -0,0 +1,19 @@
|
||||
# ProductBATCH language file - en_US - ProductBATCH
|
||||
ManageLotSerial=Gestionar lotes/series
|
||||
ProductStatusOnBatch=Gestionado
|
||||
ProductStatusNotOnBatch=No gestionado
|
||||
ProductStatusOnBatchShort=Gestionado
|
||||
ProductStatusNotOnBatchShort=No gestionado
|
||||
Batch=Lote/Serie
|
||||
atleast1batchfield=Fecha de caducidad o Fecha de venta o Lote
|
||||
batch_number=Número Lote/Serie
|
||||
l_eatby=Fecha de caducidad
|
||||
l_sellby=Fecha límite de venta
|
||||
DetailBatchNumber=Detalles del lote/serie
|
||||
DetailBatchFormat=Caducidad: %s Límite venta: %s LOTE: %s (Stock : %d)
|
||||
printBatch=Lote: %s
|
||||
printEatby=Caducidad: %s
|
||||
printSellby=Límite venta: %s
|
||||
printQty=Cant.: %d
|
||||
AddDispatchBatchLine=Añada una línea para despacho por caducidad
|
||||
BatchDefaultNumber=Indefinido
|
||||
@ -242,3 +242,8 @@ ForceUpdateChildPriceSoc=Establecer el mismo precio en las filiales de los clien
|
||||
PriceByCustomerLog=Log de precios por clientes
|
||||
MinimumPriceLimit=El precio mínimo no puede ser menor de %s
|
||||
MinimumRecommendedPrice=El precio mínimo recomendado es: %s
|
||||
PriceExpressionEditor=Editor de expresión de precios
|
||||
PriceExpressionSelected=Expresión de precios seleccionada
|
||||
PriceExpressionEditorHelp="price = 2 + 2" o "2 + 2" para indicar el precio<br>ExtraFields son variables como "#options_myextrafieldkey# * 2"<br>Existen variables especiales como #quantity# y #tva_tx#<br>Use ; para separar expresiones
|
||||
PriceMode=Modo precio
|
||||
PriceNumeric=Número
|
||||
|
||||
@ -1,36 +1,36 @@
|
||||
|
||||
MenuResourceIndex=Resources
|
||||
MenuResourceAdd=New resource
|
||||
MenuResourcePlanning=Resource planning
|
||||
DeleteResource=Delete resource
|
||||
ConfirmDeleteResourceElement=Confirm delete the resource for this element
|
||||
NoResourceInDatabase=No resource in database.
|
||||
NoResourceLinked=No resource linked
|
||||
MenuResourceIndex=Recursos
|
||||
MenuResourceAdd=Nuevo recurso
|
||||
MenuResourcePlanning=Planificación de recursos
|
||||
DeleteResource=Eliminar recurso
|
||||
ConfirmDeleteResourceElement=¿Está seguro de querer eliminar el recurso de este elemento?
|
||||
NoResourceInDatabase=Sin recursos en la base de datos.
|
||||
NoResourceLinked=Sin recursos enlazados
|
||||
|
||||
ResourcePageIndex=Resources list
|
||||
ResourceSingular=Resource
|
||||
ResourceCard=Resource card
|
||||
AddResource=Create a resource
|
||||
ResourceFormLabel_ref=Resource name
|
||||
ResourceType=Resource type
|
||||
ResourceFormLabel_description=Resource description
|
||||
ResourcePageIndex=Listado de recursos
|
||||
ResourceSingular=Recurso
|
||||
ResourceCard=Ficha recurso
|
||||
AddResource=Crear un recurso
|
||||
ResourceFormLabel_ref=Nombre recurso
|
||||
ResourceType=Tipo de recurso
|
||||
ResourceFormLabel_description=Descripción recurso
|
||||
|
||||
ResourcesLinkedToElement=Resources linked to element
|
||||
ResourcesLinkedToElement=Recursos enlazados a elemento
|
||||
|
||||
ShowResourcePlanning=Show resource planning
|
||||
GotoDate=Go to date
|
||||
ShowResourcePlanning=Ver planificación de recursos
|
||||
GotoDate=Ir a fecha
|
||||
|
||||
ResourceElementPage=Element resources
|
||||
ResourceCreatedWithSuccess=Resource successfully created
|
||||
RessourceLineSuccessfullyDeleted=Resource line successfully deleted
|
||||
RessourceLineSuccessfullyUpdated=Resource line successfully updated
|
||||
ResourceLinkedWithSuccess=Resource linked with success
|
||||
ResourceElementPage=Elementos de recursos
|
||||
ResourceCreatedWithSuccess=Recurso creado correctamente
|
||||
RessourceLineSuccessfullyDeleted=Línea de recurso eliminada correctamente
|
||||
RessourceLineSuccessfullyUpdated=Línea de recurso actualizada correctamente
|
||||
ResourceLinkedWithSuccess=Recurso enlazado correctamente
|
||||
|
||||
TitleResourceCard=Resource card
|
||||
ConfirmDeleteResource=Confirm to delete this resource
|
||||
RessourceSuccessfullyDeleted=Resource successfully deleted
|
||||
DictionaryResourceType=Type of resources
|
||||
TitleResourceCard=Ficha recurso
|
||||
ConfirmDeleteResource=¿Está seguro de querer eliminar este recurso?
|
||||
RessourceSuccessfullyDeleted=Recurso eliminado correctamente
|
||||
DictionaryResourceType=Tipo de recursos
|
||||
|
||||
DictionaryEMailTemplates=Modèles d'Emails
|
||||
DictionaryEMailTemplates=Modelo de E-Mails
|
||||
|
||||
SelectResource=Select resource
|
||||
SelectResource=Seleccionar recurso
|
||||
|
||||
@ -61,8 +61,8 @@ ShipmentCreationIsDoneFromOrder=De momento, la creación de una nueva expedició
|
||||
RelatedShippings=Expedición(es) asociada(s)
|
||||
ShipmentLine=Línea de expedición
|
||||
CarrierList=Listado de transportistas
|
||||
SendingRunning=Product from customer order already sent
|
||||
SuppliersReceiptRunning=Product from supplier order already received
|
||||
SendingRunning=Ya ha sido enviado el producto del pedido de cliente
|
||||
SuppliersReceiptRunning=Ya ha sido recibido el producto del pedido a proveedor
|
||||
|
||||
# Sending methods
|
||||
SendingMethodCATCH=Recogido por el cliente
|
||||
|
||||
@ -23,7 +23,7 @@ ErrorWarehouseLabelRequired=La etiqueta del almacén es obligatoria
|
||||
CorrectStock=Corregir stock
|
||||
ListOfWarehouses=Listado de almacenes
|
||||
ListOfStockMovements=Listado de movimientos de stock
|
||||
StocksArea=Warehouses area
|
||||
StocksArea=Área almacenes
|
||||
Location=Lugar
|
||||
LocationSummary=Nombre corto del lugar
|
||||
NumberOfDifferentProducts=Número de productos diferentes
|
||||
|
||||
@ -102,7 +102,7 @@ UserDisabled=Usuario %s deshailitado
|
||||
UserEnabled=Usuario %s activado
|
||||
UserDeleted=Usuario %s eliminado
|
||||
NewGroupCreated=Grupo %s creado
|
||||
GroupModified=Group %s modified
|
||||
GroupModified=Grupo %s modificado
|
||||
GroupDeleted=Grupo %s eliminado
|
||||
ConfirmCreateContact=¿Está seguro de querer crear una cuenta Dolibarr para este contacto?
|
||||
ConfirmCreateLogin=¿Está seguro de que desea crear una cuenta Dolibarr para este miembro?
|
||||
|
||||
@ -16,7 +16,7 @@ WithdrawedBills=Facturas domiciliadas
|
||||
WithdrawalsLines=Lineas de domiciliación
|
||||
RequestStandingOrderToTreat=Peticiones de domiciliaciones a procesar
|
||||
RequestStandingOrderTreated=Peticiones de domiciliaciones procesadas
|
||||
NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines.
|
||||
NotPossibleForThisStatusOfWithdrawReceiptORLine=Todavía no es posible. El estado de la domiciliación debe ser 'abonada' antes de poder realizar devoluciones a sus líneas
|
||||
CustomersStandingOrders=Domiciliaciones de clientes
|
||||
CustomerStandingOrder=Domiciliación cliente
|
||||
NbOfInvoiceToWithdraw=Nº de facturas pendientes de domiciliación
|
||||
@ -47,7 +47,7 @@ RefusedData=Fecha de devolución
|
||||
RefusedReason=Motivo de devolución
|
||||
RefusedInvoicing=Facturación de la devolución
|
||||
NoInvoiceRefused=No facturar la devolución
|
||||
InvoiceRefused=Invoice refused (Charge the rejection to customer)
|
||||
InvoiceRefused=Factura rechazada (Cargar los gastos al cliente)
|
||||
Status=Estado
|
||||
StatusUnknown=Desconocido
|
||||
StatusWaiting=En espera
|
||||
@ -76,7 +76,7 @@ WithBankUsingRIB=Para las cuentas bancarias que utilizan CCC
|
||||
WithBankUsingBANBIC=Para las cuentas bancarias que utilizan el código BAN/BIC/SWIFT
|
||||
BankToReceiveWithdraw=Cuenta bancaria receptora de las domiciliaciones
|
||||
CreditDate=Abonada el
|
||||
WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported)
|
||||
WithdrawalFileNotCapable=No es posible generar el fichero bancario de domiciliación para el país %s (El país no está soportado)
|
||||
ShowWithdraw=Ver domiciliación
|
||||
IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Sin embargo, si la factura tiene pendiente algún pago por domiciliación, no será cerrada para permitir la gestión de la domiciliación.
|
||||
DoStandingOrdersBeforePayments=Esta pestaña le permite realizar una petición de domiciliación. Una vez terminada, puede ingresar el pago en la factura para proceder a su cierre.
|
||||
|
||||
@ -10,7 +10,7 @@ batch_number= Numéro de lot
|
||||
l_eatby= DLC
|
||||
l_sellby= DLUO
|
||||
DetailBatchNumber= Détails des lots
|
||||
DetailBatchFormat= C:%s UO: %s LOT: %s (Qté : %d)
|
||||
DetailBatchFormat= Lot/Serie: %s - C:%s - UO: %s (Qté : %d)
|
||||
printBatch= Lot: %s
|
||||
printEatby= DLC: %s
|
||||
printSellby= DLUO: %s
|
||||
|
||||
@ -123,7 +123,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST))
|
||||
$result = $db->query($sql);
|
||||
$nbtotalofrecords = $db->num_rows($result);
|
||||
}
|
||||
$sql.= " WHERE p.entity = ".getEntity('survey');
|
||||
$sql.= " WHERE p.entity = ".getEntity('survey',1);
|
||||
if ($status == 'expired') $sql.=" AND date_fin < '".$db->idate($now)."'";
|
||||
if ($status == 'opened') $sql.=" AND date_fin >= '".$db->idate($now)."'";
|
||||
if ($surveytitle) $sql.=" AND titre LIKE '%".$db->escape($surveytitle)."%'";
|
||||
|
||||
@ -1122,7 +1122,7 @@ else
|
||||
|
||||
// Batch number managment
|
||||
if ($conf->productbatch->enabled) {
|
||||
print '<tr><td>'.$langs->trans("ManageLotSerial").'</td><td colspan="2">';
|
||||
print '<tr><td>'.$langs->trans("ManageLotSerial").'</td><td colspan="3">';
|
||||
$statutarray=array('0' => $langs->trans("ProductStatusNotOnBatch"), '1' => $langs->trans("ProductStatusOnBatch"));
|
||||
print $form->selectarray('status_batch',$statutarray,$object->status_batch);
|
||||
print '</td></tr>';
|
||||
|
||||
@ -298,7 +298,7 @@ class Project extends CommonObject
|
||||
else if (! empty($ref))
|
||||
{
|
||||
$sql.= " WHERE ref='".$this->db->escape($ref)."'";
|
||||
$sql.= " AND entity IN (".getEntity('project').")";
|
||||
$sql.= " AND entity IN (".getEntity('project',1).")";
|
||||
}
|
||||
|
||||
dol_syslog(get_class($this)."::fetch", LOG_DEBUG);
|
||||
@ -910,7 +910,7 @@ class Project extends CommonObject
|
||||
$sql.= ", " . MAIN_DB_PREFIX . "element_contact as ec";
|
||||
$sql.= ", " . MAIN_DB_PREFIX . "c_type_contact as ctc";
|
||||
}
|
||||
$sql.= " WHERE p.entity IN (".getEntity('project').")";
|
||||
$sql.= " WHERE p.entity IN (".getEntity('project',1).")";
|
||||
// Internal users must see project he is contact to even if project linked to a third party he can't see.
|
||||
//if ($socid || ! $user->rights->societe->client->voir) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")";
|
||||
if ($socid > 0) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = " . $socid . ")";
|
||||
|
||||
@ -388,7 +388,7 @@ class Resource extends CommonObject
|
||||
$sql.= " ty.label as type_label";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."resource as t";
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_type_resource as ty ON ty.code=t.fk_code_type_resource";
|
||||
//$sql.= " WHERE t.entity IN (".getEntity('resource').")";
|
||||
$sql.= " WHERE t.entity IN (".getEntity('resource',1).")";
|
||||
|
||||
//Manage filter
|
||||
if (!empty($filter)){
|
||||
@ -402,7 +402,7 @@ class Resource extends CommonObject
|
||||
}
|
||||
}
|
||||
$sql.= " GROUP BY t.rowid";
|
||||
$sql.= " ORDER BY $sortfield $sortorder ";
|
||||
$sql.= $this->db->order($sortfield,$sortorder);
|
||||
if ($limit) $sql.= $this->db->plimit($limit+1,$offset);
|
||||
dol_syslog(get_class($this)."::fetch_all", LOG_DEBUG);
|
||||
|
||||
@ -462,7 +462,7 @@ class Resource extends CommonObject
|
||||
$sql.= " t.fk_user_create,";
|
||||
$sql.= " t.tms";
|
||||
$sql.= ' FROM '.MAIN_DB_PREFIX .'element_resources as t ';
|
||||
//$sql.= " WHERE t.entity IN (".getEntity('resource').")";
|
||||
$sql.= " WHERE t.entity IN (".getEntity('resource',1).")";
|
||||
|
||||
//Manage filter
|
||||
if (!empty($filter)){
|
||||
@ -476,7 +476,8 @@ class Resource extends CommonObject
|
||||
}
|
||||
}
|
||||
$sql.= " GROUP BY t.rowid";
|
||||
$sql.= " ORDER BY $sortfield $sortorder " . $this->db->plimit($limit+1,$offset);
|
||||
$sql.= $this->db->order($sortfield,$sortorder);
|
||||
if ($limit) $sql.= $this->db->plimit($limit+1,$offset);
|
||||
dol_syslog(get_class($this)."::fetch_all", LOG_DEBUG);
|
||||
|
||||
$resql=$this->db->query($sql);
|
||||
@ -547,7 +548,7 @@ class Resource extends CommonObject
|
||||
$sql.= " t.fk_user_create,";
|
||||
$sql.= " t.tms";
|
||||
$sql.= ' FROM '.MAIN_DB_PREFIX .'element_resources as t ';
|
||||
//$sql.= " WHERE t.entity IN (".getEntity('resource').")";
|
||||
$sql.= " WHERE t.entity IN (".getEntity('resource',1).")";
|
||||
|
||||
//Manage filter
|
||||
if (!empty($filter)){
|
||||
@ -561,7 +562,8 @@ class Resource extends CommonObject
|
||||
}
|
||||
}
|
||||
$sql.= " GROUP BY t.resource_id";
|
||||
$sql.= " ORDER BY " . $sortfield . " " . $sortorder . " " . $this->db->plimit($limit+1,$offset);
|
||||
$sql.= $this->db->order($sortfield,$sortorder);
|
||||
if ($limit) $sql.= $this->db->plimit($limit+1,$offset);
|
||||
dol_syslog(get_class($this)."::fetch_all", LOG_DEBUG);
|
||||
|
||||
$resql=$this->db->query($sql);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user