Debug BOM and MO module

This commit is contained in:
Laurent Destailleur 2019-11-09 19:47:49 +01:00
parent 274ddaa1be
commit 5b6ace387e
11 changed files with 36 additions and 28 deletions

View File

@ -79,6 +79,7 @@ $permissionnote=$user->rights->bom->write; // Used by the include of actions_set
$permissiondellink=$user->rights->bom->write; // Used by the include of actions_dellink.inc.php
$permissiontoadd=$user->rights->bom->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->bom->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
$upload_dir = $conf->bom->multidir_output[isset($object->entity)?$object->entity:1];
/*

View File

@ -88,7 +88,8 @@ class BOM extends CommonObject
*/
public $fields=array(
'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>"Id",),
'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'noteditable'=>1, 'visible'=>4, 'position'=>10, 'notnull'=>1, 'default'=>'(PROV)', 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of BOM", 'showoncombobox'=>'1',),
'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'notnull'=> 1, 'default'=>1, 'index'=>1, 'position'=>5),
'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'noteditable'=>1, 'visible'=>4, 'position'=>10, 'notnull'=>1, 'default'=>'(PROV)', 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of BOM", 'showoncombobox'=>'1',),
'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'notnull'=>1, 'searchall'=>1, 'showoncombobox'=>'1',),
'description' => array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>-1, 'position'=>60, 'notnull'=>-1,),
'fk_product' => array('type'=>'integer:Product:product/class/product.class.php:1:(finished IS NULL or finished <> 0)', 'label'=>'Product', 'enabled'=>1, 'visible'=>1, 'position'=>35, 'notnull'=>1, 'index'=>1, 'help'=>'ProductBOMHelp'),

View File

@ -110,27 +110,32 @@ if ($action == 'builddoc' && $permissiontoadd)
// Delete file in doc form
if ($action == 'remove_file' && $permissiontoadd)
{
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
if (! empty($upload_dir)) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
if (empty($object->id) || ! $object->id > 0)
{
// Reload to get all modified line records and be ready for hooks
$ret = $object->fetch($id);
$ret = $object->fetch_thirdparty();
}
if (empty($object->id) || ! $object->id > 0)
{
// Reload to get all modified line records and be ready for hooks
$ret = $object->fetch($id);
$ret = $object->fetch_thirdparty();
}
$langs->load("other");
$filetodelete=GETPOST('file', 'alpha');
$file = $upload_dir . '/' . $filetodelete;
$ret=dol_delete_file($file, 0, 0, 0, $object);
if ($ret) setEventMessages($langs->trans("FileWasRemoved", $filetodelete), null, 'mesgs');
else setEventMessages($langs->trans("ErrorFailToDeleteFile", $filetodelete), null, 'errors');
$langs->load("other");
$filetodelete=GETPOST('file', 'alpha');
$file = $upload_dir . '/' . $filetodelete;
$ret=dol_delete_file($file, 0, 0, 0, $object);
if ($ret) setEventMessages($langs->trans("FileWasRemoved", $filetodelete), null, 'mesgs');
else setEventMessages($langs->trans("ErrorFailToDeleteFile", $filetodelete), null, 'errors');
// Make a redirect to avoid to keep the remove_file into the url that create side effects
$urltoredirect = $_SERVER['REQUEST_URI'];
$urltoredirect = preg_replace('/#builddoc$/', '', $urltoredirect);
$urltoredirect = preg_replace('/action=remove_file&?/', '', $urltoredirect);
// Make a redirect to avoid to keep the remove_file into the url that create side effects
$urltoredirect = $_SERVER['REQUEST_URI'];
$urltoredirect = preg_replace('/#builddoc$/', '', $urltoredirect);
$urltoredirect = preg_replace('/action=remove_file&?/', '', $urltoredirect);
header('Location: '.$urltoredirect);
exit;
header('Location: '.$urltoredirect);
exit;
}
else {
setEventMessages('BugFoundVarUploaddirnotDefined', null, 'errors');
}
}

View File

@ -237,7 +237,7 @@ class doc_generic_bom_odt extends ModelePDFBom
}
}
$dir = $conf->bom->multidir_output[$object->entity];
$dir = $conf->bom->multidir_output[isset($object->entity)?$object->entity:1];
$objectref = dol_sanitizeFileName($object->ref);
if (! preg_match('/specimen/i', $objectref)) $dir.= "/" . $objectref;
$file = $dir . "/" . $objectref . ".odt";

View File

@ -27,7 +27,7 @@
* \brief File of class to build ODT documents for MOs
*/
require_once DOL_DOCUMENT_ROOT.'/core/modules/mrp/modules_mrp.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/mrp/modules_mo.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
@ -244,7 +244,7 @@ class doc_generic_mo_odt extends ModelePDFMo
}
}
$dir = $conf->mrp->multidir_output[$object->entity];
$dir = $conf->mrp->multidir_output[isset($object->entity)?$object->entity:1];
$objectref = dol_sanitizeFileName($object->ref);
if (! preg_match('/specimen/i', $objectref)) $dir.= "/" . $objectref;
$file = $dir . "/" . $objectref . ".odt";

View File

@ -26,7 +26,7 @@
* \brief File containing class for numbering model of MOs advanced
*/
require_once DOL_DOCUMENT_ROOT .'/core/modules/mrp/modules_mrp.php';
require_once DOL_DOCUMENT_ROOT .'/core/modules/mrp/modules_mo.php';
/**

View File

@ -22,7 +22,7 @@
* \ingroup mrp
* \brief File of class to manage MO numbering rules standard
*/
require_once DOL_DOCUMENT_ROOT .'/core/modules/mrp/modules_mrp.php';
require_once DOL_DOCUMENT_ROOT .'/core/modules/mrp/modules_mo.php';
/**
* Class to manage MO numbering rules standard

View File

@ -244,7 +244,7 @@ class doc_generic_myobject_odt extends ModelePDFMyObject
}
}
$dir = $conf->commande->multidir_output[$object->entity];
$dir = $conf->commande->multidir_output[isset($object->entity)?$object->entity:1];
$objectref = dol_sanitizeFileName($object->ref);
if (! preg_match('/specimen/i', $objectref)) $dir.= "/" . $objectref;
$file = $dir . "/" . $objectref . ".odt";

View File

@ -110,7 +110,7 @@ $permissiontoadd = $user->rights->mymodule->myobject->write; // Used by the inc
$permissiontodelete = $user->rights->mymodule->myobject->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
$permissionnote = $user->rights->mymodule->myobject->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink = $user->rights->mymodule->myobject->write; // Used by the include of actions_dellink.inc.php
$upload_dir = $conf->mymodule->multidir_output[isset($object->entity)?$object->entity:1];
/*

View File

@ -92,8 +92,8 @@ class Mo extends CommonObject
*/
public $fields=array(
'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>"Id",),
'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'position'=>5, 'notnull'=>1, 'default'=>'1', 'index'=>1,),
'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>4, 'position'=>10, 'notnull'=>1, 'default'=>'(PROV)', 'index'=>1, 'searchall'=>1, 'comment'=>"Reference of object", 'showoncombobox'=>'1',),
'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'position'=>20, 'notnull'=>1, 'default'=>'1', 'index'=>1,),
'fk_bom' => array('type'=>'integer:Bom:bom/class/bom.class.php:0:t.status=1', 'filter'=>'active=1', 'label'=>'BOM', 'enabled'=>1, 'visible'=>1, 'position'=>33, 'notnull'=>-1, 'index'=>1, 'comment'=>"Original BOM",),
'fk_product' => array('type'=>'integer:Product:product/class/product.class.php:1', 'label'=>'Product', 'enabled'=>1, 'visible'=>1, 'position'=>35, 'notnull'=>1, 'index'=>1, 'comment'=>"Product to produce",),
'qty' => array('type'=>'real', 'label'=>'QtyToProduce', 'enabled'=>1, 'visible'=>1, 'position'=>40, 'notnull'=>1, 'comment'=>"Qty to produce",),

View File

@ -97,6 +97,7 @@ $permissionnote = $user->rights->mrp->write; // Used by the include of actions_s
$permissiondellink = $user->rights->mrp->write; // Used by the include of actions_dellink.inc.php
$permissiontoadd = $user->rights->mrp->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->mrp->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
$upload_dir = $conf->mrp->multidir_output[isset($object->entity)?$object->entity:1];
/*