Changeset 51515 in spip-zone


Ignore:
Timestamp:
Sep 16, 2011, 5:11:08 AM (9 years ago)
Author:
marcel@…
Message:

Mise en place des raccourcis pour 'Compte de résultat' et 'Annexe'. Affichage du Compte de résultat de l'exercice (classes 6, 7 et 8).

Location:
_plugins_/Association/Associaspip
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/Association/Associaspip/association_options.php

    r50519 r51515  
    2424);
    2525
     26$GLOBALS['association_classes'] = array(
     27        "capital" => "1",
     28        "immob" => "2",
     29        "stock" => "3",
     30        "tier" => "4",
     31    "financier" => "5",
     32    "charge" => "6",
     33    "produit" => "7",
     34    "contribution_volontaire" => "8"
     35 );
    2636
    2737define('_DIR_PLUGIN_ASSOCIATION_ICONES', _DIR_PLUGIN_ASSOCIATION.'img_pack/');
     
    160170  spip_unlink(cache_meta('association_metas'));
    161171}
    162 
     172// Filtre pour "afficher" ou "cacher" un bloc div
     173// Utilise dans le formulaire cvt "editer_asso_comptes.html"
     174function affichage_div($type_operation,$list_operation) {
     175        if(strpos($list_operation, '-')) {
     176                $operations = explode('-', $list_operation);
     177                $res = 'cachediv';
     178                for($i=0;$i<count($operations);$i++) {
     179                        $operation = $GLOBALS['association_classes'][$operations[$i]];
     180                        if($type_operation===$operation) {
     181                                $res = '';
     182                                break;
     183                        }
     184                }
     185        }
     186        else {
     187                $res = ($type_operation===$GLOBALS['association_classes'][$list_operation])?'':'cachediv';
     188        }
     189        return $res;
     190}
    163191
    164192function encadre($texte,$avant='[',$apres=']') {
  • _plugins_/Association/Associaspip/exec/bilan.php

    r50519 r51515  
    4242                association_onglets(_T('asso:titre_onglet_comptes'));           
    4343
    44                 echo debut_gauche("",true);
     44                echo debut_gauche("",true);             
    4545               
    4646                echo debut_boite_info(true);
     
    7070                }
    7171                echo fin_boite_info(true);
     72
     73                $url_compte_resultat = generer_url_ecrire('compte_resultat', "annee=$annee");
     74                $url_annexe = generer_url_ecrire('annexe', "annee=$annee");
     75                $res = association_icone(_T('asso:cpte_resultat_titre_general') . " $annee",  $url_compte_resultat, 'finances.jpg')
     76                . association_icone(_T('asso:annexe_titre_general') . " $annee",  $url_annexe, 'finances.jpg');
     77               
     78                echo bloc_des_raccourcis($res);
     79
    7280                echo debut_droite("",true);
    7381               
    7482                debut_cadre_relief(_DIR_PLUGIN_ASSOCIATION_ICONES."finances.jpg", false, "", '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;' .propre( _T('asso:bilans_comptables')));
    7583               
    76                
    77 
    78                 $clas=$GLOBALS['association_metas']['classe_banques'];
     84                $clas_banque=$GLOBALS['association_metas']['classe_banques'];
     85                $clas_contrib_volontaire=$GLOBALS['association_classes']['contribution_volontaire']; // une contribution benevole ne doit pas etre comptabilisee en charge/produit
    7986               
    8087                if ($plan) {
    8188                        $join = " RIGHT JOIN spip_asso_plan ON imputation=code";
    8289                        $sel = ", code, intitule, classe";
    83                         $having =  " AND classe <> " . sql_quote($clas);
     90                        $having =  " AND classe <> " . sql_quote($clas_banque). " AND classe <> " .sql_quote($clas_contrib_volontaire);
    8491                        $order = "code,";
    8592                } else $join = $sel = $having = $order = '';           
     
    100107
    101108                        echo "\n<fieldset>";
    102                         echo '<legend><strong>', _T('asso:resultat_courant') . ' ' . $annee. ' ' .$intutile_destination_bilan. '</strong></legend>';
     109                        echo '<legend><strong>'. _T('asso:resultat_courant') . ' ' . $annee. ' ' .$intutile_destination_bilan. '</strong></legend>';
    103110                        echo "\n<table border='0' cellpadding='2' cellspacing='0' width='100%' class='arial2' style='border: 1px solid #aaaaaa;'>\n";
    104111                        echo "<tr style='background-color: #DBE1C5;'>\n";
     
    176183        $clas=$GLOBALS['association_metas']['classe_banques'];
    177184        $query = sql_select('*', 'spip_asso_plan', "classe='$clas'", '',  "code" );
    178                
     185
     186        $date_du_jour = date('Y-m-d'); # pour ne pas comptabiliser les opérations au delà d'aujourd'hui !!!!
     187
    179188        while ($banque = sql_fetch($query)) {
    180189                $date_solde=$banque['date_anterieure'];
     
    186195                echo "\n<td class='arial11 border1' style='text-align:right;'>".association_datefr($date_solde).'</td>';
    187196                echo "\n<td class='arial11 border1' style='text-align:right;'>".number_format($solde, 2, ',', ' ').'</td>';
    188                        
    189                 $compte = sql_fetsel("sum( recette ) AS recettes, sum( depense ) AS depenses, date", "spip_asso_comptes", "date >= '$date_solde' AND journal = '$journal'", 'journal');
     197
     198                /* ne pas comptabiliser les opérations au delà d'aujourd'hui meme si il y a des echeances futures !!!! */
     199                $compte = sql_fetsel("sum( recette ) AS recettes, sum( depense ) AS depenses, date", "spip_asso_comptes", "date >= '$date_solde' AND date <= '$date_du_jour' AND journal = '$journal'", 'journal');
    190200                       
    191201                if ($compte)
  • _plugins_/Association/Associaspip/exec/comptes.php

    r50519 r51515  
    7070        echo fin_boite_info(true);     
    7171       
    72         $url_bilan = generer_url_ecrire('bilan', "annee=$annee");               
    73         $res = association_icone(_T('Bilan') . " $annee",  $url_bilan, 'finances.jpg')
     72        $url_bilan = generer_url_ecrire('bilan', "annee=$annee");
     73        $url_compte_resultat = generer_url_ecrire('compte_resultat', "annee=$annee");
     74        $url_annexe = generer_url_ecrire('annexe', "annee=$annee");
     75        $res = association_icone(_T('asso:cpte_resultat_titre_general') . " $annee",  $url_compte_resultat, 'finances.jpg')
     76        . association_icone(_T('asso:bilan') . " $annee",  $url_bilan, 'finances.jpg')
     77        . association_icone(_T('asso:annexe_titre_general') . " $annee",  $url_annexe, 'finances.jpg')
    7478        . association_icone(_T('asso:ajouter_une_operation'),  generer_url_ecrire('edit_compte'), 'ajout_don.png');
    7579
     
    9195        if ($imputation=="%") { echo ' selected="selected"'; }
    9296        echo '>Tous</option>';
    93         $sql = sqL_select('code, classe, intitule', 'spip_asso_plan','', '', "classe,code");
     97        /* ne pas afficher les codes de la classe financiere : ce n'est pas une imputation et les inactifs  */
     98        $sql = sql_select('code, classe, intitule', 'spip_asso_plan','classe <> '.$GLOBALS['association_metas']['classe_banques'].' AND active' , '', "classe,code");
    9499        while ($plan = sql_fetch($sql)) {
    95100                echo '<option value="'.$plan['code'].'" ';
     
    137142                $table = "<table border='0' cellpadding='2' cellspacing='0' width='100%' class='arial2' style='border: 1px solid #aaaaaa;'>"
    138143                . "<tr style='background-color: #DBE1C5;'>\n"
    139                 . '<th style="text-align: right;">' . _T('asso:id'). "</th>\n"
    140                 . '<th style="text-align: right;">' . _T('asso:date') . "</th>\n"
    141                 . '<th>' . _T('asso:compte') . "</th>\n"
    142                 . '<th>' . _T('asso:justification') . "</th>\n"
     144                . '<th style="text-align: center;">' . _T('asso:id'). "</th>\n"
     145                . '<th style="text-align: center;">' . _T('asso:date') . "</th>\n"
     146                . '<th style="text-align: right;">' . _T('asso:compte') . "</th>\n"
     147                . '<th>&nbsp;' . _T('asso:justification') . "</th>\n"
    143148                . '<th style="text-align: right;">' . _T('asso:montant') . "</th>\n"
    144                 . '<th>' . _T('asso:financier') . "</th>\n"
     149                . '<th>&nbsp;' . _T('asso:financier') . "</th>\n"
    145150                . '<td colspan="3" style="text-align: center;"><strong>&nbsp;</strong></td>'
    146151                . '</tr>'
     
    175180                .$id
    176181                . "</td>\n<td class=\""
     182                . $class. ' border1" style="text-align:center;">'
     183                . association_datefr($data['date'])
     184                . "</td>\n<td class=\""
    177185                . $class. ' border1" style="text-align:right;">'
    178                 . association_datefr($data['date'])
     186                . $data['imputation']
    179187                . "</td>\n<td class=\""
    180188                . $class. ' border1">'
    181                 . $data['imputation']
    182                 . "</td>\n<td class=\""
    183                 . $class. ' border1">'
    184                 . propre($data['justification'])
     189                . propre('&nbsp;'.$data['justification'])
    185190                . "</td>\n<td class=\""
    186191                . $class. ' border1" style="text-align:right;">'
    187192                . association_nbrefr($data['recette']-$data['depense'])
    188193                . "</td>\n<td class=\""
    189                 . $class. ' border1">'
     194                . $class. ' border1">&nbsp;'
    190195                . $data['journal']
    191196                . '</td>'
  • _plugins_/Association/Associaspip/lang/asso_fr.php

    r51420 r51515  
    144144        ',
    145145        'profil_de_lassociation' => 'Profil de l\'association',
     146        'le_bureau' => 'Bureau de l\'association',
    146147       
    147148# Adherents
     
    295296        'gestion_cotisations_limitee' => 'La gestion comptable &eacute;tant desactiv&eacute;e, seule la date de validit&eacute; est prise en charge par la gestion des cotisations.',
    296297
    297         # ACTIVITES
     298# ACTIVITES
    298299               
    299300        # Titres
     
    304305        'activite_titre_inscriptions_activites' => 'Inscriptions aux activit&eacute;s',
    305306
    306  # Sous-titres
     307        # Sous-titres
    307308        'activite_mise_a_jour_inscription' => 'Mettre &agrave; jour une inscription',
    308309        'activite_ajouter_inscription' => 'Ajouter une inscription',
    309310       
    310 # Libelle
     311        # Libelle
    311312        'activite_libelle_inscription' => 'Inscription n&deg;',
    312313        'activite_libelle_date' => 'Date',
     
    327328        'activite_libelle_commentaires' => 'Commentaires',
    328329
    329  # En-tete
     330        # En-tete
    330331        'activite_entete_id' => 'ID',
    331332        'activite_entete_date' => 'Date',
     
    342343        'activite_entete_commentaire' => 'Commentaire',
    343344
    344  # Bouton
     345        # Bouton
    345346        'activite_bouton_ajouter' => 'Ajouter',
    346347        'activite_bouton_envoyer' => 'Envoyer',
     
    350351        'activite_bouton_ajouter_inscription' => 'Ajouter une inscription',
    351352        'activite_bouton_voir_liste_inscriptions' => 'Voir la liste des inscriptions',
    352  'activite_bouton_maj_inscription' => 'Mettre &agrave; jour l\'inscription',
     353        'activite_bouton_maj_inscription' => 'Mettre &agrave; jour l\'inscription',
    353354
    354355        # Liste
     
    395396        'date_du_jour_heure' => 'Nous sommes le '.date('d/m/Y').' et il est '.date('H:i'),
    396397       
    397         # VENTES
    398                
    399                 #Entetes
    400                         'vente_entete_id' => 'ID',
    401                         'vente_entete_date' => 'Date',
    402                         'vente_entete_article' => 'Article',
    403                         'vente_entete_quantites' => 'Quantit&eacute;',
    404                         'vente_entete_date_envoi' => 'Date d\'envoi',
     398# VENTES
     399               
     400        #Entetes
     401                'vente_entete_id' => 'ID',
     402                'vente_entete_date' => 'Date',
     403                'vente_entete_article' => 'Article',
     404                'vente_entete_quantites' => 'Quantit&eacute;',
     405                'vente_entete_date_envoi' => 'Date d\'envoi',
    405406                       
    406                         'dons_titre_mise_a_jour' => 'Mise &agrave; jour des dons',
    407         # RESSOURCES
    408                
    409                 #Messages
     407                'dons_titre_mise_a_jour' => 'Mise &agrave; jour des dons',
     408
     409# RESSOURCES
     410               
     411        #Messages
    410412                'ressources_info' => 'Vous pouvez g&eacute;rer ici les diff&eacute;rentes ressources pr&ecirc;t&eacute;es aux membres (livres, mat&eacute;riels, ...)<br />La puce indique la disponibilit&eacute; des diff&eacute;rentes ressources',
    411413                'ressources_danger_suppression' => 'Vous vous appr&ecirc;tez &agrave; effacer l\'article n&deg; @id_ressource@ !',
    412414               
    413                 # Titres
    414                         'ressources_titre_gestion_ressources' => 'Gestion des ressources',
    415                         'ressources_titre_edition_ressources' => 'Edition de ressource',
    416                         'ressources_titre_suppression_ressources' => 'Suppression de ressource',
    417                         'ressources_titre_liste_ressources' => 'Liste des ressources',
    418                         'ressources_titre_mise_a_jour' => 'Mise &agrave; jour des ventes',
    419                
    420                 # En-tete
    421                         'ressources_entete_intitule' => 'Article',
    422                         'ressources_entete_code' => 'Code',
    423                         'ressources_entete_montant' => 'Montant',
    424                
    425                 # Navigation
    426                         'ressources_nav_gestion_' => 'Gestion des ressources',
    427                         'ressources_nav_ajouter' => 'Ajouter une ressource',
    428                         'ressources_nav_supprimer' => 'Supprimer la ressource',
    429                         'ressources_nav_editer' => 'Editer la ressource',       
    430                
    431                 # Libelle
    432                         'ressources_num' => 'RESSOURCE N&deg;',
    433                         'ressources_libelle_code' => 'Code',
    434                         'ressources_libelle_intitule' => 'Article',     
    435                         'ressources_libelle_date_acquisition' => 'Date d\'acquisition (AAAA-MM-JJ)',
    436                         'ressources_libelle_prix_location' => 'Prix de la location (en euros)',
    437                         'ressources_libelle_statut' => 'Statut',
    438                         'ressources_libelle_statut_ok' => 'Libre',
    439                         'ressources_libelle_statut_reserve' => 'R&eacute;serv&eacute;',
    440                         'ressources_libelle_statut_suspendu' => 'En suspend',
    441                         'ressources_libelle_statut_sorti' => 'D&eacute;saffect&eacute;',
    442                         'ressources_libelle_commentaires' => 'Commentaires',
    443                
    444                 # Prêts
     415        # Titres
     416                'ressources_titre_gestion_ressources' => 'Gestion des ressources',
     417                'ressources_titre_edition_ressources' => 'Edition de ressource',
     418                'ressources_titre_suppression_ressources' => 'Suppression de ressource',
     419                'ressources_titre_liste_ressources' => 'Liste des ressources',
     420                'ressources_titre_mise_a_jour' => 'Mise &agrave; jour des ventes',
     421               
     422        # En-tete
     423                'ressources_entete_intitule' => 'Article',
     424                'ressources_entete_code' => 'Code',
     425                'ressources_entete_montant' => 'Montant',
     426               
     427        # Navigation
     428                'ressources_nav_gestion_' => 'Gestion des ressources',
     429                'ressources_nav_ajouter' => 'Ajouter une ressource',
     430                'ressources_nav_supprimer' => 'Supprimer la ressource',
     431                'ressources_nav_editer' => 'Editer la ressource',       
     432               
     433        # Libelle
     434                'ressources_num' => 'RESSOURCE N&deg;',
     435                'ressources_libelle_code' => 'Code',
     436                'ressources_libelle_intitule' => 'Article',     
     437                'ressources_libelle_date_acquisition' => 'Date d\'acquisition (AAAA-MM-JJ)',
     438                'ressources_libelle_prix_location' => 'Prix de la location (en euros)',
     439                'ressources_libelle_statut' => 'Statut',
     440                'ressources_libelle_statut_ok' => 'Libre',
     441                'ressources_libelle_statut_reserve' => 'R&eacute;serv&eacute;',
     442                'ressources_libelle_statut_suspendu' => 'En suspend',
     443                'ressources_libelle_statut_sorti' => 'D&eacute;saffect&eacute;',
     444                'ressources_libelle_commentaires' => 'Commentaires',
     445       
     446        # Prêts
    445447                       
    446                         #Messages
    447                                 'prets_danger_suppression' => 'Vous vous appr&ecirc;tez &agrave; effacer la r&eacute;servation n&deg; @id_pret@ !',
     448            #Messages
     449                'prets_danger_suppression' => 'Vous vous appr&ecirc;tez &agrave; effacer la r&eacute;servation n&deg; @id_pret@ !',
    448450                       
    449                         # Titres
    450                                 'prets_titre_gestion_prets' => 'Gestion des r&eacute;servations',
    451                                 'prets_titre_edition_prets' => 'Edition de r&eacute;servation',
    452                                 'prets_titre_suppression_prets' => 'Suppression de r&eacute;servation',
    453                                 'prets_titre_liste_reservations' => 'Liste des r&eacute;servations',
     451            # Titres
     452                'prets_titre_gestion_prets' => 'Gestion des r&eacute;servations',
     453                'prets_titre_edition_prets' => 'Edition de r&eacute;servation',
     454                'prets_titre_suppression_prets' => 'Suppression de r&eacute;servation',
     455                'prets_titre_liste_reservations' => 'Liste des r&eacute;servations',
    454456                       
    455457                        # En-tete
     
    487489                        'plan_info' => 'Vous pouvez d&eacute;finir ici les comptes de votre plan comptable.<br />Vous devez au minimum d&eacute;finir les comptes de produits n&eacute;cessaires &agrave; la configuration du plugin et les comptes financiers relatifs aux diff&eacute;rentes modes de paiement.',
    488490                        'edit_plan' => '<p>Vous devez choisir d\'abord une "CLASSE" puis un "CODE" dont le 1er chiffre doit correspondre &agrave; la "classe". Par exemple : classe 5 et code 5171</p>Si vous avez activ&eacute; l\'aide &agrave; la d&eacute;claration du plan comptable fran&ccedil;ais, un s&eacute;lecteur de code listant tous les codes et intitul&eacute;s correspondant vous permettra de remplir directement les cases code et intitul&eacute; que vous pourrez modifier ensuite, ce sont elles qui seront consid&eacute;r&eacute;es et non le s&eacute;lecteur.',
     491                        'non_implemente' => 'Fonctionnalit&eacute; non encore impl&eacute;ment&eacute;e !',
    489492                # Titres
    490493                        'plan_comptable' => 'Plan comptable',
     
    504507                        'plan_libelle_non' => 'non',
    505508                        'direction_plan' => 'Type d\'op&eacute;rations',
    506         # Destination comptable
     509                # Destination comptable
    507510                        'ajouter_destination' => 'ajouter une destination',
    508511                        'supprimer_destination' => 'supprimer',
     
    514517                # Bilan
    515518                        'toutes_destination' => 'toutes destinations',
    516         # Comptes
    517                         'compte_financier' => 'Compte financier',
    518 
    519         # Verifications
     519                # Comptes
     520                        'compte_financier' => 'Compte financier',                       
     521                        'bilan' => 'Bilan',     
     522
     523                # Compte de Resultat
     524                        'cpte_resultat_titre_general' => 'Compte de R&eacute;sultat',
     525                        'cpte_resultat_bouton_voir' => 'Voir',
     526                        'cpte_resultat_titre_charges' => 'CHARGES',
     527                        'cpte_resultat_titre_produits' => 'PRODUITS',
     528                        'cpte_resultat_titre_benevolat' => 'CONTRIBUTIONS VOLONTAIRES',
     529                        'cpte_resultat_total_charges' => 'Total des Charges',
     530                        'cpte_resultat_total_produits' => 'Total des Produits',
     531                        'cpte_resultat_perte' => 'Perte',
     532                        'cpte_resultat_benefice' => 'B&eacute;n&eacute;fice',
     533                        'cpte_resultat_recette_evaluee' => 'Recette<br />&eacute;valu&eacute;e',
     534                        'cpte_resultat_depense_evaluee' => 'D&eacutepense<br />&eacute;valu&eacute;e',
     535
     536                # annexe
     537                        'annexe_titre_general' => 'Annexe',
     538
     539                # Verifications
    520540                        'erreur_titre' => 'Une erreur est pr&eacute;sente dans votre saisie',
    521541                        'erreur_recette_depense' => 'Une op&eacute;ration ne peut contenir simultan&eacute;ment des d&eacute;penses et recettes. Par ailleurs les d&eacute;penses ou recettes ne peuvent pas etre n&eacute;gatives ou toutes les deux nulles',
Note: See TracChangeset for help on using the changeset viewer.