Sommaire >
Annexes >
Exemple de rapport paramétrableExemple de rapport paramétrable
Voir
Utilisation > Analyse > Rapports paramétrables pour l'utilisation de Analyse > Rapports paramétrables
Cet exemple affiche la file active avec un délai différent pour les patients ARV et non ARV (90 et 180 jours), sous plusieurs répartitions (sexe/âge). Remarque: dans ce code SQL, on fait appel à des tables temporaires pour d'accélérer le traitement.
Copier/coller tout le texte ci-dessous dans le cadre Paramétrage de Analyse > Rapports paramétrables:
#### sql ####
set @jour_file_arv=90
set @jour_file_non_arv=180
set @date_file_arv=date_sub(curdate(),interval @jour_file_arv day)
set @date_file_non_arv=date_sub(curdate(),interval @jour_file_non_arv day)
drop table if exists t1
create temporary table t1 (doss int)
drop table if exists t1b
create temporary table t1b (doss int)
insert into t1 (doss) select doss from medicons where dat_>=@date_file_arv
insert into t1 (doss) select doss from socicons where dat_>=@date_file_arv
insert into t1 (doss) select doss from psy_cons where dat_>=@date_file_arv
insert into t1 (doss) select doss from entr where labodat_>=@date_file_arv and labodesi<>""
insert into t1 (doss) select doss from item where dat_>=@date_file_arv
insert into t1b (doss) select distinct doss.nume from t1,doss where doss.nume=t1.doss and doss.rensdecedat_=0 and doss.arv_desi<>''
drop table if exists t2
create temporary table t2 (doss int)
drop table if exists t2b
create temporary table t2b (doss int)
insert into t2 (doss) select doss from medicons where dat_>=@date_file_non_arv
insert into t2 (doss) select doss from socicons where dat_>=@date_file_non_arv
insert into t2 (doss) select doss from psy_cons where dat_>=@date_file_non_arv
insert into t2 (doss) select doss from entr where labodat_>=@date_file_non_arv and labodesi<>""
insert into t2 (doss) select doss from item where dat_>=@date_file_non_arv
insert into t2b (doss) select distinct doss.nume from t2,doss where doss.nume=t2.doss and doss.rensdecedat_=0 and doss.arv_desi=''
drop table if exists td
create temporary table td (doss int)
insert into td (doss) select doss from t1b
insert into td (doss) select doss from t2b
file_total<-select count(doss) from td
file_hm<-select count(doss) from td,doss where doss.Nume=td.doss and doss.renssexe=1
file_fm<-select count(doss) from td,doss where doss.Nume=td.doss and doss.renssexe=2
file_15<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_<15
file_19<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=15 and doss.rensage_<20
file_24<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=20 and doss.rensage_<25
file_29<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=25 and doss.rensage_<30
file_34<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=30 and doss.rensage_<35
file_39<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=35 and doss.rensage_<40
file_44<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=40 and doss.rensage_<45
file_49<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=45 and doss.rensage_<50
file_50<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=50
file_enf_hm<-select count(doss) from td,doss where doss.Nume=td.doss and rensage_<15 and doss.renssexe=1
file_enf_fm<-select count(doss) from td,doss where doss.Nume=td.doss and rensage_<15 and doss.renssexe=2
file_enf_2<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_<3
file_enf_5<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=3 and doss.rensage_<6
file_enf_10<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=6 and doss.rensage_<11
file_enf_14<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=11 and doss.rensage_<15
file_hm_15<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_<15 and doss.renssexe=1
file_hm_19<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=15 and doss.rensage_<20 and doss.renssexe=1
file_hm_24<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=20 and doss.rensage_<25 and doss.renssexe=1
file_hm_29<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=25 and doss.rensage_<30 and doss.renssexe=1
file_hm_34<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=30 and doss.rensage_<35 and doss.renssexe=1
file_hm_39<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=35 and doss.rensage_<40 and doss.renssexe=1
file_hm_44<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=40 and doss.rensage_<45 and doss.renssexe=1
file_hm_49<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=45 and doss.rensage_<50 and doss.renssexe=1
file_hm_50<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=50 and doss.renssexe=1
file_fm_15<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_<15 and doss.renssexe=2
file_fm_19<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=15 and doss.rensage_<20 and doss.renssexe=2
file_fm_24<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=20 and doss.rensage_<25 and doss.renssexe=2
file_fm_29<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=25 and doss.rensage_<30 and doss.renssexe=2
file_fm_34<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=30 and doss.rensage_<35 and doss.renssexe=2
file_fm_39<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=35 and doss.rensage_<40 and doss.renssexe=2
file_fm_44<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=40 and doss.rensage_<45 and doss.renssexe=2
file_fm_49<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=45 and doss.rensage_<50 and doss.renssexe=2
file_fm_50<-select count(doss) from td,doss where doss.Nume=td.doss and doss.rensage_>=50 and doss.renssexe=2
#### affichage ####
File active ARV 90j + non ARV 180j
Total|file_total
Répartition par sexe:
Hommes|file_hm
Femmes|file_fm
Répartition par âge:
<15|file_15
15-19|file_19
20-24|file_24
25-29|file_29
30-34|file_34
35-39|file_39
40-44|file_44
45-49|file_49
50+|file_50
Enfants:
Garçons|file_enf_hm
Filles|file_enf_fm
0-2 ans|file_enf_2
3-5|file_enf_5
6-10|file_enf_10
11-14|file_enf_14
Age/sexe:
|Homme|Femme
<15|file_hm_15|file_fm_15
15-19|file_hm_19|file_fm_19
20-24|file_hm_24|file_fm_24
25-29|file_hm_29|file_fm_29
30-34|file_hm_34|file_fm_34
35-39|file_hm_39|file_fm_39
40-44|file_hm_44|file_fm_44
45-49|file_hm_49|file_fm_49
50+|file_hm_50|file_fm_50