30 require_once DOL_DOCUMENT_ROOT.
'/core/modules/product_batch/modules_product_batch.class.php';
42 public $version =
'dolibarr';
52 public $name =
'sn_advanced';
62 global $conf, $langs, $db;
64 $langs->load(
"bills");
71 $texte = $langs->trans(
'GenericNumRefModelDesc').
"<br>\n";
72 $texte .=
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST">';
73 $texte .=
'<input type="hidden" name="token" value="'.newToken().
'">';
74 $texte .=
'<input type="hidden" name="action" value="updateMaskSN">';
75 $texte .=
'<input type="hidden" name="maskconstSN" value="SN_ADVANCED_MASK">';
76 $texte .=
'<table class="nobordernopadding" width="100%">';
78 $tooltip = $langs->trans(
"GenericMaskCodes", $langs->transnoentities(
"Batch"), $langs->transnoentities(
"Batch"));
79 $tooltip .= $langs->trans(
"GenericMaskCodes2");
80 $tooltip .= $langs->trans(
"GenericMaskCodes3");
81 $tooltip .= $langs->trans(
"GenericMaskCodes4a", $langs->transnoentities(
"Batch"), $langs->transnoentities(
"Batch"));
82 $tooltip .= $langs->trans(
"GenericMaskCodes5");
85 $texte .=
'<tr><td>'.$langs->trans(
"Mask").
':</td>';
86 $texte .=
'<td class="right">'.$form->textwithpicto(
'<input type="text" class="flat minwidth175" name="maskSN" value="'.$mask.
'">', $tooltip, 1, 1).
'</td>';
88 $texte .=
'<td class="left" rowspan="2"> <input type="submit" class="button button-edit" name="Button" value="'.$langs->trans(
"Modify").
'"></td>';
91 $texte .=
'<td class="right">';
92 if (!empty($conf->global->PRODUCTBATCH_SN_USE_PRODUCT_MASKS)) {
93 $texte .=
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmaskssn&token='.
newToken().
'&value=0">'.
img_picto($langs->trans(
"Enabled"),
'on').
'</a>';
95 $texte .=
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmaskssn&token='.
newToken().
'&value=1">'.
img_picto($langs->trans(
"Disabled"),
'off').
'</a>';
97 $texte .=
' '.$langs->trans(
'CustomMasks').
"\n";
102 $texte .=
'</table>';
115 global $conf, $langs, $mysoc;
117 $old_code_client = $mysoc->code_client;
118 $old_code_type = $mysoc->typent_code;
119 $mysoc->code_client =
'CCCCCCCCCC';
120 $mysoc->typent_code =
'TTTTTTTTTT';
122 $mysoc->code_client = $old_code_client;
123 $mysoc->typent_code = $old_code_type;
126 $numExample = $langs->trans(
'NotConfigured');
142 require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
148 $this->error =
'NotConfigured';
154 $numFinal =
get_next_value($db, $mask,
'product_lot',
'batch',
'', null, $date);
if($cancel &&!$id) if($action== 'add'&&!$cancel) if($action== 'delete') if($id) $form
Actions.
getNextValue($objsoc, $object)
Return next free value.
dol_now($mode= 'auto')
Return date for now.
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)
if(!function_exists('utf8_encode')) if(!function_exists('utf8_decode')) getDolGlobalString($key, $default= '')
Return dolibarr global constant string value.
info()
Returns the description of the numbering model.
Parent class to manage numbering of batch products.
img_picto($titlealt, $picto, $moreatt= '', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt= '', $morecss= '', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
getExample()
Return an example of numbering.
newToken()
Return the value of token currently saved into session with name 'newtoken'.
Class to manage Batch numbering rules advanced.