WITH 

lots_locataires AS (

SELECT

digits(CODE_SOCIETE) || digits(CODE_LOCATAIRE) || '00' AS "Ref client locataire + 00", 

digits(CODE_SOCIETE) || digits(CODE_LOCATAIRE) AS "REF_LOCATAIRE", 

digits(CODE_SOCIETE) || digits(CODE_IMMEUBLE) AS ref_imm , 

digits(ENTREE_ANNEE) || '-' || digits(ENTREE_MOIS) || '-' || digits(ENTREE_JOUR) AS "Date entrée du locataire",

digits(CODE_SOCIETE) || digits(CODE_IMMEUBLE) || digits(CODE_BATIMENT) || digits(CODE_LOT) AS ref_lot, LLCPRE

AS "Pôle Gérance"

FROM bafic.loclotp0

WHERE  

LLCPRE IN ('P')

--digits(ENTREE_ANNEE) || '-' || digits(ENTREE_MOIS) || '-' || digits(ENTREE_JOUR) >= '2023-04-11'

), nom_tiers AS (

SELECT NOM, TINTIE AS "Code Tiers"

FROM bafic.TIERSP0)

--, client AS (

--SELECT digits(CODE_SOCIETE) || digits(CODE_LOCATAIRE) AS "REF_LOCATAIRE"

--FROM FACLIE f 

--AND IN ('MN', 'NC')

--)

, immeuble AS (

SELECT digits(COE_SOCIETE) || digits(CODE_IMMEUBLE) AS "REF_IMM" FROM bafic.faimme WHERE imtyre IN ('MN', 'NC') 

),

tiers AS (

SELECT t.TINIDN AS code, t.TINIDN AS "Réf_client", TINTIE AS "Code Tiers"

FROM bafic.TIEMAYP0 t

),

locataires_dataware AS (

SELECT digits(CLSOC) || digits(CLCLT) AS "REF_LOCATAIRE",

DWAVO1 , dwavo2, dwavo3, dwavo4, dwavo5, dwavo6 

FROM DATAWARE.DWALOCW0 d 

)

SELECT * FROM lots_locataires ll

JOIN immeuble imm ON imm."REF_IMM" = ll.ref_imm

LEFT JOIN tiers tloc ON tloc."Réf_client" = ll."Ref client locataire + 00"

LEFT JOIN nom_tiers ntloc ON ntloc."Code Tiers" = tloc."Code Tiers"

LEFT JOIN locataires_dataware ld ON ld."REF_LOCATAIRE" = ll."REF_LOCATAIRE"

LEFT JOIN bafic.TIEMAYP0 timaya ON tloc."Code Tiers" = timaya.TINTIE AND timaya.nom_fichier_maya = 'FACLIE'

LEFT JOIN bafic.tieadup0 tiadr ON tloc."Code Tiers"= tiadr.TINTIE

LEFT JOIN bafic.tieadrp0 adr ON tiadr.numero_interne_adresse = adr.numero_interne_adresse

LEFT JOIN bafic.HEXAVIP0 fiche_voie

ON fiche_voie.Matricule_voie = adr.Matricule_voie AND fiche_voie.CODE_POSTAL = adr.CODE_POSTAL

AND fiche_voie.NUMERO_INSEE_COMMUNE = adr.NUMERO_INSEE

LEFT JOIN bafic.HEXAPOP1 fiche_ville ON fiche_ville.NUMERO_INSEE_COMMUNE = adr.NUMERO_INSEE AND fiche_ville.IDENTIFIANT = adr.IDENTIFIANT

AND fiche_ville.Code_postal = adr.Code_postal

LEFT JOIN bafic.VILETRP0 etr ON adr.NUMERO_INTERNE_VILLE_ETRANGERE = etr.vinint