To answer to this query :
http://www.dolibarr.fr/forum/12-howto--aide/20784-delais-de-livraison#24930
This commit is contained in:
parent
d8937157bf
commit
0f584ef6a2
@ -18,9 +18,9 @@
|
|||||||
; ----- Change this -----
|
; ----- Change this -----
|
||||||
AppName=DoliWamp
|
AppName=DoliWamp
|
||||||
; DoliWamp-x.x.x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta
|
; DoliWamp-x.x.x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta
|
||||||
AppVerName=DoliWamp-3.1.0-alpha
|
AppVerName=DoliWamp-3.0.0-beta
|
||||||
; DoliWamp-x.x x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta
|
; DoliWamp-x.x x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta
|
||||||
OutputBaseFilename=DoliWamp-3.1.0-alpha
|
OutputBaseFilename=DoliWamp-3.0.0-beta
|
||||||
; Define full path from wich all relative path are defined
|
; Define full path from wich all relative path are defined
|
||||||
; You must modify this to put here your dolibarr root directory
|
; You must modify this to put here your dolibarr root directory
|
||||||
SourceDir=C:\Work\Data\Workspace\dolibarr
|
SourceDir=C:\Work\Data\Workspace\dolibarr
|
||||||
|
|||||||
@ -52,7 +52,7 @@ $active = 1;
|
|||||||
// Mettre ici tous les caracteristiques des dictionnaires
|
// Mettre ici tous les caracteristiques des dictionnaires
|
||||||
|
|
||||||
// Ordres d'affichage des dictionnaires (0 pour espace)
|
// Ordres d'affichage des dictionnaires (0 pour espace)
|
||||||
$taborder=array(9,0,4,3,2,0,1,8,19,16,0,5,11,0,6,0,10,12,13,0,14,0,7,17,0,20,18,0,15);
|
$taborder=array(9,0,4,3,2,0,1,8,19,16,0,5,11,0,6,0,10,12,13,0,14,0,7,17,0,20,18,21,0,15);
|
||||||
|
|
||||||
// Nom des tables des dictionnaires
|
// Nom des tables des dictionnaires
|
||||||
$tabname[1] = MAIN_DB_PREFIX."c_forme_juridique";
|
$tabname[1] = MAIN_DB_PREFIX."c_forme_juridique";
|
||||||
@ -75,6 +75,7 @@ $tabname[17]= MAIN_DB_PREFIX."c_type_fees";
|
|||||||
$tabname[18]= MAIN_DB_PREFIX."c_shipment_mode";
|
$tabname[18]= MAIN_DB_PREFIX."c_shipment_mode";
|
||||||
$tabname[19]= MAIN_DB_PREFIX."c_effectif";
|
$tabname[19]= MAIN_DB_PREFIX."c_effectif";
|
||||||
$tabname[20]= MAIN_DB_PREFIX."c_methode_commande_fournisseur";
|
$tabname[20]= MAIN_DB_PREFIX."c_methode_commande_fournisseur";
|
||||||
|
$tabname[21]= MAIN_DB_PREFIX."c_delivery";
|
||||||
|
|
||||||
// Dictionary labels
|
// Dictionary labels
|
||||||
$tablib[1] = "DictionnaryCompanyJuridicalType";
|
$tablib[1] = "DictionnaryCompanyJuridicalType";
|
||||||
@ -97,6 +98,7 @@ $tablib[17]= "DictionnaryFees";
|
|||||||
$tablib[18]= "DictionnarySendingMethods";
|
$tablib[18]= "DictionnarySendingMethods";
|
||||||
$tablib[19]= "DictionnaryStaff";
|
$tablib[19]= "DictionnaryStaff";
|
||||||
$tablib[20]= "DictionnaryOrderMethods";
|
$tablib[20]= "DictionnaryOrderMethods";
|
||||||
|
$tablib[21]= "DictionnaryDelivery";
|
||||||
|
|
||||||
// Requete pour extraction des donnees des dictionnaires
|
// Requete pour extraction des donnees des dictionnaires
|
||||||
$tabsql[1] = "SELECT f.rowid as rowid, f.code, f.libelle, p.code as pays_code, p.libelle as pays, f.active FROM ".MAIN_DB_PREFIX."c_forme_juridique as f, ".MAIN_DB_PREFIX."c_pays as p WHERE f.fk_pays=p.rowid";
|
$tabsql[1] = "SELECT f.rowid as rowid, f.code, f.libelle, p.code as pays_code, p.libelle as pays, f.active FROM ".MAIN_DB_PREFIX."c_forme_juridique as f, ".MAIN_DB_PREFIX."c_pays as p WHERE f.fk_pays=p.rowid";
|
||||||
@ -119,6 +121,7 @@ $tabsql[17]= "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREF
|
|||||||
$tabsql[18]= "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_shipment_mode";
|
$tabsql[18]= "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_shipment_mode";
|
||||||
$tabsql[19]= "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_effectif";
|
$tabsql[19]= "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_effectif";
|
||||||
$tabsql[20]= "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_methode_commande_fournisseur";
|
$tabsql[20]= "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_methode_commande_fournisseur";
|
||||||
|
$tabsql[21]= "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_delivery";
|
||||||
|
|
||||||
// Critere de tri du dictionnaire
|
// Critere de tri du dictionnaire
|
||||||
$tabsqlsort[1] ="pays ASC, code ASC";
|
$tabsqlsort[1] ="pays ASC, code ASC";
|
||||||
@ -141,6 +144,7 @@ $tabsqlsort[17]="code ASC";
|
|||||||
$tabsqlsort[18]="code ASC, libelle ASC";
|
$tabsqlsort[18]="code ASC, libelle ASC";
|
||||||
$tabsqlsort[19]="id ASC";
|
$tabsqlsort[19]="id ASC";
|
||||||
$tabsqlsort[20]="code ASC, libelle ASC";
|
$tabsqlsort[20]="code ASC, libelle ASC";
|
||||||
|
$tabsqlsort[21]="code ASC, libelle ASC";
|
||||||
|
|
||||||
// Nom des champs en resultat de select pour affichage du dictionnaire
|
// Nom des champs en resultat de select pour affichage du dictionnaire
|
||||||
$tabfield[1] = "code,libelle,pays";
|
$tabfield[1] = "code,libelle,pays";
|
||||||
@ -163,6 +167,7 @@ $tabfield[17]= "code,libelle";
|
|||||||
$tabfield[18]= "code,libelle";
|
$tabfield[18]= "code,libelle";
|
||||||
$tabfield[19]= "code,libelle";
|
$tabfield[19]= "code,libelle";
|
||||||
$tabfield[20]= "code,libelle";
|
$tabfield[20]= "code,libelle";
|
||||||
|
$tabfield[21]= "code,libelle";
|
||||||
|
|
||||||
// Nom des champs d'edition pour modification d'un enregistrement
|
// Nom des champs d'edition pour modification d'un enregistrement
|
||||||
$tabfieldvalue[1] = "code,libelle,pays";
|
$tabfieldvalue[1] = "code,libelle,pays";
|
||||||
@ -185,6 +190,7 @@ $tabfieldvalue[17]= "code,libelle";
|
|||||||
$tabfieldvalue[18]= "code,libelle";
|
$tabfieldvalue[18]= "code,libelle";
|
||||||
$tabfieldvalue[19]= "code,libelle";
|
$tabfieldvalue[19]= "code,libelle";
|
||||||
$tabfieldvalue[20]= "code,libelle";
|
$tabfieldvalue[20]= "code,libelle";
|
||||||
|
$tabfieldvalue[21]= "code,libelle";
|
||||||
|
|
||||||
// Nom des champs dans la table pour insertion d'un enregistrement
|
// Nom des champs dans la table pour insertion d'un enregistrement
|
||||||
$tabfieldinsert[1] = "code,libelle,fk_pays";
|
$tabfieldinsert[1] = "code,libelle,fk_pays";
|
||||||
@ -207,6 +213,7 @@ $tabfieldinsert[17]= "code,libelle";
|
|||||||
$tabfieldinsert[18]= "code,libelle";
|
$tabfieldinsert[18]= "code,libelle";
|
||||||
$tabfieldinsert[19]= "code,libelle";
|
$tabfieldinsert[19]= "code,libelle";
|
||||||
$tabfieldinsert[20]= "code,libelle";
|
$tabfieldinsert[20]= "code,libelle";
|
||||||
|
$tabfieldinsert[21]= "code,libelle";
|
||||||
|
|
||||||
// Nom du rowid si le champ n'est pas de type autoincrement
|
// Nom du rowid si le champ n'est pas de type autoincrement
|
||||||
// Example: "" if id field is "rowid" and has autoincrement on
|
// Example: "" if id field is "rowid" and has autoincrement on
|
||||||
@ -231,6 +238,7 @@ $tabrowid[17]= "id";
|
|||||||
$tabrowid[18]= "rowid";
|
$tabrowid[18]= "rowid";
|
||||||
$tabrowid[19]= "id";
|
$tabrowid[19]= "id";
|
||||||
$tabrowid[20]= "";
|
$tabrowid[20]= "";
|
||||||
|
$tabrowid[21]= "";
|
||||||
|
|
||||||
// Condition to show dictionnary in setup page
|
// Condition to show dictionnary in setup page
|
||||||
$tabcond[1] = true;
|
$tabcond[1] = true;
|
||||||
@ -253,6 +261,7 @@ $tabcond[17]= $conf->deplacement->enabled;
|
|||||||
$tabcond[18]= $conf->expedition->enabled;
|
$tabcond[18]= $conf->expedition->enabled;
|
||||||
$tabcond[19]= $conf->societe->enabled;
|
$tabcond[19]= $conf->societe->enabled;
|
||||||
$tabcond[20]= $conf->fournisseur->enabled;
|
$tabcond[20]= $conf->fournisseur->enabled;
|
||||||
|
$tabcond[21]= $conf->propale->enabled;
|
||||||
|
|
||||||
|
|
||||||
complete_dictionnary_with_modules($taborder,$tabname,$tablib,$tabsql,$tabsqlsort,$tabfield,$tabfieldvalue,$tabfieldinsert,$tabrowid,$tabcond);
|
complete_dictionnary_with_modules($taborder,$tabname,$tablib,$tabsql,$tabsqlsort,$tabfield,$tabfieldvalue,$tabfieldinsert,$tabrowid,$tabcond);
|
||||||
@ -856,7 +865,7 @@ function fieldList($fieldlist,$obj='')
|
|||||||
|
|
||||||
foreach ($fieldlist as $field => $value)
|
foreach ($fieldlist as $field => $value)
|
||||||
{
|
{
|
||||||
//var_dump($obj);
|
|
||||||
if ($fieldlist[$field] == 'pays') {
|
if ($fieldlist[$field] == 'pays') {
|
||||||
if (in_array('region_id',$fieldlist)) { print '<td> </td>'; continue; } // For region page, we do not show the country input
|
if (in_array('region_id',$fieldlist)) { print '<td> </td>'; continue; } // For region page, we do not show the country input
|
||||||
print '<td>';
|
print '<td>';
|
||||||
|
|||||||
@ -232,6 +232,14 @@ if ($_POST['action'] == 'setaddress' && $user->rights->propale->creer)
|
|||||||
if ($result < 0) dol_print_error($db,$object->error);
|
if ($result < 0) dol_print_error($db,$object->error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//delai de livraison
|
||||||
|
if ($_POST['action'] == 'setdelivery' && $user->rights->propale->creer)
|
||||||
|
{
|
||||||
|
$object->fetch($_GET["id"]);
|
||||||
|
$result=$object->set_delivery($user,$_POST['delivery']);
|
||||||
|
if ($result < 0) dol_print_error($db,$object->error);
|
||||||
|
}
|
||||||
|
|
||||||
// Positionne ref client
|
// Positionne ref client
|
||||||
if ($_POST['action'] == 'set_ref_client' && $user->rights->propale->creer)
|
if ($_POST['action'] == 'set_ref_client' && $user->rights->propale->creer)
|
||||||
{
|
{
|
||||||
@ -257,6 +265,7 @@ if ($_POST['action'] == 'add' && $user->rights->propale->creer)
|
|||||||
$object->ref = $_POST['ref'];
|
$object->ref = $_POST['ref'];
|
||||||
$object->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
|
$object->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
|
||||||
$object->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
|
$object->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
|
||||||
|
$object->delivery = $_POST['delivery'];
|
||||||
$object->fk_delivery_address = $_POST['fk_address'];
|
$object->fk_delivery_address = $_POST['fk_address'];
|
||||||
$object->duree_validite = $_POST['duree_validite'];
|
$object->duree_validite = $_POST['duree_validite'];
|
||||||
$object->cond_reglement_id = $_POST['cond_reglement_id'];
|
$object->cond_reglement_id = $_POST['cond_reglement_id'];
|
||||||
@ -284,6 +293,7 @@ if ($_POST['action'] == 'add' && $user->rights->propale->creer)
|
|||||||
$object->ref_client = $_POST['ref_client'];
|
$object->ref_client = $_POST['ref_client'];
|
||||||
$object->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
|
$object->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
|
||||||
$object->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
|
$object->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
|
||||||
|
$object->delivery = $_POST['delivery'];
|
||||||
$object->fk_delivery_address = $_POST['fk_address'];
|
$object->fk_delivery_address = $_POST['fk_address'];
|
||||||
$object->duree_validite = $_POST['duree_validite'];
|
$object->duree_validite = $_POST['duree_validite'];
|
||||||
$object->cond_reglement_id = $_POST['cond_reglement_id'];
|
$object->cond_reglement_id = $_POST['cond_reglement_id'];
|
||||||
@ -1261,6 +1271,25 @@ if ($id > 0 || ! empty($ref))
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Delivery
|
||||||
|
print '<tr><td>';
|
||||||
|
print '<table class="nobordernopadding" width="100%"><tr><td>';
|
||||||
|
print $langs->trans('DeliveryPeriod');
|
||||||
|
print '</td>';
|
||||||
|
if ($_GET['action'] != 'editdelivery' && $object->brouillon) print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editdelivery&id='.$object->id.'">'.img_edit($langs->trans('SetDelivery'),1).'</a></td>';
|
||||||
|
print '</tr></table>';
|
||||||
|
print '</td><td colspan="3">';
|
||||||
|
if ($_GET['action'] == 'editdelivery')
|
||||||
|
{
|
||||||
|
$html->form_delivery($_SERVER['PHP_SELF'].'?id='.$object->id,$object->delivery,'delivery');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$html->form_delivery($_SERVER['PHP_SELF'].'?id='.$object->id,$object->delivery,'none');
|
||||||
|
}
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
|
||||||
// Payment term
|
// Payment term
|
||||||
print '<tr><td>';
|
print '<tr><td>';
|
||||||
print '<table class="nobordernopadding" width="100%"><tr><td>';
|
print '<table class="nobordernopadding" width="100%"><tr><td>';
|
||||||
|
|||||||
@ -95,6 +95,7 @@ class Propal extends CommonObject
|
|||||||
var $fk_address;
|
var $fk_address;
|
||||||
var $address_type;
|
var $address_type;
|
||||||
var $adresse;
|
var $adresse;
|
||||||
|
var $delivery;
|
||||||
|
|
||||||
var $products=array();
|
var $products=array();
|
||||||
|
|
||||||
@ -617,6 +618,7 @@ class Propal extends CommonObject
|
|||||||
$sql.= ", fk_mode_reglement";
|
$sql.= ", fk_mode_reglement";
|
||||||
$sql.= ", ref_client";
|
$sql.= ", ref_client";
|
||||||
$sql.= ", date_livraison";
|
$sql.= ", date_livraison";
|
||||||
|
$sql.= ", delivery";
|
||||||
$sql.= ", entity";
|
$sql.= ", entity";
|
||||||
$sql.= ") ";
|
$sql.= ") ";
|
||||||
$sql.= " VALUES (";
|
$sql.= " VALUES (";
|
||||||
@ -639,6 +641,7 @@ class Propal extends CommonObject
|
|||||||
$sql.= ", ".$this->mode_reglement_id;
|
$sql.= ", ".$this->mode_reglement_id;
|
||||||
$sql.= ", '".$this->db->escape($this->ref_client)."'";
|
$sql.= ", '".$this->db->escape($this->ref_client)."'";
|
||||||
$sql.= ", ".($this->date_livraison!=''?"'".$this->db->idate($this->date_livraison)."'":'null');
|
$sql.= ", ".($this->date_livraison!=''?"'".$this->db->idate($this->date_livraison)."'":'null');
|
||||||
|
$sql.= ", ".$this->delivery;
|
||||||
$sql.= ", ".$conf->entity;
|
$sql.= ", ".$conf->entity;
|
||||||
$sql.= ")";
|
$sql.= ")";
|
||||||
|
|
||||||
@ -901,6 +904,7 @@ class Propal extends CommonObject
|
|||||||
$sql.= ", datep as dp";
|
$sql.= ", datep as dp";
|
||||||
$sql.= ", fin_validite as dfv";
|
$sql.= ", fin_validite as dfv";
|
||||||
$sql.= ", date_livraison as date_livraison";
|
$sql.= ", date_livraison as date_livraison";
|
||||||
|
$sql.= ", delivery";
|
||||||
$sql.= ", model_pdf, ref_client";
|
$sql.= ", model_pdf, ref_client";
|
||||||
$sql.= ", note, note_public";
|
$sql.= ", note, note_public";
|
||||||
$sql.= ", fk_projet, fk_statut";
|
$sql.= ", fk_projet, fk_statut";
|
||||||
@ -954,6 +958,7 @@ class Propal extends CommonObject
|
|||||||
$this->datep = $this->db->jdate($obj->dp);
|
$this->datep = $this->db->jdate($obj->dp);
|
||||||
$this->fin_validite = $this->db->jdate($obj->dfv);
|
$this->fin_validite = $this->db->jdate($obj->dfv);
|
||||||
$this->date_livraison = $this->db->jdate($obj->date_livraison);
|
$this->date_livraison = $this->db->jdate($obj->date_livraison);
|
||||||
|
$this->delivery = $obj->delivery;
|
||||||
$this->fk_delivery_address = $obj->fk_adresse_livraison; // TODO obsolete
|
$this->fk_delivery_address = $obj->fk_adresse_livraison; // TODO obsolete
|
||||||
$this->fk_address = $obj->fk_adresse_livraison;
|
$this->fk_address = $obj->fk_adresse_livraison;
|
||||||
|
|
||||||
@ -1226,6 +1231,34 @@ class Propal extends CommonObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Set delivery
|
||||||
|
* \param user Objet utilisateur qui modifie
|
||||||
|
* \param delivery delai de livraison
|
||||||
|
* \return int <0 si ko, >0 si ok
|
||||||
|
*/
|
||||||
|
function set_delivery($user, $delivery)
|
||||||
|
{
|
||||||
|
if ($user->rights->propale->creer)
|
||||||
|
{
|
||||||
|
$sql = "UPDATE ".MAIN_DB_PREFIX."propal ";
|
||||||
|
$sql.= " SET delivery = '".$delivery."'";
|
||||||
|
$sql.= " WHERE rowid = ".$this->id;
|
||||||
|
|
||||||
|
if ($this->db->query($sql))
|
||||||
|
{
|
||||||
|
$this->delivery = $delivery;
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$this->error=$this->db->error();
|
||||||
|
dol_syslog("Propal::set_delivery Erreur SQL");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Positionne numero reference client
|
* \brief Positionne numero reference client
|
||||||
* \param user Utilisateur qui modifie
|
* \param user Utilisateur qui modifie
|
||||||
|
|||||||
@ -1487,6 +1487,76 @@ class Form
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Charge dans cache la liste des délais de livraison possibles
|
||||||
|
* \return int Nb lignes chargees, 0 si deja chargees, <0 si ko
|
||||||
|
*/
|
||||||
|
function load_cache_delivery()
|
||||||
|
{
|
||||||
|
global $langs;
|
||||||
|
|
||||||
|
if (sizeof($this->cache_delivery)) return 0; // Cache deja charge
|
||||||
|
|
||||||
|
$sql = "SELECT rowid, code, libelle";
|
||||||
|
$sql.= " FROM ".MAIN_DB_PREFIX.'c_delivery';
|
||||||
|
$sql.= " WHERE active=1";
|
||||||
|
$sql.= " ORDER BY rowid";
|
||||||
|
dol_syslog('Form::load_cache_delivery sql='.$sql,LOG_DEBUG);
|
||||||
|
$resql = $this->db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
$num = $this->db->num_rows($resql);
|
||||||
|
$i = 0;
|
||||||
|
while ($i < $num)
|
||||||
|
{
|
||||||
|
$obj = $this->db->fetch_object($resql);
|
||||||
|
|
||||||
|
// Si traduction existe, on l'utilise, sinon on prend le libelle par defaut
|
||||||
|
$libelle=($langs->trans("DeliveryType".$obj->code)!=("DeliveryType".$obj->code)?$langs->trans("DeliveryType".$obj->code):($obj->libelle!='-'?$obj->libelle:''));
|
||||||
|
$this->cache_delivery[$obj->rowid]['code'] =$obj->code;
|
||||||
|
$this->cache_delivery[$obj->rowid]['label']=$libelle;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
dol_print_error($this->db);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Retourne la liste des types de delais de livraison possibles
|
||||||
|
* \param selected Id du type de delais pre-selectionne
|
||||||
|
* \param htmlname Nom de la zone select
|
||||||
|
* \param filtertype Pour filtre
|
||||||
|
* \param addempty Ajoute entree vide
|
||||||
|
*/
|
||||||
|
function select_delivery($selected='',$htmlname='delivery',$filtertype='',$addempty=0)
|
||||||
|
{
|
||||||
|
global $langs,$user;
|
||||||
|
|
||||||
|
$this->load_cache_delivery();
|
||||||
|
|
||||||
|
print '<select class="flat" name="'.$htmlname.'">';
|
||||||
|
if ($addempty) print '<option value="0"> </option>';
|
||||||
|
foreach($this->cache_delivery as $id => $arraydelivery)
|
||||||
|
{
|
||||||
|
if ($selected == $id)
|
||||||
|
{
|
||||||
|
print '<option value="'.$id.'" selected="selected">';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print '<option value="'.$id.'">';
|
||||||
|
}
|
||||||
|
print $arraydelivery['label'];
|
||||||
|
print '</option>';
|
||||||
|
}
|
||||||
|
print '</select>';
|
||||||
|
if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionnarySetup"),1);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Charge dans cache la liste des types de paiements possibles
|
* \brief Charge dans cache la liste des types de paiements possibles
|
||||||
* \return int Nb lignes chargees, 0 si deja chargees, <0 si ko
|
* \return int Nb lignes chargees, 0 si deja chargees, <0 si ko
|
||||||
@ -2059,6 +2129,40 @@ class Form
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Affiche formulaire de selection de delais de livraison
|
||||||
|
* \param page Page
|
||||||
|
* \param selected Id condition pre-selectionne
|
||||||
|
* \param htmlname Name of select html field
|
||||||
|
* \param addempty Ajoute entree vide
|
||||||
|
*/
|
||||||
|
function form_delivery($page, $selected='', $htmlname='delivery', $addempty=0)
|
||||||
|
{
|
||||||
|
global $langs;
|
||||||
|
if ($htmlname != "none")
|
||||||
|
{
|
||||||
|
print '<form method="post" action="'.$page.'">';
|
||||||
|
print '<input type="hidden" name="action" value="setdelivery">';
|
||||||
|
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||||
|
print '<table class="nobordernopadding" cellpadding="0" cellspacing="0">';
|
||||||
|
print '<tr><td>';
|
||||||
|
$this->select_delivery($selected,$htmlname,-1,$addempty);
|
||||||
|
print '</td>';
|
||||||
|
print '<td align="left"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td>';
|
||||||
|
print '</tr></table></form>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if ($selected)
|
||||||
|
{
|
||||||
|
$this->load_cache_delivery();
|
||||||
|
print $this->cache_delivery[$selected]['label'];
|
||||||
|
} else {
|
||||||
|
print " ";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Affiche formulaire de selection d'une date
|
* \brief Affiche formulaire de selection d'une date
|
||||||
|
|||||||
@ -42,3 +42,5 @@ ALTER TABLE llx_facturedet ADD UNIQUE INDEX uk_fk_remise_except (fk_remise_excep
|
|||||||
ALTER TABLE llx_societe ADD COLUMN fk_currency integer DEFAULT 0 AFTER fk_forme_juridique;
|
ALTER TABLE llx_societe ADD COLUMN fk_currency integer DEFAULT 0 AFTER fk_forme_juridique;
|
||||||
|
|
||||||
ALTER TABLE llx_societe_remise MODIFY remise_client double(6,3) DEFAULT 0 NOT NULL;
|
ALTER TABLE llx_societe_remise MODIFY remise_client double(6,3) DEFAULT 0 NOT NULL;
|
||||||
|
|
||||||
|
ALTER TABLE llx_propal ADD COLUMN delivery varchar(60) DEFAULT 0 NULL AFTER fk_adresse_livraison;
|
||||||
|
|||||||
39
htdocs/install/mysql/tables/llx_c_delivery.sql
Normal file
39
htdocs/install/mysql/tables/llx_c_delivery.sql
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
-- ========================================================================
|
||||||
|
-- Copyright (C) 2011 Philippe GRAND <philippe.grand@atoo-net.com>
|
||||||
|
--
|
||||||
|
-- This 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 2 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, write to the Free Software
|
||||||
|
-- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
--
|
||||||
|
-- $Id: llx_c_delivery.sql,v 1.2 2011/02/24 09:57:04 hregis Exp $
|
||||||
|
-- ========================================================================
|
||||||
|
|
||||||
|
create table llx_c_delivery
|
||||||
|
(
|
||||||
|
`rowid` int(11) NOT NULL auto_increment,
|
||||||
|
`code` varchar(30) default NULL,
|
||||||
|
`libelle` varchar(60) default NULL,
|
||||||
|
`active` tinyint(4) NOT NULL default '1',
|
||||||
|
PRIMARY KEY (`rowid`)
|
||||||
|
)ENGINE=innodb;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Contenu de la table `llx_c_delivery`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `llx_c_delivery` (`rowid`, `code`, `libelle`, `active`) VALUES
|
||||||
|
(1, 'DSP', 'Disponible', 1),
|
||||||
|
(2, 'USM', 'Une semaine', 1),
|
||||||
|
(3, 'DSM', 'Deux semaines', 1),
|
||||||
|
(4, 'TSM', 'Trois semaines', 1);
|
||||||
|
|
||||||
@ -80,6 +80,8 @@ ClonePropal=Cloner proposition commerciale
|
|||||||
ConfirmClonePropal=Êtes-vous sûr de vouloir cloner cette proposition commerciale <b>%s</b> ?
|
ConfirmClonePropal=Êtes-vous sûr de vouloir cloner cette proposition commerciale <b>%s</b> ?
|
||||||
ProposalsAndProposalsLines=Propositions commerciales clientes et lignes de propositions
|
ProposalsAndProposalsLines=Propositions commerciales clientes et lignes de propositions
|
||||||
ProposalLine=Ligne de proposition
|
ProposalLine=Ligne de proposition
|
||||||
|
DeliveryPeriod=Délai de livraison (à réception de commande)
|
||||||
|
SetDelivery=Définir le délai de livraison
|
||||||
##### Types de contacts #####
|
##### Types de contacts #####
|
||||||
TypeContact_propal_internal_SALESREPFOLL=Commercial suivi propale
|
TypeContact_propal_internal_SALESREPFOLL=Commercial suivi propale
|
||||||
TypeContact_propal_external_BILLING=Contact client facturation propale
|
TypeContact_propal_external_BILLING=Contact client facturation propale
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user