Bonjour,
J'attendais depuis longtemps pour passer en prod avec une version mise a jour, étant très satisfait du fonctionnement de la 2.2 que je tiens depuis 2 ans et de vous féliciter pour ce travail.
J'ai donc testé chaque nouvelle mise à jour depuis cette 2.2 pour obtenir une version avancée du
module de prélèvement... En vain. ça marchait pas mieux. Donc je suis resté en 2.2.
Depuis trois jours je tente le passage en 2.8.1.
Le module prélèvement présente, dans un premier temps, les mêmes bugs qu'ils y a deux ans.
Warning: mysqli_fetch_object()
Voir photo erreur 1 => pour htdocs/compta/prelevement/demandes.php ligne 88
Remplacer
if ( $db->query($sql) )
{
$num = $db->num_rows();
$i = 0;
Par
if ( $db->query($sql) )
{
$num = $db->num_rows();
$result = $db->query($sql);
$i = 0;
Et remplacer ligne 121
while ($i < min($num,$conf->liste_limit))
{
$obj = $db->fetch_object();
$var=!$var;
Par
while ($i < min($num,$conf->liste_limit))
{
$obj = $db->fetch_object($result);
$var=!$var;
Ce bug était déjà sur la v2.2 finale stable et j'en avais trouvé la solution sur ce forum.
Traductions des boutons CreateGuichet et CreateBanque
Voir erreur 2 sur l'image.
Solutions: Ajouter
CreateGuichet=Créer pour le guichet
CreateBanque=Créer pour la banque
Dans le fichier htdocs/langs/fr_FR/withdrawals.lang
Mais ça c'est po grave! Le plus grave,

c'est qu'il est maintenant impossible de faire fonctionner le module pour générer un bon de prélèvement sur la 2.8.1.
Voir erreur 3 sur l'image.
J'ai mis à jour ma base sql avec le script d'install de la 2.8 et même une install vierge sans mes anciennes données. Verifié mes droit de dossier...
Du coup on clique sur créer, on vois les prélèvement en attente, mais il en veut po.
Il bloque dans create.php à
/*
* Actions
*/
if ($_GET["action"] == 'create')
{
$bprev = new BonPrelevement($db);
$result=$bprev->create($_GET["banque"],$_GET["guichet"]);
if ($result < 0)
{
$mesg='<div class="error">'.$bprev->error.'</div>';
}
if ($result == 0)
{
$mesg='<div class="error">'.$langs->trans("NoInvoiceCouldBeWithdrawed").'</div>';
}
}
J'ai fais un var_dump de $bprev et $result et l'objet semble être le résultat de
// Security check
if ($user->societe_id) $socid=$user->societe_id;
$result = restrictedArea($user, 'prelevement', '', '', 'bons');
Placé juste au dessus. Il ne semble pas prendre la bonne requête...
Je vais donc rester avec ma vielle version sauf si un expert solutionne ce gros problème. Moi, j'y vois plus rien...