From 96d7deb4e4a52d1440848f9985d5cb12afa7901d Mon Sep 17 00:00:00 2001 From: Dany De Bontridder Date: Fri, 18 Jun 2010 22:36:25 +0000 Subject: [PATCH] Balance by category of card ordered by name --- html/category_pdf.php | 19 ++++++------ include/impress_fiche.inc.php | 18 +++++------ release-note | 57 +---------------------------------- 3 files changed, 19 insertions(+), 75 deletions(-) diff --git a/html/category_pdf.php b/html/category_pdf.php index 8faa295eb..8cd408a1e 100644 --- a/html/category_pdf.php +++ b/html/category_pdf.php @@ -59,8 +59,8 @@ if ( $_GET['histo'] == 4 ) { $fDate=date('dmy-Hi'); $pdf->Output("category-$fDate.pdf", 'I');exit; } + $aCard=$cn->get_array("select f_id from vw_fiche_attr where fd_id=$1 order by vw_name ",array($_REQUEST['cat'])); - $aCard=$fd->GetByType(); if ( empty($aCard)) { $pdf->Cell(0,10, "Aucune fiche trouvée");//Save PDF to file $fDate=date('dmy-Hi'); @@ -69,17 +69,18 @@ if ( $_GET['histo'] == 4 ) { $pdf->SetFont('DejaVuCond','',7); $pdf->Cell(30,7,'Quick Code',0,0,'L',0); $pdf->Cell(80,7,'Libellé',0,0,'L',0); - $pdf->Cell(20,8,'Débit',0,0,'R',0); - $pdf->Cell(20,8,'Crédit',0,0,'R',0); - $pdf->Cell(20,8,'Solde',0,0,'R',0); - $pdf->Cell(20,8,'D/C',0,0,'C',0); + $pdf->Cell(20,7,'Débit',0,0,'R',0); + $pdf->Cell(20,7,'Crédit',0,0,'R',0); + $pdf->Cell(20,7,'Solde',0,0,'R',0); + $pdf->Cell(20,7,'D/C',0,0,'C',0); $pdf->Ln(); $idx=0; for ($i=0;$i < count($aCard);$i++) { if ( isDate($_REQUEST['start']) == null || isDate ($_REQUEST['end']) == null ) exit; $filter= " (j_date >= to_date('".$_REQUEST['start']."','DD.MM.YYYY') ". " and j_date <= to_date('".$_REQUEST['end']."','DD.MM.YYYY')) "; - $solde=$aCard[$i]->get_solde_detail($filter); + $oCard=new Fiche($cn,$aCard[$i]['f_id']); + $solde=$oCard->get_solde_detail($filter); if ( $solde['debit'] == 0 && $solde['credit']==0) continue; if ( $idx % 2 == 0 ) { @@ -90,9 +91,9 @@ if ( $_GET['histo'] == 4 ) { $fill=0; } $idx++; - - $pdf->Cell(30,7,$aCard[$i]->strAttribut(ATTR_DEF_QUICKCODE),0,0,'L',$fill); - $pdf->Cell(80,7,$aCard[$i]->strAttribut(ATTR_DEF_NAME),0,0,'L',$fill); + + $pdf->Cell(30,7,$oCard->strAttribut(ATTR_DEF_QUICKCODE),0,0,'L',$fill); + $pdf->Cell(80,7,$oCard->strAttribut(ATTR_DEF_NAME),0,0,'L',$fill); $pdf->Cell(20,7,sprintf('%.02f',$solde['debit']),0,0,'R',$fill); $pdf->Cell(20,7,sprintf('%.02f',$solde['credit']),0,0,'R',$fill); $pdf->Cell(20,7,sprintf('%.02f',abs($solde['solde'])),0,0,'R',$fill); diff --git a/include/impress_fiche.inc.php b/include/impress_fiche.inc.php index d7f479712..d5e9e59ad 100644 --- a/include/impress_fiche.inc.php +++ b/include/impress_fiche.inc.php @@ -21,10 +21,6 @@ /*!\file * \brief printing of card */ - - /** - *@todo add the report of balance for category of card - */ include_once('class_database.php'); include_once('class_fiche.php'); require_once('class_lettering.php'); @@ -123,11 +119,14 @@ $export_pdf.=''; echo $export_pdf; // Balance if ( $_GET['histo'] == 4 ) { + if ( isDate($_REQUEST['start']) == null || isDate ($_REQUEST['end']) == null ) { + alert('Date invalide !'); exit;} + $fd=new Fiche_Def($cn,$_REQUEST['cat']); if ( $fd->hasAttribute(ATTR_DEF_ACCOUNT) == false ) { echo "Cette catégorie n'ayant pas de poste comptable n'a pas de balance"; exit;} - $aCard=$fd->GetByType(); + $aCard=$cn->get_array("select f_id from vw_fiche_attr where fd_id=$1 order by vw_name ",array($_REQUEST['cat'])); if ( empty($aCard)) { echo "Aucune fiche trouvée";exit;} echo ''; echo tr( @@ -140,18 +139,17 @@ if ( $_GET['histo'] == 4 ) { ); $idx=0; for ($i=0;$i < count($aCard);$i++) { - if ( isDate($_REQUEST['start']) == null || isDate ($_REQUEST['end']) == null ) { - alert('Date invalide !'); exit;} $filter= " (j_date >= to_date('".$_REQUEST['start']."','DD.MM.YYYY') ". " and j_date <= to_date('".$_REQUEST['end']."','DD.MM.YYYY')) "; - $solde=$aCard[$i]->get_solde_detail($filter); + $oCard=new Fiche($cn,$aCard[$i]['f_id']); + $solde=$oCard->get_solde_detail($filter); if ( $solde['debit'] == 0 && $solde['credit']==0) continue; $class=''; if ( $idx%2 == 0) $class='class="odd"'; $idx++; echo tr( - td($aCard[$i]->strAttribut(ATTR_DEF_QUICKCODE)). - td($aCard[$i]->strAttribut(ATTR_DEF_NAME)). + td($oCard->strAttribut(ATTR_DEF_QUICKCODE)). + td($oCard->strAttribut(ATTR_DEF_NAME)). td(sprintf('%.02f',$solde['debit']),'style="text-align:right"'). td(sprintf('%.02f',$solde['credit']),'style="text-align:right"'). td(sprintf('%.02f',abs($solde['solde'])),'style="text-align:right"'). diff --git a/release-note b/release-note index 11d7a4ea2..13be9cf54 100644 --- a/release-note +++ b/release-note @@ -1,56 +1 @@ -1. Plan comptable est maintenant alphanumérique, la numérotation automatique -ne fonctionne pas si le poste comptable contient autre chose que des chiffres. -Cependant il n'est pas encore permis d'y mettre aucune chose que des chiffres - - -2. Document : dans la liste des documents, on a dorénavant ceux qui en dépendent -indirectement - -Exemple -Document A en relation avec Document B -Document C en relation avec Document B -Avant dans les documents liés, on ne voyait que le document B dans la liste -des documents liés de A -Avec la nouvelle version, on voit dans la liste du document A, le document B &C - -3. Lettrage -La réconciliation ou rapprochement fait correspondre une ou plusieurs opérations -comptables -Le lettrage lui, agit à un niveau plus bas en faisant correspondre, une ligne d'opération -comptable à une autre mais uniquement entre poste comptable identique. -Typiquement, il s'agit d'un débit qui correspond à un crédit - -4 TVA : Se choisit maintenant dans un popup au lieu d'une liste select - -5 Impression : -* nouveau menu Categorie, vous permet de visualiser par catégorie de fiche -avec l'historique des opérations ou simplement le résumé. -* nouveau (contribution) une nouvelle possibilité est d'imprimer le grand livre -* nouveau : support complet de l'unicode pour les impressions -* Les impressions de journaux d'achat et de vente sont classés par numéro de pièces justificatives, sans tenir compte du préfixe. Dès lors la centralisation est considérée comme obsolète et sera supprimée. -* Impression simple pour les journaux financiers et Opérations diverses - -6 Ecriture directe (re) devient Opérations Diverses - -7 Ajout du lettrage dans la plupart des impressions - -8 Extension : vérification du chemin - -9 Dans paramètre->journaux, amélioration de la presentation de la numérotation des pj. -10 Fiche : possibilité de déplacer les fiches dans une autre catégorie, attention les attributs n'existant pas dans la catégorie cible seront supprimés - -11 A ajouter dans la doc : les fiches peuvent 2 postes comptables, choisi selon qu'on l'utilise au débit ou au crédit, exemple : client et fournisseur, marchandises à vendre et à acheter - -12. A cause de php 5.3, on n'utilise plus PHPSESSID mais plutôt un cookie - -13. Les banques utilisent des n° de PJ, chaque operation sera donc la PJ suivi du n° d'operation -exemple PJ = FIN1 -operation 1 = FIN1001 -operation 2 = FIN1002 -operation 3 = FIN1003 -il est préférable d'avoir un préfixe différent pour chaque banque, il est plus facile d'utiliser un journal par compte en banque - -14. Pour le pense bête, changement cosmétique -15. Opérations Diverses fonctionne comme les autres journaux : soit on spécifie la période soit la période est déduite de la date -16. La calculatrice est dans un bouton -17. Possibilité d'avoir la date de la periode ou vide pour les achat, ventes, opérations diverses et banque, à changer dans paramètre->société : suggérer date +1. Ajout balance par catégorie de fiche \ No newline at end of file