Connectez-vous pour accéder à votre espace
| Nom d'Utilisateur | Recette Perçu | Dépense | Virement |
|---|---|---|---|
| {{ formatMontant(b.recettePercu) }} Ar | {{ formatMontant(-Math.abs(b.depense)) }} Ar | {{ formatMontant(b.virement) }} Ar | |
| Aucun billetage trouvé | |||
| {{ b.label }} | {{ formatMontant(compilData.billets[b.key] * b.value) }} {{ currencySymbol }} |
| Source | Brut | Remise | TVA | Net (TTC) | Détail |
|---|---|---|---|---|---|
| Ventes Comptant | {{ formatSynthMontant(synthRecettes.origine.venteComptant.brut) }} | {{ formatSynthMontant(synthRecettes.origine.venteComptant.remise) }} | {{ formatSynthMontant(synthRecettes.origine.venteComptant.tva) }} | {{ formatSynthMontant(synthRecettes.origine.venteComptant.ttc) }} | |
| Acomptes sur BC (HT) | — | — | — | {{ formatSynthMontant(synthRecettes.origine.acompteBC.net) }} | |
| RAP perçus (BL/Vente Crédit/BC Client) | — | — | — | {{ formatSynthMontant(synthRecettes.origine.rapPercu.net) }} | |
| TOTAL RECETTES | {{ formatSynthMontant(synthRecettes.origine.totalRecette) }} | ||||
| − Dépenses de caisse | ({{ formatSynthMontant(synthRecettes.depense) }}) | ||||
| = RECETTE NETTE | {{ formatSynthMontant(synthRecettes.recetteNette) }} |
| Moyen | Montant | % | Détail |
|---|---|---|---|
| 💵 Espèce | {{ formatSynthMontant(synthRecettes.moyen.espece) }} | {{ synthRecettes.moyen.pctEspece }} % | — |
| 📄 Chèque (encaissé) | {{ formatSynthMontant(synthRecettes.moyen.cheque) }} | {{ synthRecettes.moyen.pctCheque }} % | |
| 🏦 Virement (encaissé) | {{ formatSynthMontant(synthRecettes.moyen.virement) }} | {{ synthRecettes.moyen.pctVirement }} % | |
| Total encaissé | {{ formatSynthMontant(synthRecettes.moyen.total) }} | 100 % |
| Ventes Débiteur du jour (BL/BC créés sur la période) | {{ formatSynthMontant(synthRecettes.aRecevoir.ventesDebiteurJour) }} |
| Chèques en attente (Payer=False) | {{ formatSynthMontant(synthRecettes.aRecevoir.chequesEnAttente) }} |
| Virements en attente | {{ formatSynthMontant(synthRecettes.aRecevoir.virementsEnAttente) }} |
| N° Facture{{ sortIndicator('IDVente') }} | Client{{ sortIndicator('Client_label') }} | Table{{ sortIndicator('Tbl_Nom') }} | Couvert{{ sortIndicator('NbrPrs') }} | Date{{ sortIndicator('DteDeVente') }} | Serveur{{ sortIndicator('Serveur') }} | Brut{{ sortIndicator('MontantBrut') }} | Remise{{ sortIndicator('RemiseVal') }} | TVA{{ sortIndicator('TVA') }} | TTC{{ sortIndicator('MontantTTC') }} | Mode{{ sortIndicator('_moyen') }} |
|---|---|---|---|---|---|---|---|---|---|---|
| Débiteur {{ v.IDVente }} | {{ v.NomCli || v.IDClient }} | {{ v.Tbl_Nom || '' }} | {{ v.NbrPrs || 0 }} | {{ formatSynthDate(v.DteDeVente) }} | {{ v.Serveur }} | {{ formatSynthMontant(v.MontantBrut) }} | {{ formatSynthMontant(v.RemiseVal) }} | {{ formatSynthMontant(v.TVA) }} | {{ formatSynthMontant(v.MontantTTC) }} | {{ v._moyen }} — |
| TOTAL Comptant ({{ countVentesComptant }} vente{{ countVentesComptant > 1 ? 's' : '' }}) | {{ sumDrillField('NbrPrs') }} | {{ formatSynthMontant(sumDrillField('MontantBrut')) }} | {{ formatSynthMontant(sumDrillField('RemiseVal')) }} | {{ formatSynthMontant(sumDrillField('TVA')) }} | {{ formatSynthMontant(sumDrillField('MontantTTC')) }} | |||||
| N° BC{{ sortIndicator('IDVente') }} | Client{{ sortIndicator('Client_label') }} | Date{{ sortIndicator('Dte') }} | User{{ sortIndicator('User') }} | Mode{{ sortIndicator('_moyen') }} | Poste{{ sortIndicator('IdPoste') }} | Montant (HT){{ sortIndicator('MontantAcompte') }} |
|---|---|---|---|---|---|---|
| {{ v.IDVente }} | {{ v.NomCli || v.IDClient }} | {{ formatSynthDate(v.Dte) }} | {{ v.User }} | {{ v._moyen }} | {{ v.IdPoste }} | {{ formatSynthMontant(v.MontantAcompte) }} |
| Client{{ sortIndicator('Client_label') }} | Libellé{{ sortIndicator('Libelle') }} | Date{{ sortIndicator('dteOperation') }} | User{{ sortIndicator('NomUser') }} | Montant{{ sortIndicator('SoldeDebitClient') }} |
|---|---|---|---|---|
| {{ v.NomCli || v.IDClient }} | BC {{ v.Libelle }} | {{ formatSynthDate(v.dteOperation) }} | {{ v.NomUser }} | {{ formatSynthMontant(v.SoldeDebitClient) }} |
| Banque{{ sortIndicator('Banque') }} | Numéro{{ sortIndicator('Numero') }} | Propriétaire{{ sortIndicator('Proprietaire') }} | N° Opération{{ sortIndicator('IDVente') }} | Date{{ sortIndicator('DteDePaiement') }} | Montant{{ sortIndicator('Montant') }} |
|---|---|---|---|---|---|
| {{ v.Banque }} | {{ v.Numero }} | {{ v.Proprietaire }} | {{ v.IDVente }} | {{ formatSynthDate(v.DteDePaiement) }} | {{ formatSynthMontant(v.Montant) }} |
| Banque{{ sortIndicator('Banque') }} | N° Opération{{ sortIndicator('IDVente') }} | Date{{ sortIndicator('DteDeVirement') }} | Montant{{ sortIndicator('Montant') }} |
|---|---|---|---|
| {{ v.Banque }} | {{ v.IDVente }} | {{ formatSynthDate(v.DteDeVirement) }} | {{ formatSynthMontant(v.Montant) }} |
| N° Dépense{{ sortIndicator('IDVente') }} | Bénéficiaire{{ sortIndicator('Client_label') }} | Date{{ sortIndicator('DteDeVente') }} | User{{ sortIndicator('User') }} | Observation{{ sortIndicator('Observation') }} | Montant{{ sortIndicator('MontantTTC') }} |
|---|---|---|---|---|---|
| {{ v.IDVente }} | {{ v.NomCli || v.IDClient }} | {{ formatSynthDate(v.DteDeVente) }} | {{ v.User }} | {{ v.Observation }} | {{ formatSynthMontant(Math.abs(v.MontantTTC)) }} |
| Code Barre | Désignation | Unité | Qté | Prix Unitaire | Montant | Action |
|---|---|---|---|---|---|---|
| Annulée {{ d.CodeBarre || '' }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | 0 && modifierQteLigne(d, 'decrement')" :title="(peutModifierLigneArchive && (parseFloat(d.QteVendu)||0) > 0) ? 'Cliquez pour modifier la quantité (diminution uniquement)' : ''"> {{ d.QteVendu || 0 }} | {{ formatBilletageMontant(d.PrixUnitaire) }} | {{ formatBilletageMontant(d.MontantTotalVnt) }} | ✖ annulée |
| Aucune ligne produit |
| Date{{ sortIndicatorJournalPerso('DteDeVente') }} | N° Facture{{ sortIndicatorJournalPerso('IDVente') }} | Produit{{ sortIndicatorJournalPerso('NomProduit') }} | Qté{{ sortIndicatorJournalPerso('SommeDeQteVendu') }} | PU{{ sortIndicatorJournalPerso('PrixUnitaire') }} | Montant{{ sortIndicatorJournalPerso('SommeDeMontantTotalVnt') }} | Montant Remisé{{ sortIndicatorJournalPerso('Prixremiser') }} | Marge{{ sortIndicatorJournalPerso('MargeBenefique') }} | Serveur{{ sortIndicatorJournalPerso('Serveur') }} | Client{{ sortIndicatorJournalPerso('NomClient') }} |
|---|---|---|---|---|---|---|---|---|---|
| {{ formatSynthDate(r.DteDeVente) }} | Débiteur {{ r.IDVente }} | {{ r.NomProduit || r.IDproduit }} | {{ r.SommeDeQteVendu || 0 }} | {{ formatBilletageMontant(r.PrixUnitaire) }} | {{ formatBilletageMontant(r.SommeDeMontantTotalVnt) }} | {{ formatBilletageMontant(r.Prixremiser) }} | {{ formatBilletageMontant(r.MargeBenefique) }} | {{ r.Serveur || '' }} | {{ r.NomClient || '' }} |
| Chargement… Aucune vente dans votre session de caisse | |||||||||
| TOTAL Comptant ({{ journalVentesPersoTotaux().nbComptant }} ligne{{ journalVentesPersoTotaux().nbComptant > 1 ? 's' : '' }}) | {{ journalVentesPersoTotaux().tQte }} | {{ formatBilletageMontant(journalVentesPersoTotaux().tVente) }} | {{ formatBilletageMontant(journalVentesPersoTotaux().tRemise) }} | {{ formatBilletageMontant(journalVentesPersoTotaux().tMarge) }} | |||||
| # | Produit | Qté Vendue | CA (Montant) | Marge | Part | Répartition |
|---|---|---|---|---|---|---|
| #{{ i+1 }} | {{ p.nomProduit }} | {{ p.qte }} | {{ formatBilletageMontant(p.ca) }} | {{ formatBilletageMontant(p.marge) }} | {{ p.pct.toFixed(1) }}% | |
| Chargement… Aucune vente | ||||||
| TOTAL ({{ journalVentesPalmares.length }} produit{{ journalVentesPalmares.length > 1 ? 's' : '' }}) | {{ journalVentesPalmaresTotaux.tQte }} | {{ formatBilletageMontant(journalVentesPalmaresTotaux.tCA) }} | {{ formatBilletageMontant(journalVentesPalmaresTotaux.tMarge) }} | 100,0% | ||
| ID Sortie BL{{ sortIndicatorJournalBL('IDSortieBL') }} | Livraison{{ sortIndicatorJournalBL('DteDeSortieBL') }} | Nom Client{{ sortIndicatorJournalBL('NomClient') }} | Nom du Produit{{ sortIndicatorJournalBL('NomProduit') }} | Qté{{ sortIndicatorJournalBL('Qte') }} | Prix{{ sortIndicatorJournalBL('Prix') }} | Montant{{ sortIndicatorJournalBL('Montant') }} | État |
|---|---|---|---|---|---|---|---|
| {{ r.IDSortieBL }} | {{ formatVenteDateHeure(r.DteDeSortieBL) }} | {{ r.NomClient || r.IDClient }} | {{ r.NomProduit || r.IDproduit }} | {{ r.Qte }} | {{ formatBilletageMontant(r.Prix) }} | {{ formatBilletageMontant(r.Montant) }} | {{ journalBLEtatBadge(r).label }} |
| Chargement… Aucun BL {{ journalBLEtatLabel().toLowerCase() }} sur la période | |||||||
| TOTAL RAP ({{ journalBLTotaux().nbBLs }} BL distincts) | {{ journalBLTotaux().tQte }} | {{ formatBilletageMontant(journalBLTotaux().tRAP) }} | |||||
| ID Sortie BL{{ sortIndicatorJournalBL('IDSortieBL') }} | Livraison{{ sortIndicatorJournalBL('DteDeSortieBL') }} | Âge | Nom Client{{ sortIndicatorJournalBL('NomClient') }} | Montant TTC{{ sortIndicatorJournalBL('MontantTTC') }} | Acompte{{ sortIndicatorJournalBL('Acompte') }} | RAP{{ sortIndicatorJournalBL('RAP') }} | État | Détail |
|---|---|---|---|---|---|---|---|---|
| {{ r.IDSortieBL }} | {{ formatVenteDateHeure(r.DteDeSortieBL) }} | {{ ageBadge(r.DteDeSortieBL).label }} | {{ r.NomClient || r.IDClient }} | {{ formatBilletageMontant(r.MontantTTC) }} | {{ formatBilletageMontant(r.Acompte) }} | {{ formatBilletageMontant(r.RAP) }} | {{ journalBLEtatBadge(r).label }} | |
| Chargement… Aucun BL {{ journalBLEtatLabel().toLowerCase() }} sur la période (âge ≥ {{ journalBLNewAnciennete }} jours) | ||||||||
| TOTAL ({{ journalBLNewList.length }} BL) | {{ formatBilletageMontant(journalBLFactureTotaux().tMontantTTC) }} | {{ formatBilletageMontant(journalBLFactureTotaux().tAcompte) }} | {{ formatBilletageMontant(journalBLFactureTotaux().tRAP) }} | |||||
| ID Produit | Désignation | Unité | PU | Quantité Livré | Montant |
|---|---|---|---|---|---|
| {{ d.IDproduit }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ formatBilletageMontant(d.PrixAffiche) }} | {{ d.QteSortieBL }} | {{ formatBilletageMontant(d.Montant) }} |
| Aucune ligne produit | |||||
| ID Produit | Désignation | Unité | Quantité Sortie |
|---|---|---|---|
| {{ d.IDproduit }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ d.QteSortieBS }} |
| Aucune ligne produit | |||
| ID Sortie BS{{ sortIndicatorJournalBS('IDSortieBS') }} | Date Sortie{{ sortIndicatorJournalBS('DteDeSortieBS') }} | Client{{ sortIndicatorJournalBS('NomClient') }} | Nom du Produit{{ sortIndicatorJournalBS('NomProduit') }} | Unité | Qté{{ sortIndicatorJournalBS('Qte') }} |
|---|---|---|---|---|---|
| {{ r.IDSortieBS }} | {{ formatVenteDateHeure(r.DteDeSortieBS) }} | {{ r.NomClient || r.IDClient }} | {{ r.NomProduit || r.IDproduit }} | {{ r.UnitProduit || '' }} | {{ r.Qte }} |
| Chargement… Aucun BS sur la période | |||||
| TOTAL ({{ journalBSTotaux().nbBS }} BS distincts) | {{ journalBSTotaux().tQte }} | ||||
| ID Sortie BS{{ sortIndicatorJournalBS('IDSortieBS') }} | Date Sortie{{ sortIndicatorJournalBS('DteDeSortieBS') }} | Client{{ sortIndicatorJournalBS('NomClient') }} | Lignes{{ sortIndicatorJournalBS('NbLignes') }} | Total Qté{{ sortIndicatorJournalBS('TotalQte') }} | Détail |
|---|---|---|---|---|---|
| {{ r.IDSortieBS }} | {{ formatVenteDateHeure(r.DteDeSortieBS) }} | {{ r.NomClient || r.IDClient }} | {{ r.NbLignes }} | {{ r.TotalQte }} | |
| Chargement… Aucun BS sur la période | |||||
| TOTAL ({{ journalBSList.length }} BS) | {{ journalBSBSTotaux().tLignes }} | {{ journalBSBSTotaux().tQte }} | |||
| Code Barre | Désignation | Unité | Qté | Prix Unitaire | Montant Total |
|---|---|---|---|---|---|
| {{ d.CodeBarre || '' }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ d.QteCommandee }} | {{ formatBilletageMontant(d.PrixAffiche) }} | {{ formatBilletageMontant(d.Montant) }} |
| Aucune ligne produit | |||||
| ID Commande{{ sortIndicatorJournalBC('IDVente') }} | Date Commande{{ sortIndicatorJournalBC('DteDeCommande') }} | Nom Client{{ sortIndicatorJournalBC('NomClient') }} | Nom du Produit{{ sortIndicatorJournalBC('NomProduit') }} | Qté{{ sortIndicatorJournalBC('Qte') }} | Prix{{ sortIndicatorJournalBC('Prix') }} | Montant{{ sortIndicatorJournalBC('Montant') }} | État |
|---|---|---|---|---|---|---|---|
| {{ r.IDVente }} | {{ formatVenteDateHeure(r.DteDeCommande) }} | {{ r.NomClient || r.IDClient }} | {{ r.NomProduit || r.IDproduit }} | {{ r.Qte }} | {{ formatBilletageMontant(r.Prix) }} | {{ formatBilletageMontant(r.Montant) }} | {{ journalBCEtatBadge(r).label }} |
| Chargement… Aucun BC {{ journalBCEtatLabel().toLowerCase() }} sur la période | |||||||
| TOTAL RAP ({{ journalBCTotaux().nbBCs }} BC distincts) | {{ journalBCTotaux().tQte }} | {{ formatBilletageMontant(journalBCTotaux().tRAP) }} | |||||
| ID Commande{{ sortIndicatorJournalBC('IDVente') }} | Date Commande{{ sortIndicatorJournalBC('DteDeCommande') }} | Nom Client{{ sortIndicatorJournalBC('NomClient') }} | Montant TTC{{ sortIndicatorJournalBC('MontantTTC') }} | Acompte{{ sortIndicatorJournalBC('Acompte') }} | RAP{{ sortIndicatorJournalBC('RAP') }} | État | Détail |
|---|---|---|---|---|---|---|---|
| {{ r.IDVente }} | {{ formatVenteDateHeure(r.DteDeCommande) }} | {{ r.NomClient || r.IDClient }} | {{ formatBilletageMontant(r.MontantTTC) }} | {{ formatBilletageMontant(r.Acompte) }} | {{ formatBilletageMontant(r.RAP) }} | {{ journalBCEtatBadge(r).label }} | |
| Chargement… Aucun BC {{ journalBCEtatLabel().toLowerCase() }} sur la période | |||||||
| TOTAL ({{ journalBCList.length }} BC) | {{ formatBilletageMontant(journalBCBcTotaux().tMontantTTC) }} | {{ formatBilletageMontant(journalBCBcTotaux().tAcompte) }} | {{ formatBilletageMontant(journalBCBcTotaux().tRAP) }} | ||||
| ID Produit | Désignation | Unité | Qté Commandé | Prix Unitaire HT | Montant Commande |
|---|---|---|---|---|---|
| {{ d.IDproduit }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ d.QteCommande }} | {{ formatBilletageMontant(d.PrixUnitaire) }} | {{ formatBilletageMontant(d.MontantTotalCmnd) }} |
| Aucune ligne produit | |||||
| Réf. Commande{{ sortIndicatorJournalBCFrns('RefComndFrns') }} | Date Commande{{ sortIndicatorJournalBCFrns('DtedCmndFrns') }} | Fournisseur{{ sortIndicatorJournalBCFrns('NomFrns') }} | Nom du Produit{{ sortIndicatorJournalBCFrns('NomProduit') }} | Qté{{ sortIndicatorJournalBCFrns('Qte') }} | Prix HT{{ sortIndicatorJournalBCFrns('Prix') }} | Montant{{ sortIndicatorJournalBCFrns('Montant') }} | État |
|---|---|---|---|---|---|---|---|
| {{ r.RefComndFrns }} | {{ formatVenteDateHeure(r.DtedCmndFrns) }} | {{ frnsLabel(r) }} | {{ r.NomProduit || r.IDproduit }} | {{ r.Qte }} | {{ formatBilletageMontant(r.Prix) }} | {{ formatBilletageMontant(r.Montant) }} | {{ journalBCFrnsEtatBadge(r).label }} |
| Chargement… Aucun BC Frns {{ journalBCFrnsEtatLabel().toLowerCase() }} sur la période | |||||||
| TOTAL ({{ journalBCFrnsTotaux().nbBCs }} BC distincts) | {{ journalBCFrnsTotaux().tQte }} | {{ formatBilletageMontant(journalBCFrnsTotaux().tMontant) }} | |||||
| Réf. Commande{{ sortIndicatorJournalBCFrns('RefComndFrns') }} | Date Commande{{ sortIndicatorJournalBCFrns('DtedCmndFrns') }} | Fournisseur{{ sortIndicatorJournalBCFrns('NomFrns') }} | Montant HT{{ sortIndicatorJournalBCFrns('MontantHT') }} | TVA{{ sortIndicatorJournalBCFrns('TVAValeur') }} | Montant TTC{{ sortIndicatorJournalBCFrns('MontantTTC') }} | État | Détail |
|---|---|---|---|---|---|---|---|
| {{ r.RefComndFrns }} | {{ formatVenteDateHeure(r.DtedCmndFrns) }} | {{ frnsLabel(r) }} | {{ formatBilletageMontant(r.MontantHT) }} | {{ formatBilletageMontant(r.TVAValeur) }} | {{ formatBilletageMontant(r.MontantTTC) }} | {{ journalBCFrnsEtatBadge(r).label }} | |
| Chargement… Aucun BC Frns {{ journalBCFrnsEtatLabel().toLowerCase() }} sur la période | |||||||
| TOTAL ({{ journalBCFrnsList.length }} BC) | {{ formatBilletageMontant(journalBCFrnsBcTotaux().tMontantHT) }} | {{ formatBilletageMontant(journalBCFrnsBcTotaux().tTVA) }} | {{ formatBilletageMontant(journalBCFrnsBcTotaux().tMontantTTC) }} | ||||
| Code Barre | Désignation | Unité | Qté | Prix d'Achat HT | Montant Appro |
|---|---|---|---|---|---|
| {{ d.CodeBarre || '' }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ d.Qteachete || 0 }} | {{ formatBilletageMontant(d.PrixAchatUnitaireTTC) }} | {{ formatBilletageMontant(d.MontantApproTbl) }} |
| Aucune ligne produit | |||||
| Produit | {{ (archiveTransfoCurrent.UnitProduit || 'Unité') + ' Obtenue' }} | Unité |
|---|---|---|
| {{ archiveTransfoCurrent.NomProduit || archiveTransfoCurrent.IDproduit }} | {{ archiveTransfoCurrent.QteObtenue }} | {{ archiveTransfoCurrent.UnitProduit || '' }} |
| Désignation | Qté Sortie | Unité |
|---|---|---|
| {{ ing.NomProduit || ing.IDproduit }} | {{ ing.QteSortie }} | {{ ing.UnitProduit || '' }} |
| Aucun ingrédient enregistré | ||
| Date | Caissier | Référence | Désignation | Unité | SI | Appro / Prod° |
Vente BL Ann. |
Régul | Offert/BL Ing/Menu/Ret |
Vendu | S.F | CMUP | Détail | Gros | P. Achat |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ formatSynthDate(r.Dte) }} | {{ r.Caissier || '' }} | {{ r.CodeBarre || '' }} | {{ r.NomProduit || '' }} | {{ r.UnitProduit || '' }} | {{ r.StockProduit || 0 }} | {{ r.Appro || 0 }} | {{ r.NombreDeProduitRetourner || 0 }} | {{ r.ApproEnPack || 0 }} | {{ r.NombreDeProduitSortie || 0 }} | {{ r.NombreDeProduitVendu || 0 }} | {{ r.StockProduit2 || 0 }} | {{ formatBilletageMontant(r.CMUP) }} | {{ formatBilletageMontant(r.PrixDeVente) }} | {{ formatBilletageMontant(r.PrixDeVenteGrossiste) }} | {{ formatBilletageMontant(r.PrixAchat) }} |
| Désignation{{ sortIndicatorRotation('nomProduit') }} | SI{{ sortIndicatorRotation('SI') }} | SF{{ sortIndicatorRotation('SF') }} | Appro{{ sortIndicatorRotation('Appro') }} | Vente{{ sortIndicatorRotation('Vente') }} | Stock Moyen{{ sortIndicatorRotation('StockMoyen') }} | Ratio Rotation{{ sortIndicatorRotation('RatioRotation') }} | Durée Stockage (j){{ sortIndicatorRotation('DureeStockage') }} | Unité |
|---|---|---|---|---|---|---|---|---|
| {{ p.nomProduit }} | {{ p.SI.toFixed(2) }} | {{ p.SF.toFixed(2) }} | {{ p.Appro.toFixed(2) }} | {{ p.Vente.toFixed(2) }} | {{ p.StockMoyen.toFixed(2) }} | {{ p.RatioRotation.toFixed(2) }} | {{ p.DureeStockage > 0 ? p.DureeStockage.toFixed(1) : '—' }} | {{ p.unitProduit }} |
| TOTAL ({{ rotationStockData.produits.length }}) | {{ (rotationStockData.totaux.tSI || 0).toFixed(2) }} | {{ (rotationStockData.totaux.tSF || 0).toFixed(2) }} | {{ (rotationStockData.totaux.tAppro || 0).toFixed(2) }} | {{ (rotationStockData.totaux.tVente || 0).toFixed(2) }} | ||||
| # | {{ caFamilleModeLabel }} | CA | Part | Répartition |
|---|---|---|---|---|
| #{{ i+1 }} | {{ f.famille }} | {{ formatBilletageMontant(f.ca) }} | {{ f.pct.toFixed(1) }}% | |
| TOTAL ({{ caFamilleData.familles.length }}) | {{ formatBilletageMontant(caFamilleData.totalCA || 0) }} | 100,0% | ||
| Réf Retour (BR){{ sortIndicatorRetourDet('RefAppro') }} | Nom Fournisseur{{ sortIndicatorRetourDet('NomFrns') }} | Date Retour{{ sortIndicatorRetourDet('DtedAppro') }} | Nom Produit{{ sortIndicatorRetourDet('NomProduit') }} | Qté{{ sortIndicatorRetourDet('Qteachete') }} | PU{{ sortIndicatorRetourDet('PrixAchatUnitaireTTC') }} | Devise{{ sortIndicatorRetourDet('Devise') }} | Montant Retour{{ sortIndicatorRetourDet('MontantApproTbl') }} |
|---|---|---|---|---|---|---|---|
| {{ r.RefAppro }} | {{ frnsLabel(r) }} | {{ formatSynthDate(r.DtedAppro) }} | {{ r.NomProduit || r.IDproduit }} | {{ r.Qteachete || 0 }} | {{ formatBilletageMontant(r.PrixAchatUnitaireTTC) }} | {{ r.Devise || '' }} | {{ formatBilletageMontant(r.MontantApproTbl) }} |
| Chargement… Aucun retour sur la période | |||||||
| Somme Montant Retour ({{ archiveRetourDetList.length }} ligne{{ archiveRetourDetList.length > 1 ? 's' : '' }}) | {{ archiveRetourDetTotaux().tQte }} | {{ formatBilletageMontant(archiveRetourDetTotaux().tMontant) }} | |||||
| Réf Retour (BR){{ sortIndicatorRetourFac('RefAppro') }} | Date Retour{{ sortIndicatorRetourFac('DtedAppro') }} | Nom Fournisseur{{ sortIndicatorRetourFac('NomFrns') }} | N° Retour / BR Frns{{ sortIndicatorRetourFac('NumFacFrns') }} | Montant Total Retour{{ sortIndicatorRetourFac('MontantTotalAppro') }} | Détail |
|---|---|---|---|---|---|
| {{ r.RefAppro }} | {{ formatSynthDate(r.DtedAppro) }} | {{ frnsLabel(r) }} | {{ r.NumFacFrns || '' }} | {{ formatBilletageMontant(r.MontantTotalAppro) }} | |
| Chargement… Aucun retour sur la période | |||||
| Montant Total Retour ({{ archiveRetourFacList.length }} BR) | {{ formatBilletageMontant(archiveRetourFacTotaux().tMontant) }} | ||||
| Référence Recondition{{ sortIndicatorRecondition('IDRecondition') }} | Date{{ sortIndicatorRecondition('DteRecondition') }} | Utilisateur{{ sortIndicatorRecondition('UserRecondition') }} | Produit{{ sortIndicatorRecondition('NomProduit') }} | Qté Obtenue{{ sortIndicatorRecondition('QteObtenue') }} | Unité | Détail |
|---|---|---|---|---|---|---|
| {{ r.IDRecondition }} | {{ formatSynthDate(r.DteRecondition) }} | {{ r.UserRecondition || '' }} | {{ r.NomProduit || r.IDproduit }} | {{ r.QteObtenue }} | {{ r.UnitProduit || '' }} | |
| Chargement… Aucune transformation sur la période | ||||||
| TOTAL ({{ archiveReconditionListFiltered.length }} transformation{{ archiveReconditionListFiltered.length > 1 ? 's' : '' }}) | {{ archiveReconditionTotaux().tQte }} | |||||
| Réf Appro{{ sortIndicatorApproDet('RefAppro') }} | Nom Fournisseur{{ sortIndicatorApproDet('NomFrns') }} | Date d'Appro{{ sortIndicatorApproDet('DtedAppro') }} | Nom Produit{{ sortIndicatorApproDet('NomProduit') }} | Qté{{ sortIndicatorApproDet('Qteachete') }} | PU{{ sortIndicatorApproDet('PrixAchatUnitaireTTC') }} | Devise{{ sortIndicatorApproDet('Devise') }} | Montant Appro{{ sortIndicatorApproDet('MontantApproTbl') }} |
|---|---|---|---|---|---|---|---|
| {{ r.RefAppro }} | {{ frnsLabel(r) }} | {{ formatSynthDate(r.DtedAppro) }} | {{ r.NomProduit || r.IDproduit }} | {{ r.Qteachete || 0 }} | {{ formatBilletageMontant(r.PrixAchatUnitaireTTC) }} | {{ r.Devise || '' }} | {{ formatBilletageMontant(r.MontantApproTbl) }} |
| Chargement… Aucun approvisionnement sur la période | |||||||
| Somme Montant Appro ({{ archiveApproDetList.length }} ligne{{ archiveApproDetList.length > 1 ? 's' : '' }}) | {{ archiveApproDetTotaux().tQte }} | {{ formatBilletageMontant(archiveApproDetTotaux().tMontant) }} | |||||
| Réf Appro{{ sortIndicatorApproFac('RefAppro') }} | Date d'Appro{{ sortIndicatorApproFac('DtedAppro') }} | Nom Fournisseur{{ sortIndicatorApproFac('NomFrns') }} | N° Facture / BL{{ sortIndicatorApproFac('NumFacFrns') }} | Montant Total{{ sortIndicatorApproFac('MontantTotalAppro') }} | RAP{{ sortIndicatorApproFac('RAPAppro') }} | Détail |
|---|---|---|---|---|---|---|
| {{ r.RefAppro }} | {{ formatSynthDate(r.DtedAppro) }} | {{ frnsLabel(r) }} | {{ r.NumFacFrns || '' }} | {{ formatBilletageMontant(r.MontantTotalAppro) }} | {{ formatBilletageMontant(r.RAPAppro) }} | |
| Chargement… Aucun approvisionnement sur la période | ||||||
| Montant Total ({{ archiveApproFacList.length }} facture{{ archiveApproFacList.length > 1 ? 's' : '' }}) | {{ formatBilletageMontant(archiveApproFacTotaux().tMontant) }} | {{ formatBilletageMontant(archiveApproFacTotaux().tRAP) }} | ||||
| Désignation | Qté Entrée | Unité |
|---|---|---|
| {{ pf.NomProduit || pf.IDproduit }} | {{ pf.QteEntree }} | {{ pf.UnitProduit || '' }} |
| Aucun produit fini | ||
| Désignation | Qté Sortie | Unité |
|---|---|---|
| {{ m.NomProduit || m.IDproduit }} | {{ m.QteSortie }} | {{ m.UnitProduit || '' }} |
| Aucune matière commune | ||
| Produit Fini | Ingrédient | Qté | Unité |
|---|---|---|---|
| {{ r.NomProduitFini }} | {{ r.NomIngredient }} | {{ r.QteIng }} | {{ r.UnitIngredient || '' }} |
| Aucun ingrédient spécifique | |||
| Rang | Serveur | CA | Part | Nb Ventes | Qté Produits | Panier Moyen |
|---|---|---|---|---|---|---|
| #{{ i+1 }} | {{ s.serveur }} | {{ formatBilletageMontant(s.ca) }} | {{ s.pct.toFixed(1) }}% | {{ s.nbVentes }} | {{ s.qte }} | {{ s.nbVentes > 0 ? formatBilletageMontant(s.ca / s.nbVentes) : '—' }} |
| TOTAL | {{ formatBilletageMontant(graphCAData.totalCA || 0) }} | 100,0% | {{ graphCATotaux().nbVentes }} | {{ graphCATotaux().qte }} | ||
| Date{{ sortIndicatorJC('date') }} | Vente Comptant{{ sortIndicatorJC('vComptantTTC') }} | Remise{{ sortIndicatorJC('remise') }} | Acompte BC{{ sortIndicatorJC('acompteBC') }} | RAP Perçu{{ sortIndicatorJC('rapPercu') }} | Dépense{{ sortIndicatorJC('depense') }} | Total Recette{{ sortIndicatorJC('totalRecette') }} | Espèce{{ sortIndicatorJC('espece') }} | Chèque{{ sortIndicatorJC('cheque') }} | Virement{{ sortIndicatorJC('virement') }} | TVA{{ sortIndicatorJC('tva') }} | Marge{{ sortIndicatorJC('marge') }} |
|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ formatSynthDate(r.date) }} | {{ formatBilletageMontant(r.vComptantTTC) }} | {{ formatBilletageMontant(r.remise) }} | {{ formatBilletageMontant(r.acompteBC) }} | {{ formatBilletageMontant(r.rapPercu) }} | {{ r.depense ? '−' + formatBilletageMontant(r.depense) : '—' }} | {{ formatBilletageMontant(r.totalRecette) }} | {{ formatBilletageMontant(r.espece) }} | {{ formatBilletageMontant(r.cheque) }} | {{ formatBilletageMontant(r.virement) }} | {{ formatBilletageMontant(r.tva) }} | {{ formatBilletageMontant(r.marge) }} |
| Chargement… Aucune recette sur la période | |||||||||||
| TOTAL ({{ journalCaissesList.length }} j) | {{ formatBilletageMontant(journalCaissesTotaux().vComptantTTC) }} | {{ formatBilletageMontant(journalCaissesTotaux().remise) }} | {{ formatBilletageMontant(journalCaissesTotaux().acompteBC) }} | {{ formatBilletageMontant(journalCaissesTotaux().rapPercu) }} | {{ journalCaissesTotaux().depense ? '−' + formatBilletageMontant(journalCaissesTotaux().depense) : '—' }} | {{ formatBilletageMontant(journalCaissesTotaux().totalRecette) }} | {{ formatBilletageMontant(journalCaissesTotaux().espece) }} | {{ formatBilletageMontant(journalCaissesTotaux().cheque) }} | {{ formatBilletageMontant(journalCaissesTotaux().virement) }} | {{ formatBilletageMontant(journalCaissesTotaux().tva) }} | {{ formatBilletageMontant(journalCaissesTotaux().marge) }} |
| Moyenne journalière : | {{ formatBilletageMontant(journalCaissesTotaux().moyenneTotalRecette) }} | ||||||||||
| N° Régularisation | Date | Heure | Utilisateur | Produits | Valeur + | Valeur − | Impact Net | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ regulHistoLotOuvert === lot.idRegularisation ? '▼' : '▶' }} | {{ lot.idRegularisation }} | {{ formatSynthDate(lot.date) }} | {{ lot.heure ? formatSynthTime(lot.heure) : '—' }} | {{ lot.user }} | {{ lot.nbProduits }} | {{ lot.valeurPositive ? '+' + formatBilletageMontant(lot.valeurPositive) : '—' }} | {{ lot.valeurNegative ? '−' + formatBilletageMontant(lot.valeurNegative) : '—' }} | {{ lot.valeurNette < 0 ? '−' : '+' }}{{ formatBilletageMontant(Math.abs(lot.valeurNette)) }} | ||||||||||||||
|
||||||||||||||||||||||
| Chargement… Aucune régularisation de stock sur la période. | ||||||||||||||||||||||
| Date{{ sortIndicatorRG('date') }} | Utilisateur{{ sortIndicatorRG('user') }} | Famille{{ sortIndicatorRG('famille') }} | Produit{{ sortIndicatorRG('nomProduit') }} | Stock Avant{{ sortIndicatorRG('stockAvant') }} | Stock Physique{{ sortIndicatorRG('stockPhysique') }} | Écart{{ sortIndicatorRG('ecart') }} | CMUP{{ sortIndicatorRG('cmup') }} | Valeur Écart{{ sortIndicatorRG('valeurEcart') }} |
|---|---|---|---|---|---|---|---|---|
| {{ formatSynthDate(r.date) }} {{ r.heure ? formatSynthTime(r.heure) : '' }} | {{ r.user }} | {{ r.famille }} | {{ r.nomProduit }} {{ r.unite }} | {{ r.stockAvant }} | {{ r.stockPhysique }} | {{ r.ecart > 0 ? '+' : '' }}{{ r.ecart }} | {{ formatBilletageMontant(r.cmup) }} | {{ r.valeurEcart < 0 ? '−' : '+' }}{{ formatBilletageMontant(Math.abs(r.valeurEcart)) }} |
| Chargement… Aucune régularisation de stock sur la période. | ||||||||
| Origine{{ sortIndicatorJD('origine') }} | ID{{ sortIndicatorJD('id') }} | Utilisateur{{ sortIndicatorJD('user') }} | Date{{ sortIndicatorJD('date') }} | Ouverture | Fermeture | Recette Attendue{{ sortIndicatorJD('recette') }} | Recette Perçue{{ sortIndicatorJD('recettePercu') }} | Différence{{ sortIndicatorJD('difference') }} | Dépense{{ sortIndicatorJD('depense') }} | Observation |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ r.origine }} | {{ r.id }} | {{ r.user }} | {{ formatSynthDate(r.date) }} | {{ r.heureOuverture ? formatSynthTime(r.heureOuverture) : '—' }} | {{ r.heureFermeture ? formatSynthTime(r.heureFermeture) : '—' }} | {{ formatBilletageMontant(r.recette) }} | {{ formatBilletageMontant(r.recettePercu) }} | {{ r.difference < 0 ? '−' : '+' }}{{ formatBilletageMontant(Math.abs(r.difference)) }} | {{ r.depense ? formatBilletageMontant(r.depense) : '—' }} | |
| Chargement… ✔ Aucune différence de caisse sur la période — tous les Billetages étaient corrects. | ||||||||||
| ID Sortie BL{{ sortIndicatorBL('IDSortieBL') }} | Livraison{{ sortIndicatorBL('DteDeSortieBL') }} | Nom Client{{ sortIndicatorBL('NomClient') }} | Montant TTC{{ sortIndicatorBL('MontantTTC') }} | Acompte{{ sortIndicatorBL('Acompte') }} | RAP{{ sortIndicatorBL('RAP') }} |
|---|---|---|---|---|---|
| {{ r.IDSortieBL }} | {{ formatSynthDate(r.DteDeSortieBL) }} | {{ r.NomClient || r.IDClient || '' }} | {{ formatBilletageMontant(r.MontantTTC) }} | {{ formatBilletageMontant(r.Acompte) }} | {{ formatBilletageMontant(r.RAP) }} |
| Chargement… Aucun BL non facturé sur la période | |||||
| TOTAL ({{ journalBLTotaux().nbBls }} BL) | {{ formatBilletageMontant(journalBLTotaux().tMontantTTC) }} | {{ formatBilletageMontant(journalBLTotaux().tAcompte) }} | {{ formatBilletageMontant(journalBLTotaux().tRAP) }} | ||
| Date{{ sortIndicatorOffert('DteDeVente') }} | N° Facture{{ sortIndicatorOffert('IDVente') }} | Référence{{ sortIndicatorOffert('CodeBarre') }} | Désignation Produit{{ sortIndicatorOffert('NomProduit') }} | Qté{{ sortIndicatorOffert('SommeDeQteVendu') }} | Serveur{{ sortIndicatorOffert('Serveur') }} | Client{{ sortIndicatorOffert('NomClient') }} | Motif{{ sortIndicatorOffert('Commentaire') }} |
|---|---|---|---|---|---|---|---|
| {{ formatSynthDate(r.DteDeVente) }} | {{ r.IDVente }} | {{ r.CodeBarre || '' }} | {{ r.NomProduit || r.IDproduit }} | {{ r.SommeDeQteVendu || 0 }} | {{ r.Serveur || '' }} | {{ r.NomClient || '' }} | {{ formatOffertMotif(r.Commentaire) }} |
| Chargement… Aucun produit offert sur la période | |||||||
| TOTAL ({{ rapportOffertTotaux().nbLignes }} ligne{{ rapportOffertTotaux().nbLignes > 1 ? 's' : '' }}, {{ rapportOffertTotaux().nbVentes }} vente{{ rapportOffertTotaux().nbVentes > 1 ? 's' : '' }}) | {{ rapportOffertTotaux().tQte }} | ||||||
| Code Barre | Désignation | Unité | Qté | Prix Unitaire | Montant |
|---|---|---|---|---|---|
| {{ d.CodeBarre || '' }} | {{ d.NomProduit || d.IDproduit }} | {{ d.UnitProduit || '' }} | {{ d.QteVendu || 0 }} | {{ formatBilletageMontant(d.PrixUnitaire) }} | {{ formatBilletageMontant(d.MontantTotalVnt) }} |
| Aucune ligne produit | |||||
| Client | Date | Heure | User Annulé | Motif Annulation | Nom Produit | Table | Qté | Serveur |
|---|---|---|---|---|---|---|---|---|
| {{ r.IDClient }} | {{ formatSynthDate(r.DteAnnulation) }} | {{ formatSynthTime(r.HeureAnnulation) }} | {{ r.UserAnnulation }} | {{ r.MotifAnnulation }} | {{ r.NomProduit }} | {{ r.RecTable }} | {{ r.QteVendu || 0 }} | {{ r.Serveur }} |
| Aucune commande annulée dans l'historique | ||||||||
| Source | Destination | NomProduit | Qte | MotifTransfert | User | Serveur | Date | Heure |
|---|---|---|---|---|---|---|---|---|
| {{ r.NomTableSource || r.AncienneTable }} | {{ r.NomTableDest || r.NouvelleTable }} | {{ r.NomProduit }} | {{ r.QteVendu || 0 }} | {{ r.MotifTransfert }} | {{ r.UserTransfert }} | {{ r.Serveur }} | {{ formatSynthDate(r.DateTransfert) }} | {{ formatSynthTime(r.HeureTransfert) }} |
| Aucun transfert de table dans l'historique | ||||||||
| Nom d'Utilisateur | État | Recette Perçu | Dépense | Virement | Chèque |
|---|---|---|---|---|---|
| {{ b.NomUser }} | OUVERT CLÔTURÉ | {{ formatBilletageMontant(b.RecettePercu) }} | {{ parseFloat(b.Depense) ? '−' + formatBilletageMontant(Math.abs(b.Depense)) : '—' }} | {{ formatBilletageMontant(b.Virement) }} | {{ formatBilletageMontant(b.Cheque) }} |
| Aucun billetage rattaché | |||||
| Coupure | Nbre | Total |
|---|---|---|
| {{ formatBilletageMontant(c.valeur) }} | {{ c.nombre }} | {{ formatBilletageMontant(c.total) }} |
| Total Billetage | {{ formatBilletageMontant(archiveCompilSommes.sommeBilletageTotal) }} | |
| N° Facture | ID Client | Date de Vente | Serveur | Montant | Remise % | Remise Valeur | Montant TTC | Nmbr Pax |
|---|---|---|---|---|---|---|---|---|
| {{ v.IDVente }} | {{ v.IDClient }} | {{ formatBilletageDate(v.DteDeVente) }} | {{ v.Serveur }} | {{ formatBilletageMontant(v.MontantBrut) }} | {{ v.RemisePr || 0 }} | {{ formatBilletageMontant(v.RemiseVal) }} | {{ formatBilletageMontant(v.MontantTTC) }} | {{ v.NbrPrs || 0 }} |
| Aucune opération | ||||||||
| Banque | Facture | Montant |
|---|---|---|
| {{ v.Banque }} | {{ v.IDVente }} | {{ formatBilletageMontant(v.Montant) }} |
| Aucun virement | ||
| Total : | {{ formatBilletageMontant(billetageVirement.reduce((s,v) => s + (parseFloat(v.Montant)||0), 0)) }} | |
| Banque | Numéro | Propriétaire | Montant |
|---|---|---|---|
| {{ c.Banque }} | {{ c.Numero }} | {{ c.Proprietaire }} | {{ formatBilletageMontant(c.Montant) }} |
| Aucun chèque | |||
| Total : | {{ formatBilletageMontant(billetageCheque.reduce((s,v) => s + (parseFloat(v.Montant)||0), 0)) }} | ||
| Client | Libellé de l'Opération | Montant | Date |
|---|---|---|---|
| {{ r.IDClient }} | {{ r.Libelle }} | {{ formatBilletageMontant(r.SoldeDebitClient) }} | {{ formatBilletageDate(r.dteOperation) }} {{ formatBilletageHeure(r.dteOperation) }} |
| Aucun RAP perçu | |||
| Total : | {{ formatBilletageMontant(billetageRAP.reduce((s,v) => s + (parseFloat(v.SoldeDebitClient)||0), 0)) }} | ||
| N° Facture | Client | Date | Serveur | Montant | TVA {{ infoSociete.tauxTVA }}% | Remise | Net | Table | Couverts | Observation | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ ligne.IDVente }} | {{ ligne.NomClient }} | {{ formatDate(ligne.DteDeVente) }} | {{ ligne.Serveur }} | {{ formatPrice(ligne.MontantBrut) }} | {{ formatPrice(parseFloat(ligne.MontantTTC || ligne.MontantBrut || 0) - parseFloat(ligne.MontantTTC || ligne.MontantBrut || 0) / (1 + infoSociete.tauxTVA / 100)) }} | {{ parseFloat(ligne.RemiseVal || 0) > 0 ? formatPrice(ligne.RemiseVal) : '' }} | {{ formatPrice(ligne.MontantTTC || ligne.MontantBrut) }} | {{ ligne.NomTable }} | {{ ligne.NbrPrs || '' }} | {{ ligne.Observation }} |
| Client | Libellé | Date | Utilisateur | Montant Perçu |
|---|---|---|---|---|
| {{ l.NomClient }} | {{ l.Libelle }} | {{ formatDate(l.dteOperation) }} | {{ l.NomUser }} | {{ formatPrice(l.MontantRecu) }} |
Rapport des BL de Produits Livré
| ID Sortie BL | Livraison | Nom Client | Nom du Produit | Qte | Prix | Montant |
|---|---|---|---|---|---|---|
| {{ l.IDSortieBL }} | {{ formatDate(l.DteDeSortieBL) }} | {{ l.NomClient }} | {{ l.NomProduit }} | {{ l.SommeDeQteSortieBL }} | {{ formatPrice(l.Prix) }} | {{ formatPrice((l.SommeDeQteSortieBL || 0) * (l.Prix || 0)) }} |
| Date | ID Sortie | Caissier | Client | Code Barre | Désignation Produit | Qté Sortie |
|---|---|---|---|---|---|---|
| {{ formatDate(l.DteDeSortieBS) }} | {{ l.IDSortieBS }} | {{ l.User }} | {{ l.NomClient }} | {{ l.CodeBarre }} | {{ l.NomProduit }} | {{ l.SommeDeQteSortieBS }} |
| Réf Appro | Nom Fournisseur | Date d'Appro | Nom Produit | Qté | PU | Devise | Montant Appro |
|---|---|---|---|---|---|---|---|
| {{ l.RefAppro }} | {{ frnsLabel(l) }} | {{ formatDate(l.DtedAppro) }} | {{ l.NomProduit }} | {{ l.Qteachete }} | {{ formatPrice(l.PrixAchatUnitaireTTC) }} | {{ l.Devise }} | {{ formatPrice(l.MontantApproTbl) }} |
| Date | N° Facture | Produit | Qté | PU | Montant | Montant Remisé | Marge | Serveur | Client |
|---|---|---|---|---|---|---|---|---|---|
| {{ formatDate(ligne.DteDeVente) }} | {{ ligne.IDVente }} | {{ ligne.NomProduit }} | {{ ligne.SommeDeQteVendu }} | {{ formatPrice(ligne.PrixUnitaire) }} | {{ formatPrice(ligne.SommeDeMontantTotalVnt) }} | {{ formatPrice(ligne.Prixremiser || ligne.SommeDeMontantTotalVnt) }} | {{ formatPrice(ligne.MargeBenefique) }} | {{ ligne.Serveur }} | {{ ligne.NomClient }} |
| Produit | Quantité | Table | Commande | Montant | Serveur |
|---|---|---|---|---|---|
| {{ ligne.NomProduit }} | {{ ligne.SommeDeQteVendu }} | {{ ligne.NomTable }} | {{ ligne.Commande }} | {{ formatPrice(ligne.MontantTotal) }} | {{ ligne.Serveur }} |
| ID Vente | Date | Montant TTC | Utilisateur | Observation |
|---|---|---|---|---|
| {{ ligne.IDVente }} | {{ formatDate(ligne.DteDeVente) }} | {{ formatPrice(ligne.MontantTTC) }} | {{ ligne.User }} | {{ ligne.Observation }} |
| Date | Heure | ID Vente | Produit | Qté | Utilisateur | Observation |
|---|---|---|---|---|---|---|
| {{ formatDate(l.DteDeVente) }} | {{ formatHeure(l.HeurDeVente) }} | {{ l.IDVente }} | {{ l.NomProduit }} | {{ l.SommeDeQteVendu }} | {{ l.User }} | {{ l.Observation }} |
| Nom {{ consultationEntityLabel }} | Contact {{ consultationEntityLabel }} | Adresse de la Soc | RAP (BL) | RAPBC (BC) | CARealiser | RAPSomme |
|---|---|---|---|---|---|---|
| TOTAL : | {{ formatPrice(totalRAP) }} | {{ formatPrice(totalRAPBC) }} | {{ formatPrice(totalCARealiser) }} | {{ formatPrice(totalRAPSomme) }} | ||
| {{ (consultationMode === 'fournisseur' && userStatut !== 'Administrateur' && !canIdentifierFrns) ? client.IDClient : client.NomClient }} | {{ (consultationMode === 'fournisseur' && userStatut !== 'Administrateur' && !canIdentifierFrns) ? '***' : client.ContactClient }} | {{ (consultationMode === 'fournisseur' && userStatut !== 'Administrateur' && !canIdentifierFrns) ? '***' : client.Adresse }} | {{ formatPrice(client.RAP || 0) }} | {{ formatPrice(client.RAPBC || 0) }} | {{ formatPrice(client.CARealiser || 0) }} | {{ formatPrice(client.RAPSomme || 0) }} |
| Aucun client trouvé | ||||||
| Code Barre | Désignation | Unité | Qté | PU HT | Stock | Montant HT | Action |
|---|---|---|---|---|---|---|---|
| {{ item.codeBarre || '—' }} | {{ item.nomProduit }} | {{ item.unite }} | {{ formatPrice(item.prixUnitaire) }} | {{ item.stock !== null ? item.stock : '—' }} | {{ formatPrice((item.qte || 0) * (item.prixUnitaire || 0)) }} | ||
| Aucune ligne. Utilisez la zone au-dessus pour ajouter des produits. | |||||||
| ID Produit | Désignation | Unité | Qté Vendu | P.U. | Montant |
|---|---|---|---|---|---|
| Chargement des lignes… | |||||
| Aucune ligne | |||||
| {{ d.IDproduit }} | {{ d.NomProduit }} | {{ d.Unite }} | {{ d.QteVendu }} | {{ formatPrice(d.PrixUnitaire) }} | {{ formatPrice(d.MontantTotalVnt) }} |
| ID Vente | Montant TTC |
|---|---|
| {{ f.IDVente }} | {{ formatPrice(f.MontantTTC) }} |
| Désignation | Unité | Qté | P.U. | Montant |
|---|---|---|---|---|
| Chargement... | ||||
| Aucune ligne | ||||
| {{ l.NomProduit }} | {{ l.Unite }} | {{ l.QteSortieBL }} | {{ formatPrice(l.PrixApresRemise) }} | {{ formatPrice(l.MontantTotal) }} |
| Désignation | Unité | Qté | P.U. | Montant |
|---|---|---|---|---|
| Chargement... | ||||
| Aucune ligne | ||||
| {{ l.NomProduit }} | {{ l.Unite }} | {{ l.QteVendu }} | {{ formatPrice(l.PrixApresRemise) }} | {{ formatPrice(l.MontantTotal) }} |
| Désignation | Unité | Qté | P.U. | Montant | |
|---|---|---|---|---|---|
| Chargement... | |||||
| Aucune ligne | |||||
| {{ l.NomProduit }} | {{ l.Unite }} | {{ formatPrice(l.PrixApresRemise) }} | {{ formatPrice(l.MontantTotal) }} | 🔒 | |
| Désignation | Qté |
|---|---|
|
{{ item.name }}
{{ item.commentaire }}
|
{{ item.quantity }} |
| Code Barre | Désignation | Qté | Unité | Prix d'Achat | Remise | Montant | Action |
|---|---|---|---|---|---|---|---|
| {{ item.codeBarre }} | {{ (produitsBoutique.find(p => p.id == item.idProduit) || {}).name || item.idProduit }} | {{ item.unite }} | {{ item.remise }}% | {{ formatPrice((item.qte || 0) * (item.prixAchat || 0) * (1 - (item.remise || 0) / 100) * (appro.tauxDevise || 1)) }} |
|
||
| Aucune ligne. Utilisez la zone au-dessus pour ajouter des produits. | |||||||
| Code | Désignation | Unité | PU HT | Qté Cmd | Montant |
|---|---|---|---|---|---|
| {{ l.CodeBarre || '-' }} | {{ l.NomProduit || '(produit inconnu)' }} | {{ l.UnitProduit || '-' }} | {{ formatPrice((l.PrixUnitaire || 0) * (l.QteCommande || 0)) }} | ||
| Aucune ligne détail. | |||||
| Nom Produit | Unité | Prix Vente | Gros | VIP | Stock | Seuil | CMUP |
|---|---|---|---|---|---|---|---|
| {{ gp.NomProduit }} | {{ gp.UnitProduit }} | {{ formatPrice(gp.PrixDeVente) }} | {{ formatPrice(gp.PrixDeVenteGrossiste) }} | {{ formatPrice(gp.PrixDeVenteVIP) }} | {{ gp.StockProduit }} | {{ gp.SeuilProduit }} | {{ formatPrice(gp.CMUP) }} |
| Code Barre | Désignation | Unité | Qté | PU HT | Montant Commande | Action |
|---|---|---|---|---|---|---|
| {{ (produitsBoutique.find(p => p.id == item.idProduit) || {}).reference || item.idProduit }} | {{ (produitsBoutique.find(p => p.id == item.idProduit) || {}).name || 'Produit ' + item.idProduit }} | {{ item.unite }} | {{ formatPrice(item.prixUnitaire) }} | {{ formatPrice((item.qte || 0) * (item.prixUnitaire || 0)) }} | ||
| Aucune ligne. Utilisez la zone au-dessus pour ajouter des produits. | ||||||
| Code Barre | Désignation | Unité | Qté | PU | Montant | Action |
|---|---|---|---|---|---|---|
| {{ (produitsBoutique.find(p => p.id == item.idProduit) || {}).reference || item.idProduit }} | {{ (produitsBoutique.find(p => p.id == item.idProduit) || {}).name || 'Produit ' + item.idProduit }} | {{ item.unite }} | {{ formatPrice(item.prixUnitaire) }} | {{ formatPrice((item.qte || 0) * (item.prixUnitaire || 0)) }} | ||
| Aucune ligne. Utilisez la zone au-dessus pour ajouter des produits. | ||||||
| Categorie | Chambre | Lit Simple | Lit Double | Prix | Prix Agence | Prix VIP | Equipement | ||
|---|---|---|---|---|---|---|---|---|---|
| {{ ch.Categorie }} | {{ ch.Chambre || ch.chambre }} | {{ ch.nbLitSimple || 0 }} | {{ ch.nbLitDouble || 0 }} | {{ formatPrice(ch.PrixDetailHauteSaison || 0) }} | {{ formatPrice(ch.PrixGrosHauteSaison || 0) }} | {{ formatPrice(ch.PrixVIPHauteSaison || 0) }} | |||
| Aucune chambre trouvée |
💡 Communiquez l'ID Logiciel ci-dessus à LOGITOKY (032 84 289 89).
En retour vous recevrez un Code à saisir.
Si valide, le mot de passe de tous les comptes Administrateur sera réinitialisé à 123.
Pour des raisons de sécurité, confirmez votre mot de passe avant de configurer la double authentification.
1. Scannez ce QR code avec votre application (Google Authenticator, Authy, Microsoft Authenticator…) :
2. Entrez le code à 6 chiffres affiché dans votre application :
Ces codes de secours vous permettront de vous connecter si vous perdez l'accès à votre téléphone. Ils ne seront affichés QU'UNE SEULE FOIS. Chaque code est à usage unique.
Vous êtes sur le point de désactiver la double authentification. Confirmez votre mot de passe + un code TOTP valide.
⚠️ Les 10 anciens codes seront invalidés et remplacés par 10 nouveaux.
Le secret 2FA et tous les codes de secours de {{ totp2FAAdminReset.targetUser }} seront supprimés. Cet utilisateur pourra se connecter sans 2FA et devra la réactiver depuis son profil.
| Nom du Propriétaire | |
| Banque | |
| Type du Chèque | |
| Numéro du Chèque | |
| Montant du Chèque |
{{ currencySymbol || 'Ar' }}
|
| Nom Client | Type | RAP |
|---|---|---|
| {{ cli.NomClient }} | {{ cli.TypeClient || 'Particulier' }} | {{ formatPrice(cli.RAPSomme || 0) }} |
| Aucun client trouvé | ||
| Nom du Propriétaire | |
| Banque | |
| Type du Chèque | |
| Numéro du Chèque | |
| Montant du Chèque |
{{ currencySymbol || 'Ar' }}
|
| Banque | Numéro | Référence | Montant | |
|---|---|---|---|---|
| {{ v.banque }}💳 dont frais {{ v.tauxCarte }}% : {{ formatPrice(v.fraisCarte) }} | {{ v.numeroBancaire }} | {{ v.reference || '—' }} | {{ formatPrice(v.montant) }} |
| Propriétaire | Banque | Type | Numéro | Montant | |
|---|---|---|---|---|---|
| {{ c.proprietaire }} | {{ c.banque }} | {{ c.type }} | {{ c.numero }} | {{ formatPrice(c.montant) }} |
| Banque | |
| Adresse de la Banque | |
| N° |
| Client | Téléphone | RAP (Solde) | |
|---|---|---|---|
| {{ cli.NomClient }} | {{ cli.Telephone || '' }} | {{ formatPrice(cli.RAP || 0) }} | |
| {{ debiteurClientSearch ? 'Aucun résultat' : 'Tapez pour rechercher un client...' }} | |||
| Date d'Opération | Libelle de l'Opération | Debit | Credit | Utilisateur | ||
|---|---|---|---|---|---|---|
| {{ ligne.dteOperation }} | {{ ligne.Libelle }} | {{ ligne.SoldeDebitClient ? formatPrice(ligne.SoldeDebitClient) : '' }} | {{ ligne.SoldeCreditClient ? formatPrice(ligne.SoldeCreditClient) : '' }} | {{ ligne.NomUser }} | ||
| Aucun BL non facturé pour ce client |
| Produit | Qté | Prix Unit. | Total | BL |
|---|---|---|---|---|
| {{ item.NomProduit || item.IDproduit }} | {{ item.QteSortieBL }} | {{ formatPrice(item.PrixUnitaire) }} | {{ formatPrice(item.MontantTotal) }} | {{ item.IDSortieBL }} |
| Aucun détail disponible | ||||
| Client | Chambre / Tél | RAP (Solde) | |
|---|---|---|---|
| {{ cli.NomClient }} | {{ cli.chambre || cli.Telephone || '' }} | {{ formatPrice(cli.RAP || 0) }} | |
| {{ chambreClientSearch ? 'Aucun client trouvé' : 'Chargement...' }} | |||
| Banque | Adresse | N° | 💳 Taux % | Actions |
|---|---|---|---|---|
| {{ bq.Banque }} | {{ bq.AdresseBq }} | {{ bq.NumeroBancaire }} | {{ (parseFloat(bq.TauxCarte)||0) > 0 ? (parseFloat(bq.TauxCarte) + ' %') : '—' }} | |
| Aucune banque enregistrée | ||||
Transférer la commande de {{ selectedTable ? selectedTable.label : '' }} → {{ transfertTargetTable.label || transfertTargetTable.NomTable }}
1. Choisir la table destination :
2. Choisir la commande destination :
Transfert vers : {{ transfertTargetTable ? transfertTargetTable.NomTable : '' }}
Sélectionnez les articles à offrir (prix passé à 0) :
| Désignation | Qté | Prix original | |
|---|---|---|---|
| {{ item.name }} | {{ item.quantity }} | {{ formatPrice(item.price * item.quantity) }} |
| Nom Serveur (Appareil) | ID Appareil | Active | Action |
|---|---|---|---|
| {{ dev.NomAppareil }} | {{ dev.IDDevice }} | {{ dev.active ? '☑' : '☐' }} {{ dev.active ? 'Oui' : 'Non' }} | |
| Aucun appareil enregistré | |||
Votre Adresse IP : {{ serverAddresses }}
| Code Barre / Recherche | Désignation | Action |
|---|---|---|
| {{ ligne.nomProduit }} — sélectionnez un produit — |
| Nom Famille Fils |
Période de la Promotion
Date du Début
Date Fin
|
Remise % | Action | |
|---|---|---|---|---|
|
|
||||
| Aucune promotion par famille fils. Cliquez « + Ajouter une ligne ». | ||||
⚠ La promotion par famille s'applique uniquement aux produits qui ne sont PAS déjà dans un groupe de promotion personnalisée.
| Nom Client | Contact | Points | Fréquence | CA Réalisé |
|---|---|---|---|---|
| {{ c.NomClient }} | {{ c.ContactClient || '—' }} | {{ c.PointClient }} | {{ c.FrequenceDAchat }} | {{ formatPrice(c.CARealiser) }} Ar |
RemiseGlobaleFils > 0 alors qu'aucune promotion active ne les couvre.
Cela arrive quand une promotion expire mais que la restauration automatique des prix échoue.
PrixDeVente × 100 ÷ (100 − RemiseGlobaleFils)
| Produit | Prix Actuel | Remise % | Prix après resto. |
|---|---|---|---|
| {{ p.NomProduit }} | {{ formatPrice(p.PrixDeVente) }} Ar | {{ p.RemiseGlobaleFils }} % | {{ formatPrice(p.PrixDeVente * 100 / (100 - p.RemiseGlobaleFils)) }} Ar |
| Produit | Famille Père | Prix Vente | Remise % | Groupe Perso ? | Actif |
|---|---|---|---|---|---|
| {{ p.NomProduit }} | {{ p.NomFamillePere || '—' }} | {{ formatPrice(p.PrixDeVente) }} Ar | {{ p.RemiseGlobaleFils }} % | ⚠ Oui Non | {{ p.ProduitActive ? '✓' : '✗' }} |
💡 Légende : « Groupe Perso = Oui » signifie que ce produit appartient déjà à un groupe de promotion personnalisée — la promo par famille NE l'affectera PAS (logique VBA).
| Code Barre | Nom Produit | Prix Actuel | Remise |
|---|---|---|---|
| {{ p.CodeBarre || '—' }} | {{ p.NomProduit }} | {{ formatPrice(p.PrixDeVente) }} | -{{ p.RemiseGlobaleFils || 0 }} % |
| Aucun produit dans ce groupe. | |||
{{ supervisorOverride.message }}
QR généré localement (aucune connexion Internet requise).
{{ d.idVente }}
{{ (!d.source || d.source === 'Espèce' || d.source === 'Espece') ? '💵 Espèce' : '🏦 ' + d.source }}