- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dernière Valeur de L'enregistrement
Bonjour,
Je cherche à construire un tableau de bord avec des disponibilités de planning par réparateur.
Dans le modèle de données, il y a autant de lignes enregistrées que de validation du planning. (Même si aucune modification apportée).
J'ai donc besoin de pouvoir prendre dans mon tableau de bord la dernière ligne enregistrée.
Avez-vous une idée de calcul ? Ma formule à date est la suivante :
count({<Dispo_Cat_A={'Disponible'}>} ([Date_Planning]))
Avec cette formule, j'ai toutes les lignes enregistrées. Or je souhaite avoir la dernière valeur enregistrée par date.
Merci beaucoup pour votre aide,
Stéphanie
- Tags:
- Group_Discussions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bonjour Stéphanie,
c'est quoi ton champ date d'enregistrement ? (admettons que ce soit DATE_ENR )
pour moi tu as 2 solutions :
1/ soit dans l'expression : count({<Dispo_Cat_A={'Disponible'},DATE_ENR ={$(=max(DATE_ENR)}>} ([Date_Planning]))
2/ soit en script avec un group by :
load Date_planning
max(DATE_ENR)
resident Ta_Table group by Date_Planning ;
florent
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Merci Florent pour ta réponse.
J'ai essayé la solution une et ca coince ! Je crois que je vais l'ajouter à mon script.
Je te copie colle ma table ci-dessous.
LOAD
[Id_MyCaps_Disponibilite],
[Id_Garage] AS [Id_Garage-NUM_MF],
[Date_Planning],
if(len(Date_Planning)>0,
if((Date_Planning - today(0))>=7,'Semaine 2',
if((Date_Planning - today(0))>=0,'Semaine 1','Passé'))) as Semaine_Planning,
[Disponibilite_Atelier],
[Disponibilite_Cat_A],
if(([Disponibilite_Cat_A])=0,'Non-Renseigne',
if(([Disponibilite_Cat_A])=1,'Disponible',
if(([Disponibilite_Cat_A])=2,'Indisponible')))as Dispo_Cat_A,
[Disponibilite_Cat_B],
[Disponibilite_Cat_C],
[Disponibilite_Cat_D],
[Disponibilite_Cat_E],
[Disponibilite_Cat_F],
[Disponibilite_Cat_VU],
[Date_Creation] AS [mycaps_disponibilite.Date_Creation],
[Cree_Par] AS [mycaps_disponibilite.Cree_Par];
SQL SELECT `Id_MyCaps_Disponibilite`,
`Id_Garage`,
`Date_Planning`,
`Disponibilite_Atelier`,
`Disponibilite_Cat_A`,
`Disponibilite_Cat_B`,
`Disponibilite_Cat_C`,
`Disponibilite_Cat_D`,
`Disponibilite_Cat_E`,
`Disponibilite_Cat_F`,
`Disponibilite_Cat_VU`,
`Date_Creation`,
`Cree_Par`
FROM `capsnaff`.`mycaps_disponibilite`;
Peux-tu me dire comment j'intègre cela dans ce script.. ?
Merci,
Stéphanie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
//d'abord, tu nommes ta table :
MA_TABLE :
LOAD
[Id_MyCaps_Disponibilite],
[Id_Garage] AS [Id_Garage-NUM_MF],
[Date_Planning],
if(len(Date_Planning)>0,
if((Date_Planning - today(0))>=7,'Semaine 2',
if((Date_Planning - today(0))>=0,'Semaine 1','Passé'))) as Semaine_Planning,
[Disponibilite_Atelier],
[Disponibilite_Cat_A],
if(([Disponibilite_Cat_A])=0,'Non-Renseigne',
if(([Disponibilite_Cat_A])=1,'Disponible',
if(([Disponibilite_Cat_A])=2,'Indisponible')))as Dispo_Cat_A,
[Disponibilite_Cat_B],
[Disponibilite_Cat_C],
[Disponibilite_Cat_D],
[Disponibilite_Cat_E],
[Disponibilite_Cat_F],
[Disponibilite_Cat_VU],
[Date_Creation] AS [mycaps_disponibilite.Date_Creation],
[Cree_Par] AS [mycaps_disponibilite.Cree_Par];
SQL SELECT `Id_MyCaps_Disponibilite`,
`Id_Garage`,
`Date_Planning`,
`Disponibilite_Atelier`,
`Disponibilite_Cat_A`,
`Disponibilite_Cat_B`,
`Disponibilite_Cat_C`,
`Disponibilite_Cat_D`,
`Disponibilite_Cat_E`,
`Disponibilite_Cat_F`,
`Disponibilite_Cat_VU`,
`Date_Creation`,
`Date_Creation` as CLEDATE // je duplique ce champ pour en faire une clé, afin que le champ originel n'en soit pas une
`Cree_Par`
FROM `capsnaff`.`mycaps_disponibilite`;
//ensuite, je pars du principe que la dernière date que tu souhaites remonter est "Date_Creation"
load Date_planning,
max(CLEDATE) as DATE_MAX
resident Ta_Table group by Date_Planning ;
du coup en expression de ton tableau, tu peux mettre ta condition :
count(if(Date_Creation=DATE_MAX,...)
Florent
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Le script ne se charge en me disant qu'il ne trouve pas "Date Planning"...
As-tu une idée ?
Merci,
Stéphanie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bonjour Stéphanie,
c'est une erreur d'orthographe :
il faut écrire
Date_Planning
à chaque fois, comme dans ton script original