<?xml version="1.0" encoding="ISO-8859-15"?>
<VUE name="PMSI000021" label="PMSI. Justificatif diagnostics par RSS" title="= 'Justificatif diagnostics par RSS (' + SELECT.PERIODE_LABEL + ' à ' + SELECT.TOPERIODE_LABEL + ') - ' + SELECT.VERSION_GROUPAGE_LABEL" database="iCTI" swf="*CTI_view1" softCode="iCTI_pmsi" globals="PMSI_globals.XML" componentsFile="PMSI_components.XML" helpDokuWIkiDir="pmsi:sejour_analyse_detaillee:diagnostics" helpDokuWIkiFile="pmsi000020"  helpFile="iCTI_PMSI_PMSI000021.HTML">
	<VIEWPROPERTIES componentName="PROPERTIES_DIAG" />
	<SELECTIONS label="Paramètres de l'analyse">
		<GROUP>
			<FIELD name="ALIAS_PERIODE" label="" UI="combo" width="220" default="CUM_LAST_MONTH" tree="true" globalListProvider="ALIAS_PERIODE" />
			<FIELD name="PERIODE" label="de" UI="combo" tree="true" width="200" default="2014-01-01" default2="201401" printable="false" globalListProvider="DATE_DEBUT" />
			<FIELD name="TOPERIODE" label="à" UI="combo" tree="true" width="200" default="2014-12-31" default2="201412" printable="false" globalListProvider="DATE_FIN" />
		</GROUP>
	</SELECTIONS>
	<SELECTIONS componentName="FILTRES_DIAG_SELECTIONS" />
	<SELECTIONS componentName="FILTRES_RSS_SELECTIONS" />
	<QUERIES>
		<QUERY label="">
			<SQL optimizer="V_RSS_X">
				<select><![CDATA[ 
					
					(SELECT 
						v_rss_1.rss_id, 
						v_rss_1.no_rss, 
						v_rss_1.finess, 
						identite_nom::text || ' '::text || identite_prenom::text, 
						date_sortie, 
						diagnostic_principal_code::text || ' '::text || diagnostic_principal_texte::text, 
						diagnostic_code::text || ' '::text || diagnostic_texte::text, 
						diagnostic_relie_code::text || ' '::text || diagnostic_relie_texte::text,
						nb_diagnostics,
						nb_diagnostics_rss_p,
						nb_diagnostics_rss_r,
						nb_diagnostics_rss_a,
						nb_diagnostics_rss_d,
						diagnostic_severite_fg2023_code,
                        CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 1 THEN 1 ELSE 0 END,
                        CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 2 THEN 1 ELSE 0 END,
                        CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 3 THEN 1 ELSE 0 END,
                        CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 4 THEN 1 ELSE 0 END
					FROM #V_RSS_X#
                    LEFT JOIN pmsi.v_rss_diag_handicaplourd_1 ON v_rss_1.rss_id = v_rss_diag_handicaplourd_1.rss_id 
					WHERE 
						mois_sortie IN ([VIEW.PERIODE_MOIS_LIST]) AND 
						date_sortie BETWEEN '[PERIODE]' AND '[TOPERIODE]'
					
						[VIEW.FILTRE_DIAG_SELECT]
						[VIEW.FILTRE_RSS_SELECT]
					)
					
					UNION ALL
					
					(SELECT 
						-9999999, 
						COUNT(DISTINCT v_rss_1.no_rss), 
						'', 
						COUNT(DISTINCT v_rss_1.rss_id)::text || ' séjours, '::text || COUNT(DISTINCT v_rss_1.patient_id)::text || ' patients'::text , 
						null, 
						COUNT(DISTINCT v_rss_1.diagnostic_principal_id)::text || ' codes distincts'::text, 
						SUM(nb_diagnostics)::text || ' lignes, '::text || COUNT(DISTINCT v_rss_diagnostics_1.diagnostic_id)::text || ' codes distincts'::text, 
						COUNT(DISTINCT v_rss_1.diagnostic_relie_id)::text || ' codes distincts'::text,
						SUM(nb_diagnostics),
						SUM(nb_diagnostics_rss_p),
						SUM(nb_diagnostics_rss_r),
						SUM(nb_diagnostics_rss_a),
						SUM(nb_diagnostics_rss_d),
						min(diagnostic_severite_fg2023_code),
                        count(DISTINCT CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 1 THEN v_rss_1.rss_id ELSE NULL END),
                        count(DISTINCT CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 2 THEN v_rss_1.rss_id ELSE NULL END),
                        count(DISTINCT CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 3 THEN v_rss_1.rss_id ELSE NULL END),
                        count(DISTINCT CASE WHEN (nb_diag_polyhand_liste1 + nb_diag_polyhand_liste2 + nb_diag_polyhand_liste3 +nb_diag_polyhand_liste4 ) = 4 THEN v_rss_1.rss_id ELSE NULL END)
					FROM #V_RSS_X#
                    LEFT JOIN pmsi.v_rss_diag_handicaplourd_1 ON v_rss_1.rss_id = v_rss_diag_handicaplourd_1.rss_id 
					WHERE 
						mois_sortie IN ([VIEW.PERIODE_MOIS_LIST]) AND 
						date_sortie BETWEEN '[PERIODE]' AND '[TOPERIODE]'
					
						[VIEW.FILTRE_DIAG_SELECT]
						[VIEW.FILTRE_RSS_SELECT]
					)

					ORDER BY 2, 9 DESC
					
				]]></select>
				<FIELDS>
					<FIELD name="OID" />
					<FIELD name="RSS" />
					<FIELD name="FIN" />
					<FIELD name="NOM" ifHideNames="Non autorisé" />
					<FIELD name="DAT" />
					<FIELD name="DP" />
					<FIELD name="DG" />
					<FIELD name="DR" />
					<FIELD name="NB" />
					<FIELD name="NBP" />
					<FIELD name="NBR" />
					<FIELD name="NBA" />
					<FIELD name="NBD" />
					<FIELD name="MCA" />
					<FIELD name="PHL1" />
					<FIELD name="PHL2" />
					<FIELD name="PHL3" />
					<FIELD name="PHL4" />
				</FIELDS>
			</SQL>
		</QUERY>
		<QUERY type="propertiesLink" name="VIEWPROPERTIES" forRows="false" />
	</QUERIES>
	<PRESENTATION>
		<VIEWLINKS>
			<VIEWLINK label="Détail RSS" shortLabel="Détail RSS" view="PMSI000006.XML">
				<ARG name="OID" value="ROW.OID" />
			</VIEWLINK>
		</VIEWLINKS>
		<ONGLET excelLabel="Liste RSS et diagnostics" label="Liste RSS et diagnostics">
			<DATAGRID title="" total="true" showOthers="false" key="RSS" headerHeight="20" totalRowInRows="= ROW.OID == '-9999999'">
				<COLUMN dataField="OID" type="Char" visible="false" />
				<COLUMN dataField="FIN" width="60" type="Char" visible="true" headerText="Etablissement" textAlign="left" visibleCondition="ENV.CONSOLIDATION == '1'" otherFunction="text" totalFunction="text" totalComplement="" />
				<COLUMN dataField="RSS" width="60" type="Char" visible="true" headerText="N° RSS" textAlign="left" otherFunction="text" totalFunction="text" totalComplement="TOTAL" />
				<COLUMN dataField="NOM" minWidth="150" type="Char" visible="true" headerText="Nom" textAlign="left" otherFunction="text" totalFunction="text" totalComplement="*ROW" />
				<COLUMN dataField="DP" type="Char" headerText="Diagnostic principal RSS" minWidth="100" textAlign="left" totalFunction="text" totalComplement="*ROW" />
				<COLUMN dataField="DR" type="Char" headerText="Diagnostic relié" minWidth="100" textAlign="left" totalFunction="text" totalComplement="*ROW" />
				<COLUMN dataField="DG" type="Char" headerText="Diagnostic" minWidth="100" textAlign="left" totalFunction="text" totalComplement="*ROW" />
				<COLUMN dataField="DAT" type="Date" inputFormat="AAAA-MM-JJ" outputFormat="DD/MM/YY" visible="true" headerText="Date sortie" width="80" textAlign="left" />
				<COLUMN dataField="NB" width="60" type="Number" visible="false" outputFormat="#" headerText="Total" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="NBP" width="60" type="Number" outputFormat="#" headerText="DP" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="NBR" width="60" type="Number" outputFormat="#" headerText="DR" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="NBA" width="60" type="Number" outputFormat="#" headerText="DA" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="NBD" width="60" type="Number" outputFormat="#" headerText="DD" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="MCA" width="60" type="Number" outputFormat="#" headerText="CMA" textAlign="right" otherFunction="text" totalFunction="text" totalComplement="Sévérité" />
				<COLUMN dataField="PHL1" width="70" type="Number" outputFormat="#" headerText="PHL 1 liste" description="Nombre de séjours avec au moins un code dans une liste parmi les listes des codes de la CIM-10 pour l'identification du polyhandicap lourd.&#xD;Liste 1 : Déficiences mentales ou psychiatriques sévères.&#xD;Liste 2 : Troubles moteurs.&#xD;Liste 3 : Critères de mobilité réduite.&#xD;Liste 4 : Restrictions extrêmes de l'autonomie" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="PHL2" width="70" type="Number" outputFormat="#" headerText="PHL 2 liste" description="Nombre de séjours avec au moins un code dans deux listes parmi les listes des codes de la CIM-10 pour l'identification du polyhandicap lourd.&#xD;Liste 1 : Déficiences mentales ou psychiatriques sévères.&#xD;Liste 2 : Troubles moteurs.&#xD;Liste 3 : Critères de mobilité réduite.&#xD;Liste 4 : Restrictions extrêmes de l'autonomie" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="PHL3" width="70" type="Number" outputFormat="#" headerText="PHL 3 liste" description="Nombre de séjours avec au moins un code dans trois listes parmi les listes des codes de la CIM-10 pour l'identification du polyhandicap lourd.&#xD;Liste 1 : Déficiences mentales ou psychiatriques sévères.&#xD;Liste 2 : Troubles moteurs.&#xD;Liste 3 : Critères de mobilité réduite.&#xD;Liste 4 : Restrictions extrêmes de l'autonomie" textAlign="right" totalFunction="sum" otherFunction="sum" />
				<COLUMN dataField="PHL4" width="70" type="Number" outputFormat="#" headerText="PHL 4 liste" description="Nombre de séjours avec au moins un code dans quatre listes parmi les listes des codes de la CIM-10 pour l'identification du polyhandicap lourd.&#xD;Liste 1 : Déficiences mentales ou psychiatriques sévères.&#xD;Liste 2 : Troubles moteurs.&#xD;Liste 3 : Critères de mobilité réduite.&#xD;Liste 4 : Restrictions extrêmes de l'autonomie" textAlign="right" totalFunction="sum" otherFunction="sum" />
			</DATAGRID>
		</ONGLET>
	</PRESENTATION>
</VUE>
