You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

748 lines
48 KiB

<?xml version="1.0" encoding="ISO-8859-1"?>
<VUE name="RH000006"
label="RH. Justificatif [DICT.RH.CONTRAT#4]"
database="iCTI"
swf="*CTI_view1"
globals="RH_globals.XML"
componentsFile="RH_components.XML"
softCode="iCTI_rh"
dboptimizer="RH_dboptimizer.XML"
helpDokuWIkiDir="rh:vues:contrats" helpDokuWIkiFile="rh000006" helpFile="">
<title>
<![CDATA[
=
var objet:String = '';
var periode:String = '';
if (SELECT.GROUPBY_2 == 'SAL') {
objet = '[DICT.RH.SALARIE#4]';
periode = ' Présents de ' + SELECT.PERIODE_LABEL + ' à ' + SELECT.TOPERIODE_LABEL;
}
if (SELECT.GROUPBY_2 == 'CNT') {
objet = '[DICT.RH.CONTRAT#4]';
periode = ' Présents de ' + SELECT.PERIODE_LABEL + ' à ' + SELECT.TOPERIODE_LABEL;
}
if (SELECT.GROUPBY != '-1') {
return 'Justificatif des ' + objet + ' par ' + SELECT.GROUPBY_LABEL + ' - ' + periode;
}
else {
return 'Justificatif des ' + objet + ' - ' + periode;
}
]]>
</title>
<VIEWPROPERTIES componentName="PROPERTIES_CONTRAT"/>
<VIEWPROPERTIES componentName="PROPERTIES_GROUPBY"/>
<SELECTIONS label="Paramètres de l'analyse" displayText="">
<GROUP label="Période">
<FIELD name="ALIAS_PERIODE" label="" UI="combo" width="220" default="CUM_LAST_MONTH" tree="true" globalListProvider="ALIAS_PERIODE" />
<FIELD name="PERIODE" label="" UI="combo" tree="true" width="200" default="2010-01-01" globalListProvider="PERIODE_DEBUT"
visible="= (SELECT.GROUPBY_2 == 'SAL' || SELECT.GROUPBY_2 == 'CNT')">
</FIELD>
<FIELD name="TOPERIODE" label="au" UI="combo" tree="true" width="200" default="2010-01-31" globalListProvider="PERIODE_FIN">
</FIELD>
</GROUP>
<GROUP label="Regroupement">
<FIELD name="GROUPBY" label="" UI="combo" width="200" default="-1" tree="true" >
<OPTION label="Pas de regroupement" data="-1"/>
<OPTION label="Entreprise" data="ENT" treeLevel="1" globalListProvider="ENTREPRISE_GROUPBY"/>
<OPTION label="[DICT.RH.SALARIE#1]" data="SAL" treeLevel="1" globalListProvider="SALARIE_GROUPBY"/>
<OPTION label="[DICT.RH.CONTRAT#1]" data="CNT" treeLevel="1" globalListProvider="CONTRAT_GROUPBY"/>
<OPTION label="Temporel" data="MOIACT" treeLevel="1" globalListProvider="TEMPOREL_GROUPBY"/>
<OPTION label="Référentiel SAE" data="REFERENTIEL_SAE" treeLevel="1" globalListProvider="REFERENTIEL_SAE_GROUPBY"/>
</FIELD>
<FIELD name="GROUPBY_TAB" width="100" label="Présentation" UI="combo" default="AUTO" visible="= SELECT.GROUPBY_2 != '-1' ">
<OPTION label="Automatique" data="AUTO"/>
<OPTION label="Arbre" data="TREE"/>
<OPTION label="Onglet" data="TAB"/>
</FIELD>
</GROUP>
<GROUP label="Niveau de détail">
<FIELD name="GROUPBY_2" label="" width="200" UI="combo" default="SAL" tree="false">
<OPTION label="[DICT.RH.SALARIE#3]" data="SAL" />
<OPTION label="[DICT.RH.CONTRAT#3]" data="CNT" />
</FIELD>
</GROUP>
</SELECTIONS>
<SELECTIONS componentName="FILTRES_SALCNT_SOUSSELECTIONS"/>
<SELECTIONS componentName="FILTRES_SALARIES_SELECTIONS"/>
<SELECTIONS componentName="FILTRES_CONTRATS_SELECTIONS"/>
<SELECTIONS componentName="FILTRES_REFERENTIEL_SAE_SELECTIONS"/>
<QUERIES>
<QUERY label="Justificatif">
<SQL optimizer="V_CNT_X" optimizer2="V_ALL_X">
<select><![CDATA[
CTISELECT_TREE
GROUPBY1{[VIEW.GROUPBY_OID_FIELD],, [VIEW.GROUPBY_COD_FIELD],, [VIEW.GROUPBY_TXT_FIELD]}
GROUPBY1MODE{[GROUPBY_TAB]}
GROUPBY2{[VIEW.GROUPBY_2_OID_FIELD],, [VIEW.GROUPBY_2_COD_FIELD],, [VIEW.GROUPBY_2_TXT_FIELD]}
GROUPBY3{[VIEW.GROUPBY_3_OID_FIELD],, [VIEW.GROUPBY_3_COD_FIELD],, [VIEW.GROUPBY_3_TXT_FIELD]}
SIGNIFDATA{[VIEW.ACTIVITE_SIGNIFICATIVE_DATA],, [ACTIVITE_SIGNIFICATIVE_MODE],, [ACTIVITE_SIGNIFICATIVE_NUMBER]}
INDICATORS{
count(DISTINCT v_rh_view_1.contrat_id),
count(DISTINCT v_rh_view_1.salarie_id),
max(age_id),
count(DISTINCT CASE WHEN nombre_debut_contrat = '1' THEN v_rh_view_1.salarie_id ELSE null END),
max(anciennete_jours) / 365.25,
max(anciennete_reprise_jours) / 365.25,
count(DISTINCT CASE WHEN nombre_fin_contrat = '1' THEN v_rh_view_1.salarie_id ELSE null END),
SUM(v_rh_view_1.equivalent_temps_plein * (1820.0 / 12.0)),
SUM(v_rh_view_1.equivalent_temps_plein / base.cti_months_between('[PERIODE]'::date, '[TOPERIODE]'::date)),
count(DISTINCT
CASE WHEN 1=1
AND '[PERIODE]'::date BETWEEN date_debut_contrat AND date_fin_contrat
THEN salarie_id
ELSE NULL
END
),
count(DISTINCT
CASE WHEN 1=1
AND '[TOPERIODE]'::date BETWEEN date_debut_contrat AND date_fin_contrat
THEN salarie_id
ELSE NULL
END
),
count(DISTINCT case when v_rh_view_1.mois_activite_id = to_char('[TOPERIODE]'::date, 'YYYYMM') AND effectif_permanent = 1 then v_rh_view_1.salarie_id else null end),
count(DISTINCT CASE WHEN nombre_entrees = 1 THEN v_rh_view_1.salarie_id ELSE null END),
count(DISTINCT CASE WHEN nombre_departs = 1 THEN v_rh_view_1.salarie_id ELSE null END),
count(DISTINCT CASE WHEN nombre_debut_contrat = 1 THEN v_rh_view_1.contrat_id ELSE null END),
count(DISTINCT CASE WHEN nombre_fin_contrat = 1 THEN v_rh_view_1.contrat_id ELSE null END),
count(DISTINCT CASE WHEN date_entree_ets < '[PERIODE]'::date THEN v_rh_view_1.salarie_id ELSE null END),
count(DISTINCT CASE WHEN date_sortie_ets != '2099-12-31'::date and date_sortie_ets > '[TOPERIODE]'::date THEN v_rh_view_1.salarie_id ELSE null END),
count(DISTINCT CASE WHEN date_sortie_ets = '2099-12-31'::date THEN v_rh_view_1.salarie_id ELSE null END),
count(DISTINCT CASE WHEN date_debut_contrat < '[PERIODE]' THEN v_rh_view_1.contrat_id ELSE null END),
count(DISTINCT CASE WHEN date_fin_contrat > '[TOPERIODE]' and date_fin_contrat != '2099-12-31'::date THEN v_rh_view_1.contrat_id ELSE null END),
count(DISTINCT CASE WHEN date_fin_contrat = '2099-12-31'::date THEN v_rh_view_1.contrat_id ELSE null END),
}
INDICATORS_2_TEXT{
MIN(v_rh_view_1.salarie_id)::text,,
MIN(v_rh_view_1.date_naissance)::text,,
MIN(v_rh_view_1.date_debut_contrat)::text,,
CASE WHEN MAX(v_rh_view_1.date_fin_contrat) < '20991231' THEN MAX(v_rh_view_1.date_fin_contrat) ELSE NULL END::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, statut_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, qualification_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, service_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, code_emploi_texte::text]))[2],,
MAX(salarie_remplace_texte)::text,,
--MAX(CASE WHEN v_rh_view_1.nombre_departs = 1 THEN date_fin_contrat ELSE NULL END )::text,,
min(v_rh_view_1.date_entree_ets)::text,,
min(v_rh_view_1.date_anciennete)::text,,
max(CASE WHEN v_rh_view_1.date_sortie_ets = '2099-12-31' THEN null ELSE v_rh_view_1.date_sortie_ets END)::text,,
max(CASE WHEN v_rh_view_1.sexe_code = 'M' THEN 'M' ELSE 'F' END)::text,,
max(type_contrat_code)::text,,
max(type_temps_travail_section_code[9])::text,,
max(nationalite_code),,
max(motif_debut_texte),,
max(motif_fin_texte),,
max(v_rh_view_1.nir_code)
}
FROM #V_CNT_X##V_ALL_X#
WHERE 1=1
[VIEW.SALARIES_SELECT]
[VIEW.CONTRATS_SELECT]
[VIEW.REFERENTIEL_SAE_SELECT]
AND v_rh_view_1.date_fin_activite BETWEEN '[PERIODE]' AND '[TOPERIODE]'
AND est_hors_periode IS DISTINCT FROM '1'
AND fictif <> '1'
AFTER{
[EVAL
if (substr('[GROUPBY_2]', 0, 3) == 'SAL') {
return "
UPDATE w_table
SET texte = floor(indicateurs[2]) || ' [DICT.RH.SALARIE#4]'
WHERE level = 9
.,
UPDATE w_table
SET indicateurs[7] = indicateurs[7]::numeric / base.cti_months_between('[PERIODE]'::date, '[TOPERIODE]'::date)
";
} else {
return "
UPDATE w_table
SET texte = floor(indicateurs[1]) || ' [DICT.RH.CONTRAT#4]'
WHERE level = 9
.,
UPDATE w_table
SET indicateurs[7] = indicateurs[7]::numeric / base.cti_months_between('[PERIODE]'::date, '[TOPERIODE]'::date)
";
}
EVAL]
}
]]></select>
<FIELDS>
<INSERT name="CTISELECT_TREE_FIELDS"/>
<!-- INDICATORS -->
<FIELD name="NCNT" />
<FIELD name="NSAL" />
<FIELD name="AGE" />
<FIELD name="EMB" />
<FIELD name="ANC" />
<FIELD name="ANCREP" />
<FIELD name="DEPT" />
<FIELD name="NHCNT" />
<FIELD name="NETP" />
<FIELD name="SALDEB" />
<FIELD name="SALFIN" />
<FIELD name="EFFPERM" />
<FIELD name="ENTPER" />
<FIELD name="SORPER" />
<FIELD name="CNTCOMSP"/>
<FIELD name="CNTTERMSP"/>
<FIELD name="ENTAVPER" />
<FIELD name="SORAPPER" />
<FIELD name="NONSOR"/>
<FIELD name="CNTDEJACOM"/>
<FIELD name="CNTTERMAP"/>
<FIELD name="CNTPASTERM"/>
<!-- INDICATORS_2_TEXT -->
<FIELD name="ISAL" />
<FIELD name="DNAI" />
<FIELD name="DDEB" />
<FIELD name="DFIN" />
<FIELD name="STAT" />
<FIELD name="QUAL" />
<FIELD name="SERV" />
<FIELD name="CEMP" />
<FIELD name="SALR" />
<!--<FIELD name="DDEP" />-->
<FIELD name="ENTREEETS" />
<FIELD name="DTANCREP" />
<FIELD name="DEPARTETS" />
<FIELD name="SEXE" />
<FIELD name="TYPECNT" />
<FIELD name="TYPETPS" />
<FIELD name="NAT" />
<FIELD name="MOTIFDEBUTCONTRAT" />
<FIELD name="MOTIFFINCONTRAT" />
<FIELD name="NIR" />
</FIELDS>
</SQL>
</QUERY>
<QUERY label="Population">
<SQL optimizer="V_CNT_X" optimizer2="V_ALL_X">
<select><![CDATA[
CTISELECT_TREE
GROUPBY1{[VIEW.GROUPBY_OID_FIELD],, [VIEW.GROUPBY_COD_FIELD],, [VIEW.GROUPBY_TXT_FIELD]}
GROUPBY1MODE{[GROUPBY_TAB]}
GROUPBY2{[VIEW.GROUPBY_2_OID_FIELD],, [VIEW.GROUPBY_2_COD_FIELD],, [VIEW.GROUPBY_2_TXT_FIELD]}
INDICATORS{
count(DISTINCT v_rh_view_1.contrat_id),
count(DISTINCT v_rh_view_1.salarie_id)
}
INDICATORS_2_TEXT{
MIN(v_rh_view_1.salarie_id)::text,,
MIN(v_rh_view_1.date_naissance)::text,,
MIN(extract(year FROM age(v_rh_view_1.date_fin_activite, v_rh_view_1.date_naissance)))::text,,
MIN(v_rh_view_1.sexe_code)::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, anciennete_annee_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, type_contrat_code::text||' - '||type_contrat_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, groupe_cotisant_code::text||' - '||groupe_cotisant_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, statut_code::text||' - '||statut_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, v_rh_view_1.date_entree_ets::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, CASE WHEN v_rh_view_1.date_fin_contrat::text = '2099-12-31' THEN '' ELSE v_rh_view_1.date_fin_contrat::text END]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, type_temps_travail_code||' - '||type_temps_travail_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, situation_famille_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, 'handicap_code'::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, categorie_socio_professionnelle_code::text||' - '||categorie_socio_professionnelle_texte::text]))[2],,
MIN(v_rh_view_1.no_adeli)::text,,
MIN('code_cotisation_texte')::text,,
MIN(v_rh_view_1.matricule_retraite)::text,,
}
FROM #V_CNT_X##V_ALL_X#
WHERE 1=1
[VIEW.SALARIES_SELECT]
[VIEW.CONTRATS_SELECT]
[VIEW.REFERENTIEL_SAE_SELECT]
AND v_rh_view_1.date_fin_activite BETWEEN '[PERIODE]' AND '[TOPERIODE]'
AND est_hors_periode IS DISTINCT FROM '1'
AFTER{
[EVAL
if (substr('[GROUPBY_2]', 0, 3) == 'SAL') {
return "
UPDATE w_table
SET texte = floor(indicateurs[2]) || ' [DICT.RH.SALARIE#4]'
WHERE level = 9
";
} else {
return "
UPDATE w_table
SET texte = floor(indicateurs[1]) || ' [DICT.RH.CONTRAT#4]'
WHERE level = 9
";
}
EVAL]
}
]]></select>
<FIELDS>
<INSERT name="CTISELECT_TREE_FIELDS"/>
<FIELD name="NCNT" />
<FIELD name="NSAL" />
<FIELD name="ISAL" />
<FIELD name="DNAI" />
<FIELD name="AGE" />
<FIELD name="SEXE" />
<FIELD name="AETS" />
<FIELD name="REG" />
<FIELD name="STP" />
<FIELD name="POS" />
<FIELD name="DTE" />
<FIELD name="DTS" />
<FIELD name="TTT" />
<FIELD name="SFM" />
<FIELD name="TRH" />
<FIELD name="MET" />
<FIELD name="ADELI" />
<FIELD name="COT" />
<FIELD name="RET" />
</FIELDS>
</SQL>
</QUERY>
<QUERY label="Carrière">
<SQL optimizer="V_CNT_X" optimizer2="V_ALL_X">
<select><![CDATA[
CTISELECT_TREE
GROUPBY1{[VIEW.GROUPBY_OID_FIELD],, [VIEW.GROUPBY_COD_FIELD],, [VIEW.GROUPBY_TXT_FIELD]}
GROUPBY1MODE{[GROUPBY_TAB]}
GROUPBY2{[VIEW.GROUPBY_2_OID_FIELD],, [VIEW.GROUPBY_2_COD_FIELD],, [VIEW.GROUPBY_2_TXT_FIELD]}
INDICATORS{
count(DISTINCT v_rh_view_1.contrat_id),
count(DISTINCT v_rh_view_1.salarie_id)
}
INDICATORS_2_TEXT{
MIN(v_rh_view_1.salarie_id)::text,,
MIN(v_rh_view_1.date_naissance)::text,,
MIN(extract(year FROM age(v_rh_view_1.date_fin_activite, v_rh_view_1.date_naissance)))::text,,
MIN(v_rh_view_1.sexe_code)::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, anciennete_annee_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, type_contrat_code::text||' - '||type_contrat_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, groupe_cotisant_code::text||' - '||groupe_cotisant_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, statut_code::text||' - '||statut_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, v_rh_view_1.date_entree_ets::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, motif_debut_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, CASE WHEN v_rh_view_1.date_fin_contrat::text = '2099-12-31' THEN '' ELSE v_rh_view_1.date_fin_contrat::text END]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, motif_fin_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, grille_code||' ('||grille_groupe_texte||') - '||grille_texte::text]))[2],,
'0'::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, filiere_code::text||' - '||filiere_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, cadre_emploi_code::text||' - '||cadre_emploi_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, categorie_socio_professionnelle_code::text||' - '||categorie_socio_professionnelle_texte::text]))[2],,
}
FROM #V_CNT_X##V_ALL_X#
WHERE 1=1
[VIEW.SALARIES_SELECT]
[VIEW.CONTRATS_SELECT]
[VIEW.REFERENTIEL_SAE_SELECT]
AND v_rh_view_1.date_fin_activite BETWEEN '[PERIODE]' AND '[TOPERIODE]'
AND est_hors_periode IS DISTINCT FROM '1'
AFTER{
[EVAL
if (substr('[GROUPBY_2]', 0, 3) == 'SAL') {
return "
UPDATE w_table
SET texte = floor(indicateurs[2]) || ' [DICT.RH.SALARIE#4]'
WHERE level = 9
";
} else {
return "
UPDATE w_table
SET texte = floor(indicateurs[1]) || ' [DICT.RH.CONTRAT#4]'
WHERE level = 9
";
}
EVAL]
}
]]></select>
<FIELDS>
<INSERT name="CTISELECT_TREE_FIELDS"/>
<FIELD name="NCNT" />
<FIELD name="NSAL" />
<FIELD name="ISAL" />
<FIELD name="DNAI" />
<FIELD name="AGE" />
<FIELD name="SEXE" />
<FIELD name="AETS" />
<FIELD name="REG" />
<FIELD name="STP" />
<FIELD name="POS" />
<FIELD name="DTE" />
<FIELD name="MTE" />
<FIELD name="DTS" />
<FIELD name="MTS" />
<FIELD name="GEC" />
<FIELD name="DTT" />
<FIELD name="FIL" />
<FIELD name="CAE" />
<FIELD name="MET" />
</FIELDS>
</SQL>
</QUERY>
<QUERY label="Effectif">
<SQL optimizer="V_CNT_X" optimizer2="V_ALL_X">
<select><![CDATA[
CTISELECT_TREE
GROUPBY1{[VIEW.GROUPBY_OID_FIELD],, [VIEW.GROUPBY_COD_FIELD],, [VIEW.GROUPBY_TXT_FIELD]}
GROUPBY1MODE{[GROUPBY_TAB]}
GROUPBY2{[VIEW.GROUPBY_2_OID_FIELD],, [VIEW.GROUPBY_2_COD_FIELD],, [VIEW.GROUPBY_2_TXT_FIELD]}
INDICATORS{
count(DISTINCT v_rh_view_1.contrat_id),
count(DISTINCT v_rh_view_1.salarie_id)
}
INDICATORS_2_TEXT{
MIN(v_rh_view_1.salarie_id)::text,,
MIN(v_rh_view_1.date_naissance)::text,,
MIN(extract(year FROM age(v_rh_view_1.date_fin_activite, v_rh_view_1.date_naissance)))::text,,
MIN(v_rh_view_1.sexe_code)::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, anciennete_annee_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, type_contrat_code::text||' - '||type_contrat_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, groupe_cotisant_code::text||' - '||groupe_cotisant_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, statut_code::text||' - '||statut_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, grille_code||' ('||grille_groupe_texte||') - '||grille_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, type_temps_travail_code::text||' - '||type_temps_travail_texte::text]))[2],,
(SUM(v_rh_view_1.equivalent_temps_plein))::text,,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, unite_fonctionnelle_code::text||' - '||unite_fonctionnelle_texte::text]))[2],,
(base.cti_last(ARRAY[v_rh_view_1.date_fin_activite::text, service_code::text||' - '||service_texte::text]))[2],,
MAX(salarie_remplace_texte)::text,,
}
FROM #V_CNT_X##V_ALL_X#
WHERE 1=1
[VIEW.SALARIES_SELECT]
[VIEW.CONTRATS_SELECT]
[VIEW.REFERENTIEL_SAE_SELECT]
AND v_rh_view_1.date_fin_activite BETWEEN '[PERIODE]' AND '[TOPERIODE]'
AND est_hors_periode IS DISTINCT FROM '1'
AFTER{
[EVAL
if (substr('[GROUPBY_2]', 0, 3) == 'SAL') {
return "
UPDATE w_table
SET texte = floor(indicateurs[2]) || ' [DICT.RH.SALARIE#4]'
WHERE level = 9.,
UPDATE w_table
SET indicateurs_text[11] = indicateurs_text[11]::numeric / (base.cti_age('[TOPERIODE]', '[PERIODE]', 'nm') + 1)
";
} else {
return "
UPDATE w_table
SET texte = floor(indicateurs[1]) || ' [DICT.RH.CONTRAT#4]'
WHERE level = 9.,
UPDATE w_table
SET indicateurs_text[11] = indicateurs_text[11]::numeric / (base.cti_age('[TOPERIODE]', '[PERIODE]', 'nm') + 1)
";
}
EVAL]
}
]]></select>
<FIELDS>
<INSERT name="CTISELECT_TREE_FIELDS"/>
<FIELD name="NCNT" />
<FIELD name="NSAL" />
<FIELD name="ISAL" />
<FIELD name="DNAI" />
<FIELD name="AGE" />
<FIELD name="SEXE" />
<FIELD name="AETS" />
<FIELD name="REG" />
<FIELD name="STP" />
<FIELD name="POS" />
<FIELD name="GEC" />
<FIELD name="TTT" />
<FIELD name="NETP" />
<FIELD name="UNF" />
<FIELD name="CR" />
<FIELD name="SALR" />
</FIELDS>
</SQL>
</QUERY>
</QUERIES>
<PRESENTATION>
<VIEWLINKS>
<VIEWLINK label="Détail [DICT.RH.SALARIE#2]" shortLabel="Détail [DICT.RH.SALARIE#2]" view="RH000009.XML" componentName="" >
<ARGS name="ALL" >
<value><![CDATA[
{LINKVARIABLES['SALARIE_ID'] = ROW.ISAL}
{LINKVARIABLES['CONTRAT_ID'] = ''}
{LINKVARIABLES['MATRICULE'] = ''}
return 'OK';
]]></value>
</ARGS>
</VIEWLINK>
</VIEWLINKS>
<ONGLET label="Justificatif" queryNumber="0" visibleCondition="ENV.RHPROVIDER != 'shspub'">
<DATAGRID title=""
total="true"
headerHeight="40"
selectRowInRows="= ROW.OID == '-9999997'"
otherRowInRows="= ROW.OID == '-9999998'"
totalRowInRows="= ROW.OID == '-9999999'"
variableRowHeight="true"
sortable="= SELECT.GROUPBY == '-1' || SELECT.GROUPBY_2 == '-1' || SELECT.GROUPBY_TAB == 'TAB'">
<INSERT name="DATAGRID_MULTITAB_STYLES"/>
<COLUMN dataField="OID"
type="Number"
visible="false" />
<COLUMN dataField="ISAL"
type="Number"
visible="false" />
<COLUMN dataField="COD"
type="Char"
width="140"
outputFormat="#"
headerTextCalc="true"
headerText="(SELECT.GROUPBY_2 == 'SAL')?'Matricule':'N° [DICT.RH.CONTRAT#1]'"
textAlign="left"
totalComplement="*ROW">
<INSERT name="COLUMN_COD_MULTITAB_STYLES"/>
</COLUMN>
<COLUMN dataField="TXT"
type="Char"
minWidth="110"
headerText="Nom"
textAlign="left"
totalComplement="*ROW"/>
<COLUMN dataField="NIR"
type="Char"
width="110"
headerText="NIR"
textAlign="left"
totalComplement="*ROW"/>
<COLUMN dataField="SEXE" type="Char" width="40" headerText="Sexe" textAlign="right" totalComplement="*ROW">
<CELLSTYLE name="cellIndicator" value="femme, 12,left middle , 0xEB76B1" condition="ROW.SEXE == 'F'" />
<CELLSTYLE name="cellIndicator" value="homme, 12, left middle, 0x75a0eb" condition="ROW.SEXE == 'M'" />
<CELLSTYLE name="cellIndicator" value="rectangle, 10, left middle, 0x666666" condition="ROW.SEXE != 'F' &amp;&amp; ROW.SEXE != 'M'" />
</COLUMN>
<COLUMN dataField="NAT" type="Char" width="40" headerText="Natio." textAlign="center" totalComplement="*ROW"/>
<COLUMN dataField="DNAI"
type="Date"
width="60"
inputFormat="AAAA-MM-JJ"
outputFormat="DD/MM/YY"
headerText="Né(e) le"
totalComplement="*ROW" />
<COLUMN dataField="AGE" type="Number" outputFormat="#" width="40" headerText="Age" description="Age à fin de période" textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="ENTREEETS" type="Date" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" width="60" headerText="Date entrée Ets." description="Date d'entrée dans l'établissement" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="ANC" type="Number" outputFormat="#,00" width="60" headerText="Anc. Ets." description="Ancienneté Etablissement en années à fin de période" textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="DTANCREP" type="Date" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" width="60" headerText="Date anc. Reprise" description="Date d'ancienneté reprise" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="ANCREP" type="Number" outputFormat="#,00" width="60" headerText="Anc. Reprise" description="Ancienneté Reprise en années à fin de période" textAlign="right" totalComplement="*ROW"/>
<!-- Partie Salariés -->
<COLUMN dataField="ENTAVPER" type="Number" width="80" outputFormat="#" headerText="Entrées Ets. &#xD;&lt; Période" description="Nombre de [DICT.RH.SALARIE#4] rentrés dans l'Etablissement avant la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="SALDEB" type="Number" width="90" outputFormat="#" headerText="[DICT.RH.SALARIE#3]&#xD;Début Période" textAlign="right" description="[DICT.RH.SALARIE#3] présents au 1er jour de la période." totalComplement="*ROW"/>
<COLUMN dataField="ENTPER" type="Number" width="80" outputFormat="#" headerText="Entrées Ets.&#xD;sur Période" description="Nombre de [DICT.RH.SALARIE#4] rentrés dans l'Etablissement sur la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="SORPER" type="Number" width="80" outputFormat="#" headerText="Sorties Ets.&#xD;sur Période" description="Nombre de [DICT.RH.SALARIE#4] sortis de l'Etablissement sur la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="SALFIN" type="Number" width="90" outputFormat="#" headerText="[DICT.RH.SALARIE#3]&#xD;Fin Période" description="[DICT.RH.SALARIE#3] présents au dernier jour de la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="SORAPPER" type="Number" width="80" outputFormat="#" headerText="Sorties Ets.&#xD;&gt; Période" description="Nombre de [DICT.RH.SALARIE#4] sortis de l'Etablissement après la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="NONSOR" type="Number" width="80" outputFormat="#" headerText="Non sortis" textAlign="right" description="Nombre de [DICT.RH.SALARIE#4] toujours dans l'Etablissement." totalComplement="*ROW"/>
<COLUMN dataField="DEPARTETS" type="Date" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" width="60" headerText="Sorties définitives" description="Date de la sortie définitive de l'établissement" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="EMB" type="Number" width="80" outputFormat="#" headerText="Embauches" description="Nombre de [DICT.RH.SALARIE#4] ayant eu un début de contrat sur la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="DEPT" type="Number" width="80" outputFormat="#" headerText="Départs" description="Nombre de [DICT.RH.SALARIE#4] ayant eu une fin de contrat sur la période." textAlign="right" totalComplement="*ROW"/>
<!-- Partie Contrats -->
<COLUMN dataField="DDEB" type="Date" width="80" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" headerText="Début [DICT.RH.CONTRAT#2]" totalComplement="*ROW" />
<COLUMN dataField="CNTDEJACOM" type="Number" width="100" outputFormat="#" headerText="Débutés&#xD;&lt; Période" description="[DICT.RH.CONTRAT#3] débutés avant la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="CNTCOMSP" type="Number" width="100" outputFormat="#" headerText="Débutés&#xD;sur Période" description="[DICT.RH.CONTRAT#3] débutés sur la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="NCNT" type="Number" width="60" outputFormat="#" headerText="[DICT.RH.CONTRAT#3]" visibleCondition="SELECT.GROUPBY_2 != 'CNT'" totalComplement="" />
<COLUMN dataField="CNTTERMSP" type="Number" width="100" outputFormat="#" headerText="Terminés&#xD;sur Période" description="[DICT.RH.CONTRAT#3] terminés sur la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="CNTTERMAP" type="Number" width="100" outputFormat="#" headerText="Terminés&#xD;&gt; Période" description="[DICT.RH.CONTRAT#3] terminés après la période." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="CNTPASTERM" type="Number" width="100" outputFormat="#" headerText="Non terminés" description="Contrats en cours." textAlign="right" totalComplement="*ROW"/>
<COLUMN dataField="DFIN" type="Date" width="80" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" headerText="Fin [DICT.RH.CONTRAT#2]" totalComplement="*ROW" />
<COLUMN dataField="EFFPERM" type="Number" outputFormat="#" width="70" headerText="Effectif permanent" description="[DICT.RH.SALARIE#1] titulaire d'un CDI à temps complet et présent sur l'ensemble de la période." textAlign="center" totalComplement="*ROW"/>
<COLUMN dataField="TYPECNT" type="Char" width="50" headerText="Type contrat" textAlign="center" totalComplement="*ROW"/>
<COLUMN dataField="TYPETPS" type="Char" width="50" headerText="Temps travail" textAlign="center" totalComplement="*ROW"/>
<COLUMN dataField="NHCNT"
type="Number"
width="70"
outputFormat="#,00"
headerText="Heures [DICT.RH.CONTRAT#2]"
textAlign="right"
totalComplement="*ROW" />
<COLUMN dataField="NETP"
type="Number"
width="70"
outputFormat="#,00"
headerText="ETP Contrat"
textAlign="right"
totalComplement="*ROW" />
<!--<COLUMN dataField="DDEP"
type="Date"
width="80"
inputFormat="AAAA-MM-JJ"
outputFormat="DD/MM/YY"
headerText="Départ"
totalComplement="*ROW" />-->
<COLUMN dataField="STAT"
type="Char"
width="150"
headerText="[DICT.RH.STATUT#1]"
totalComplement="" >
</COLUMN>
<COLUMN dataField="QUAL"
type="Char"
width="150"
headerText="Qualification"
totalComplement="" >
</COLUMN>
<COLUMN dataField="SERV"
type="Char"
width="150"
headerText="[DICT.RH.SERVICE]"
totalComplement="" >
</COLUMN>
<COLUMN dataField="CEMP"
type="Char"
width="150"
headerText="[DICT.RH.CODE_EMPLOI]"
totalComplement="" >
</COLUMN>
<COLUMN dataField="SALR"
type="Char"
width="150"
headerText="[DICT.RH.SALARIE] remplacé"
totalComplement="" />
<COLUMN dataField="MOTIFDEBUTCONTRAT"
type="Char"
width="150"
headerText="Motif début de contrat"
totalComplement="" />
<COLUMN dataField="MOTIFFINCONTRAT"
type="Char"
width="150"
headerText="Motif fin de contrat"
totalComplement="" />
</DATAGRID>
</ONGLET>
<ONGLET label="Population" queryNumber="1" visibleCondition="ENV.RHPROVIDER == 'shspub'" >
<DATAGRID title=""
total="true"
headerHeight="40"
selectRowInRows="= ROW.OID == '-9999997'"
otherRowInRows="= ROW.OID == '-9999998'"
totalRowInRows="= ROW.OID == '-9999999'"
variableRowHeight="true"
sortable="= SELECT.GROUPBY == '-1' || SELECT.GROUPBY_2 == '-1' || SELECT.GROUPBY_TAB == 'TAB'">
<INSERT name="DATAGRID_MULTITAB_STYLES"/>
<COLUMN dataField="OID" type="Number" visible="false" />
<COLUMN dataField="ISAL" type="Number" visible="false" />
<COLUMN dataField="COD"
type="Char"
width="90"
outputFormat="#"
headerTextCalc="true"
headerText="(SELECT.GROUPBY_2 == 'SAL')?'Matricule':'N° [DICT.RH.CONTRAT#1]'"
textAlign="left"
totalComplement="*ROW">
<INSERT name="COLUMN_COD_MULTITAB_STYLES"/>
</COLUMN>
<COLUMN dataField="TXT" headerText="Nom" type="Char" minWidth="110" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="DNAI" headerText="Né(e) le" type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="AGE" headerText="Age" type="Char" minWidth="30" totalComplement="*ROW" />
<COLUMN dataField="SEXE" headerText="Sexe" type="Char" minWidth="30" totalComplement="" />
<COLUMN dataField="AETS" headerText="Anc. Ets." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="REG" headerText="Régime statutaire" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="STP" headerText="Sous-type paie" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="POS" headerText="Position" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="DTE" headerText="Entrée Ets." type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="DTS" headerText="Sortie Ets." type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="TTT" headerText="Type Tps. Trv." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="SFM" headerText="Sit. Famille" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="TRH" headerText="Trav Hand" type="Char" minWidth="40" totalComplement="" />
<COLUMN dataField="MET" headerText="Métier" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="ADELI" headerText="Adeli" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="COT" headerText="Code Cotisation" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="RET" headerText="Matricule Retraite" type="Char" minWidth="80" totalComplement="" />
</DATAGRID>
</ONGLET>
<ONGLET label="Carrière" queryNumber="2" visibleCondition="ENV.RHPROVIDER == 'shspub'" >
<DATAGRID title=""
total="true"
headerHeight="40"
selectRowInRows="= ROW.OID == '-9999997'"
otherRowInRows="= ROW.OID == '-9999998'"
totalRowInRows="= ROW.OID == '-9999999'"
variableRowHeight="true"
sortable="= SELECT.GROUPBY == '-1' || SELECT.GROUPBY_2 == '-1' || SELECT.GROUPBY_TAB == 'TAB'">
<INSERT name="DATAGRID_MULTITAB_STYLES"/>
<COLUMN dataField="OID" type="Number" visible="false" />
<COLUMN dataField="ISAL" type="Number" visible="false" />
<COLUMN dataField="COD"
type="Char"
width="90"
outputFormat="#"
headerTextCalc="true"
headerText="(SELECT.GROUPBY_2 == 'SAL')?'Matricule':'N° [DICT.RH.CONTRAT#1]'"
textAlign="left"
totalComplement="*ROW">
<INSERT name="COLUMN_COD_MULTITAB_STYLES"/>
</COLUMN>
<COLUMN dataField="TXT" headerText="Nom" type="Char" minWidth="110" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="DNAI" headerText="Né(e) le" type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="AGE" headerText="Age" type="Char" minWidth="30" totalComplement="*ROW" />
<COLUMN dataField="SEXE" headerText="Sexe" type="Char" minWidth="30" totalComplement="" />
<COLUMN dataField="AETS" headerText="Anc. Ets." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="REG" headerText="Régime statutaire" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="STP" headerText="Sous-type paie" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="POS" headerText="Position" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="DTE" headerText="Entrée Ets." type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="MTE" headerText="[DICT.RH.MOTIF_DEBUT#1]" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="DTS" headerText="Sortie Ets." type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="MTS" headerText="[DICT.RH.MOTIF_FIN#1]" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="GEC" headerText="Grade (Echelon)" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="DTT" headerText="Date titularisation" type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="FIL" headerText="Filière" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="CAE" headerText="Cadre d'emploi" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="MET" headerText="Métier" type="Char" minWidth="80" totalComplement="" />
</DATAGRID>
</ONGLET>
<ONGLET label="Effectif" queryNumber="3" visibleCondition="ENV.RHPROVIDER == 'shspub'" >
<DATAGRID title=""
total="true"
headerHeight="40"
selectRowInRows="= ROW.OID == '-9999997'"
otherRowInRows="= ROW.OID == '-9999998'"
totalRowInRows="= ROW.OID == '-9999999'"
variableRowHeight="true"
sortable="= SELECT.GROUPBY == '-1' || SELECT.GROUPBY_2 == '-1' || SELECT.GROUPBY_TAB == 'TAB'">
<INSERT name="DATAGRID_MULTITAB_STYLES"/>
<COLUMN dataField="OID" type="Number" visible="false" />
<COLUMN dataField="ISAL" type="Number" visible="false" />
<COLUMN dataField="COD"
type="Char"
width="90"
outputFormat="#"
headerTextCalc="true"
headerText="(SELECT.GROUPBY_2 == 'SAL')?'Matricule':'N° [DICT.RH.CONTRAT#1]'"
textAlign="left"
totalComplement="*ROW">
<INSERT name="COLUMN_COD_MULTITAB_STYLES"/>
</COLUMN>
<COLUMN dataField="TXT" headerText="Nom" type="Char" minWidth="110" textAlign="left" totalComplement="*ROW"/>
<COLUMN dataField="DNAI" headerText="Né(e) le" type="Date" minWidth="70" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" totalComplement="*ROW" />
<COLUMN dataField="AGE" headerText="Age" type="Char" minWidth="30" totalComplement="*ROW" />
<COLUMN dataField="SEXE" headerText="Sexe" type="Char" minWidth="30" totalComplement="" />
<COLUMN dataField="AETS" headerText="Anc. Ets." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="REG" headerText="Régime statutaire" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="STP" headerText="Sous-type paie" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="POS" headerText="Position" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="GEC" headerText="Grade (Echelon)" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="TTT" headerText="Type Tps. Trv." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="NETP" headerText="ETP Contrat" type="Number" minWidth="80" outputFormat="#,0" textAlign="right" totalComplement="*ROW" />
<COLUMN dataField="UNF" headerText="Unité Fonctionnelle" type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="CR" headerText="Centre de Resp." type="Char" minWidth="80" totalComplement="" />
<COLUMN dataField="SALR" headerText="[DICT.RH.SALARIE] remplacé" type="Char" minWidth="110" totalComplement="" />
</DATAGRID>
</ONGLET>
</PRESENTATION>
</VUE>