EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "","TLGPOINTAGE" TO F.TLGPOINTAGE ELSE STOP
OPEN "","TLGANOPOINTAGE" TO F.TLGANOPOINTAGE ELSE STOP

ENR_TLGPOINTAGE=""
ENR_TLGANOPOINTAGE=""

W_NbInterv=0
W_NbIntervDeduc=0

W_NbAno=0
W_NbAno5et6=0

W_Req=""

PRINT "Pour selectionner une seule journee, ne rentrer que la date de debut. Pour quitter le programme, mettre a vide les 2 dates."
PRINT "Date de debut (JJMMAAAA) ?"
INPUT W_DateDeb

PRINT "Date de fin (JJMMAAAA) ?"
INPUT W_DateFin

W_Date=""
IF W_DateDeb="" AND W_DateFin="" THEN
	STOP
END
IF W_DateDeb="" THEN
	PRINT "Vous devez entrer la date de debut."
	STOP
END
IF W_DateFin="" THEN
	W_Date=W_DateDeb
END

	IF W_Date="" THEN
		W_DateDeb=ICONV(W_DateDeb[1,2]:"/":W_DateDeb[3,2]:"/":W_DateDeb[5,4], "D4/")
		W_DateFin=ICONV(W_DateFin[1,2]:"/":W_DateFin[3,2]:"/":W_DateFin[5,4], "D4/")
	END ELSE
		W_Date=ICONV(W_Date[1,2]:"/":W_Date[3,2]:"/":W_Date[5,4], "D4/")
	END
	
GOSUB 10
GOSUB 20

PRINT "Nombre d'interv.                          : ":W_NbInterv
PRINT "Nombre d'interv. deduites via le planning : ":W_NbIntervDeduc
PRINT "Nombre d'anomalies                        : ":W_NbAno
PRINT "Nombre d'anomalies 5 et 6                 : ":W_NbAno5et6

STOP
**************************************************************
* Nombre d'interventions                                     *
* Nombre d'interventions avec dduction  partir du planning *
**************************************************************
10

	IF W_Date="" THEN
		W_Select='SELECT TLGPOINTAGE AVEC DateDebInterv >= "':W_DateDeb:'" AND <= "':W_DateFin:'"'
	END ELSE
		W_Select='SELECT TLGPOINTAGE AVEC DateDebInterv = "':W_Date:'"'
	END

	W_Select=W_Select:' AND AVEC CodeSecteurAide = "004" OR = "012" OR = "013" OR = "014" OR = "015" OR = "017" OR = "019" OR = "025" OR = "034" OR = "035" PAR @ID'

	EXECUTE W_Select
	EXECUTE 'SAUVE-LISTE W_Req'
	EXECUTE "LISTE W_Req" RETURNING MSGCODE

	IF MSGCODE<1> # 209 THEN
		SELECT F.TLGPOINTAGE TO W_Req
		
		W_Fin="FAUX"
		LOOP
			READNEXT W_Cle FROM W_Req ELSE W_Fin="VRAI"
		WHILE W_Fin="FAUX" DO
			READ ENR_TLGPOINTAGE FROM F.TLGPOINTAGE, W_Cle THEN
				W_NbInterv=W_NbInterv+1
				IF ENR_TLGPOINTAGE<11><>"" THEN
					W_NbIntervDeduc=W_NbIntervDeduc+1
				END
			END
		REPEAT
	END

RETURN
**************************************************************
* Nombre d'anomalies                                         *
* Nombre d'anomalies 5 et 6                                  *
**************************************************************
20

	W_Req=""

	IF W_Date="" THEN
		W_Select='SELECT TLGANOPOINTAGE AVEC 3 >= "':W_DateDeb:'" AND <= "':W_DateFin:'"'
	END ELSE
		W_Select='SELECT TLGANOPOINTAGE AVEC 3 = "':W_Date:'"'
	END

	W_Select=W_Select:' AND AVEC SecteurAnoDomi = "004" OR = "012" OR = "013" OR = "014" OR = "015" OR = "017" OR = "019" OR = "025" OR = "034" OR = "035" PAR @ID'

	EXECUTE W_Select
	EXECUTE 'SAUVE-LISTE W_Req'
	EXECUTE "LISTE W_Req" RETURNING MSGCODE

	IF MSGCODE<1> # 209 THEN
		SELECT F.TLGANOPOINTAGE TO W_Req
		
		W_Fin="FAUX"
		LOOP
			READNEXT W_Cle FROM W_Req ELSE W_Fin="VRAI"
		WHILE W_Fin="FAUX" DO
			READ ENR_TLGANOPOINTAGE FROM F.TLGANOPOINTAGE, W_Cle THEN
				W_NbAno=W_NbAno+1
				FOR I = 1 TO DCOUNT(ENR_TLGANOPOINTAGE<8>, CHAR(253))
					IF ENR_TLGANOPOINTAGE<8,I>="5" OR ENR_TLGANOPOINTAGE<8,I>="6" THEN
						W_NbAno5et6=W_NbAno5et6+1
					END
				NEXT I
			END
		REPEAT
	END

RETURN
