Bonjour,
Lorsque je souhaite faire une mise à jour d'une ligne d'une commande brouillon, les champs de type "CustomFields" ne s'affichent pas après avoir sauvegardé ladite ligne.
En cliquant sur l'onglet "Fiche Commande" ils réapparaissent.
La suppression et l'ajout de ligne fonctionnent correctement.
Je développe un trigger sur l'ajout de lignes (propale et commande) mais le même code fonctionne avec les propales, et pas les commande (presque le même).
J'ai noté les bugs suivants :
- Lors de l'update : le champ $object->fk_commande n'est pas renseigné, seul $object->oldline->fk_commande l'est (c'est OK pour les propales)
- fetch puis update d'un customfields contraint de type int (rowid) et null devient 0, ce qui pose problème pour les constraintes.
Le code de mon trigger :
[code type='php']
class InterfaceMontantHTNonRemise
{
var $db;
/**
* Constructor
*
* @param DoliDB $db Database handler
*/
function __construct($db)
{
$this->db = $db;
$this->name = preg_replace('/^Interface/i','',get_class($this));
$this->family = "financial";
$this->description = "Calcule le Montant HT Non Remisé";
$this->version = 'dolibarr'; // 'development', 'experimental', 'dolibarr' or version
$this->picto = 'list';
}
// .... [snip useless functions] ...
/**
* Function called when a Dolibarrr business event is done.
* All functions "run_trigger" are triggered if file is inside directory htdocs/core/triggers
*
* @param string $action Event action code
* @param Object $object Object
* @param User $user Object user
* @param Translate $langs Object langs
* @param conf $conf Object conf
* @return int <0 if KO, 0 if no triggered ran, >0 if OK
*/
function run_trigger($action,$object,$user,$langs,$conf)
{
// Put here code you want to execute when a Dolibarr business events occurs.
// Data and type of action are stored into $object and ...
Lorsque je souhaite faire une mise à jour d'une ligne d'une commande brouillon, les champs de type "CustomFields" ne s'affichent pas après avoir sauvegardé ladite ligne.
En cliquant sur l'onglet "Fiche Commande" ils réapparaissent.
La suppression et l'ajout de ligne fonctionnent correctement.
Je développe un trigger sur l'ajout de lignes (propale et commande) mais le même code fonctionne avec les propales, et pas les commande (presque le même).
J'ai noté les bugs suivants :
- Lors de l'update : le champ $object->fk_commande n'est pas renseigné, seul $object->oldline->fk_commande l'est (c'est OK pour les propales)
- fetch puis update d'un customfields contraint de type int (rowid) et null devient 0, ce qui pose problème pour les constraintes.
Le code de mon trigger :
[code type='php']
class InterfaceMontantHTNonRemise
{
var $db;
/**
* Constructor
*
* @param DoliDB $db Database handler
*/
function __construct($db)
{
$this->db = $db;
$this->name = preg_replace('/^Interface/i','',get_class($this));
$this->family = "financial";
$this->description = "Calcule le Montant HT Non Remisé";
$this->version = 'dolibarr'; // 'development', 'experimental', 'dolibarr' or version
$this->picto = 'list';
}
// .... [snip useless functions] ...
/**
* Function called when a Dolibarrr business event is done.
* All functions "run_trigger" are triggered if file is inside directory htdocs/core/triggers
*
* @param string $action Event action code
* @param Object $object Object
* @param User $user Object user
* @param Translate $langs Object langs
* @param conf $conf Object conf
* @return int <0 if KO, 0 if no triggered ran, >0 if OK
*/
function run_trigger($action,$object,$user,$langs,$conf)
{
// Put here code you want to execute when a Dolibarr business events occurs.
// Data and type of action are stored into $object and ...