*PARAMETRES*
*Comptage des bulletins de paie et des factures*
*Nombre d'entits (1N)|1N|TXT|N*
*Anne de dbut (AAAA)|4N|TXT|O*
*Anne de fin (AAAA)|4N|TXT|O*
*FIN PARAMETRES*


***************************************************
* PRX - Comptage des bulletins de paie et des factures 
* Auteur : THOMAS
* Date : 30/07/2010
***************************************************

    
    * --- AUTO-PASSAGE DES PARAMETRES --- *
    SUBROUTINE COMPTARCHIVE (RETURNVAL, PARAMETRES, W_Sortie)
    
    * --- DEFINITION DES PARAMETRES INTERNES --- *
    EXECUTE "SET-THOUS ."
    EXECUTE "SET-DEC ,"
    EXECUTE "DATE.FORMAT"

    * --- OUVERTURE DES FICHIERS EN LECTURE --- *
    OPEN "", "ARCHIVEBULL" TO F.ARCHIVEBULL ELSE RETURN
    OPEN "", "ARCHIVEFACT" TO F.ARCHIVEFACT ELSE RETURN

    * --- OUVERTURE DES FICHIERS EN ECRITURE --- * 
    OPEN "", "FUSION" TO F.FUSION ELSE RETURN
    
    * --- INITIALISATION DES VARIABLES DE TRAVAIL ---*
    ENR_TXT = ""
    W_EntiteCurr = ""
    W_AnneeCurr = ""
    W_Sortie = ""
    
    * --- RECUPERATION DES PARAMETRES EN ENTREE --- *
    W_NbEntites = PARAMETRES<1>
    IF W_NbEntites = "" THEN W_NbEntites = "1" 
    W_AnneeDeb = PARAMETRES<2>
    W_AnneeFin = PARAMETRES<3>
    
    ENR_TXT<-1> = "COMPTAGE DES BULLETINS ET FACTURES"
    ENR_TXT<-1> = "SUR " : W_NbEntites : " ENTITES"
    ENR_TXT<-1> = "DE " : W_AnneeDeb : " A " : W_AnneeFin
    
    * --- REINITIALIATION DU COMPTEUR ANNEE --- *
    W_AnneeCurr = W_AnneeDeb
    
    LOOP
    
    WHILE W_AnneeCurr <= W_AnneeFin DO
    
        * --- AFFICHAGE DE LA RUPTURE ANNEE --- *
        ENR_TXT<-1> = SPACE (4) :  "ANNEE : " : W_AnneeCurr
        
        * --- REINITIALIATION DU COMPTEUR ENTITE --- *
        W_EntiteCurr = "1"
        
        LOOP
        
        WHILE W_EntiteCurr <= W_NbEntites DO
        
            * --- AFFICHAGE DE LA RUPTURE ENTITE --- *
            ENR_TXT<-1> = SPACE (8) :  "ENTITE : " : W_EntiteCurr "R%3"
            
            * --- RUPTURE PRESTATAIRE --- *
            ENR_TXT<-1> = SPACE (12) : "ACTIVITE : " : "PRESTATAIRE" 
            EXECUTE 'COMPTER ARCHIVEBULL AVEC Association = "' : W_EntiteCurr "R%3" : '" AND AVEC TypeActivite ="P" AND AVEC AnneeArchive = "' : W_AnneeCurr : '"' CAPTURING MSGCODE
            ENR_TXT<-1> = SPACE (16) : "BULLETINS = " : MSGCODE<3>
            EXECUTE 'COMPTER ARCHIVEFACT AVEC AssocArcFact = "' : W_EntiteCurr "R%3" : '" AND AVEC ActiviteArcFact ="P" AND AVEC AnneeArchive = "' : W_AnneeCurr : '"' CAPTURING MSGCODE
            ENR_TXT<-1> = SPACE (16) : "FACTURES = " : MSGCODE<3>
            
            * --- RUPTURE MANDATAIRE --- *
            ENR_TXT<-1> = SPACE (12) : "ACTIVITE : " : "MANDATAIRE" 
            EXECUTE 'COMPTER ARCHIVEBULL AVEC Association = "' : W_EntiteCurr "R%3" : '" AND AVEC TypeActivite ="M" AND AVEC AnneeArchive = "' : W_AnneeCurr : '"' CAPTURING MSGCODE
            ENR_TXT<-1> = SPACE (16) : "BULLETINS = " : MSGCODE<3>
            EXECUTE 'COMPTER ARCHIVEFACT AVEC AssocArcFact = "' : W_EntiteCurr "R%3" : '" AND AVEC ActiviteArcFact ="M" AND AVEC AnneeArchive = "' : W_AnneeCurr : '"' CAPTURING MSGCODE
            ENR_TXT<-1> = SPACE (16) : "FACTURES = " : MSGCODE<3>
            
            * --- PASSAGE A L'ENTITE SUIVANTE --- *
            W_EntiteCurr = W_EntiteCurr +1
            
        REPEAT
        
        * --- PASSAGE A L'ANNEE SUIVANTE --- *
        W_AnneeCurr = W_AnneeCurr +1
        
    REPEAT
    
    * --- ECRITURE DU TXT --- *
    WRITE ENR_TXT ON F.FUSION, "COMPTER_ARCHIVE.TXT" 

    * --- TERMINE LE PROGRAMME --- *
    W_Sortie = "Fichier COMPTER_ARCHIVE.TXT gnr dans FUSION."
    RETURN 


********************************************************************************
********************************************************************************