Toutes mes réponses sur les forums
-
AuteurMessages
-
29 décembre 2022 à 2 h 49 min en réponse à : Regroupement de valeurs avec vérification de la cohérence des dates #124305
Xavier Allart
ParticipantBonjour
Avec plaisir, pour la liaison ce sera en fonction des besoins.
Pour DAX, pour commencer ici on est bien https://www.lecfomasque.com/blogue/?search=DAX
Cordialement
Xavier Allart
Participantbonjour
Je te joins mon exemple car je ne comprends pas ton probleme de developpement de la table.
CordialementAttachments:
You must be logged in to view attached files.Xavier Allart
ParticipantBonjour
Peux tu essayer avec cette syntaxe
= Table.AddColumn(#”Type modifié”, “AnneeMois.Num”, each Text.Combine({Date.ToText([#”Date Exploit.”], “yyyy”), “-“, Date.ToText([#”Date Exploit.”], “MM”)}), type text)Cordialement
27 décembre 2022 à 21 h 19 min en réponse à : Regroupement de valeurs avec vérification de la cohérence des dates #124280Xavier Allart
ParticipantBonjour
La nuit portant conseil, voici une solution simplifiée, mais il doit en exister d’autres, plus optimisées encore.
En power Query (Modification des données
Requête 1 (sejour)
Importer la sourceRequête 2 (sejour 2)
Créer par référence à « sejour »
Garder les colonnes “Adresse”,”Debut”,”Fin”,
Ajouter une colonne personnalisée « Date » = {Number.From([Debut])..Number.From([Fin])}
Développer la colonne « Date »
Modifier son type en Date
Supprimer les colonnes “Debut”, “Fin”
Regrouper par
Avancé
Par Adresse et Date
Compter les lignesPasser en mode visualisation
Ajouter une mesure
Appartements = max(‘Sejour (4)'[Nombre])Attachments:
You must be logged in to view attached files.27 décembre 2022 à 13 h 51 min en réponse à : Regroupement de valeurs avec vérification de la cohérence des dates #124275Xavier Allart
ParticipantBonjour
Voici une solution, il doit en exister d’autres plus optimisés.
En power Query (Modification des données
Requête 1 (sejour)
Importer la source
Supprimer la colonne “Durée”
Ajouter une colonne Index à partir de 1
Requête 2 (sejour 2)
Créer par référence à « sejour »
Supprimer la colonne “Adresse”
Sélectionner la colonne « Index » et dépivoter les autres colonnes
Renommer la colonne « Valeur » en « Date »
Ajouter une colonne personnalisée « sejour » = »sejour »
Requête 3 (sejour 3)
Créer par référence à « sejour »
Supprimer les colonnes pour ne conserver que la colonne « Index »
Supprimer les lignes en doublon
Ajouter une colonne personnalisée « Debut » = List.Min(Sejour[Date])
Ajouter une colonne personnalisée « Fin » = List.Max(Sejour[Date])
Ajouter une colonne personnalisée « Date » = {Number.From([Debut])..Number.From([Fin])}
Développer la colonne « Date »
Modifier son type en Date
Supprimer les colonnes “Debut”, “Fin”
Fusionner avec la table « Sejour 3 » sur les champs « Index » et « Date »
Développer la nouvelle colonne sur les champs “Attribut”, “Date”, “Sejour”
Sur la colonne « Valeur », remplir vers le bas
Sur la colonne « Valeur », filtrer pour supprimer les null
Sur la colonne « Attribut », remplir vers le bas
Ajouter une colonne conditionnelle personnalisée
if [Attribut] = “Fin” and [Sejour] = null then 0 else 1
Filtrer pour conserver les « 1 »
Supprimer les colonnes “Attribut”, “Sejour”, “Personnalisé”
Fusionner avec « sejour » sur le champ « index »
Développer la colonnes « Adresse »Requête 4 (sejour 4)
Créer par référence à « sejour 4»
Regrouper par
Avancé
Par Adresse et Date
Compter les lignesPasser en mode visualisation
Ajouter une mesure
Appartements = max(‘Sejour (4)'[Nombre])Bonnes fetes de fin d’année
CordialementAttachments:
You must be logged in to view attached files.Xavier Allart
ParticipantBonjour
Je n’ai pas assez d’informations pour comprendre exactement le besoin.
Voici une idée de carte à plusieurs rangées réinventée proposée par le site https://www.datapears.com/post/multi-row-card-reinvented en transformant une table dont les couleurs de lignes sont gérées par une mise en forme conditionnelle.Bonnes fêtes
Cordialement,Xavier Allart
ParticipantBonjour
Sans les données il est bien difficile de répondre.
Quelle est la nature de (nb client) est-ce une mesure DAX ? une colonne calculée DAX, ou PowerQuery ? une donnée d’un table de faits ….. ???Bonnes fêtes
Cordialement,Xavier Allart
ParticipantBonjour
Je pense que pour résoudre le problème, le mieux serait d’avoir un extrait du fichierQuand tu charges ton fichier Excel, Tu sélectionnes une feuille ? un tableau ?
Bonnes fêtes
Cordialement,Attachments:
You must be logged in to view attached files.Xavier Allart
ParticipantBonjour
Désolé mais je ne comprends le calcul que vous cherchez à réaliser.
Pouvez vous nous transmettre plus d’informationsBonnes fetes
Cordialement21 décembre 2022 à 0 h 44 min en réponse à : DAX : mesure DISTINCTCOUNT sans doublon autre colonne #124059Xavier Allart
ParticipantBonjour
Je voulais proposer (un peu tardivement) une autre solution. Mais je ne sais pas, au niveau mémoire temps de traitement, ce qui est préférable entre les 2 solutions. Si vous pouvez m’éclairer, Merci
Dans l’étape de transformation de données (Code M),
Créer une requête par référence à Fact_Table, nommer cette nouvelle NiveauMax
Sur la requête NiveauMax utiliser la commande Transformer > Grouper par
De base
Grouper par ID
Nouveau nom de la colonne : Niveau
Opération : Max
Colonne : NIVEAUBonnes fetes
CordialementAttachments:
You must be logged in to view attached files.Xavier Allart
ParticipantBonjour
Je viens de regarder la solution proposée, et je pose une question pour une panne à “04/01/2022 05:06:20” la “minimum après l’heure de panne” devrait etre “04/01/2022 09:59:41” et non pas “/03/01/2022 05:47:15” j’ai changer une date en “01/01/2022 05:07:00” est celle_ci qui est retournée par la mesure :
2 => Mesure pour selectionner le minimum après l’heure de panne = CALCULATE(MIN([Date]),FILTER(‘Fichier Type’, ‘Fichier Type'[Date]>[Mesure pour selectionner la date de la panne]))C’est comme_ci le filtre compare les heures sans tenir compte du jour.
Je ne comprends pas pourquoi ? pouvez vous m’aider.
Merci et de bonnes fêtes de fin d’annéeXavier Allart
ParticipantBonjour
Je ne suis pas sûr de comprendre votre problème, je vous propose de regarder la vidéo YouTube suivante qui explique assez bien comment utiliser les paramètres
Si cela ne suffit pas donnez un exemple de ce que vous voulez faire.
Bonnes fêtes de fin d’année
Xavier Allart
ParticipantBonjour
Voici un tuto qui propose de créer un fichier topojson de taille réduite https://www.statsilk.com/maps/simplify-map-reducing-file-size-and-loading-time
Si cela peut aider.Bonnes fêtes de fin d’année.
Xavier Allart
ParticipantBonjour
C’est sur, sans la table de references, c’est plus compliqué de tout comprendre. Je propose donce cette nouvelle version :
Au lieu de commencer avec une requête vide, on peut commencer avec une table d’une seule colonne contenant la liste des 123 code ISIN nommée “ISDN”
• Ajouter une colonne personnalisée « Debut » = List.Min(Cours[Date])
• Ajouter une colonne personnalisée « Fin » = List.Max(Cours[Date])
• Ajouter une colonne personnalisée « Date » = {Number.From([Debut])..Number.From([Fin])}
• Développer la colonne « Date »
• Modifier son type en Date
• Fusionner avec la table « Cours » sur les champs « dates » et « ISDN »
• Développer la nouvelle colonne
• Ajouter une colonne personnalisée « iD » = [#”ISIN “]&” “&Text.From([Date])
• Trier la table sur cette colonne
• Remplir vers le bas
• Supprimer les colonnes « Début », « fin » et « iD »Xavier Allart
ParticipantBonjour
Si c’est possible je vous propose de remplacer la table « calendrier » DAX, par une table « calendrier » automatique en query, puis de la fusionner avec votre table « Table Cours Quotidien» et de remplir vers le bas les valeurs manquantes.
En Power query,
Pour l’exemple je renomme la requête « Table Cours Quotidien » en « Cours »
• Créer une requête vide et de saisir la formule = List.Min(Cours[Date])
• Convertir en table
• Renommer « Column1» en « Debut »
• Ajouter une colonne personnalisée « Fin » = List.Max(Cours[Date])
• Ajouter une colonne personnalisée « Date » = {Number.From([Debut])..Number.From([Fin])}
• Développer la colonne « Date »
• Modifier son type en Date
• Supprimer les colonnes « Debut » et « Fin »
• Fusionner avec la table « Cours » sur les champs « dates »
• Développer la nouvelle colonne
• Remplir vers le basCode éditeur avancé:
let
Source = List.Min(Cours[Date]),
#”Converti en table” = #table(1, {{Source}}),
#”Colonnes renommées” = Table.RenameColumns(#”Converti en table”,{{“Column1”, “Debut”}}),
#”Personnalisée ajoutée” = Table.AddColumn(#”Colonnes renommées”, “Fin”, each List.Max(Cours[Date])),
#”Personnalisée ajoutée1″ = Table.AddColumn(#”Personnalisée ajoutée”, “Date”, each {Number.From([Debut])..Number.From([Fin])}),
#”Date développé” = Table.ExpandListColumn(#”Personnalisée ajoutée1″, “Date”),
#”Type modifié” = Table.TransformColumnTypes(#”Date développé”,{{“Date”, type date}}),
#”Colonnes supprimées” = Table.RemoveColumns(#”Type modifié”,{“Debut”, “Fin”}),
#”Requêtes fusionnées” = Table.NestedJoin(#”Colonnes supprimées”, {“Date”}, Cours, {“Date”}, “Cours”, JoinKind.LeftOuter),
#”Cours développé” = Table.ExpandTableColumn(#”Requêtes fusionnées”, “Cours”, {“Cours Quotidien”}, {“Cours”}),
#”Rempli vers le bas” = Table.FillDown(#”Cours développé”,{“Cours”})
in
#”Rempli vers le bas”Cordialement
-
AuteurMessages