31require_once DOL_DOCUMENT_ROOT.
'/core/modules/product_batch/modules_product_batch.class.php';
43 public $version =
'dolibarr';
53 public $name =
'sn_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="updateMaskSN">';
77 $texte .=
'<input type="hidden" name="maskconstSN" value="SN_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="maskSN" 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=setmaskssn&token='.
newToken().
'&value=0">'.
img_picto($langs->trans(
"Enabled"),
'on').
'</a>';
98 $texte .=
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmaskssn&token='.
newToken().
'&value=1">'.
img_picto($langs->trans(
"Disabled"),
'off').
'</a>';
100 $texte .=
' '.$langs->trans(
'CustomMasks').
"\n";
105 $texte .=
'</table>';
120 require_once DOL_DOCUMENT_ROOT .
'/societe/class/societe.class.php';
122 $thirdparty =
new Societe($db);
123 $thirdparty->initAsSpecimen();
128 $numExample = $langs->trans(
'NotConfigured');
144 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 third parties objects (customers, suppliers, prospects...)
Class to manage Batch numbering rules advanced.
info($langs)
Returns the description of the numbering model.
getNextValue($objsoc, $object)
Return next free value.
getExample()
Return an example of numbering.
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.