3/8
Suivi patient PCR
Ok pour le suivi patient des CD4. Et pour la PCR ?

Voici:

#### sql ####
DROP TABLE IF EXISTS tmp_debu_arv
CREATE TEMPORARY TABLE tmp_debu_arv (Doss INT,Dat_ DATETIME)
INSERT INTO tmp_debu_arv (Doss,Dat_) SELECT Doss,MIN(Dat_) FROM MediCons WHERE Arv0Prsc<>'' OR Arv1Prsc<>'' OR Arv2Prsc<>'' OR Arv3Prsc<>'' GROUP BY Doss
DROP TABLE IF EXISTS tmp_pcr
CREATE TEMPORARY TABLE tmp_pcr (Doss INT,Dat_ DATETIME,Pcr0 FLOAT)
INSERT INTO tmp_pcr (Doss,Dat_,Pcr0) SELECT Doss,LaboDat_,Pcr0 FROM Entr WHERE Pcr0>0 ORDER BY LaboDat_
DROP TABLE IF EXISTS tmp_pcr_m0
CREATE TEMPORARY TABLE tmp_pcr_m0 (Doss INT,Dat_ DATETIME,Pcr0 FLOAT)
INSERT INTO tmp_pcr_m0 (Doss,Dat_,Pcr0) SELECT tmp_pcr.Doss,tmp_pcr.Dat_,tmp_pcr.Pcr0 FROM tmp_pcr,tmp_debu_arv WHERE tmp_pcr.Doss=tmp_debu_arv.Doss AND tmp_pcr.Dat_ BETWEEN DATE_SUB(tmp_debu_arv.Dat_,INTERVAL 3 MONTH) AND DATE_ADD(tmp_debu_arv.Dat_,INTERVAL 3 MONTH) GROUP BY tmp_pcr.Doss
DROP TABLE IF EXISTS tmp_pcr_m6
CREATE TEMPORARY TABLE tmp_pcr_m6 (Doss INT,Dat_ DATETIME,Pcr0 FLOAT)
INSERT INTO tmp_pcr_m6 (Doss,Dat_,Pcr0) SELECT tmp_pcr.Doss,tmp_pcr.Dat_,tmp_pcr.Pcr0 FROM tmp_pcr,tmp_debu_arv WHERE tmp_pcr.Doss=tmp_debu_arv.Doss AND tmp_pcr.Dat_ BETWEEN DATE_ADD(tmp_debu_arv.Dat_,INTERVAL 3 MONTH) AND DATE_ADD(tmp_debu_arv.Dat_,INTERVAL 9 MONTH) GROUP BY tmp_pcr.Doss
suivi_doss_arv<-SELECT Ref_,DATE_FORMAT(OuvrDat_,'%d/%m/%Y'),IF(RensSexe=1,'H','F'),RensAge_,(SELECT DATE_FORMAT(Dat_,'%d/%m/%Y') FROM tmp_debu_arv WHERE tmp_debu_arv.Doss=Doss.Nume),Arv_Desi,(SELECT Pcr0 FROM tmp_pcr_m0 WHERE tmp_pcr_m0.Doss=Doss.nume),(SELECT Pcr0 FROM tmp_pcr_m6 WHERE tmp_pcr_m6.Doss=Doss.nume) FROM Doss WHERE Arv_Desi<>''
#### affichage ####
Dossier|Ouverture|Sexe|Age|Début ARV|Protocole en cours|PCR M0|PCR M6
suivi_doss_arv


Dans cet exemple, l'examen de PCR est considéré comme m0 (c-à-d initial) s'il date entre 3 mois avant la date de début de prescription d'ARV et 3 mois après cette date. La PCR à m6 est comprise entre 3 et 9 mois après cette date.