function openOF(&$PDOdb) { global $db, $user, $conf; include_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; dol_include_once("fourn/class/fournisseur.product.class.php"); dol_include_once("fourn/class/fournisseur.commande.class.php"); $TIDOFToValidate = array($this->rowid); if ($conf->global->ASSET_CHILD_OF_STATUS_FOLLOW_PARENT_STATUS) { $this->getListeOFEnfants($PDOdb, $TIDOFToValidate, $this->rowid); } foreach ($TIDOFToValidate as $id_of) { $of = new TAssetOF(); $of->load($PDOdb, $id_of); // On passe pas un of en prod s'il l'est déjà ou s'il n'est pas au statut validé if ($of->rowid <= 0 || $of->status != 'VALID') { continue; } if ($of->launchOF($PDOdb)) { if (!empty($conf->global->OF_USE_DESTOCKAGE_PARTIEL)) { foreach ($of->TAssetOFLine as &$AssetOFLine) { if ($AssetOFLine->type == 'TO_MAKE') { $AssetOFLine->stockQtyToMakeAsset($PDOdb, $of); } else { $AssetOFLine->destockQtyUsedAsset($PDOdb); } } } else { foreach ($of->TAssetOFLine as &$AssetOFLine) { if ($AssetOFLine->type == 'NEEDED') { $AssetOFLine->destockAsset($PDOdb, $AssetOFLine->qty - $AssetOFLine->qty_stock); } } } } } }