Liaison Power Query, Pivot ,TCD, rapport de filtres, lignes vides

Bonjour

Je souhaiterai de l'aide concernant l'utilisation "normale" des tcd à partir d'une base de données externe.

Le problème vient d'une mise en forme du TCD que je n'arrive pas a obtenir comme je le souhaiterai si c'est possible évidemment

But : Obtenir un rapport pour chaque secteur sur une période variable à partir de TCD

Soit toutes les lignes apparaissent , soit j'ai la forme TCD compacte normale

Merci aux âmes charitables qui pourraient éclaircir ce problème

PS : tout nouveau en Query soyez indulgents

20fichier-base.zip (166.93 Ko)

Bonjour

Pas trop cherché à comprendre ton calcul de mois de référence : j'ai juste un poil simplifié

Pour pouvoir afficher toutes les dates de tous les secteurs il faut d'abord faire un produit cartésien des dates/secteurs

11fichier-base-pq.xlsx (204.60 Ko)

Bonjour,

Merci chris pour ton aide et bravo pour la simplification. (Pour les périodes : on part du lundi le plus proche du début du mois (exemple si le 1er est un mercredi on part du lundi précédent si c'est un jeudi on part du lundi suivant : pourquoi faire simple !)

J'ai un peu avancé dans ma quête mais pas trop car je crois atteindre les limites de 2016 en utilisation "normale" sans VBA (bien que ça ne me rebute pas)

Le problème est résolu pour les rapports en restant sur une requête seule.

Mon souci est de lier deux segments et je pense qu'il faut passer par Power pivot pour assurer les liaisons entre les 2 mais on perd les rapports

(évidement c'est pour le fun on pourrait faire un index equiv dant la table)

Je pense pouvoir résoudre le problème du début et fin de période sans passer par un TCD en extrayant le min et max des dates du TCD (j'ai vu ton intervention en VBA) peut-on le faire dans une cellule? j'ai tenté un paramètre de champ min max qui n'apparaissent pas (peut-être que sur les dates ça coince) quant à la formule, je cherche... style =MIN(LIREDONNEESTABCROISDYNAMIQUE(A6;A7:A34)) là pour l'instant je sèche

Pb 2 peut-on ajouter un champ calculé de cumul de durées sur une semaine à afficher le dimanche ? sur le TCD durée

PB 3 peut-on formater les dates dans un TCD jjjj jj mm aa

Merci pour votre soutien

PS: ci-joint le fichier problématique

Bonjour

LIREDONNEESTABCROISDYNAMIQUE lit les valeurs pas les champs en étiquette et on ne peut synthétiser

On peut ajouter le calcul de la semaine dans la requêtes Dates ce qui donnerait

image

Sur 365, tant qu'un date n'est pas regroupée on peut l'afficher comme on veut (j'ai oublié pour les versions antérieures mais il me semble que c'est pareil)

"Mon souci est de lier deux segments et je pense qu'il faut passer par Power pivot pour assurer les liaisons entre les 2 mais on perd les rapports"

Et plus précisément ?

Bonjour

Encore merci Chris , superbe l'idée de la semaine je n'y avais pas pensé, voici le mien beaucoup moins joli (formatage des dates : pas trouvé)

Je n'ai pas trouvé de solution pour extraire le min et le max des dates du tableau

image

Pour les segments au début j'avais fait des relations entre tables pour que les segments puissent agir sur les différent TCD mais en faisant cela l'option créer des rapports se désactive lorsque l'on utilise les liaisons et données olap (ce me semble en tout cas en 2016)

image

Bonne soirée

RE

le min et la max de la source sont au début de la requête Date... Pas sûr de comprendre ce que tu cherches obtenir.

Attention à utiliser la semaine ISO : tes numéros de semaine ne correspondent pas.

Code de la fonction PQ :

let
    Source = (MaDate as date) =>
let
        Jeudi = Date.AddDays(MaDate, -Date.DayOfWeek(MaDate,1) + 3),
        UnJanvier = #date(Date.Year(Jeudi),1,1),
        EcartJours = Duration.Days(Duration.From(Jeudi - UnJanvier)),
        SemaineISO=  Number.RoundDown(EcartJours/7)+1
in
    SemaineISO
in
    Source

Pour les segments tu veux connecter quoi avec quoi ?

Merci Chris, je ne connaissais pas les semaines ISO. Je ne suis pas un pro

Comme dit plus haut, je découvre et teste les capacités de PQ et Pivot, que je ne connaissais pas, avant de tomber sur une vidéo alléchante, pour un projet que j'ai déjà traité en VBA.

Il ne s'agit donc pas d'un réel besoin, mais d'une manie exploratrice pour comprendre les choses.

PQ me paraissant sympathique, j'ai cru naïvement traiter ça rapidement, sauf qu'à chaque chemin pris je tombe dans une impasse.

Il manque toujours un petit quelque chose. C'est frustrant !

Mon idée au départ était de piloter 3 TCD grâce à des relations avec 2 segments Secteur et Mois_ref, ensuite de remplir le calendrier sur une feuille modèle avec les résultats des TCD pour ensuite copier le modèle pour chaque secteur pour une période donnée (en VBA).

image image image

Je me suis dit pourquoi ne pas intégrer le calendrier dans la base avec PP et là je perds alors la possibilité des rapports. (frustrant) (voir fichier_base)

Si on revient à ta solution on garde les rapports mais on perd les TCD (plus de liaison) (frustrant à nouveau)

Je trouve aussi que les ressources sont importantes 3240 lignes de requête pour une base de 400 lignes. C gros!

Si le projet t'intéresse je peux fournir la suite des évènements.

Bref je pensais que PQ permettrai d'éviter le VBA mais à quel prix ! Certes pour des cas simples c'est rapide

Ceci dit, je crois que ce projet est très pédagogique pour explorer, à mon sens, les tréfonds de PQ (je me trompe peut-être en temps que novice)

Je comprendrai néanmoins une lassitude voire un désintéressement.

A bientôt j'espère

RE

je ne connaissais pas les semaines ISO. Je ne suis pas un pro

C'est une règle de gestion en France, pas une question informatique.

Mon idée au départ était de piloter 3 TCD grâce à des relations avec 2 segments Secteur et Mois_ref, ensuite de remplir le calendrier sur une feuille modèle avec les résultats des TCD pour ensuite copier le modèle pour chaque secteur pour une période donnée (en VBA).

PowerPivot, basé sur le modèle de bases cubes, est plus complexe à appréhender. Je pense difficile de comprendre les deux Power en même temps pour débuter...

PowerPivot offre des possibilités inexistantes dans les TCD standards mais ne dispose pas de certaines possibilités des TCD standards...

Je trouve aussi que les ressources sont importantes 3240 lignes de requête pour une base de 400 lignes. C gros!

Tu veux afficher toutes les dates quel que soit le secteur on obtient donc nombre de dates X nombre de secteurs

Vouloir afficher des lignes sans données dans un TCD est une approche bizzare : j'y ai répondu mais sans conviction sur l'intérêt...

Là, sans contexte, j'ai du mal à situer concrètement ce que tu faire...

Bonjour et merci Chris pour tes précisions

Pour avoir une vue globale du projet l'objectif est une présentation d'un rapport sous forme de calendrier, pour chaque secteur (si besoin) et par période, des durées et déplacements (c'est fait avec ton astuce qui alourdi obligatoirement la requête)

Le temps total de la période, en fonction du secteur, s'arrondi en heure, demi-journée, journée (d'où le segment que je voulais lier)

La différence entre l'arrondi et le réel que j'appelle solde (>0 ou<0) est si besoin (en fonction du secteur) reporté sur la période suivante

A chaque nouveau secteur qui apparaît dans la base, il faut compléter le tableau [exécution et besoin] avant d'éditer les rapports (eh oui, parfois il est inutile selon le secteur!)

Il reste à totaliser la durée mensuelle puis effectuer les arrondis et ajouter le solde de la période précédente (sur une base externe)

J'avais traité cela en VBA en 8 jours, ça fait un mois que j'y suis, certes pas à plein temps, retraite oblige, mais j'applique le dicton aristotélicien "viellir, c'est cesser d'apprendre"

J'aurais au moins appris ton produit cartésien et les semaines iso, mais les mois iso n'existent pas, dommage...

Effectivement ça ne peut que devenir lourd. Quant aux TCD, j'avais l'espoir de les détourner pour en faire plus, mais visiblement c'est impossible.

Je pense qu'en l'état de mes connaissances actuelles c'est plus corsé que prévu, j'avance pas à pas mais proche de l'abandon dans cette voie.

Merci encore pour ta tempérance et tes explications.

Rechercher des sujets similaires à "liaison power query pivot tcd rapport filtres lignes vides"