1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
SELECT DISTINCT
numero_ent AS Matricule,
nom_personne|| ' '|| prenom_personne AS nom ,
t2.statut AS QUALIFICATION ,
t6.annee AS Annee ,
TO_CHAR(t7.dateexercice,'dd/mm/yy') AS DatePaiement ,
ROUND(t1.indemnite,2) AS INDEMNITES_BRUTES,
NVL(
(
SELECT
SUM(t41.id_trancheBase1) AS base_4030
FROM
table10 t41
WHERE t41.idrefT1=t1.id),0
) AS BASE_TR_1,
FROM
table1 t1
INNER JOIN table2 t2 ON t1.idrefT3 = t2.idrefT3
INNER JOIN table3 t3 ON t2.idrefT3 = t3.id
INNER JOIN table4 t4 ON t3.idrp=t4.id
INNER JOIN table5 t5 ON t4.idrefT5=t5.idrefT5
INNER JOIN table6 t6 ON t3.idreft6 = t6.id
INNER JOIN table7 t7 ON t1.idrefT7= t7.id
INNER JOIN table4 t8 ON t8.id=t2.c211_idEnt
INNER JOIN table9 t9 ON t9.x508_idgrp_1 =t8.id AND t9.x508_idrp_2 =t4.id
AND t9.X508_JUSQUAU>= to_date('$anneeRecherche/12/31','yyyy/mm/dd')
WHERE t8.x503_matricule ='$NumEntreprise'
AND t7.dateexercice >= to_date('$anneeRecherche/01/01','yyyy/mm/dd')
AND t7.dateexercice <= t9.Date_JUSQUAU
/* condition qui doit me prendre toute les personnes sur une année civile ex: entre le 01/01/2017 et le 31/12/2017
- s'il na pas cassé son contrat, t9.Date_JUSQUAU=31/12/99 par defaut car il est toujours là mais
- s'il a cassé son contrat en ../03/2017 alors qu'il est dans l'entreprise A et qu'il va dans l'entreprise B
je veux qu'il m'affiche la personne, quand il a été dans l'entreprise A du 01/01/17 au ../03/2017
et dans l'entreprise B du ../03/2017 au 31/12/99 .
31/12/99 veut dire qu'ilest tjr dans l'ent A , mais s'il n'y ai pu , la date se met a jour mais ça c'esst une autre histoire....
*/
AND t2.statutpersonne IN ('ETAM' ,'ETAMA','ETAMB','IAC','IAC1','IAC2' ,'ING')
ORDER BY numero_ent_ent, t6.annee
/*
et donc j'aimerais avoir les personnes, ainsi que toutes les entreprises dans laquel il a été, durant la période precisé, sachant
que cette condition doit resté WHERE t8.x503_matricule ='$NumEntreprise' et je sais pas comment remanier la requete
*/ |
Partager