19 juin 2008

Dossiers de demande Opération déphasés de leur Template

Les dossiers "Template" dans ZO existent depuis HRv5 avec la mise en service de HRQuery : les objets Rapport, Mise en page, Population doivent être "mis en exploitation" pour être convertis en dossiers Opération dits "Templates".

Ces Templates contiennent un descriptif du Query en table ZO4C, avec un horodatage de mise a jour stocké en ZO5K.

Les demandes batch ZO avec édition répliquent cette description, avec horodatage de réplication en table ZO4T.

Une page Web de l' "Assistant de Gestion" permet de repérer et mettre a niveau les ZO4C des demandes batch ZO déphasées (menu "Rapports" / "Rafraîchissement général").



Ci dessous un SQL pour repérer les demandes dont la description du template a un horodatage antérieur a celui de l'objet :

SELECT D_4T.NUDOSS, D_00.CDUSER, D_00.CDPHAS, D_00.SUFXDM, D_4T.CDPHAS ,D_4T.CDELMT 
FROM ZO4T D_4T, ZO5K T_5K, ZO00 D_00, ZO00 T_00
WHERE D_00.NUDOSS = D_4T.NUDOSS AND D_00.TISOUM = '0001-01-01-00.00.00'                              -- jointure demande
  AND T_00.NUDOSS = T_5K.NUDOSS AND T_00.TISOUM = '0001-01-01-00.00.00' AND T_00.CDUSER = '********' -- jointure template
  AND D_4T.CDPHAS = T_00.CDPHAS AND D_4T.CDELMT = T_00.CDELMT -- Jointure entre la demande et le template
  AND D_4T.CDPHAS in ('NPQ','NPM','NPP') -- filtre sur le type de template
  AND D_4T.CDELMT LIKE '%'               -- filtre sur le code du template
  AND D_4T.TIMODI < T_5K.TIMODI          -- controle de dephasage
ORDER BY NUDOSS


Rien ne permet en revanche de repérer les demandes batch faisant référence à un type de sortie supprimé... Ci dessous un SQL pour repérer les demande Opération avec un édition faisant reference en ZO3P à un format TYPOUT qui n'existe plus dans le Template :

SELECT ZO00.NUDOSS, ZO00.CDUSER, ZO00.CDPHAS, ZO00.SUFXDM, ZO3P.CDMEPA, TYPOUT FROM ZO3P, ZO00
WHERE ZO00.NUDOSS=ZO3P.NUDOSS AND TISOUM='0001-01-01' AND TYPOUT <> ' '
MINUS
SELECT ZO00.NUDOSS, ZO00.CDUSER, ZO00.CDPHAS, ZO00.SUFXDM, ZO4C.CDMEPA, TYPOUT FROM ZO4C, ZO00
WHERE ZO00.NUDOSS=ZO4C.NUDOSS AND TISOUM='0001-01-01'