Skip to content

Commit

Permalink
Update export.class.php (#31783)
Browse files Browse the repository at this point in the history
Allow usage of a method param that is not part of the $obj from the sql request. 

The issue I encontered is the usage of order's LibStatut method that required a $mode param that can't be fetched from the sql request obj.

This would be the code for the export declaration : 
		$this->export_special_array[$r] = array(
			'orders.fk_statut'=> [
				'rule' => 'compute',
				'class' => 'Commande',
				'classfile' => '/commande/class/commande.class.php',
				'method' => 'LibStatut',
				'method_params' => ['orders_fk_statut', 'orders_facture', '1'],
			],
		);

We can see that the first two params will come from the $obj, but the third one will be used for it's value (in this case '1').

Co-authored-by: Laurent Destailleur <[email protected]>
  • Loading branch information
Quentin-Seekness and eldy authored Nov 12, 2024
1 parent e63992b commit daafa15
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion htdocs/exports/class/export.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -837,7 +837,7 @@ public function build_file($user, $model, $datatoexport, $array_selected, $array
$params = [];
if (!empty($item['method_params'])) {
foreach ($item['method_params'] as $paramName) {
$params[] = $obj->$paramName ?? null;
$params[] = $obj->$paramName ?? ($paramName ?? null);
}
}
$value = $tmpObject->$methodName(...$params);
Expand Down

0 comments on commit daafa15

Please sign in to comment.