Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
j'ai un fichier concernant 3 chambres avec des dates d'occupation pour chacune (HoroDate_Entrée/HoroDate_Fin).
j'ai également un fichier avec des événements ponctuels survenant sur ces chambres.
Je cherche dans le script à ne garder que les événements ponctuels survenus en dehors des temps d'occupation des chambres.
merci de vos aides,
cordialement,
en pj, le petit jeu de données.
Bonjour,
Voici un script qui ajoute un flag à la table évènement. Il se base sur l'utilisation d'IntervalMatch() pour faire la jointure entre les deux tables.
Evenement_Temp:
LOAD rowno() as Id_Evenement,
Evénement,
Chambre1 as Chambre
FROM [lib://data/Occupation.xlsx]
(ooxml, embedded labels, table is Feuil1);
Occupation:
LOAD
Chambre,
Occ_Début,
Occ_Fin
FROM [lib://data/Occupation.xlsx]
(ooxml, embedded labels, table is Feuil1);
left Join(Evenement_Temp) IntervalMatch(Evénement,Chambre)
LOAD Occ_Début,Occ_Fin,Chambre
Resident Occupation;
drop table Occupation;
NoConcatenate
Evenement:
LOAD Chambre,
Evénement,
if(Len(Occ_Début)=0,1,0) as Flag_HorsOccupation
Resident Evenement_Temp
//Where Len(Occ_Début)=0 // pour filtrer completement les lignes
;
drop table Evenement_Temp;
Bonjour Philippe,
un élément de réponse :
les événements sans Occ correspondent aux événements hors temps d'occupation.
C'est pas très beau mais c'est un 1er pas.
Dis moi ce que tu en penses
Florent
Bonjour Florent,
merci, mais si je prends l'événement de la chambre 3 en date du 12/03/2018, je le retrouve deux fois, une fois correspondant à la période d'occ du 10/03 au 13/03, et une fois sans Occ ...
mais c'est un premier pas !
l'idéal est que je puisse tagger dans le script les événements hors période d'occupation (dans ton exemple, tous les événements où Occ-Début et Occ_Fin est Null ...).
@+
Bonjour,
Voici un script qui ajoute un flag à la table évènement. Il se base sur l'utilisation d'IntervalMatch() pour faire la jointure entre les deux tables.
Evenement_Temp:
LOAD rowno() as Id_Evenement,
Evénement,
Chambre1 as Chambre
FROM [lib://data/Occupation.xlsx]
(ooxml, embedded labels, table is Feuil1);
Occupation:
LOAD
Chambre,
Occ_Début,
Occ_Fin
FROM [lib://data/Occupation.xlsx]
(ooxml, embedded labels, table is Feuil1);
left Join(Evenement_Temp) IntervalMatch(Evénement,Chambre)
LOAD Occ_Début,Occ_Fin,Chambre
Resident Occupation;
drop table Occupation;
NoConcatenate
Evenement:
LOAD Chambre,
Evénement,
if(Len(Occ_Début)=0,1,0) as Flag_HorsOccupation
Resident Evenement_Temp
//Where Len(Occ_Début)=0 // pour filtrer completement les lignes
;
drop table Evenement_Temp;
Bonjour Christophe,
exactement ce qu'il me fallait !!
merci.