Projet

Général

Profil

Evolution #209

Mis à jour par Sébastien BON il y a environ un mois

24/sept./25 12:42 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;!image-20250924-101940.png|thumbnail! 

 

 -------------------- 

 

 07/oct./25 2:02 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 Nous n’avons pas évoqué cette demande lors de notre point :    avez-vous pu avancer sur l’analyse ?    

    

 A l’instant, je viens de tester en Prod et donc plantage à nouveau puis OK à 14h00 (je suis sur site)  

  

 La table contient    21 millions d’enregistrements à ce jour  

  

 !image-20251007-120121.png|width=417,height=754,alt="image-20251007-120121.png"! 

 

 Je surveille l'évolution pour voir s’il y a ou non une purge à un moment donné  

  

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 07/oct./25 4:59 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Bonjour Isabelle, 

 

 nous venons de déployer la modification dans l’environnement de recette avant déploiement sur la prod. 

 

 Désolé le développeur avait bien fait son travail mais de mon côté je n’avais pas déployé sur vos environnements. 

 

 Te serait-il possible de tester le process d’import des absences de bout en bout et ainsi vérifier si l’étape finale de la purge s’est bien passée. 

 

 En recette il y a le même problème que sur la prod. En revanche j’espère que tu n’auras pas de timeout… car sinon tu ne peux avoir accès à l’interface d’import des absences… 

 

 Merci à toi. 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 07/oct./25 5:13 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Modification apportée par David Marchal => 

 

 suppression de la clause {color:#ff5630}where f.xtd_status = ‘DONE’ {color}dans les requêtes => 



 



 [^Interface Calendriers Ressources - Etape de Purge.xml] 



 



 [^Interface Calendriers Ressources - Etape de Purge.txt] 

 

 <g:script xmlns:g="jelly:com.niku.union.gel.GELTagLibrary" xmlns:j="jelly:core" xmlns:s="jelly:sql" xmlns:u="jelly:util" xmlns:xsi="[http://www.w3.org/2001/XMLSchema-instance|http://www.w3.org/2001/XMLSchema-instance]"> 
   
   <!-- 
   
   OBJECTIVE 
     
     - Ressource Leave File : Purge Old CSV files 
   
   HISTORY 
     
     - 2025-09-24 : CoPrime (DMA) - Status 
     
     - 2023-01-24 : CoPrime (DMA) - File Name 
     
     - 2022-12-07 : CoPrime (DMA) - Standalone, Macif 
     
     - 2022-12-05 : CoPrime (DMA) - Resource Leave, Util Text 
     
     - 2021-01-25 : CoPrime (DMA) - SaaS, Data Format 
     
     - 2016-09-12 : CoPrime (DMA) - Init 
   
   BUSINESS RULES 
     
     - Folder Path where to find CSV files is stored in configuration (xtd_configuration) / parameter (xtd_parameter) objects : 
     
     - See Configuration xtd_res_leave_file 
     
     - An error occurs if parameters are null 
     
     - Use of class java.io.File to parse folder and files 
     
     - Do not use file:readFile : problem to reset variable, instead use class java.io.BufferedReader 
     
     - If CSV file lastModified() date is older than the 'purge_days' parameter, then delete it 
     
     - Be aware, java.util.Date.lastModified() returns date in milliseconds 
     
     - Use jelly:util:loadText instead of BufferedReader 
   
   MAPPING RULES 
     
     - Data is stored in object xtd_res_leave_ent (Master object : xtd_res_leave_file) 
   
   STAND BY 
     
     - Download commons-jelly-tags-ant-1.1.jar (Use of Ant) 
     
     - [http://commons.apache.org/proper/commons-jelly/libs/ant/downloads.html|http://commons.apache.org/proper/commons-jelly/libs/ant/downloads.html|smart-link]  
    
   TESTED ON 
     
     - Oracle 11.x, 12.x 
     
     - Clarity 16.x 
     
     - RHEL 6.x, 7.x 
   
   --> 
   
   <!--******************* 
   
   0. Init 
     
     0.1. Set DB Source 
     
     0.2. Get Parameters 
     
     0.3. Get Current Date 
   
   *_-->_* 
   
   *_<!-- 0.1. Set DB Source -->_* 
   
   *_<g:log level="INFO"><![CDATA[0.1. Set DB Source]]></g:log>_* 
   
   *_<g:setDataSource dbId="Niku"/>_* 
   
   *_<!-- 0.2. Get Parameters -->_* 
   
   *_<g:log level="INFO"><![CDATA[0.2. Get Parameters]]></g:log>_* 
   
   *_<s:query var="q_param"><![CDATA[_* 
 
 *_with v_parameter as_* 
  
  *_(select p.code,_* 
          
          *_p.x_string_* 
     
     *_from odf_ca_x_parameter p_* 
    
    *_inner join odf_ca_x_config c on_* [*_c.id_*|http://c.id] *_= p.odf_parent_id_* 
    
    *_where c.code = 'xtd_res_leave_file')_* 
 
 *_select (select x_string from v_parameter where code = 'path') as path,_* 
        
        *_(select x_string from v_parameter where code = 'name') as name,_* 
        
        *_(select to_number(x_string) from v_parameter where code = 'purge_days') as purge_days_* 
   
   *_from dual]]></s:query>_* 
   
   *_<j:set value="${q_param.rows.0}" var="v_param"/>_* 
   
   *_<!-- Test Parameters Validity -->_* 
   
   *_<j:choose>_* 
     
     *_<j:when test="${v_param.path == null or v_param.path.length() == 0}">_* 
       
       *_<g:log level="WARN"><![CDATA[Parameter xtd_res_leave_file.path is null, see Configuration !]]></g:log>_* 
     
     *_</j:when>_* 
     
     *_<j:when test="${v_param.name == null or v_param.name.length() == 0}">_* 
       
       *_<g:log level="WARN"><![CDATA[Parameter xtd_res_leave_file.name is null, see Configuration !]]></g:log>_* 
     
     *_</j:when>_* 
     
     *_<j:when test="${v_param.purge_days == null}">_* 
       
       *_<g:log level="WARN"><![CDATA[Parameter xtd_res_leave_file.purge_days is null, see Configuration !]]></g:log>_* 
     
     *_</j:when>_* 
     
     *_<j:otherwise>_* 
       
       *_<g:log level="INFO"><![CDATA[Input Path for Resource Leave Files : ${v_param.path}_* 
 
 *_Input Name for Resource Leave Files : ${v_param.name}_* 
 
 *_Purge CSV files in Days (Older Than) : ${v_param.purge_days}]]></g:log>_* 
       
       *_<!-- 0.3. Get Current Date -->_* 
       
       *_<g:log level="INFO"><![CDATA[0.3. Get Current Date]]></g:log>_* 
       
       *_<g:formatDate format="yyyyMMdd'T'HHmmss" stringVar="v_now"/>_* 
       
       *_<j:new className="java.util.Date" var="v_now_util"/>_* 
       
       *_<j:invoke method="getTime" on="${v_now_util}" var="v_now_milliseconds"/>_* 
       
       *_<g:log level="INFO"><![CDATA[yyyyMMddTHHmmss : ${v_now}_* 
 
 *_Milliseconds : ${v_now_milliseconds}]]></g:log>_* 
       
       *_<!--_**************** 
       
       1. Main 
         
         1.1. Init Class Constructor java.io.File 
         
         1.2. Parse CSV Files in Folder 
         
         1.3. Delete Elements in Database 
       
       ******************************************--> 
       
       <!-- 1.1. Init Class Constructor java.io.File(String pathname) --> 
       
       <g:log level="INFO"><![CDATA[1.1. Init Class Constructor java.io.File(String pathname)]]></g:log> 
       
       <j:new className="java.io.File" var="v_folder"> 
         
         <j:arg type="java.lang.String" value="${v_param.path}"/> 
       
       </j:new> 
       
       <g:log level="INFO"><![CDATA[Folder : ${v_folder.toString()}]]></g:log> 
       
       <!-- Test Directory Validity --> 
       
       <g:log level="INFO"><![CDATA[Test Directory Validity]]></g:log> 
       
       <j:choose> 
         
         <j:when test="${!v_folder.exists()}"> 
           
           <g:log level="ERROR"><![CDATA[Path ${v_param.path} does not Exist !]]></g:log> 
         
         </j:when> 
         
         <j:when test="${!v_folder.isDirectory()}"> 
           
           <g:log level="ERROR"><![CDATA[Path ${v_param.path} is not a Directory !]]></g:log> 
         
         </j:when> 
         
         <j:when test="${!v_folder.canRead()}"> 
           
           <g:log level="ERROR"><![CDATA[Directory ${v_param.path} is not Readable (See OS Administrator) !]]></g:log> 
         
         </j:when> 
         
         <j:when test="${!v_folder.canWrite()}"> 
           
           <g:log level="ERROR"><![CDATA[Directory ${v_param.path} is not Writable (See OS Administrator) !]]></g:log> 
         
         </j:when> 
         
         <j:otherwise> 
           
           <!-- 1.2. Parse CSV Resource Leave Files in Folder --> 
           
           <g:log level="INFO"><![CDATA[1.2. Parse CSV Resource Leave Files in Folder]]></g:log> 
           
           <j:forEach items="${v_folder.listFiles()}" var="v_file"> 
             
             <j:set value="${v_file.toString()}" var="v_file_str"/> 
             
             <j:set value="${v_file_str.substring(v_file_str.lastIndexOf('.'))}" var="v_extension"/> 
             
             <j:set value="${v_file_str.substring(1, v_param.name.length())}" var="v_start"/> 
             
             <j:set value="${(v_now_milliseconds - v_file.lastModified()) / (1000 * 60 * 60 * 24)}" var="v_lastModified_days"/> 
             
             <j:if test="${v_start.equals(v_param.name) and v_extension.equals('.done') and (v_lastModified_days - v_param.purge_days) > 0}"> 
               
               <g:log level="INFO"><![CDATA[Delete File : 
 
 File : ${v_file_str} 
 
 lastModified in Days : ${v_lastModified_days} 
 
 Purge in Days : ${v_param.purge_days} 
 
 Difference is positive : ${v_lastModified_days - v_param.purge_days}]]></g:log> 
               
               <j:invoke method="delete" on="${v_file}"/> 
             
             </j:if> 
           
           </j:forEach> 
         
         </j:otherwise> 
       
       </j:choose> 
       
       <!-- 1.3. Delete Elements in Database --> 
       
       <g:log level="INFO"><![CDATA[1.3. Delete Elements in Database]]></g:log> 
       
       <s:update escapeText="false"><![CDATA[declare 
   
   --Specific exception 
   
   v_exception exception; 
   
   pragma exception_init(v_exception, -20000); 
   
   v_cr           varchar2(1) := chr(10); 
   
   v_purge_days integer; 
   
   v_msg          varchar2(2000); 
   
   --Format message debug / error 
   
   procedure m(p_in in varchar2) is 
   
   begin 
     
     if v_msg is null then 
       
       v_msg := p_in; 
     
     else 
       
       v_msg := v_msg || v_cr || p_in; 
     
     end if; 
   
   end m; 
   
   --Raises ORA-20000 error with Specific Message 
   
   procedure err(p_msg in varchar2) is 
   
   begin 
     
     raise_application_error(-20000, p_msg); 
   
   end err; 
   
   --Flush File 
   
   procedure file_del(p_id in odf_ca_xtd_res_leave_file.id%type) is 
   
   begin 
     
     --Processes 
     
     --process_del(p_object_type => p_object_type, p_odf_parent_id => p_odf_parent_id); 
     
     --Rights 
     
     delete from cmn_sec_assgnd_obj_perm 
      
      where right_id in (select id from cmn_sec_groups where right_type = 'xtd_res_leave_file') 
        
        and object_instance_id = p_id; 
     
     --User, Group (odf.deleteObjectInstanceRights) 
     
     delete from cmn_sec_assgnd_right 
      
      where right_id in (select id from cmn_sec_groups where right_type = 'xtd_res_leave_file') 
        
        and instance_id = p_id; 
     
     --OBS 
     
     delete from prj_obs_associations 
      
      where nls_upper(table_name) = nls_upper('xtd_res_leave_file') 
        
        and record_id = p_id; 
     
     --Page 
     
     delete from cmn_instance_pages 
      
      where object_type = 'xtd_res_leave_file' 
        
        and object_instance_id = p_id; 
     
     delete from cmn_pages 
      
      where page_type_code = 'tabPage' 
        
        and principal_type = 'xtd_res_leave_file' 
        
        and principal_id = p_id; 
     
     --Multi Valued Lookups 
     
     delete from odf_multi_valued_lookups 
      
      where object = 'xtd_res_leave_file' 
        
        and pk_id = p_id; 
     
     --odf.deleteLockedAttributes_set 
     
     delete from odf_locked_attributes 
      
      where object_code = 'xtd_res_leave_file' 
        
        and odf_pk = p_id; 
     
     --Instance 
     
     delete from odf_ca_xtd_res_leave_file where id = p_id; 
     
     --Audit 
     
     update odf_aud_obj_inst_context 
        
        set last_updated_date = sysdate, last_updated_by = 1 
      
      where object_code = 'xtd_res_leave_file' 
        
        and object_instance_id = p_id; 
     
     --End 
     
     commit; 
   
   end file_del; 
   
   --Flush Entries from Parent ID 
   
   procedure entry_del(p_odf_parent_id in odf_ca_xtd_res_leave_ent.odf_parent_id%type) is 
   
   begin 
     
     --Processes 
     
     --process_del(p_object_type => p_object_type, p_odf_parent_id => p_odf_parent_id); 
     
     --Rights 
     
     delete from cmn_sec_assgnd_obj_perm 
      
      where right_id in (select id from cmn_sec_groups where right_type = 'xtd_res_leave_ent') 
        
        and object_instance_id in (select id 
                                     
                                     from odf_ca_xtd_res_leave_ent 

 

 {noformat}                                 where odf_parent_id = p_odf_parent_id); 
 
 --User, Group (odf.deleteObjectInstanceRights) 
 
 delete from cmn_sec_assgnd_right 
  
  where right_id in (select id from cmn_sec_groups where right_type = 'xtd_res_leave_ent') 
    
    and instance_id in (select id 
                          
                          from odf_ca_xtd_res_leave_ent 
                         
                         
                         
                         where odf_parent_id = p_odf_parent_id); 
 
 --OBS 
 
 delete from prj_obs_associations 
  
  where nls_upper(table_name) = nls_upper('xtd_res_leave_ent') 
    
    and record_id in (select id 
                        
                        from odf_ca_xtd_res_leave_ent 
                       
                       
                       
                       where odf_parent_id = p_odf_parent_id); 
 
 --Page 
 
 delete from cmn_instance_pages 
  
  where object_type = 'xtd_res_leave_ent' 
    
    and object_instance_id in (select id 
                                 
                                 from odf_ca_xtd_res_leave_ent 
                                
                                
                                
                                where odf_parent_id = p_odf_parent_id); 
 
 delete from cmn_pages 
  
  where page_type_code = 'tabPage' 
    
    and principal_type = 'xtd_res_leave_ent' 
    
    and principal_id in (select id 
                           
                           from odf_ca_xtd_res_leave_ent 
                          
                          
                          
                          where odf_parent_id = p_odf_parent_id); 
 
 --Multi Valued Lookups 
 
 delete from odf_multi_valued_lookups 
  
  where object = 'xtd_res_leave_ent' 
    
    and pk_id in (select id 
                    
                    from odf_ca_xtd_res_leave_ent 
                   
                   
                   
                   where odf_parent_id = p_odf_parent_id); 
 
 --odf.deleteLockedAttributes_set 
 
 delete from odf_locked_attributes 
  
  where object_code = 'xtd_res_leave_ent' 
    
    and odf_pk in (select id 
                     
                     from odf_ca_xtd_res_leave_ent 
                    
                    
                    
                    where odf_parent_id = p_odf_parent_id); 
 
 --Instance 
 
 delete from odf_ca_xtd_res_leave_ent 
  
  where id in (select id 
                 
                 from odf_ca_xtd_res_leave_ent 
                
                
                
                where odf_parent_id = p_odf_parent_id); 
 
 --Audit 
 
 update odf_aud_obj_inst_context 
    
    set last_updated_date = sysdate, last_updated_by = 1 
  
  where object_code = 'xtd_res_leave_ent' 
    
    and object_instance_id in (select id 
                                 
                                 from odf_ca_xtd_res_leave_ent 
                                
                                
                                
                                where odf_parent_id = p_odf_parent_id); 
 
 --End 
 
 commit;{noformat} 

   

   end entry_del; 
 
 begin 
   
   --Get Purge Days 
   
   m('Get Parameter purge_days in Configuration INTERFACE'); 
   
   begin 
     
     select to_number(p.x_string) 
       
       into v_purge_days 
       
       from odf_ca_x_parameter p 
      
      inner join odf_ca_x_config c on [c.id|http://c.id] = p.odf_parent_id 
      
      where c.code = 'xtd_res_leave_file' 
        
        and p.code = 'purge_days'; 
   
   exception 
     
     when no_data_found then 
       
       err('Parameter xtd_res_leave_file.purge_days is missing, see Configuration !'); 
     
     when others then 
       
       err('Error while checking xtd_res_leave_file.purge_days parameter !' || v_cr || sqlerrm); 
   
   end; 
   
   if v_purge_days is null then 
     
     err('Parameter xtd_res_leave_file.path is null, see Configuration !'); 
   
   end if; 
   
   m('Parameter = ' || v_purge_days); 
   
   m('Object xtd_res_leave_file'); 
   
   --Entries 
   
   for v_file in (select [f.id|http://f.id] 
                    
                    from odf_ca_xtd_res_leave_file f 

 

 {noformat}                where (sysdate - f.last_updated_date) > v_purge_days) loop 
 
 entry_del(v_file.id);{noformat} 

   

   end loop; 
   
   --Delete file 
   
   for v_file in (select [f.id|http://f.id] 
                    
                    from odf_ca_xtd_res_leave_file f 

 

 {noformat}                where (sysdate - f.last_updated_date) > v_purge_days 
                 
                 and not exists (select 1 from odf_ca_xtd_res_leave_ent e where e.odf_parent_id = f.id)) loop 
 
 file_del(v_file.id);{noformat} 

   

   end loop; 
 
 exception 
   
   when v_exception then 
     
     raise; 
   
   when others then 
     
     err(v_msg || v_cr || sqlerrm); 
 
 end;]]></s:update> 
     
     </j:otherwise> 
   
   </j:choose> 
 
 </g:script> 

 

 -------------------- 

 

 07/oct./25 5:19 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 Je me bloque un créneau pour tester demain matin : je vais demander un nouveau fichier “extraction so-planning”    à la date du jour (ou d’hier ) . Si impossible, je testerai avec un fichier réalisé manuellement.   

   

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 07/oct./25 5:32 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel,  

  

 Je suis en Time out sur la recette ce soir    (idem en DEV-VT)    . Mais peut être que ce sera mieux demain    (?) .    J’ai demandé la dépose d’un fichier en recette et en DEV-VT .  

   

  Est-ce possible de déployer votre correctif en DEV-VT également ? Je jonglerai entre les environnements si besoin ?   

   

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 07/oct./25 5:48 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Isabelle, 

 

 j’ai déployé sur la dev vt. 

 

 Tu peux tester. 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 07/oct./25 6:41 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 Merci pour ton action  

  

 Je vais suspendre le processus de chargement pour la nuit prochaine sur DEV-VT , ce qui laissera un nouvel axe pour tests ultérieurs.  

  

 !image-20251007-164001.png|width=1494,height=112,alt="image-20251007-164001.png"! 

 

 Un fichier     “Calendrier MFE”    a été déposé sur les répertoires des    2 environnements donc au passage la nuit prochaine, nous devrions avoir une suppression d’enregistrements en recette , si j’ai bien compris , donc théoriquement, je devrai pouvoir y accéder    (nous étions à 17 millions d’enregistrement mercredi dernier - date du refresh ) .   

   

 En DEV-VT , rien de plus , je serai en “time out”    probablement. Mais si concluant en recette, en relançant le job, je devrai avoir accès  

  

 J’espère que mon analyse est la    bonne .   

   

 Etape 1 : voir ce qui va se passer en recette cette nuit  

  

 Merci pour tes actions  

  

 A suivre demain  

  

 Cordialement  

  

 Isabelle  



  



 -------------------- 

 

 08/oct./25 9:45 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 Je n’arrive pas à accéder à l’Interface Calendrier Ressources , malgré de nombreuses tentatives depuis 9h ce matin.  

  

 !image-20251008-074231.png|width=338,height=234,alt="image-20251008-074231.png"! 

 

 Difficile de voir ce qui a pu se passer.    A priori, le processus s’est correctement déroulé    (fichier MFE uniquement) .   

   

 !image-20251008-073518.png|width=1460,height=126,alt="image-20251008-073518.png"! 

 

 Est-ce possible de ton côté de voir le nombre d’enregistrements    dans les tables ?  

  

 Au 25/09, nous étions à 17 304 008 enregistrements : l' environnement de recette a été mis à jour    avec la version PROD du 30/09 au soir .  

  

 Côté Environnement DEV-VT, le processus ne s’est pas exécuté du fait que je l’ai mis en “Suspendu” .    Par contre, impossible également d’accéder à l’interface ce matin.  

  

 !image-20251008-074356.png|width=326,height=230,alt="image-20251008-074356.png"! 

 

 Je reste à disposition si besoin  

  

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 08/oct./25 10:33 AM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Bonjour Isabelle, 

 

 serait-il possible de relancer le processus en recette ou en dév ? 

 

 Merci à toi. 

 

 Daniel. 

 

 -------------------- 

 

 08/oct./25 10:53 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 J’ai un fichier à dispo en DEV-VT . Je peux relancer si besoin le processus .  

  

 As-tu des actions à réaliser en pré-requis sur cet environnement ?    

    

 Cordialement  

  

 Isabelle  



  



 -------------------- 

 

 08/oct./25 10:58 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel, sur l' Environnement de recette, je viens de demander la dépose d’un nouveau fichier    si possible .    Pas de retour sur le délai pour l’instant   

   

 Cordialement  

  

 Isabelle  



  



 -------------------- 

 

 08/oct./25 11:22 AM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Isabelle, 

 

 oui en dev-vt tu peux lancer le processus si tu as un fichier à dispo. 

 

 Merci à toi. 

 

 Daniel. 

 

 -------------------- 

 

 08/oct./25 11:28 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 Processus lancé  

  

 !image-20251008-092807.png|width=1474,height=120,alt="image-20251008-092807.png"! 

 

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 08/oct./25 12:09 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 Processus terminé en DEV-VT avec     avertissement - Durée    11h27 Début ==> 11h38    purge ==> 11h50 fin    -  

  

 !image-20251008-095554.png|width=1497,height=98,alt="image-20251008-095554.png"! 

 

 +Le plus+ : je peux à nouveau accéder à l’interface Calendrier      🙂   

   

 +Le moins+ : le statut du fichier est “en erreur”    avec un message  

  

 En comparant avec le dernier chargement MFE, nous sommes à l’identique , +excepté+ pour les “Entrées en cours de saisie”  

  

 !image-20251008-100044.png|width=1476,height=217,alt="image-20251008-100044.png"! 

 

 En nombre total d’Enregistrement, nous sommes à 8 millions , donc loin des 17 millions du 25/09.    Il y a donc eu des “purges” .   

   

 Je te laisse analyser les résultats par rapport aux évolutions apportées sur le traitement  

  

 Je reste à disposition si besoin cet après midi    (Un nouveau fichier a été déposé en recette ) Pour info, en Prod, je n’accède plus à l’interface …  

  

 Cordialement  

  

 Isabelle  



  



 -------------------- 

 

 08/oct./25 2:08 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Bonjour Isabelle, 

 

 oui la purge a bien eu lieu en dev vt. 

 

 Quand on regarde on voit qu'on a gardé les 30 derniers jours = soit 30 jours * 300 000 enregistrements = -+ 8 millions d’enregistrements. 

 

 Je dirai le compte est bon pour la dev vt ce qui nous permet d’avoir accès à l’interface Calendrier. 

 

 Toutefois il y a un message d’erreur (voir ci-dessous). J’ai l’impression, en l’absence de Julien, qu’il s’agit d’un problème de certificat non à jour sur l’environnement de dév vt (à vérifier par tes équipes ou bien par Julien dès qu’il a un peu de temps). 

 

 !image-20251008-120429.png|width=1551,height=472,alt="image-20251008-120429.png"! 

 

 Si tu as la possibilité de lancer le processus d’import du fichier Calendrier sur la recette cela nous permettrait de vérifier qu’en dehors du certificat tout est bon. 

 

 Cordialement à toi. 

 

 Daniel. 

 

 -------------------- 

 

 08/oct./25 2:29 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel,  

  

 Je viens de lancer en Recette mais je crains d’avoir le même problème de certificat.  

  

 !image-20251008-122907.png|width=1465,height=270,alt="image-20251008-122907.png"! 



 



 Je contacte Alexandre / Laurent pour vérification sur nos    environnements.   

   

 L’action a été faite en novembre 2024 sur la recette, ce qui me surprend …. 

 

 Cordialement   

   

 Isabelle  



  



 -------------------- 

 

 08/oct./25 3:03 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 Message d’erreur lié à un problème de droit sur le fichier a priori.   

   

 Process à nouveau lancé à 14h59 en recette .  

  

 A suivre  

  

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 08/oct./25 3:41 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel 

 

 Le processus est terminé en recette, sans erreur  

  

 !image-20251008-133301.png|width=1474,height=136,alt="image-20251008-133301.png"! 

 

 J’ai à nouveau accès à l' Interface Calendrier des ressources . Les résultats semblent conformes à ce que nous avons pu avoir la semaine dernière en “PROD”  

  

 !image-20251008-133817.png|width=969,height=235,alt="image-20251008-133817.png"! 

 

 Le nombre d’enregistrements    est à moins de 7 millions   

   

 !image-20251008-134023.png|width=302,height=530,alt="image-20251008-134023.png"! 

 

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 08/oct./25 4:34 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Isabelle,  

  

 C’est une bonne nouvelle. 

 

 Souhaites-tu que je déploie en prod la modification ? 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 08/oct./25 5:22 PM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Daniel  

  

 C’est un peu rapide ….    mais OK pour le déploiement en PROD : de toute façon, nous n’accédons plus à l’Interface en PROD donc il faut faire quelque chose.   

   

 Nous aviserons demain .   

   

 Par contre, pourras-tu mettre à jour le dossier de paramétrage ou au moins me donner la(es) règle(s) appliquée(s) ?  

  

 Je te remercie pour ta disponibilité ce jour.   

   

 Bonne soirée  

  

 Cordialement  

  

 Isabelle   

   

 -------------------- 

 

 08/oct./25 5:33 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Isabelle, 

 

 Si tu penses que c’est un peu rapide on peut attendre en effet. 

 

 Je ne connaissais pas le degré d’urgence pour corriger. 

 

 On peut attendre demain donc. Ou plus tard… 😉 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 08/oct./25 5:49 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Isabelle, 

 

 est-ce que je peux mettre en prod la modif demain matin ? 

 

 Il est 18h et je préfère le faire avec du temps devant moi au cas où… 

 

 Merci à toi. 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 09/oct./25 9:20 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 Je te prie de m’excuser car je n’ai pas eu ton appel d’hier soir (j'étais sur le chemin du retour)  

  

 Donc, OK pour un déploiement ce jour en PROD et donc vérification demain .  

  

 Ce matin :    je n’ai pas accès à l’Interface Calendrier    en PROD  

  

 Je vais relancer le processus en DEV/VT pour vérifier que le message d’erreur n’existe plus (droit sur le fichier mis à disposition)  

  

 Cordialement  

  

 Isabelle  



  



 -------------------- 

 

 09/oct./25 9:38 AM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Bonjour Isabelle, 

 

 la mise en production de la modification a été faite ce matin. 

 

 Je vais rédiger ce qui a été modifié. 

 

 Cordialement. 

 

 Daniel. 

 

 -------------------- 

 

 09/oct./25 10:27 AM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;[^Interface Calendriers Ressources - Etape de Purge (f7a0e16d-c9a2-4e44-8a5f-b50a702a5441).txt] 



 



 -------------------- 

 

 09/oct./25 10:49 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 Je te remercie pour tes actions. Je me bloque le créneau demain matin pour les vérifications.   

   

 Nous avons probablement un problème de certificat en DEV-VT    car j’ai relancé plusieurs processus    qui tombent en “erreur système” . J’ai fait la même action en “Formation” et pas d’erreur .   

   

 Les experts techniques analysent le problème.   

   

 A suivre  

  

 Cordialement  

  

 Isabelle  

  

 -------------------- 

 

 09/oct./25 1:51 PM;557058:b540bcd7-66be-439e-8afd-731d1d31a227;Bonjour Isabelle, 

 

 comme convenu tu trouveras en pièce jointe le document décrivant les modification apportées. 

 

 [^CoPrime - MACIF - Fichier Importer les calendriers - v1.0.docx] 

 

 Cordialement à toi. 

 

 Daniel. 

 

 -------------------- 

 

 10/oct./25 8:46 AM;qm:ff74ceed-c671-416d-a8c9-129553068c4c:0d7178ff-2dbc-4bca-b1d6-615d94676d10;Bonjour Daniel  

  

 Le chargement des calendriers s’est déroulé correctement la nuit dernière en PROD.   

   

 J’accède à nouveau à l’interface Calendrier : nous avons un peu plus de 9 millions d’enregistrements  

  

 !image-20251010-064403.png|width=770,height=576,alt="image-20251010-064403.png"! 

 

 Il me reste donc à “débloquer” la DEV-VT (mais cela semble être un problème de certificat) + valider ton document   

   

 Cordialement  

  

 Isabelle

Retour