Cloture de caisse V12

Bonjour,

J’ai un bug sur la clôture de caisse, depuis mon passage de la V11.0.5 à la v12.
Lorsque que l’on fait une nouvelle clôture de caisse, seul le solde initial en liquide s’affiche.
Les colonnes; liquide (réel), chèque et carte de crédit ont disparu, j’ai mis une capture d’écran en-dessous

J’ai regardé dans les options des modules mais rien trouvé pour le moment

Je précise que mon Dolibarr est installé sous Wamp3.2.0, est la version est la v12.0.03

Si quelqu’un à une idée? Merci
Alex

Bonjour,

Avez-vous activé les logs Dolibarr ?
Que disent-ils ?

Cdt

Bonjour,
Pouvez-vous m’indiquer la procédure?
Merci

Vous savez qu’il y a le wiki pour trouver des infos.
Bon, vous allez dans Configuration/Modules et rechercher ‹ activer les logs Dolibarr ›, quelque chose comme cela.
Le fichier dolibarr.log devra se trouver à la racine du dossier document (de mémoire).

Après une mise à jour, il est nécessaire, par moment, de désactiver et réactiver les modules qui posent problème.

Merci de votre aide, j’avais lu sur le forum la manip de désactiver et réactiver le module. J’ai essayé mais cela n’a pas fonctionné

J’ai activé le module, et lancé la commande " de cloture de caisse"
Dans le journal de log, à l’heure d’execution de la requête, seul une ligne est indiqué en Error, mais je ne comprends pas à quoi elle correspond, et la correction a appliqué

Voici la ligne;
Error: Bug into hook printTopRightMenu of module class ActionsAutoUpgrade. Method must not return a string but an int (0=OK, 1=Replace, -1=KO) and set string into ->resprints

Voulez-vous que je vous envoie les autres lignes du log?

Bonjour,

Vous avez un module externe qui pose probléme à mon avis.

Pouvez-vous les désactiver ?

Bonjour,

J’ai désactivé les 3 modules externes que j’avais, mais le résultat est identique

Ci-contre le script du log du journal complet, si cela peut aider à comprendre d’ou vient le problème;

2020-12-01 08:51:10 DEBUG   ::1             sql=SELECT u.rowid, u.lastname, u.firstname, u.employee, u.gender, u.birth, u.email, u.personal_email, u.job, u.socialnetworks, u.signature, u.office_phone, u.office_fax, u.user_mobile, u.personal_mobile, u.address, u.zip, u.town, u.fk_state as state_id, u.fk_country as country_id, u.admin, u.login, u.note as note_private, u.note_public, u.pass, u.pass_crypted, u.pass_temp, u.api_key, u.fk_soc, u.fk_socpeople, u.fk_member, u.fk_user, u.ldap_sid, u.fk_user_expense_validator, u.fk_user_holiday_validator, u.statut, u.lang, u.entity, u.datec as datec, u.tms as datem, u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid, u.accountancy_code, u.thm, u.tjm, u.salary, u.salaryextra, u.weeklyhours, u.color, u.dateemployment, u.dateemploymentend, u.fk_warehouse, u.ref_ext, u.default_range, u.default_c_exp_tax_cat, c.code as country_code, c.label as country, d.code_departement as state_code, d.nom as state FROM llx_user as u LEFT JOIN llx_c_country as c ON u.fk_country = c.rowid LEFT JOIN llx_c_departements as d ON u.fk_state = d.rowid WHERE u.entity IN (0, 1) AND u.login = 'aleadmin' ORDER BY u.entity ASC
2020-12-01 08:51:10 DEBUG   ::1             sql=SELECT rowid,name,label,type,size,elementtype,fieldunique,fieldrequired,param,pos,alwayseditable,perms,langs,list,printable,totalizable,fielddefault,fieldcomputed,entity,enabled,help FROM llx_extrafields WHERE elementtype = 'user' ORDER BY pos
2020-12-01 08:51:10 DEBUG   ::1             sql=SELECT param, value FROM llx_user_param WHERE fk_user = 1 AND entity = 1
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT rowid, entity, type, page, param, value FROM llx_default_values WHERE entity IN (1) AND user_id IN (0, 1)
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT DISTINCT r.module, r.perms, r.subperms FROM llx_user_rights as ur, llx_rights_def as r WHERE r.id = ur.fk_id AND ur.entity = 1 AND ur.fk_user= 1 AND r.perms IS NOT NULL
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT DISTINCT r.module, r.perms, r.subperms FROM llx_usergroup_rights as gr, llx_usergroup_user as gu, llx_rights_def as r WHERE r.id = gr.fk_id AND gr.entity = 1 AND gu.entity = 1 AND r.entity = 1 AND gr.fk_usergroup = gu.fk_usergroup AND gu.fk_user = 1 AND r.perms IS NOT NULL
2020-12-01 08:51:11 DEBUG   ::1             --- Access to /compta/cashcontrol/cashcontrol_card.php - action=start, massaction=
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang='fr_FR' OR lang IS NULL AND entity IN (0, 1) ORDER BY lang DESC
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT m.rowid, m.type, m.module, m.fk_menu, m.fk_mainmenu, m.fk_leftmenu, m.url, m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu, m.position FROM llx_menu as m WHERE m.entity IN (0,1) AND m.menu_handler IN ('eldy','all') AND m.usertype IN (0,2) ORDER BY m.position, m.rowid
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT rowid,name,label,type,size,elementtype,fieldunique,fieldrequired,param,pos,alwayseditable,perms,langs,list,printable,totalizable,fielddefault,fieldcomputed,entity,enabled,help FROM llx_extrafields WHERE elementtype = 'pos_cash_fence' ORDER BY pos
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT SUM(amount) as total FROM llx_bank WHERE fk_account = 2 AND dateo < '2020-11-27 00:00:00'
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'LIQ' AND datef BETWEEN '2020-11-27 00:00:00' AND '2020-11-27 23:59:59'
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'CHQ' AND datef BETWEEN '2020-11-27 00:00:00' AND '2020-11-27 23:59:59'
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'CB' AND datef BETWEEN '2020-11-27 00:00:00' AND '2020-11-27 23:59:59'
2020-12-01 08:51:11 DEBUG   ::1             HookManager::initHooks Loading hooks: context=toprightmenu-path=/autoupgrade/class/actions_autoupgrade.class.php
2020-12-01 08:51:11 DEBUG   ::1             HookManager::executeHooks Qualified hook found (hooktype=output). We call method printTopRightMenu of class ActionsAutoUpgrade, module=autoupgrade, action= context=toprightmenu
2020-12-01 08:51:11 ERR     ::1             Error: Bug into hook printTopRightMenu of module class ActionsAutoUpgrade. Method must not return a string but an int (0=OK, 1=Replace, -1=KO) and set string into ->resprints
2020-12-01 08:51:11 DEBUG   ::1             sql=SELECT rowid, title, url, target FROM llx_bookmark WHERE (fk_user = 1 OR fk_user is NULL OR fk_user = 0) AND entity IN (1) ORDER BY position
2020-12-01 08:51:11 DEBUG   ::1             --- End access to /compta/cashcontrol/cashcontrol_card.php

Bonjour,

C’est bien un module externe qui fou la merde :

Bonjour,
J’avais déjà fait un test en vain, en désactivant tous les modules externes installés sur mon dolibarr

Du coup, j’ai désactivé le module, puis l’ai enlevé du dossier custom, j’ai ensuite renvoyer une cloture de caisse, et cela ne fonctionne toujours pas.

Cependant la ligne d’erreur c’est modifié dans le log, il apparaît qu’à présent il manque un fichier de ce module (Autoupgrade)

2020-12-02 09:19:46 WARNING ::1 functions::dol_include_once Tried to load unexisting file: /autoupgrade/class/actions_autoupgrade.class.php

Ce que je ne comprends pas c’est le rapport entre ce module (qui sert à simplifier la manip pour faire ces mises à jour) et la fonction « cloture de caisse »?

Bonjour,

Le module rapport de caisse lance le hook « printTopRightMenu » qui lui est intercepté par le module auto upgrade.

Il faut complétement supprimer ce module qui ne semble pas être compatible V12.

Par rapport à mon message precedent, petite erreur j’avais désactivé le mauvais module…

Ce coup-ci j’ai désactivé le bon, je l’ai supprimé du dossier Custom, et j’ai renvoyé une cloture de caisse; celà ne fonctionne toujours pas, mais je n’ai plus de message d’erreur dans le log (ci-dessous)


2020-12-02 10:36:52 DEBUG   ::1             - This is an already logged session. _SESSION['dol_login']=aleadmin _SESSION['dol_entity']=1
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT u.rowid, u.lastname, u.firstname, u.employee, u.gender, u.birth, u.email, u.personal_email, u.job, u.socialnetworks, u.signature, u.office_phone, u.office_fax, u.user_mobile, u.personal_mobile, u.address, u.zip, u.town, u.fk_state as state_id, u.fk_country as country_id, u.admin, u.login, u.note as note_private, u.note_public, u.pass, u.pass_crypted, u.pass_temp, u.api_key, u.fk_soc, u.fk_socpeople, u.fk_member, u.fk_user, u.ldap_sid, u.fk_user_expense_validator, u.fk_user_holiday_validator, u.statut, u.lang, u.entity, u.datec as datec, u.tms as datem, u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid, u.accountancy_code, u.thm, u.tjm, u.salary, u.salaryextra, u.weeklyhours, u.color, u.dateemployment, u.dateemploymentend, u.fk_warehouse, u.ref_ext, u.default_range, u.default_c_exp_tax_cat, c.code as country_code, c.label as country, d.code_departement as state_code, d.nom as state FROM llx_user as u LEFT JOIN llx_c_country as c ON u.fk_country = c.rowid LEFT JOIN llx_c_departements as d ON u.fk_state = d.rowid WHERE u.entity IN (0, 1) AND u.login = 'aleadmin' ORDER BY u.entity ASC
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT rowid,name,label,type,size,elementtype,fieldunique,fieldrequired,param,pos,alwayseditable,perms,langs,list,printable,totalizable,fielddefault,fieldcomputed,entity,enabled,help FROM llx_extrafields WHERE elementtype = 'user' ORDER BY pos
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT param, value FROM llx_user_param WHERE fk_user = 1 AND entity = 1
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT rowid, entity, type, page, param, value FROM llx_default_values WHERE entity IN (1) AND user_id IN (0, 1)
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT DISTINCT r.module, r.perms, r.subperms FROM llx_user_rights as ur, llx_rights_def as r WHERE r.id = ur.fk_id AND ur.entity = 1 AND ur.fk_user= 1 AND r.perms IS NOT NULL
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT DISTINCT r.module, r.perms, r.subperms FROM llx_usergroup_rights as gr, llx_usergroup_user as gu, llx_rights_def as r WHERE r.id = gr.fk_id AND gr.entity = 1 AND gu.entity = 1 AND r.entity = 1 AND gr.fk_usergroup = gu.fk_usergroup AND gu.fk_user = 1 AND r.perms IS NOT NULL
2020-12-02 10:36:52 DEBUG   ::1             --- Access to /compta/cashcontrol/cashcontrol_card.php - action=start, massaction=
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang='fr_FR' OR lang IS NULL AND entity IN (0, 1) ORDER BY lang DESC
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT m.rowid, m.type, m.module, m.fk_menu, m.fk_mainmenu, m.fk_leftmenu, m.url, m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu, m.position FROM llx_menu as m WHERE m.entity IN (0,1) AND m.menu_handler IN ('eldy','all') AND m.usertype IN (0,2) ORDER BY m.position, m.rowid
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT rowid,name,label,type,size,elementtype,fieldunique,fieldrequired,param,pos,alwayseditable,perms,langs,list,printable,totalizable,fielddefault,fieldcomputed,entity,enabled,help FROM llx_extrafields WHERE elementtype = 'pos_cash_fence' ORDER BY pos
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT SUM(amount) as total FROM llx_bank WHERE fk_account = 2 AND dateo < '2020-11-25 00:00:00'
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'LIQ' AND datef BETWEEN '2020-11-25 00:00:00' AND '2020-11-25 23:59:59'
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'CHQ' AND datef BETWEEN '2020-11-25 00:00:00' AND '2020-11-25 23:59:59'
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT SUM(pf.amount) as total, COUNT(*) as nb FROM llx_paiement_facture as pf, llx_facture as f, llx_paiement as p, llx_c_paiement as cp WHERE pf.fk_facture = f.rowid AND p.rowid = pf.fk_paiement AND cp.id = p.fk_paiement AND f.module_source = 'takepos' AND f.pos_source = '1' AND f.paye = 1 AND p.entity IN (1) AND cp.code = 'CB' AND datef BETWEEN '2020-11-25 00:00:00' AND '2020-11-25 23:59:59'
2020-12-02 10:36:52 DEBUG   ::1             sql=SELECT rowid, title, url, target FROM llx_bookmark WHERE (fk_user = 1 OR fk_user is NULL OR fk_user = 0) AND entity IN (1) ORDER BY position
2020-12-02 10:36:52 DEBUG   ::1             --- End access to /compta/cashcontrol/cashcontrol_card.php

Je crois qu’il faut aller à l’écran suivant pour saisir les soldes des autres types de règlement.
Sur cet écran on saisis le solde initial (normalement uniquement des espèces), sur l’écran suivant tu pourras saisir les montant de fin de journée en liquide, chèques et cartes bancaires !

Bonjour,

J’utilise la clôture de caisse depuis presque un an, et l’ensemble des saisies (solde initial, espèces, chèque et cb) se trouvaient sur le premier écran. Écran auquel on accède, après avoir sélectionné sa date de clôture.

Y’a t-il eu un changement d’interface avec la v12?
En tout cas, à présent lorsque je valides le solde initial, j’arrive direct sur le ticket de clôture sans avoir pu renseigner les différentes valeurs.

Quelqu’un aurait-il une autre piste?, mon problème n’est toujours pas résolu
Merci

Problème résolu!, lié un surplus de prudence ou un manque d’audace…

Je confirme donc qu’il y’a eu un changement d’interface sur la V12, pour la clôture de caisse.

Au préalable il fallait saisir et confirmer les montants (cb, chèque et autres) pour valider un ticket en « brouillon », et ensuite clôturer définitivement ce ticket avec l’onglet « clôturer »

A présent,il faut valider le solde initial, ensuite apparait un ticket brouillon et un onglet « clôturer », et c’est seulement à ce moment que l’on a le choix de saisir et confirmer les montants de sa caisse.
Il faut ensuite clôturer une dernière fois le ticket pour qu’il soit valider

1 « J'aime »

Bonjour,
J’essaie de pouvoir configurer la clôture de caisse au mieux également. Cependant mon problème est que ma caisse ne peux contenir que des espèces, puisque impossible de configurer mon PDV avec le compte caisse pour les CB et Chèque. ce qu’il fait que mes chèques doivent être encaissés directement sur mon compte bancaire.
J’aimerais pouvoir passer mes espèces et chèques par ma caisse. Et ensuite en fin de journée faire une clôture de ma caisse et faire ensuite le virement sur mon compte bancaire.
Comment faites vous?
Merci d’avance.

Bonjour @pat30,
En effet dans Dolibarr, le compte « caisse » que tu as créé pour les espèces ne gère que les espèces, il ne faut pas le confondre avec la clôture de caisse du point de vente.
Les chèques et CB seront déposés sur ton compte bancaire (directement pour les CB, après remise de chèque pour les chèques), pour les remises d’espèces il faudra faire un virement interne (dans le menu « Banque | Caisse »)
La clôture de caisse n’est actuellement pas complète selon moi, elle ne prend pas en compte les remise en banques (quel que soit le mode de paiement), entre autres incohérences.

Bonjour Poncereau
En effet je me suis un peu adapter.
Je fais bien un virement pour mon dépôt d’espèces, et une remise en banque pour mes chèques. Encore que pour les chèques ils apparaissent ligne à ligne en banque alors que dans la réalité ils apparaissent par dépôt soit le montant total de mon dépôt de chèques. J’ai alors créé un autre compte pour les chèques et je procède comme pour ma caisse par un virement correspondant à mon dépôt.

Après je voulais utiliser la clôture de caisse de mon point de vente, et logiquement il devrait me reporter ma journée avec les sommes perçues pour chaque catégorie (Espèces, chèques et CB) mais ce n’est pas le cas… Je suis obligé de passer par le logiciel a proprement parler et par le menu factures puis faire un filtre sur ma journée… Cela permet de terminer ta journée et de valider ta caisse avant de recommencer une nouvelle journée. Mais j’espère que prochainement cette option évoluera…

bonjour
je suis nouveau utilisateur de la caisse takepos j’aimerais savoir comment faire la cloture de la journée