31require_once DOL_DOCUMENT_ROOT.
'/core/modules/product_batch/modules_product_batch.class.php';
43 public $version =
'dolibarr';
53 public $name =
'lot_advanced';
62 public function info($langs)
64 global $conf, $langs, $db;
66 $langs->load(
"bills");
68 $form =
new Form($db);
73 $texte = $langs->trans(
'GenericNumRefModelDesc').
"<br>\n";
74 $texte .=
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST">';
75 $texte .=
'<input type="hidden" name="token" value="'.newToken().
'">';
76 $texte .=
'<input type="hidden" name="action" value="updateMaskLot">';
77 $texte .=
'<input type="hidden" name="maskconstLot" value="LOT_ADVANCED_MASK">';
78 $texte .=
'<table class="nobordernopadding" width="100%">';
80 $tooltip = $langs->trans(
"GenericMaskCodes", $langs->transnoentities(
"Batch"), $langs->transnoentities(
"Batch"));
81 $tooltip .= $langs->trans(
"GenericMaskCodes2");
82 $tooltip .= $langs->trans(
"GenericMaskCodes3");
83 $tooltip .= $langs->trans(
"GenericMaskCodes4a", $langs->transnoentities(
"Batch"), $langs->transnoentities(
"Batch"));
84 $tooltip .= $langs->trans(
"GenericMaskCodes5");
88 $texte .=
'<tr><td>'.$langs->trans(
"Mask").
':</td>';
89 $texte .=
'<td class="right">'.$form->textwithpicto(
'<input type="text" class="flat minwidth175" name="maskLot" value="'.$mask.
'">', $tooltip, 1, 1).
'</td>';
91 $texte .=
'<td class="left" rowspan="2"> <input type="submit" class="button button-edit reposition smallpaddingimp" name="Button" value="'.$langs->trans(
"Modify").
'"></td>';
94 $texte .=
'<td class="right">';
96 $texte .=
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmaskslot&token='.
newToken().
'&value=0">'.
img_picto($langs->trans(
"Enabled"),
'on').
'</a>';
98 $texte .=
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmaskslot&token='.
newToken().
'&value=1">'.
img_picto($langs->trans(
"Disabled"),
'off').
'</a>';
100 $texte .=
' '.$langs->trans(
'CustomMasks').
"\n";
105 $texte .=
'</table>';
118 global $langs, $mysoc;
120 $old_code_client = $mysoc->code_client;
121 $old_code_type = $mysoc->typent_code;
122 $mysoc->code_client =
'CCCCCCCCCC';
123 $mysoc->typent_code =
'TTTTTTTTTT';
125 $mysoc->code_client = $old_code_client;
126 $mysoc->typent_code = $old_code_type;
129 $numExample = $langs->trans(
'NotConfigured');
145 require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
152 $res = $product->fetch(
$object->fk_product);
153 if ($res > 0 && !empty($product->batch_mask)) {
154 $mask = $product->batch_mask;
160 $this->error =
'NotConfigured';
166 $numFinal =
get_next_value($db, $mask,
'product_lot',
'batch', $filter,
null, $date);
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
Parent class to manage numbering of batch products.
Class to manage products or services.
Class to manage Batch numbering rules advanced.
getNextValue($objsoc, $object)
Return next free value.
getExample()
Return an example of numbering.
info($langs)
Returns the description of the numbering model.
get_next_value($db, $mask, $table, $field, $where='', $objsoc='', $date='', $mode='next', $bentityon=true, $objuser=null, $forceentity=null)
Return last or next value for a mask (according to area we should not reset)
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
dol_now($mode='auto')
Return date for now.
newToken()
Return the value of token currently saved into session with name 'newtoken'.
getDolGlobalString($key, $default='')
Return a Dolibarr global constant string value.