
    <NikuDataBus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/nikuxog_contentPack.xsd">
      <Header action="write" externalSource="NIKU" objectType="contentPack" version="16.3.2.1608"/>
      <contentPack update="true">
        <portlets update="true">
          <gridPortlet allowConfigure="true" allowConfigureLabel="true" allowEditing="false" category="businessIntelligence" code="ma_ptl_controle_r" dataProviderId="ma_ptl_controle_r" dataProviderPartitionId="NIKU.ROOT" dataProviderType="nsql" defaultSortColumn="id" defaultSortOrder="ascending" forceFilter="true" gridAttributeProtection="1" hasEditableColumn="false" metricsLocation="bottom" objectType="SYSTEM" pageSize="20" querySource="customer" showAltValueText="false" showColumnCurrencyCode="false" source="customer">
            <nls languageCode="de" name="Supervision Ressource"/>
            <nls languageCode="no" name="Supervision Ressource"/>
            <nls languageCode="fi" name="Supervision Ressource"/>
            <nls languageCode="ru" name="Supervision Ressource"/>
            <nls languageCode="sv" name="Supervision Ressource"/>
            <nls languageCode="ko" name="Supervision Ressource"/>
            <nls languageCode="pt" name="Supervision Ressource"/>
            <nls languageCode="en" name="Supervision Ressource"/>
            <nls languageCode="it" name="Supervision Ressource"/>
            <nls languageCode="fr" name="Supervision Ressource"/>
            <nls languageCode="hu" name="Supervision Ressource"/>
            <nls languageCode="es" name="Supervision Ressource"/>
            <nls languageCode="zh" name="Supervision Ressource"/>
            <nls languageCode="cs" name="Supervision Ressource"/>
            <nls languageCode="zh_TW" name="Supervision Ressource"/>
            <nls languageCode="ja" name="Supervision Ressource"/>
            <nls languageCode="pl" name="Supervision Ressource"/>
            <nls languageCode="da" name="Supervision Ressource"/>
            <nls languageCode="ca" name="Supervision Ressource"/>
            <nls languageCode="nl" name="Supervision Ressource"/>
            <nls languageCode="tr" name="Supervision Ressource"/>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="objet" isEditable="false" position="1" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="no" name="objet"/>
              <nls languageCode="de" name="objet"/>
              <nls languageCode="sv" name="objet"/>
              <nls languageCode="ru" name="objet"/>
              <nls languageCode="fi" name="objet"/>
              <nls languageCode="pt" name="objet"/>
              <nls languageCode="ko" name="objet"/>
              <nls languageCode="en" name="objet"/>
              <nls languageCode="it" name="objet"/>
              <nls languageCode="fr" name="Objet"/>
              <nls languageCode="hu" name="objet"/>
              <nls languageCode="zh" name="objet"/>
              <nls languageCode="es" name="objet"/>
              <nls languageCode="cs" name="objet"/>
              <nls languageCode="zh_TW" name="objet"/>
              <nls languageCode="ja" name="objet"/>
              <nls languageCode="pl" name="objet"/>
              <nls languageCode="da" name="objet"/>
              <nls languageCode="tr" name="objet"/>
              <nls languageCode="nl" name="objet"/>
              <nls languageCode="ca" name="objet"/>
            </column>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="numo_ref" isEditable="false" position="2" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="de" name="numo_ref"/>
              <nls languageCode="no" name="numo_ref"/>
              <nls languageCode="fi" name="numo_ref"/>
              <nls languageCode="ru" name="numo_ref"/>
              <nls languageCode="sv" name="numo_ref"/>
              <nls languageCode="ko" name="numo_ref"/>
              <nls languageCode="pt" name="numo_ref"/>
              <nls languageCode="en" name="numo_ref"/>
              <nls languageCode="it" name="numo_ref"/>
              <nls languageCode="fr" name="N°_REF"/>
              <nls languageCode="hu" name="numo_ref"/>
              <nls languageCode="es" name="numo_ref"/>
              <nls languageCode="zh" name="numo_ref"/>
              <nls languageCode="cs" name="numo_ref"/>
              <nls languageCode="zh_TW" name="numo_ref"/>
              <nls languageCode="ja" name="numo_ref"/>
              <nls languageCode="pl" name="numo_ref"/>
              <nls languageCode="da" name="numo_ref"/>
              <nls languageCode="ca" name="numo_ref"/>
              <nls languageCode="nl" name="numo_ref"/>
              <nls languageCode="tr" name="numo_ref"/>
            </column>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="msg_erreur" isEditable="false" position="3" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="de" name="msg_erreur"/>
              <nls languageCode="no" name="msg_erreur"/>
              <nls languageCode="fi" name="msg_erreur"/>
              <nls languageCode="ru" name="msg_erreur"/>
              <nls languageCode="sv" name="msg_erreur"/>
              <nls languageCode="ko" name="msg_erreur"/>
              <nls languageCode="pt" name="msg_erreur"/>
              <nls languageCode="en" name="msg_erreur"/>
              <nls languageCode="it" name="msg_erreur"/>
              <nls languageCode="fr" name="Message d'erreur"/>
              <nls languageCode="hu" name="msg_erreur"/>
              <nls languageCode="es" name="msg_erreur"/>
              <nls languageCode="zh" name="msg_erreur"/>
              <nls languageCode="cs" name="msg_erreur"/>
              <nls languageCode="zh_TW" name="msg_erreur"/>
              <nls languageCode="ja" name="msg_erreur"/>
              <nls languageCode="pl" name="msg_erreur"/>
              <nls languageCode="da" name="msg_erreur"/>
              <nls languageCode="ca" name="msg_erreur"/>
              <nls languageCode="nl" name="msg_erreur"/>
              <nls languageCode="tr" name="msg_erreur"/>
            </column>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="msg_extract" isEditable="false" position="4" showHeaderLabel="true" showSeparator="false" type="label">
              <nls languageCode="de" name="Message d'extraction"/>
              <nls languageCode="no" name="Message d'extraction"/>
              <nls languageCode="fi" name="Message d'extraction"/>
              <nls languageCode="ru" name="Message d'extraction"/>
              <nls languageCode="sv" name="Message d'extraction"/>
              <nls languageCode="ko" name="Message d'extraction"/>
              <nls languageCode="pt" name="Message d'extraction"/>
              <nls languageCode="en" name="Message d'extraction"/>
              <nls languageCode="it" name="Message d'extraction"/>
              <nls languageCode="fr" name="Message d'extraction"/>
              <nls languageCode="hu" name="Message d'extraction"/>
              <nls languageCode="es" name="Message d'extraction"/>
              <nls languageCode="zh" name="Message d'extraction"/>
              <nls languageCode="cs" name="Message d'extraction"/>
              <nls languageCode="zh_TW" name="Message d'extraction"/>
              <nls languageCode="ja" name="Message d'extraction"/>
              <nls languageCode="pl" name="Message d'extraction"/>
              <nls languageCode="da" name="Message d'extraction"/>
              <nls languageCode="ca" name="Message d'extraction"/>
              <nls languageCode="nl" name="Message d'extraction"/>
              <nls languageCode="tr" name="Message d'extraction"/>
            </column>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="msg_action" isEditable="false" position="5" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="de" name="msg_action"/>
              <nls languageCode="no" name="msg_action"/>
              <nls languageCode="fi" name="msg_action"/>
              <nls languageCode="ru" name="msg_action"/>
              <nls languageCode="sv" name="msg_action"/>
              <nls languageCode="ko" name="msg_action"/>
              <nls languageCode="pt" name="msg_action"/>
              <nls languageCode="en" name="msg_action"/>
              <nls languageCode="it" name="msg_action"/>
              <nls languageCode="fr" name="Action"/>
              <nls languageCode="hu" name="msg_action"/>
              <nls languageCode="es" name="msg_action"/>
              <nls languageCode="zh" name="msg_action"/>
              <nls languageCode="cs" name="msg_action"/>
              <nls languageCode="zh_TW" name="msg_action"/>
              <nls languageCode="ja" name="msg_action"/>
              <nls languageCode="pl" name="msg_action"/>
              <nls languageCode="da" name="msg_action"/>
              <nls languageCode="ca" name="msg_action"/>
              <nls languageCode="nl" name="msg_action"/>
              <nls languageCode="tr" name="msg_action"/>
            </column>
            <column align="left" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="url_link" isEditable="false" position="6" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="de" name="url_link"/>
              <nls languageCode="no" name="url_link"/>
              <nls languageCode="fi" name="url_link"/>
              <nls languageCode="ru" name="url_link"/>
              <nls languageCode="sv" name="url_link"/>
              <nls languageCode="ko" name="url_link"/>
              <nls languageCode="pt" name="url_link"/>
              <nls languageCode="en" name="url_link"/>
              <nls languageCode="it" name="url_link"/>
              <nls languageCode="fr" name="Lien URL"/>
              <nls languageCode="hu" name="url_link"/>
              <nls languageCode="es" name="url_link"/>
              <nls languageCode="zh" name="url_link"/>
              <nls languageCode="cs" name="url_link"/>
              <nls languageCode="zh_TW" name="url_link"/>
              <nls languageCode="ja" name="url_link"/>
              <nls languageCode="pl" name="url_link"/>
              <nls languageCode="da" name="url_link"/>
              <nls languageCode="ca" name="url_link"/>
              <nls languageCode="nl" name="url_link"/>
              <nls languageCode="tr" name="url_link"/>
            </column>
            <column align="right" allowEditing="false" allowHeaderWrapping="false" allowWrapping="true" code="id" isEditable="false" position="-1" showHeaderLabel="true" showSeparator="true" type="label">
              <nls languageCode="no" name="id"/>
              <nls languageCode="de" name="id"/>
              <nls languageCode="sv" name="id"/>
              <nls languageCode="ru" name="id"/>
              <nls languageCode="fi" name="id"/>
              <nls languageCode="pt" name="id"/>
              <nls languageCode="ko" name="id"/>
              <nls languageCode="en" name="id"/>
              <nls languageCode="it" name="id"/>
              <nls languageCode="fr" name="id"/>
              <nls languageCode="hu" name="id"/>
              <nls languageCode="zh" name="id"/>
              <nls languageCode="es" name="id"/>
              <nls languageCode="cs" name="id"/>
              <nls languageCode="zh_TW" name="id"/>
              <nls languageCode="ja" name="id"/>
              <nls languageCode="pl" name="id"/>
              <nls languageCode="da" name="id"/>
              <nls languageCode="nl" name="id"/>
              <nls languageCode="ca" name="id"/>
              <nls languageCode="tr" name="id"/>
            </column>
            <OBSAssocs complete="false"/>
            <Security/>
            <filter code="ma_ptl_controle_r" componentCode="odf" dataProviderId="ma_ptl_controle_r" dataProviderType="nsql" isCustomized="true" objectCode="ma_ptl_controle_r" partitionCode="NIKU.ROOT">
              <section collapsed="true" currentState="collapsed" filterByExpression="false">
                <column sequence="1">
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="param_objet" dataSize="20" decimals="0" extType="enum" fixedWidget="false" hidden="false" isMVLookup="false" lookupType="MA_CTRL_OBJ" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="select" width="20">
                    <nls languageCode="ca" name="param_objet"/>
                    <nls languageCode="cs" name="param_objet"/>
                    <nls languageCode="da" name="param_objet"/>
                    <nls languageCode="de" name="param_objet"/>
                    <nls languageCode="en" name="param_objet"/>
                    <nls languageCode="es" name="param_objet"/>
                    <nls languageCode="fi" name="param_objet"/>
                    <nls languageCode="fr" name="Objet"/>
                    <nls languageCode="hu" name="param_objet"/>
                    <nls languageCode="it" name="param_objet"/>
                    <nls languageCode="ja" name="param_objet"/>
                    <nls languageCode="ko" name="param_objet"/>
                    <nls languageCode="nl" name="param_objet"/>
                    <nls languageCode="no" name="param_objet"/>
                    <nls languageCode="pl" name="param_objet"/>
                    <nls languageCode="pt" name="param_objet"/>
                    <nls languageCode="ru" name="param_objet"/>
                    <nls languageCode="sv" name="param_objet"/>
                    <nls languageCode="tr" name="param_objet"/>
                    <nls languageCode="zh" name="param_objet"/>
                    <nls languageCode="zh_TW" name="param_objet"/>
                    <autoSuggest enabled="true" maxSuggestions="10"/>
                  </viewFieldDescriptor>
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="param_controle" dataSize="20" decimals="0" extType="enum" fixedWidget="false" hidden="false" isMVLookup="false" lookupType="MA_CTRL_CTRL" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="select" width="20">
                    <nls languageCode="ca" name="param_controle"/>
                    <nls languageCode="cs" name="param_controle"/>
                    <nls languageCode="da" name="param_controle"/>
                    <nls languageCode="de" name="param_controle"/>
                    <nls languageCode="en" name="param_controle"/>
                    <nls languageCode="es" name="param_controle"/>
                    <nls languageCode="fi" name="param_controle"/>
                    <nls languageCode="fr" name="Type de controle"/>
                    <nls languageCode="hu" name="param_controle"/>
                    <nls languageCode="it" name="param_controle"/>
                    <nls languageCode="ja" name="param_controle"/>
                    <nls languageCode="ko" name="param_controle"/>
                    <nls languageCode="nl" name="param_controle"/>
                    <nls languageCode="no" name="param_controle"/>
                    <nls languageCode="pl" name="param_controle"/>
                    <nls languageCode="pt" name="param_controle"/>
                    <nls languageCode="ru" name="param_controle"/>
                    <nls languageCode="sv" name="param_controle"/>
                    <nls languageCode="tr" name="param_controle"/>
                    <nls languageCode="zh" name="param_controle"/>
                    <nls languageCode="zh_TW" name="param_controle"/>
                    <autoSuggest enabled="true" maxSuggestions="10"/>
                  </viewFieldDescriptor>
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="param_acteur" dataSize="20" decimals="0" extType="enum" fixedWidget="false" hidden="false" isMVLookup="false" lookupType="MA_CTRL_ACT" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="select" width="20">
                    <nls languageCode="ca" name="param_acteur"/>
                    <nls languageCode="cs" name="param_acteur"/>
                    <nls languageCode="da" name="param_acteur"/>
                    <nls languageCode="de" name="param_acteur"/>
                    <nls languageCode="en" name="param_acteur"/>
                    <nls languageCode="es" name="param_acteur"/>
                    <nls languageCode="fi" name="param_acteur"/>
                    <nls languageCode="fr" name="Acteur"/>
                    <nls languageCode="hu" name="param_acteur"/>
                    <nls languageCode="it" name="param_acteur"/>
                    <nls languageCode="ja" name="param_acteur"/>
                    <nls languageCode="ko" name="param_acteur"/>
                    <nls languageCode="nl" name="param_acteur"/>
                    <nls languageCode="no" name="param_acteur"/>
                    <nls languageCode="pl" name="param_acteur"/>
                    <nls languageCode="pt" name="param_acteur"/>
                    <nls languageCode="ru" name="param_acteur"/>
                    <nls languageCode="sv" name="param_acteur"/>
                    <nls languageCode="tr" name="param_acteur"/>
                    <nls languageCode="zh" name="param_acteur"/>
                    <nls languageCode="zh_TW" name="param_acteur"/>
                    <autoSuggest enabled="true" maxSuggestions="10"/>
                  </viewFieldDescriptor>
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="param_proprio" dataSize="20" decimals="0" extType="enum" fixedWidget="false" hidden="false" isMVLookup="false" lookupType="MA_CTRL_REGLE" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="select" width="20">
                    <nls languageCode="ca" name="param_proprio"/>
                    <nls languageCode="cs" name="param_proprio"/>
                    <nls languageCode="da" name="param_proprio"/>
                    <nls languageCode="de" name="param_proprio"/>
                    <nls languageCode="en" name="param_proprio"/>
                    <nls languageCode="es" name="param_proprio"/>
                    <nls languageCode="fi" name="param_proprio"/>
                    <nls languageCode="fr" name="Propriétaire de la règle"/>
                    <nls languageCode="hu" name="param_proprio"/>
                    <nls languageCode="it" name="param_proprio"/>
                    <nls languageCode="ja" name="param_proprio"/>
                    <nls languageCode="ko" name="param_proprio"/>
                    <nls languageCode="nl" name="param_proprio"/>
                    <nls languageCode="no" name="param_proprio"/>
                    <nls languageCode="pl" name="param_proprio"/>
                    <nls languageCode="pt" name="param_proprio"/>
                    <nls languageCode="ru" name="param_proprio"/>
                    <nls languageCode="sv" name="param_proprio"/>
                    <nls languageCode="tr" name="param_proprio"/>
                    <nls languageCode="zh" name="param_proprio"/>
                    <nls languageCode="zh_TW" name="param_proprio"/>
                    <autoSuggest enabled="true" maxSuggestions="10"/>
                  </viewFieldDescriptor>
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="param_criticite" dataSize="20" decimals="0" extType="enum" fixedWidget="false" hidden="false" isMVLookup="false" lookupType="MA_CTRL_CRIT" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="select" width="20">
                    <nls languageCode="ca" name="param_criticite"/>
                    <nls languageCode="cs" name="param_criticite"/>
                    <nls languageCode="da" name="param_criticite"/>
                    <nls languageCode="de" name="param_criticite"/>
                    <nls languageCode="en" name="param_criticite"/>
                    <nls languageCode="es" name="param_criticite"/>
                    <nls languageCode="fi" name="param_criticite"/>
                    <nls languageCode="fr" name="Criticité"/>
                    <nls languageCode="hu" name="param_criticite"/>
                    <nls languageCode="it" name="param_criticite"/>
                    <nls languageCode="ja" name="param_criticite"/>
                    <nls languageCode="ko" name="param_criticite"/>
                    <nls languageCode="nl" name="param_criticite"/>
                    <nls languageCode="no" name="param_criticite"/>
                    <nls languageCode="pl" name="param_criticite"/>
                    <nls languageCode="pt" name="param_criticite"/>
                    <nls languageCode="ru" name="param_criticite"/>
                    <nls languageCode="sv" name="param_criticite"/>
                    <nls languageCode="tr" name="param_criticite"/>
                    <nls languageCode="zh" name="param_criticite"/>
                    <nls languageCode="zh_TW" name="param_criticite"/>
                    <autoSuggest enabled="true" maxSuggestions="10"/>
                  </viewFieldDescriptor>
                </column>
                <column sequence="2">
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="numo_ref" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="30">
                    <nls languageCode="ca" name="numo_ref"/>
                    <nls languageCode="cs" name="numo_ref"/>
                    <nls languageCode="da" name="numo_ref"/>
                    <nls languageCode="de" name="numo_ref"/>
                    <nls languageCode="en" name="numo_ref"/>
                    <nls languageCode="es" name="numo_ref"/>
                    <nls languageCode="fi" name="numo_ref"/>
                    <nls languageCode="fr" name="N°_REF"/>
                    <nls languageCode="hu" name="numo_ref"/>
                    <nls languageCode="it" name="numo_ref"/>
                    <nls languageCode="ja" name="numo_ref"/>
                    <nls languageCode="ko" name="numo_ref"/>
                    <nls languageCode="nl" name="numo_ref"/>
                    <nls languageCode="no" name="numo_ref"/>
                    <nls languageCode="pl" name="numo_ref"/>
                    <nls languageCode="pt" name="numo_ref"/>
                    <nls languageCode="ru" name="numo_ref"/>
                    <nls languageCode="sv" name="numo_ref"/>
                    <nls languageCode="tr" name="numo_ref"/>
                    <nls languageCode="zh" name="numo_ref"/>
                    <nls languageCode="zh_TW" name="numo_ref"/>
                  </viewFieldDescriptor>
                  <viewFieldDescriptor active="true" aggregate="false" attributeCode="msg_erreur" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="30">
                    <nls languageCode="ca" name="msg_erreur"/>
                    <nls languageCode="cs" name="msg_erreur"/>
                    <nls languageCode="da" name="msg_erreur"/>
                    <nls languageCode="de" name="msg_erreur"/>
                    <nls languageCode="en" name="msg_erreur"/>
                    <nls languageCode="es" name="msg_erreur"/>
                    <nls languageCode="fi" name="msg_erreur"/>
                    <nls languageCode="fr" name="Message d'erreur"/>
                    <nls languageCode="hu" name="msg_erreur"/>
                    <nls languageCode="it" name="msg_erreur"/>
                    <nls languageCode="ja" name="msg_erreur"/>
                    <nls languageCode="ko" name="msg_erreur"/>
                    <nls languageCode="nl" name="msg_erreur"/>
                    <nls languageCode="no" name="msg_erreur"/>
                    <nls languageCode="pl" name="msg_erreur"/>
                    <nls languageCode="pt" name="msg_erreur"/>
                    <nls languageCode="ru" name="msg_erreur"/>
                    <nls languageCode="sv" name="msg_erreur"/>
                    <nls languageCode="tr" name="msg_erreur"/>
                    <nls languageCode="zh" name="msg_erreur"/>
                    <nls languageCode="zh_TW" name="msg_erreur"/>
                  </viewFieldDescriptor>
                </column>
                <nls languageCode="ca" name="Supervision Filter"/>
                <nls languageCode="cs" name="Supervision Filter"/>
                <nls languageCode="da" name="Supervision Filter"/>
                <nls languageCode="de" name="Supervision Filter"/>
                <nls languageCode="en" name="Supervision Filter"/>
                <nls languageCode="es" name="Supervision Filter"/>
                <nls languageCode="fi" name="Supervision Filter"/>
                <nls languageCode="fr" name="Supervision Filter"/>
                <nls languageCode="hu" name="Supervision Filter"/>
                <nls languageCode="it" name="Supervision Filter"/>
                <nls languageCode="ja" name="Supervision Filter"/>
                <nls languageCode="ko" name="Supervision Filter"/>
                <nls languageCode="nl" name="Supervision Filter"/>
                <nls languageCode="no" name="Supervision Filter"/>
                <nls languageCode="pl" name="Supervision Filter"/>
                <nls languageCode="pt" name="Supervision Filter"/>
                <nls languageCode="ru" name="Supervision Filter"/>
                <nls languageCode="sv" name="Supervision Filter"/>
                <nls languageCode="tr" name="Supervision Filter"/>
                <nls languageCode="zh" name="Supervision Filter"/>
                <nls languageCode="zh_TW" name="Supervision Filter"/>
              </section>
              <defaultDisplay>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="id" dataSize="30" decimals="0" extType="double" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="numeric">
                  <nls languageCode="ca" name="id"/>
                  <nls languageCode="cs" name="id"/>
                  <nls languageCode="da" name="id"/>
                  <nls languageCode="de" name="id"/>
                  <nls languageCode="en" name="id"/>
                  <nls languageCode="es" name="id"/>
                  <nls languageCode="fi" name="id"/>
                  <nls languageCode="fr" name="id"/>
                  <nls languageCode="hu" name="id"/>
                  <nls languageCode="it" name="id"/>
                  <nls languageCode="ja" name="id"/>
                  <nls languageCode="ko" name="id"/>
                  <nls languageCode="nl" name="id"/>
                  <nls languageCode="no" name="id"/>
                  <nls languageCode="pl" name="id"/>
                  <nls languageCode="pt" name="id"/>
                  <nls languageCode="ru" name="id"/>
                  <nls languageCode="sv" name="id"/>
                  <nls languageCode="tr" name="id"/>
                  <nls languageCode="zh" name="id"/>
                  <nls languageCode="zh_TW" name="id"/>
                </viewFieldDescriptor>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="msg_extract" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="20">
                  <nls languageCode="ca" name="msg_extract"/>
                  <nls languageCode="cs" name="msg_extract"/>
                  <nls languageCode="da" name="msg_extract"/>
                  <nls languageCode="de" name="msg_extract"/>
                  <nls languageCode="en" name="msg_extract"/>
                  <nls languageCode="es" name="msg_extract"/>
                  <nls languageCode="fi" name="msg_extract"/>
                  <nls languageCode="fr" name="msg_extract"/>
                  <nls languageCode="hu" name="msg_extract"/>
                  <nls languageCode="it" name="msg_extract"/>
                  <nls languageCode="ja" name="msg_extract"/>
                  <nls languageCode="ko" name="msg_extract"/>
                  <nls languageCode="nl" name="msg_extract"/>
                  <nls languageCode="no" name="msg_extract"/>
                  <nls languageCode="pl" name="msg_extract"/>
                  <nls languageCode="pt" name="msg_extract"/>
                  <nls languageCode="ru" name="msg_extract"/>
                  <nls languageCode="sv" name="msg_extract"/>
                  <nls languageCode="tr" name="msg_extract"/>
                  <nls languageCode="zh" name="msg_extract"/>
                  <nls languageCode="zh_TW" name="msg_extract"/>
                </viewFieldDescriptor>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="msg_action" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="30">
                  <nls languageCode="ca" name="msg_action"/>
                  <nls languageCode="cs" name="msg_action"/>
                  <nls languageCode="da" name="msg_action"/>
                  <nls languageCode="de" name="msg_action"/>
                  <nls languageCode="en" name="msg_action"/>
                  <nls languageCode="es" name="msg_action"/>
                  <nls languageCode="fi" name="msg_action"/>
                  <nls languageCode="fr" name="msg_action"/>
                  <nls languageCode="hu" name="msg_action"/>
                  <nls languageCode="it" name="msg_action"/>
                  <nls languageCode="ja" name="msg_action"/>
                  <nls languageCode="ko" name="msg_action"/>
                  <nls languageCode="nl" name="msg_action"/>
                  <nls languageCode="no" name="msg_action"/>
                  <nls languageCode="pl" name="msg_action"/>
                  <nls languageCode="pt" name="msg_action"/>
                  <nls languageCode="ru" name="msg_action"/>
                  <nls languageCode="sv" name="msg_action"/>
                  <nls languageCode="tr" name="msg_action"/>
                  <nls languageCode="zh" name="msg_action"/>
                  <nls languageCode="zh_TW" name="msg_action"/>
                </viewFieldDescriptor>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="url_link" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="20">
                  <nls languageCode="ca" name="url_link"/>
                  <nls languageCode="cs" name="url_link"/>
                  <nls languageCode="da" name="url_link"/>
                  <nls languageCode="de" name="url_link"/>
                  <nls languageCode="en" name="url_link"/>
                  <nls languageCode="es" name="url_link"/>
                  <nls languageCode="fi" name="url_link"/>
                  <nls languageCode="fr" name="url_link"/>
                  <nls languageCode="hu" name="url_link"/>
                  <nls languageCode="it" name="url_link"/>
                  <nls languageCode="ja" name="url_link"/>
                  <nls languageCode="ko" name="url_link"/>
                  <nls languageCode="nl" name="url_link"/>
                  <nls languageCode="no" name="url_link"/>
                  <nls languageCode="pl" name="url_link"/>
                  <nls languageCode="pt" name="url_link"/>
                  <nls languageCode="ru" name="url_link"/>
                  <nls languageCode="sv" name="url_link"/>
                  <nls languageCode="tr" name="url_link"/>
                  <nls languageCode="zh" name="url_link"/>
                  <nls languageCode="zh_TW" name="url_link"/>
                </viewFieldDescriptor>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="objet" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="20">
                  <nls languageCode="ca" name="objet"/>
                  <nls languageCode="cs" name="objet"/>
                  <nls languageCode="da" name="objet"/>
                  <nls languageCode="de" name="objet"/>
                  <nls languageCode="en" name="objet"/>
                  <nls languageCode="es" name="objet"/>
                  <nls languageCode="fi" name="objet"/>
                  <nls languageCode="fr" name="objet"/>
                  <nls languageCode="hu" name="objet"/>
                  <nls languageCode="it" name="objet"/>
                  <nls languageCode="ja" name="objet"/>
                  <nls languageCode="ko" name="objet"/>
                  <nls languageCode="nl" name="objet"/>
                  <nls languageCode="no" name="objet"/>
                  <nls languageCode="pl" name="objet"/>
                  <nls languageCode="pt" name="objet"/>
                  <nls languageCode="ru" name="objet"/>
                  <nls languageCode="sv" name="objet"/>
                  <nls languageCode="tr" name="objet"/>
                  <nls languageCode="zh" name="objet"/>
                  <nls languageCode="zh_TW" name="objet"/>
                </viewFieldDescriptor>
                <viewFieldDescriptor active="true" aggregate="false" attributeCode="objet_code" dataSize="200" decimals="0" fixedWidget="false" hidden="false" isMVLookup="false" multiValued="false" notEqualXPath="false" numRows="0" readOnly="false" required="false" virtual="false" widgetType="text" width="20">
                  <nls languageCode="ca" name="objet_code"/>
                  <nls languageCode="cs" name="objet_code"/>
                  <nls languageCode="da" name="objet_code"/>
                  <nls languageCode="de" name="objet_code"/>
                  <nls languageCode="en" name="objet_code"/>
                  <nls languageCode="es" name="objet_code"/>
                  <nls languageCode="fi" name="objet_code"/>
                  <nls languageCode="fr" name="objet_code"/>
                  <nls languageCode="hu" name="objet_code"/>
                  <nls languageCode="it" name="objet_code"/>
                  <nls languageCode="ja" name="objet_code"/>
                  <nls languageCode="ko" name="objet_code"/>
                  <nls languageCode="nl" name="objet_code"/>
                  <nls languageCode="no" name="objet_code"/>
                  <nls languageCode="pl" name="objet_code"/>
                  <nls languageCode="pt" name="objet_code"/>
                  <nls languageCode="ru" name="objet_code"/>
                  <nls languageCode="sv" name="objet_code"/>
                  <nls languageCode="tr" name="objet_code"/>
                  <nls languageCode="zh" name="objet_code"/>
                  <nls languageCode="zh_TW" name="objet_code"/>
                </viewFieldDescriptor>
              </defaultDisplay>
            </filter>
          </gridPortlet>
        </portlets>
        <queries update="true">
          <query code="ma_ptl_controle_r" isUserPortletAvailable="1" source="customer">
            <nls languageCode="ca" name="Supervision Ressource"/>
            <nls languageCode="cs" name="Supervision Ressource"/>
            <nls languageCode="da" name="Supervision Ressource"/>
            <nls languageCode="de" name="Supervision Ressource"/>
            <nls languageCode="en" name="Supervision Ressource"/>
            <nls languageCode="es" name="Supervision Ressource"/>
            <nls languageCode="fi" name="Supervision Ressource"/>
            <nls languageCode="fr" name="Supervision Ressource"/>
            <nls languageCode="hu" name="Supervision Ressource"/>
            <nls languageCode="it" name="Supervision Ressource"/>
            <nls languageCode="ja" name="Supervision Ressource"/>
            <nls languageCode="ko" name="Supervision Ressource"/>
            <nls languageCode="nl" name="Supervision Ressource"/>
            <nls languageCode="no" name="Supervision Ressource"/>
            <nls languageCode="pl" name="Supervision Ressource"/>
            <nls languageCode="pt" name="Supervision Ressource"/>
            <nls languageCode="ru" name="Supervision Ressource"/>
            <nls languageCode="sv" name="Supervision Ressource"/>
            <nls languageCode="tr" name="Supervision Ressource"/>
            <nls languageCode="zh" name="Supervision Ressource"/>
            <nls languageCode="zh_TW" name="Supervision Ressource"/>
            <nsql dbId="Niku" dbVendor="all"><![CDATA[SELECT @SELECT:DIM:USER_DEF:IMPLIED:CONTROL:CTRL.ID:ID@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.numo_ref:numo_ref@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.msg_erreur:msg_erreur@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.msg_action:msg_action@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.msg_extract:msg_extract@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.lnk:url_link@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.objet_code:objet_code@,
       @SELECT:DIM_PROP:USER_DEF:IMPLIED:CONTROL:CTRL.objet:objet@
FROM (

WITH param_filter AS (
  SELECT @WHERE:PARAM:USER_DEF:STRING:objet@     AS objet,
         @WHERE:PARAM:USER_DEF:STRING:controle@  AS controle,
         @WHERE:PARAM:USER_DEF:STRING:acteur@    AS acteur,
         @WHERE:PARAM:USER_DEF:STRING:proprio@   AS proprio,
         @WHERE:PARAM:USER_DEF:STRING:criticite@ AS criticite
    FROM DUAL
),
param_url AS (
  SELECT p.x_string || 'niku/nu#action:' AS classic_url,
         p.x_string || 'pm/#/'           AS new_ui_url
    FROM odf_ca_x_parameter   p
   INNER JOIN odf_ca_x_config c ON c.id = p.odf_parent_id
   WHERE c.code = 'CONTROL'
     AND p.code = 'url'
),
param AS (
SELECT classic_url||'projmgr.editResource'||CHR(38)||'id='                                                   AS resource_link,
       classic_url||'nmc.openUser'||CHR(38)||'id='                                                           AS user_link,
	  	         ''||CHR(38)||'resourceId='                                                                  AS user_rsc_link,
       classic_url||'timeadmin.editTimesheet'||CHR(38)||'id'||CHR(38)||'resid='                              AS timesheet_link,
           CHR(38)||'tpid='                                                                                  AS period_id_link,
       new_ui_url||'timesheets/timesheet?resourceId='                                                        AS new_ui_timesheet_link,
           CHR(38)||'timeperiodId='                                                                          AS new_ui_period_id_link,
       classic_url||'pfm.portfolioList'                                                                      AS portfolio_link_wo_id,
       classic_url||'pfm.portfolioDefaultTab'||CHR(38)||'odf_return_to=pfm.portfolioList%26'||CHR(38)||'id=' AS portfolio_link,
       classic_url||'projmgr.projectDefaultTab'||CHR(38)||'id='                                              AS project_link,
       classic_url||'odf.resourceAuditTrailReturn'||CHR(38)||'id='                                           AS audit_link,
       classic_url||'nmc.userGroupsAssociation'||CHR(38)||'id='                                              AS group_link
 FROM param_url
),
mcf_resources AS (
	SELECT rsc.id, rsc.unique_name, rsc.full_name, rsc.last_name, rsc.first_name, rsc.is_active, rsc.date_of_hire, rsc.date_of_termination, rsc.person_type, rsc.is_external,
	       ocr.ma_prj_typ_res, ocr.obj_last_anonymized, ocr.ma_mgt_calend, ocr.type_prestation_aff, ocr.ma_typ_prest,
		   prs.prisopen, prs.prprimaryroleid, prs.prisrole, prs.prcategory, prs.prtypecodeid, prs.prusertext2, prs.prusertext1,
		   rsc.user_id, rsc.manager_id, usr.user_status_id, usr.user_name,
		   pmr.resource_class, pmr.transclass, pmr.active,
		   param.resource_link, param.user_link, param.user_rsc_link, param.timesheet_link, param.period_id_link, param.new_ui_timesheet_link,
           param.new_ui_period_id_link, param.portfolio_link_wo_id, param.portfolio_link, param.project_link, param.audit_link, param.group_link
  FROM srm_resources        rsc
 INNER JOIN odf_ca_resource ocr ON ocr.id   = rsc.id
 INNER JOIN cmn_sec_users   usr ON rsc.user_id   = usr.id
 INNER JOIN prj_resources   prs ON prs.prid = rsc.id
 LEFT JOIN pac_mnt_resources pmr ON pmr.id = rsc.id
 CROSS JOIN param
 WHERE ocr.obj_last_anonymized IS NULL
)
, LIC01_MAX AS (
SELECT rsc.is_active, ocr.ma_prj_typ_res, csu.id, csu.user_name, csu.user_status_id, csu.last_logged_in_date,
       MAX(clu.licence_priority) licence_priority, rsc.created_date
  FROM cmn_lic_users_v      clu
 INNER JOIN cmn_lookups_v   clk ON clk.sort_order = clu.licence_priority
 INNER JOIN cmn_sec_users   csu ON csu.id         = clu.user_id
 INNER JOIN srm_resources   rsc ON rsc.user_id    = csu.id
 INNER JOIN odf_ca_resource ocr ON ocr.id         = rsc.id
 WHERE clk.lookup_type         = 'CMN_LIC_RIGHT_TYPE'
   AND clu.lic_right_type     IN ('full', 'restricted')
   AND rsc.is_active           = 1
 GROUP BY csu.id, csu.user_name, csu.user_status_id, csu.last_logged_in_date,
       ocr.ma_prj_typ_res, rsc.is_active, rsc.created_date
)
, LIC01 AS (
SELECT rsc.is_active, ocr.ma_prj_typ_res, csu.id, csu.user_name, csu.user_status_id, csu.last_logged_in_date,
       clu.lic_right_type, MAX(clu.licence_priority) licence_priority, rsc.created_date
  FROM cmn_lic_users_v      clu
 INNER JOIN cmn_lookups_v   clk ON clk.sort_order = clu.licence_priority
 INNER JOIN cmn_sec_users   csu ON csu.id         = clu.user_id
 INNER JOIN srm_resources   rsc ON rsc.user_id    = csu.id
 INNER JOIN odf_ca_resource ocr ON ocr.id         = rsc.id
 INNER JOIN LIC01_MAX           ON LIC01_MAX.id   = csu.id AND  clu.licence_priority = LIC01_MAX.licence_priority
 WHERE clk.lookup_type         = 'CMN_LIC_RIGHT_TYPE'
   AND clu.lic_right_type     IN ('full', 'restricted')
   AND rsc.is_active           = 1
 GROUP BY csu.id, csu.user_name, csu.user_status_id, csu.last_logged_in_date,
       clu.lic_right_type, ocr.ma_prj_typ_res, rsc.is_active, rsc.created_date
)

SELECT ROWNUM AS id, QRY.numo_ref, QRY.msg_erreur, TO_CHAR(octr.ma_act_macif_m) AS msg_action, TO_CHAR(octr.ma_reg_extract) AS msg_extract, QRY.lnk, octr.ma_objet AS objet_code,
       (SELECT name FROM cmn_lookups_v WHERE lookup_type = 'MA_CTRL_OBJ' AND language_code = 'fr' AND lookup_code = octr.ma_objet) AS objet
	   
  FROM (
  /* Resources - Début */
 --Extraire les ressources "inactives" de type  "Centre de Service" /" Prestataire" / "Salarié" /   ouvertes à la saisie des temps 
SELECT 'RES01-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'"Centre de Service"',2,'"Prestataire"',1,'"Salarié"') || ' est ouverte à la saisie des temps' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rsc.prisopen        = 1
 UNION ALL
 --Extraire les ressources "inactives" de tpe  "Centre de Service" /" Prestataire" / "Salarié" /    ayant un compte clarity " actif" ou "verrouillé"  
SELECT 'RES01-02' numo_ref, user_link || rsc.user_id || user_rsc_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'"Centre de Service"',2,'"Prestataire"',1,'"Salarié"') || ' a un compte clarity ' ||
DECODE(rsc.user_status_id,200,'actif',202,'verrouillé') AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rsc.user_status_id IN (200, 202)
   AND rsc.id              > 10 --Ne pas afficher les utilisateurs techniques (1 à 8 pour l'instant)   
 UNION ALL
 --Extraire les ressources "inactives"  de type  "Centre de Service" /" Prestataire" / "Salarié"  ayant une date de départ, si elle est renseignée, strictement postérieure à la date du jour 
SELECT 'RES01-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'Centre de Service',2,'Prestataire',1,'Salarié') || ' a une date de départ supérieure à la date du jour' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rsc.date_of_termination IS NOT NULL 
   AND rsc.date_of_termination-1 > SYSDATE
   UNION ALL
 --Extraire les ressources "inactives" de type  "Centre de Service" /" Prestataire" / "Salarié"  dont le Prénom  ou "Nom utilisateur" ne sont pas suffixés par "-AASS"  (AA = Année de désactivation et SS=Semaine de désactivation)   
 SELECT 'RES01-04' numo_ref, resource_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'Centre de Service',2,'Prestataire',1,'Salarié') || ' n''est pas suffixée par sa date de départ (format -AASS)' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rsc.obj_last_anonymized IS NULL
   AND NOT(    SUBSTR(rsc.first_name, -5, 1) = '-'
           AND SUBSTR(rsc.first_name, -4, 2) BETWEEN '00' AND '99'
	       AND SUBSTR(rsc.first_name, -2, 2) BETWEEN '01' AND '53'   
           AND SUBSTR(rsc.user_name, -5, 1) = '-'
           AND SUBSTR(rsc.user_name, -4, 2) BETWEEN '00' AND '99'
	       AND SUBSTR(rsc.user_name, -2, 2) BETWEEN '01' AND '53'
           --AND SUBSTR(rsc.unique_name, -5, 1) = '-'
           --AND SUBSTR(rsc.unique_name, -4, 2) BETWEEN '00' AND '99'
	       --AND SUBSTR(rsc.unique_name, -2, 2) BETWEEN '01' AND '53'		   
	   )
 UNION ALL
SELECT 'RES01-05' numo_ref, resource_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'Centre de Service',2,'Prestataire',1,'Salarié') || ' a le droit de gérer son calendrier' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 INNER JOIN CMN_SEC_ASSGND_OBJ_PERM rgt ON rgt.principal_id = rsc.user_id
 INNER JOIN cmn_sec_objects obj ON  obj.id = rgt.object_id
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rgt.RIGHT_ID = 51500
   AND rgt.principal_type = 'USER' 
   AND rgt.permission_id = '5'
   AND obj.object_code = 'ResourceCalendar'
   AND rgt.object_instance_id = rsc.id
 UNION ALL
SELECT 'RES01-05' numo_ref, resource_link || rsc.id AS lnk, 'La ressource inactive ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,4,'Centre de Service',2,'Prestataire',1,'Salarié') || ' a la case à cocher gérer son calendrier' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 0
   AND rsc.ma_prj_typ_res IN (4, 2, 1)
   AND rsc.ma_mgt_calend   = 1
   UNION ALL
SELECT 'RES02-01' numo_ref, resource_link || rsc.id AS lnk, 'Le rôle inactif ' || rsc.unique_name || ' n''est pas suffixé par AASS' AS msg_erreur, 'Action corrective' AS msg_action
  FROM srm_resources        rsc
 INNER JOIN prj_resources   prj ON prj.prid = rsc.id
 INNER JOIN odf_ca_resource ocr ON ocr.id   =rsc.id
 CROSS JOIN param
 WHERE rsc.is_active       = 0
   AND ocr.ma_prj_typ_res IN (5, 7, 6)
   AND prj.prisrole        = 1
   AND NOT(    (SUBSTR(rsc.unique_name, -5, 1) = '-')
           AND (SUBSTR(rsc.unique_name, -4, 2) BETWEEN '00' AND '99')
	       AND (SUBSTR(rsc.unique_name, -2, 2) BETWEEN '01' AND '53')
	   )
 UNION ALL
SELECT 'RES02-01' numo_ref, resource_link || rsc.id AS lnk, 'Le rôle inactif ' || rsc.unique_name || ' n''est pas suffixé par AASS' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 INNER JOIN prj_resources   prj ON prj.prid = rsc.id
 INNER JOIN odf_ca_resource ocr ON ocr.id   =rsc.id
 WHERE rsc.is_active       = 0
   --AND prj.prisrole        = 1
   AND ocr.ma_prj_typ_res IN (5, 7, 6)
   AND NOT(    SUBSTR(rsc.user_name, -5, 1) = '-'
           AND (SUBSTR(rsc.user_name, -4, 2) BETWEEN '00' AND '99')
	       AND (SUBSTR(rsc.user_name, -2, 2) BETWEEN '01' AND '53')
		   AND (SUBSTR(rsc.unique_name, -5, 1) = '-')
           AND (SUBSTR(rsc.unique_name, -4, 2) BETWEEN '00' AND '99')
	       AND (SUBSTR(rsc.unique_name, -2, 2) BETWEEN '01' AND '53')
	   )	   
UNION ALL
SELECT 'RES03-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource active ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,5,'Rôle',7,'Charge en instance',6,'Charge non allouée',8,'Contingence',0,'Pas de type') || ' est ouverte à la saisie des temps' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (5, 7, 6, 8, 0) AND rsc.prisopen = 1
UNION ALL
SELECT 'RES03-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource active ' || rsc.unique_name || ' de type ' ||
       DECODE(rsc.ma_prj_typ_res,1,'Salarié',2,'Prestataire',4,'Centre de service') || ' n''est pas ouverte à la saisie des temps' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (1, 2, 4)       AND rsc.prisopen = 0
 UNION ALL
SELECT 'RES03-02' numo_ref, group_link || rsc.user_id AS lnk, 'La ressource active ' || rsc.unique_name || ' ne possède pas le groupe "Groupe de base pour accès utilisateur" ou l''un des deux groupes suivants: "Utilisateur Clarity" ou "Utilisateur Clarity hors approbation feuille de temps"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources            rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (1, 2, 4)
   AND (rsc.user_id NOT IN (
         SELECT grp.user_id
           FROM cmn_sec_user_groups   grp
          INNER JOIN cmn_sec_groups_v grv ON grv.id = grp.group_id
          WHERE grv.group_code     = 'baseUserGroup'
        )
        OR rsc.user_id NOT IN (
         SELECT grp.user_id
           FROM cmn_sec_user_groups   grp
          INNER JOIN cmn_sec_groups_v grv ON grv.id = grp.group_id
          WHERE grv.group_code     IN ('ma_users_clarity', 	'ma_users_clarity_hors_fdt')
        )
	)
 UNION ALL
SELECT 'RES03-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' ne possède pas les 2 groupes de base' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (2, 4)
   AND rsc.date_of_hire IS NULL
   UNION ALL
SELECT 'RES03-04' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte. Date de départ '||rsc.date_of_termination||DECODE(rsc.date_of_termination,NULL,'nulle')  AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (2, 4)
   AND (rsc.date_of_termination IS NULL OR rsc.date_of_termination < SYSDATE) 
 UNION ALL
 /*--Regle à remettre?
 SELECT 'RES03-05' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' n''a pas le droit de gérer son calendrier' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (1, 2, 4)
   AND rsc.id NOT IN (
			SELECT rsc.id
			  FROM mcf_resources        rsc
			 INNER JOIN CMN_SEC_ASSGND_OBJ_PERM rgt ON rgt.principal_id = rsc.user_id
			 INNER JOIN cmn_sec_objects obj ON  obj.id = rgt.object_id
			 WHERE rsc.is_active       = 1
			   AND rsc.ma_prj_typ_res IN (1, 2, 4)
			   AND rgt.RIGHT_ID = 51500
			   AND rgt.principal_type = 'USER' 
			   AND rgt.permission_id = '5'
			   AND obj.object_code = 'ResourceCalendar'
			   AND rgt.object_instance_id = rsc.id
		)
 UNION ALL*/
SELECT 'RES03-05' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' n''a pas la case "Autoriser à gérer son calendrier" cochée' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (1, 2, 4)
   AND rsc.ma_mgt_calend   != 1
 UNION ALL
SELECT 'RES03-06' numo_ref, rsc.resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 INNER JOIN mcf_resources   pil ON pil.user_id = rsc.manager_id
 WHERE rsc.is_active       = 1
   AND pil.is_active       = 0
 UNION ALL
SELECT 'RES03-07' numo_ref, rsc.resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 INNER JOIN mcf_resources   rol ON rol.id   = rsc.prprimaryroleid
 WHERE rsc.is_active       = 1
   AND rsc.prisrole        = 0
   AND rol.is_active       = 0
 UNION ALL
SELECT 'RES03-08' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND (rsc.ma_prj_typ_res IN (1, 2) OR (rsc.ma_prj_typ_res = 4 /*AND UPPER(rsc.prcategory) LIKE 'MOA%'*/))
   AND rsc.date_of_hire IS NULL
   AND rsc.user_status_id NOT IN (200, 202)
 UNION ALL
SELECT 'RES03-09' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.last_name || ', ' || rsc.first_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources      rsc
 WHERE rsc.prisrole = 0
   AND UPPER(rsc.last_name) || UPPER(rsc.first_name) IN (
    SELECT UPPER(last_name) || UPPER(first_name)
      FROM mcf_resources 
     GROUP BY UPPER(last_name) || UPPER(first_name)
    HAVING COUNT(*) > 1
)
 UNION ALL
SELECT 'RES04-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est activée financièrement' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE NOT(rsc.ma_prj_typ_res IN (1, 4) OR (rsc.ma_prj_typ_res = 2 AND rsc.type_prestation_aff = '2a'))
   AND rsc.active = 1
 UNION ALL
SELECT 'RES04-02' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' n''est pas activée financièrement ou l''est avec un code de valorisation nul' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
    --    ressource salariée ou CDS ou prestataire mutualisée 
    -- ET pas activée financièrement ou activée financièrement avec code d'imputation nul
    -- ET ressource active
 WHERE (rsc.ma_prj_typ_res IN (1, 4) OR (rsc.ma_prj_typ_res = 2 AND rsc.type_prestation_aff = '2a'))
   AND (rsc.active = 0 OR rsc.active IS NULL OR (rsc.active = 1 AND rsc.prtypecodeid IS NULL))
   AND rsc.is_active = 1
 UNION ALL
SELECT 'RES04-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' ne respecte pas les règles de cohérence de la gestion financière' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE (rsc.ma_prj_typ_res IN (1, 4) OR (rsc.ma_prj_typ_res = 2 AND rsc.type_prestation_aff = '2a'))
   AND rsc.active = 1 AND rsc.is_active = 1
   AND (   (rsc.prcategory    = 'DDSIG'                            AND (rsc.resource_class != 'DIT'   OR rsc.transclass != '07_DDSIG'))
        OR (rsc.prcategory LIKE 'MOA%'  AND rsc.ma_prj_typ_res = 1 AND (rsc.resource_class != 'MOA'   OR rsc.transclass != '01_Inter'))
        OR (rsc.prcategory LIKE 'MOA%'  AND rsc.ma_prj_typ_res = 4 AND (rsc.resource_class != 'MOA'   OR rsc.transclass != '02_Prest'))
        OR (rsc.prcategory    = 'GERAP' AND rsc.ma_prj_typ_res = 1 AND (rsc.resource_class != 'GERAP' OR rsc.transclass != '10_Part' ))
       )
 UNION ALL
SELECT 'RES05-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' a un code catégorie différent de "MOE*", "MOA*"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   --AND (rsc.prcategory IS NULL OR rsc.prcategory NOT IN ('DDSIG','MOA','MOA-MUT','MOA-MMU','MOA-PIF','MOA-PNO','MOA-PNE','MOA-PSE','MOA-PSO','GERAP','SBA_SOCRAM_MOA','SBE_SOCRAM_MOE'))
   AND (rsc.prcategory IS NULL OR SUBSTR(rsc.prcategory,0,3) NOT IN ('MOE', 'MOA'))
 UNION ALL
 SELECT 'RES06-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND (    (rsc.prcategory != 'MOE-SAM' AND (rsc.prusertext2     LIKE 'D7%' OR  rsc.prusertext2  = 'D600')) 
         OR (rsc.prcategory  = 'MOE-SAM' AND (rsc.prusertext2 NOT LIKE 'D7%' AND rsc.prusertext2 != 'D600'))
         OR (rsc.prcategory  = 'MOE-SAM' AND  rsc.prusertext2  IS NULL)
   )
 UNION ALL
SELECT 'RES06-02' numo_ref, rsc.resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
  LEFT JOIN srm_resources   rol ON rol.id      = rsc.prprimaryroleid
  LEFT JOIN srm_resources   pil ON pil.user_id = rsc.manager_id
 WHERE rsc.is_active    = 1
   AND rsc.prcategory   = 'MOE-SAM'
   AND (rsc.prusertext2 = 'D600' OR rsc.prusertext2 LIKE 'D7%')
   AND (pil.is_active   = 0 OR pil.id IS NULL OR rol.is_active = 0 OR rol.id IS NULL)
 UNION ALL
SELECT 'RES06-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM prj_obs_units pou
 INNER JOIN prj_obs_types pot ON pot.id = pou.type_id AND pot.unique_name = 'ma_groupe_macif'
 INNER JOIN prj_obs_associations poa ON poa.unit_id = pou.id AND poa.table_name  = 'SRM_RESOURCES'
 INNER JOIN mcf_resources rsc ON rsc.id = poa.record_id
 INNER JOIN nbi_dim_obs ndo ON ndo.obs_unit_id = pou.id
 WHERE UPPER(ndo.path) NOT LIKE '%DDSIG%'
   AND (rsc.prcategory = 'MOE-SAM' OR (rsc.prusertext2 LIKE 'D7%' OR rsc.prusertext2 = 'D600'))
   AND rsc.is_active   = 1
 UNION ALL
SELECT 'RES07-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (1, 5) 
   AND (rsc.person_type NOT IN (300, 5000160) OR rsc.is_external = 1)
 UNION ALL
SELECT 'RES07-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (5, 7, 6, 8, 0)
   AND (rsc.person_type != 0 OR rsc.person_type IS NOT NULL OR rsc.is_external = 1)
 UNION ALL
SELECT 'RES07-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active       = 1
   AND rsc.ma_prj_typ_res IN (2, 4)
   AND (rsc.person_type NOT IN 301 OR rsc.is_external = 0) 
 UNION ALL
SELECT 'RES07-02' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.ma_prj_typ_res NOT IN (2, 7, 6)
   AND rsc.ma_typ_prest       != 'non_app'
   AND rsc.is_active           = 1
 UNION ALL
SELECT 'RES07-02' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.ma_prj_typ_res IN (2, 7, 6)
   AND rsc.ma_typ_prest    = 'non_app'
   AND rsc.is_active       = 1
 UNION ALL
/*SELECT 'RES07-02' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.ma_prj_typ_res = 2
   AND (rsc.prcategory    = 'MOE-MUT' OR rsc.prcategory LIKE 'MOA%')
   AND rsc.ma_typ_prest   = '2a'
   AND rsc.is_active      = 1
 UNION ALL*/
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Rôle" et catégorie "MOE-SAM" dont l''ID ne débute pas par "COMP_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 5
   AND rsc.prcategory            = 'MOE-SAM'
   AND rsc.unique_name    NOT LIKE 'COMP_%'
 UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Rôle" et catégorie "MOA" ou "MOE-M" dont l''ID ne débute pas par "ROLE_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 5
   AND (rsc.prcategory        LIKE 'MOA%'    OR rsc.prcategory LIKE 'MOE-M%')
   AND rsc.unique_name    NOT LIKE 'ROLE_%'
 UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Centre de services" dont l''ID ne débute pas par "E_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 4
   AND rsc.unique_name    NOT LIKE 'E_%'
/* UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Prestataire régie" dont l''ID ne débute pas par "H" ou "ATGR" ou par "G" si catégorie =MOA-MMU' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 2
   AND rsc.prcategory = 'MOA-MMU'
   AND NOT(rsc.unique_name LIKE 'H%' OR rsc.unique_name LIKE 'ATGR%' OR rsc.unique_name LIKE 'G%') */
 UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Charges en instance" dont l''ID ne débute pas par "ICOMP_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 7
   AND rsc.unique_name    NOT LIKE 'ICOMP_%'
 UNION ALL
-- Charges en instance ou charges non allouée
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Charges en instance" dont l''ID ne débute pas par "NCOMP_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 7
   AND rsc.unique_name    NOT LIKE 'NCOMP_%'
 UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Charges non allouée" dont l''ID ne débute pas par "QCOMP_"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 6
   AND rsc.unique_name    NOT LIKE 'QCOMP_%'
 UNION ALL
SELECT 'RES07-03' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || ' est une ressource active de type "Salarié"
- catégorie "MOE-SAM" dont le matricule ne débute pas par "S" ou 
- catégorie "MOA-MSP" ou "MOE-MSP" dont le matricule ne débute pas par "U" ou 
- catégorie "MOE-MFE" dont le matricule ne débute pas par "C" ou
- catégorie "MOA-MFE" dont le matricule ne débute pas par "C"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 1
   AND (   (rsc.prcategory  = 'MOE-SAM'            AND rsc.unique_name NOT LIKE 'S%')
        OR (rsc.prcategory IN ('MOA-MSP','MOE-MSP') AND rsc.unique_name NOT LIKE 'U%')
        OR (rsc.prcategory  = 'MOE-MFE'             AND rsc.unique_name NOT LIKE 'C%')
        OR (rsc.prcategory  = 'MOA-MFE'             AND rsc.unique_name NOT LIKE 'C%')
   )
 UNION ALL
SELECT 'RES08-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active   = 1
   AND rsc.person_type = 301
   AND rsc.prusertext1 IS NULL
 UNION ALL
SELECT 'RES08-02' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 2
   AND rsc.unique_name    NOT LIKE 'ATGR%'
   AND rsc.last_name      NOT LIKE '%.ext'
  UNION ALL
SELECT 'RES09-01' numo_ref, resource_link || rsc.id AS lnk, 'La ressource ' || rsc.unique_name || '  est paramétrée de façon incorrecte' AS msg_erreur, 'Action corrective' AS msg_action
  FROM mcf_resources        rsc
 WHERE rsc.is_active             = 1
   AND rsc.ma_prj_typ_res        = 5
   AND (rsc.prprimaryroleid IS NULL OR rsc.prprimaryroleid NOT IN (SELECT id FROM mcf_resources WHERE is_active = 1))
 UNION ALL
SELECT 'FEU01-01' numo_ref, new_ui_timesheet_link || rsc.id || new_ui_period_id_link || ptp.prid AS lnk, 'La feuille de temps de la ressource ' || rsc.unique_name || ' est au statut soumise sur la période ouverte "' || TO_CHAR(ptp.prstart,'YYYY-MM-DD') || '"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM prtimesheet        pts
 INNER JOIN prtimeperiod  ptp ON ptp.prid = pts.prtimeperiodid
 INNER JOIN mcf_resources rsc ON rsc.id   = pts.prresourceid
 WHERE pts.prstatus = 1
   AND ptp.prisopen = 1
 UNION ALL
SELECT 'FEU01-02' numo_ref, new_ui_timesheet_link || rsc.id || new_ui_period_id_link || ptp.prid AS lnk, 'La feuille de temps de la ressource ' || rsc.unique_name || ' est au statut renvoyée avec une charge sur la période ouverte "' || TO_CHAR(ptp.prstart,'YYYY-MM-DD') || '"' AS msg_erreur, 'Action corrective' AS msg_action
  FROM prtimesheet        pts
 INNER JOIN prtimeperiod  ptp ON ptp.prid          = pts.prtimeperiodid
 INNER JOIN mcf_resources rsc ON rsc.id            = pts.prresourceid
 INNER JOIN prtimeentry   pte ON pte.prtimesheetid = pts.prid
 WHERE pts.prstatus = 2
   AND ptp.prisopen = 1
 GROUP BY new_ui_timesheet_link, rsc.id, new_ui_period_id_link, ptp.prid, rsc.unique_name, TO_CHAR(ptp.prstart, 'YYYY-MM-DD')
HAVING SUM(pte.practsum) > 0

 UNION ALL
SELECT numo_ref, (SELECT user_link FROM param) || id AS lnk, erreur AS msg_erreur, '' AS msg_action
 FROM (
  SELECT 'Utilisateur '|| user_name ||' dans le cas 1, date de dernière connexion '||last_logged_in_date||DECODE(last_logged_in_date,NULL,'nulle') AS erreur, 'LIC01-01' numo_ref, id, user_name, user_status_id, last_logged_in_date,
       lic_right_type, MAX(licence_priority) licence_priority
  FROM LIC01
 WHERE ma_prj_typ_res     IN (2, 1)
   AND lic_right_type      IN ('full', 'restricted')
   AND (last_logged_in_date IS NOT NULL AND last_logged_in_date < SYSDATE - 365) 
   AND user_status_id  = 202
   AND id NOT IN ( 
		SELECT csu.id
		  FROM cmn_sec_users        csu
     INNER JOIN srm_resources   rsc ON rsc.user_id      = csu.id
		 INNER JOIN prassignment    asg ON asg.prresourceid = rsc.id
		 INNER JOIN prtask          tsk ON tsk.prid         = asg.prtaskid
		 INNER JOIN inv_investments inv ON inv.id           = tsk.prprojectid
		 WHERE inv.is_active = 1
    )
   AND id IN ( 
      SELECT csu.id
        FROM cmn_sec_users              csu
       INNER JOIN srm_resources         rsc ON rsc.user_id       = csu.id
       INNER JOIN prassignment          asg ON asg.prresourceid  = rsc.id
       INNER JOIN prtask                tsk ON tsk.prid          = asg.prtaskid
	     INNER JOIN inv_investments       inv ON inv.id            = tsk.prprojectid
       INNER JOIN prj_blb_slices        slc ON slc.prj_object_id = asg.prid
       INNER JOIN prj_blb_slicerequests slr ON slr.id            = slc.slice_request_id AND slr.request_name = 'DAILYRESOURCEACTCURVE'
		-- WHERE inv.is_active = 1
       GROUP BY csu.id
		  HAVING MAX(slc.slice_date) <= SYSDATE - 183  
   ) 
   
 GROUP BY id, user_name, user_status_id, last_logged_in_date,
       lic_right_type
 /*UNION ALL
SELECT 'Utilisateur '|| user_name ||' dans le cas 2 avec dernière date de connexion '||last_logged_in_date||DECODE(last_logged_in_date,NULL,'nulle') AS erreur, 'LIC01-01' numo_ref, id, user_name, user_status_id, last_logged_in_date,
       lic_right_type, MAX(licence_priority) licence_priority
  FROM LIC01
 WHERE ma_prj_typ_res     IN (2, 1)
   AND lic_right_type      = 'restricted'
   AND last_logged_in_date < SYSDATE - 365
 GROUP BY id, user_name, user_status_id, last_logged_in_date,
       lic_right_type
 UNION ALL
SELECT 'Utilisateur '|| user_name ||' dans le cas 3 ne s''est jamais connecté (date de création : '||created_date||')' AS erreur, 'LIC01-01' numo_ref, id, user_name, user_status_id, last_logged_in_date,
       lic_right_type, MAX(licence_priority) licence_priority
  FROM LIC01
 WHERE lic_right_type      = 'restricted'
   AND last_logged_in_date IS NULL
   AND created_date         < ADD_MONTHS(SYSDATE, -6)
 GROUP BY id, user_name, user_status_id, last_logged_in_date,
       lic_right_type, created_date*/
UNION ALL
 SELECT 'Utilisateur '|| user_name ||' dans le cas 2, aucune connexion depuis sa création le '||created_date AS erreur, 'LIC01-01' numo_ref, id, user_name, user_status_id, last_logged_in_date,
       lic_right_type, MAX(licence_priority) licence_priority
  FROM LIC01
 WHERE ma_prj_typ_res     IN (2, 1)
   AND lic_right_type      IN ('full', 'restricted')
   AND last_logged_in_date IS NULL
   AND created_date < SYSDATE - 183
   --AND user_status_id  = 202
   AND id NOT IN ( 
		SELECT csu.id
		  FROM cmn_sec_users        csu
     INNER JOIN srm_resources   rsc ON rsc.user_id      = csu.id
		 INNER JOIN prassignment    asg ON asg.prresourceid = rsc.id
		 INNER JOIN prtask          tsk ON tsk.prid         = asg.prtaskid
		 INNER JOIN inv_investments inv ON inv.id           = tsk.prprojectid
		 WHERE inv.is_active = 1
    )
   AND id IN ( 
      SELECT csu.id
        FROM cmn_sec_users              csu
       INNER JOIN srm_resources         rsc ON rsc.user_id       = csu.id
       INNER JOIN prassignment          asg ON asg.prresourceid  = rsc.id
       INNER JOIN prtask                tsk ON tsk.prid          = asg.prtaskid
	     INNER JOIN inv_investments       inv ON inv.id            = tsk.prprojectid
       INNER JOIN prj_blb_slices        slc ON slc.prj_object_id = asg.prid
       INNER JOIN prj_blb_slicerequests slr ON slr.id            = slc.slice_request_id AND slr.request_name = 'DAILYRESOURCEACTCURVE'
	   WHERE inv.is_active = 1
       GROUP BY csu.id
		  HAVING MAX(slc.slice_date) <= SYSDATE - 183  
   ) 
   
 GROUP BY id, user_name, user_status_id, last_logged_in_date, created_date,
       lic_right_type
 
)     
 /* Resources - Fin */

) QRY
INNER JOIN odf_ca_ma_reg_gest octr ON octr.code        = QRY.numo_ref
CROSS JOIN param_filter       filt
WHERE (filt.objet     IS NULL OR octr.ma_objet     = filt.objet)
  AND (filt.controle  IS NULL OR octr.ma_controle  = filt.controle)
  AND (filt.acteur    IS NULL OR octr.ma_acteur    = filt.acteur)
  AND (filt.proprio   IS NULL OR octr.ma_proprio   = filt.proprio)
  AND (filt.criticite IS NULL OR octr.ma_criticite = filt.criticite)
  AND octr.ma_stat    =  1
) CTRL
WHERE @FILTER@]]></nsql>
            <attribute id="id" required="false"/>
            <attribute id="numo_ref" required="false"/>
            <attribute id="msg_erreur" required="false"/>
            <attribute id="msg_action" required="false"/>
            <attribute id="msg_extract" required="false"/>
            <attribute id="url_link" required="false"/>
            <attribute id="objet_code" required="false"/>
            <attribute id="objet" required="false"/>
            <attribute id="param_acteur" lookup="MA_CTRL_ACT" required="false">
              <nls languageCode="ca" name="param_acteur"/>
              <nls languageCode="cs" name="param_acteur"/>
              <nls languageCode="da" name="param_acteur"/>
              <nls languageCode="de" name="param_acteur"/>
              <nls languageCode="en" name="param_acteur"/>
              <nls languageCode="es" name="param_acteur"/>
              <nls languageCode="fi" name="param_acteur"/>
              <nls languageCode="fr" name="param_acteur"/>
              <nls languageCode="hu" name="param_acteur"/>
              <nls languageCode="it" name="param_acteur"/>
              <nls languageCode="ja" name="param_acteur"/>
              <nls languageCode="ko" name="param_acteur"/>
              <nls languageCode="nl" name="param_acteur"/>
              <nls languageCode="no" name="param_acteur"/>
              <nls languageCode="pl" name="param_acteur"/>
              <nls languageCode="pt" name="param_acteur"/>
              <nls languageCode="ru" name="param_acteur"/>
              <nls languageCode="sv" name="param_acteur"/>
              <nls languageCode="tr" name="param_acteur"/>
              <nls languageCode="zh" name="param_acteur"/>
              <nls languageCode="zh_TW" name="param_acteur"/>
            </attribute>
            <attribute id="param_criticite" lookup="MA_CTRL_CRIT" required="false">
              <nls languageCode="ca" name="param_criticite"/>
              <nls languageCode="cs" name="param_criticite"/>
              <nls languageCode="da" name="param_criticite"/>
              <nls languageCode="de" name="param_criticite"/>
              <nls languageCode="en" name="param_criticite"/>
              <nls languageCode="es" name="param_criticite"/>
              <nls languageCode="fi" name="param_criticite"/>
              <nls languageCode="fr" name="param_criticite"/>
              <nls languageCode="hu" name="param_criticite"/>
              <nls languageCode="it" name="param_criticite"/>
              <nls languageCode="ja" name="param_criticite"/>
              <nls languageCode="ko" name="param_criticite"/>
              <nls languageCode="nl" name="param_criticite"/>
              <nls languageCode="no" name="param_criticite"/>
              <nls languageCode="pl" name="param_criticite"/>
              <nls languageCode="pt" name="param_criticite"/>
              <nls languageCode="ru" name="param_criticite"/>
              <nls languageCode="sv" name="param_criticite"/>
              <nls languageCode="tr" name="param_criticite"/>
              <nls languageCode="zh" name="param_criticite"/>
              <nls languageCode="zh_TW" name="param_criticite"/>
            </attribute>
            <attribute id="param_proprio" lookup="MA_CTRL_REGLE" required="false">
              <nls languageCode="ca" name="param_proprio"/>
              <nls languageCode="cs" name="param_proprio"/>
              <nls languageCode="da" name="param_proprio"/>
              <nls languageCode="de" name="param_proprio"/>
              <nls languageCode="en" name="param_proprio"/>
              <nls languageCode="es" name="param_proprio"/>
              <nls languageCode="fi" name="param_proprio"/>
              <nls languageCode="fr" name="param_proprio"/>
              <nls languageCode="hu" name="param_proprio"/>
              <nls languageCode="it" name="param_proprio"/>
              <nls languageCode="ja" name="param_proprio"/>
              <nls languageCode="ko" name="param_proprio"/>
              <nls languageCode="nl" name="param_proprio"/>
              <nls languageCode="no" name="param_proprio"/>
              <nls languageCode="pl" name="param_proprio"/>
              <nls languageCode="pt" name="param_proprio"/>
              <nls languageCode="ru" name="param_proprio"/>
              <nls languageCode="sv" name="param_proprio"/>
              <nls languageCode="tr" name="param_proprio"/>
              <nls languageCode="zh" name="param_proprio"/>
              <nls languageCode="zh_TW" name="param_proprio"/>
            </attribute>
            <attribute id="param_controle" lookup="MA_CTRL_CTRL" required="false">
              <nls languageCode="ca" name="param_controle"/>
              <nls languageCode="cs" name="param_controle"/>
              <nls languageCode="da" name="param_controle"/>
              <nls languageCode="de" name="param_controle"/>
              <nls languageCode="en" name="param_controle"/>
              <nls languageCode="es" name="param_controle"/>
              <nls languageCode="fi" name="param_controle"/>
              <nls languageCode="fr" name="param_controle"/>
              <nls languageCode="hu" name="param_controle"/>
              <nls languageCode="it" name="param_controle"/>
              <nls languageCode="ja" name="param_controle"/>
              <nls languageCode="ko" name="param_controle"/>
              <nls languageCode="nl" name="param_controle"/>
              <nls languageCode="no" name="param_controle"/>
              <nls languageCode="pl" name="param_controle"/>
              <nls languageCode="pt" name="param_controle"/>
              <nls languageCode="ru" name="param_controle"/>
              <nls languageCode="sv" name="param_controle"/>
              <nls languageCode="tr" name="param_controle"/>
              <nls languageCode="zh" name="param_controle"/>
              <nls languageCode="zh_TW" name="param_controle"/>
            </attribute>
            <attribute id="param_objet" lookup="MA_CTRL_OBJ" required="false">
              <nls languageCode="ca" name="param_objet"/>
              <nls languageCode="cs" name="param_objet"/>
              <nls languageCode="da" name="param_objet"/>
              <nls languageCode="de" name="param_objet"/>
              <nls languageCode="en" name="param_objet"/>
              <nls languageCode="es" name="param_objet"/>
              <nls languageCode="fi" name="param_objet"/>
              <nls languageCode="fr" name="param_objet"/>
              <nls languageCode="hu" name="param_objet"/>
              <nls languageCode="it" name="param_objet"/>
              <nls languageCode="ja" name="param_objet"/>
              <nls languageCode="ko" name="param_objet"/>
              <nls languageCode="nl" name="param_objet"/>
              <nls languageCode="no" name="param_objet"/>
              <nls languageCode="pl" name="param_objet"/>
              <nls languageCode="pt" name="param_objet"/>
              <nls languageCode="ru" name="param_objet"/>
              <nls languageCode="sv" name="param_objet"/>
              <nls languageCode="tr" name="param_objet"/>
              <nls languageCode="zh" name="param_objet"/>
              <nls languageCode="zh_TW" name="param_objet"/>
            </attribute>
          </query>
        </queries>
      </contentPack>
    </NikuDataBus>
  