*****************************************************************
* Compare les bases des rubriques de charges 035 et 037 sur les *
* bulletins de juin 2001, liste les diffrences                 *
*****************************************************************

EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "", "RUBCHARGE" TO F.RUBCHARGE ELSE STOP
OPEN "", "CONTRAT" TO F.CONTRAT ELSE STOP

PRINT "Veuillez saisir le mois  partir duquel effectuer la comparaison (AAAAMM)"
INPUT W_MoisDeb

PRINT "Veuillez saisir le mois de fin de la comparaison (AAAAMM)" 
INPUT W_MoisFin

PRINT "Veuillez indiquer l'entit juridique concerne"
INPUT W_CodeEntite

PRINT "Veuillez indiquer la convention collective concerne"
INPUT W_ConventionCol

W_Charge = 0
LOOP WHILE W_Charge = 0
   PRINT "Veuillez saisir le code de la premire des rubriques  comparer"
   INPUT W_Rub1
   W_Charge = 1
   READ Enr_Charge1 FROM F.RUBCHARGE, W_Rub1 ELSE W_Charge = 0
   IF W_Charge = 0 THEN
     PRINT "Code incorrect !"
   END
REPEAT

W_Charge = 0
LOOP WHILE W_Charge = 0
   PRINT "Veuillez saisir le code de la deuxime rubrique"
   INPUT W_Rub2
   W_Charge = 1
   READ Enr_Charge2 FROM F.RUBCHARGE, W_Rub2 ELSE W_Charge = 0
   IF W_Charge = 0 THEN
     PRINT "Code incorrect !"
   END
REPEAT

LOOP WHILE W_Rep # "O" AND W_Rep # "o" AND W_Rep # "N" AND W_Rep # "n" 
PRINT "Envoyer le rsultat  l'imprimante ? (O/N)"
INPUT W_Rep
REPEAT
IF W_Rep = "o" OR W_Rep = "O" THEN
W_Rep = "O"
PRINTER ON
END

W_NbreCas = 0
W_TamponContrat = ""

W_Lignes = 0

W_Total1 = 0
W_Total2 = 0

EXECUTE 'SELECT DETAILCALCUL AVEC PeriodeDetailCalcul >= "':W_MoisDeb:'" AND AVEC PeriodeDetailCalcul <= "':W_MoisFin:'" AND AVEC ConvColContratDetailCalcul = "':W_ConventionCol:'" AND AVEC CodAssoContratDetailCalcul = "':W_CodeEntite:'" PAR @ID' 

W_Fin = "F"
	
LOOP
	READNEXT W_Cle ELSE W_Fin = "V"
WHILE W_Fin ="F"

	READ ENR_DETAILCALCUL FROM F.DETAILCALCUL, W_Cle ELSE ENR_DETAILCALCUL = ""
	W_Montant1 = 0
	W_Montant2 = 0
	W_Count = DCOUNT(ENR_DETAILCALCUL<8>, CHAR(253))
	FOR i = 1 TO W_Count
	   IF ENR_DETAILCALCUL<8,i> = W_Rub1 THEN
		W_Montant1 = INT(ENR_DETAILCALCUL<9,i>/100)
	   END ELSE
		IF ENR_DETAILCALCUL<8,i> = W_Rub2 THEN
		    W_Montant2 = INT(ENR_DETAILCALCUL<9,i>/100)
	   	END
	   END
	NEXT i
	IF W_Montant1 # W_Montant2 THEN
	    
	    
	    W_Total1 = W_Total1 + W_Montant1
	    W_Total2 = W_Total2 + W_Montant2
	    PRINT "Bulletin n : ":W_Cle:" - ":Enr_Charge1<1>:" : ":W_Montant1"R2"
	    PRINT "                             - ":Enr_Charge2<1>:" : ":W_Montant2"R2"
	    IF W_Cle[1,8] # W_TamponContrat AND W_TamponContrat # "" THEN
	      W_TamponContrat = W_Cle[1,8]
	      READ ENR_CONTRAT FROM F.CONTRAT, W_Cle[1,8] ELSE ENR_CONTRAT= ""
	      PRINT "Profil de paie : ":ENR_CONTRAT<26>
	      W_NbreCas = W_NbreCas + 1
	    END ELSE
		IF W_TamponContrat = "" THEN
		   W_TamponContrat = W_Cle[1,8]
		END
	    END
	    W_Lignes = W_Lignes + 1
	    IF W_Lignes = 6 THEN
		W_Lignes = 0
		IF W_Rep # "O" THEN
		     PRINT "<S> pour la suite, <Q> pour abandonner"
		     W_Suite = ""
		     LOOP WHILE W_Suite # "S" AND W_Suite # "s" AND W_Suite # "Q" AND W_Suite # "q"
			INPUT W_Suite
		     REPEAT
		     IF W_Suite = "Q" OR W_Suite = "q" THEN
			STOP
		     END
		END
	    END
	END
REPEAT
W_Dif = W_Total1 - W_Total2
PRINT W_NbreCas:" contrats pour une diffrence de ":W_Dif"R2"
STOP
