Wat is zelf in Python: voorbeelden uit de echte wereld
Wat is zelf in Python: voorbeelden uit de echte wereld
In deze tutorial bespreek ik vier verborgen valkuilen in LuckyTemplates die je datamodel en/of je rapport kapot kunnen maken. Ik zal u niet alleen laten zien hoe u deze problemen kunt voorkomen bij het maken van LuckyTemplates-rapporten, maar ook hoe u een uitgebreide sjabloon kunt maken die ze allemaal effectief aanpakt en uw LuckyTemplates-ontwikkeling versnelt. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.
Inhoudsopgave
4 Ruiters van LuckyTemplates Apocalyps bij het maken van LuckyTemplates-rapporten
Relaties automatisch detecteren
De eerste valkuil bij het maken van LuckyTemplates-rapporten is Auto-detect Relationships . Hierdoor wordt de besluitvorming over uw datamodellering overgedragen van uw oordeel en expertise naar een geautomatiseerd proces binnen LuckyTemplates. Ik denk dat Microsoft Clippy uit de jaren 90 moet terughalen om je op zijn minst een eerlijke waarschuwing te geven en je te laten goedkeuren of je wilt dat ze dingen met je datamodel doen of niet.
Dit is een echt voorbeeld van wat werk dat een vriend van mij deed voor de gegevensuitdaging 15. Ze plaatste deze tabel met totale winsten in een nieuwer gegevensmodel en vergat de Auto-detect-relaties uit te schakelen.
Als resultaat bouwde het drie relaties in deze tabel van het verkeerde type in de verkeerde richting en voegde bidirectionele relaties toe in plaats van unidirectionele relaties. Het zorgde voor veel onduidelijkheid binnen haar model en ondermijnde de nauwkeurigheid van haar DAX.
Als dit niet zegt dat je het moet uitschakelen, weet ik niet zeker wat het wel zal doen. Als u Relaties automatisch detecteren hebt ingeschakeld en u een losgekoppelde tabel in uw model plaatst, bijvoorbeeld oogstwaarden voor een slicer, maar u wilt niet dat deze is verbonden met uw gegevensmodel, wordt deze automatisch verbind die en maak in feite het losgekoppelde element van die tabel dat u probeerde te bereiken onbruikbaar.
Automatische datum/tijd
Het tweede waar ik het over wil hebben is de automatische datum/tijd . Ik denk dat dit een functie is die bedoeld was om beginners te helpen, die zich niet bewust waren van de fijne kneepjes van speciale Date-tabellen.
Deze functie maakt een enkele datumtabel op elk van de datums en uw gegevensmodel aan de ene kant van een een-op-veel-relatie. Het kan dus in sommige gevallen vijf of zes verschillende datumtabellen binnen uw model maken. Het betekent ook dat het zo is gemaakt dat je met de datums te maken hebt in een vreemd hiërarchisch formaat. Het maakt het model niet alleen onoverzichtelijk, maar het maakt het ook moeilijk om ermee te werken.
Dus laten we naar LuckyTemplates springen. We gaan een sjabloonbestand maken, al deze functies in de sjabloon uitschakelen en die sjabloon vervolgens opslaan met een andere functionaliteit. We kunnen dat elke keer openen als we een nieuw rapport maken en het die vier ruiters laten negeren.
Als we nu naar Opties en instellingen gaan, zie je in Global dat er geen manier is om die automatische detectie van relaties uit te schakelen. De enige manier om het uit te schakelen is in Data Load onder Current File. Dus als je geen sjabloon maakt, moet je dit elke keer uitschakelen. En als je het je niet meer herinnert, zal het een aantal van die slechte relaties creëren.
Dus schakel dat uit, evenals de automatische datum / tijd. Zorg er bovendien voor dat Detecteer kolomtypen en koppen voor ongestructureerde bronnen ook is uitgeschakeld, iets in Power Query dat, vooral met CSV-bestanden, problemen kan veroorzaken omdat het alleen beoordeelt op basis van de eerste paar honderd rijen. Nogmaals, het neemt een aantal slechte beslissingen die mogelijk problemen kunnen veroorzaken bij het maken van Power BI-rapporten.
Je kunt Auto Date/Time ook wereldwijd uitschakelen, wat betekent dat we de eerste twee ruiters direct uit de poort hebben verslagen.
We gaan verder en gaan een datumtabel in onze sjabloon plaatsen. De datumtabel die ik gebruik is Melissa's ongelooflijke Extended Date-tabel, die je kunt vinden op het LuckyTemplates-forum.
Nu gaan we naar LuckyTemplates, gaan naar Home, de nieuwe bron en vervolgens Blank Query . Als we vervolgens naar de geavanceerde editor gaan, kunnen we de tabelcode Extended Date plakken.
En op dit punt moeten we een beslissing nemen. Omdat we een sjabloon gebruiken, weten we niet hoe de feitentabel eruit zal zien. Het zal voor elk rapport anders zijn.
En dus, als uw feitentabellen een redelijk constante duur hebben, kunt u een dynamische start- en einddatum voor uw datumtabel maken. Wat ik echter meestal doe in deze situatie, is dat ik gewoon een jaartal gebruik waarvan ik weet dat het niet correct is, maar waarvan ik weet dat als ik vergeet om naar binnen te gaan en dingen te veranderen, ik echt vreemde resultaten zal krijgen. Dan zal het mijn geheugen opfrissen en me eraan herinneren om naar binnen te gaan en de datums van mijn Date-tabel te matchen met mijn feitentabel.
Dus in dit voorbeeld zet ik hier gewoon 1950. We willen altijd een volledig jaar gebruiken in onze datumtabel, dus ik zal het tot het einde van 1950 houden. Het fiscale jaar begint, laten we zeggen, op 1 juli.
We hebben vervolgens op Invoke gedrukt en het bouwt die datumtabel voor ons op. Als we later de vorm van de duur van onze feitentabellen kennen, gaan we hier naar binnen en wijzigen we die datums. Het zal de datumtabel bijwerken om overeen te komen met die duur.
Datumtabellen markeren bij het maken van LuckyTemplates-rapporten
Nu wil ik het hebben over het markeren van datumtabellen . Dit is een van de andere ruiters waar we nog niet mee te maken hebben gehad. In uw Datum-tabel kunt u dit doen in de modelweergave of in de tabelweergave. Ik doe het meestal in de tabelweergave.
Het zal u vragen om het veld dat u wilt valideren. In de uitgebreide datumtabel is dat altijd het veld Datum .
Als je op valideren drukt, doet het zes dingen achter elkaar. Het bevestigt dat het Datum-veld unieke waarden bevat, dat het geen null-waarden bevat, dat het aaneengesloten datumwaarden bevat, en dat als het een Datum/Tijd-veld is (wat in dit geval niet het geval is, het een Datum-veld is). Als het een Datum/Tijd-veld zou zijn, zou het bevestigen dat het hetzelfde tijdstempel heeft voor elk van de ingangen van die datum.
Bovendien verwijdert het de automatische datumhiërarchieën waar ik het eerder over had. Het zorgt er ook voor dat bepaalde functies die een aaneengesloten gevalideerde datum verwachten onder time intelligence-functies correct werken. In sommige gevallen zullen die functies niet goed werken zonder een correct gemarkeerde datumtabel en een gevalideerd datumveld.
Dus, door je Date-tabel te markeren, doet het al die goede dingen, en dat doen we in de sjabloon. Zelfs als we de duur van de begin- en einddatum wijzigen, blijft deze een gemarkeerde datumtabel.
Automatische samenvatting
Het laatste dat we willen doen, is de automatische samenvatting .
Het laatste dat we willen doen, is de automatische samenvatting . Als we naar onze veldweergave gaan, zien we de opteltekens naast al onze numerieke velden. U zult onder Kolomhulpmiddelen zien dat het een som van Sum naast al deze plaatst. Het gaat ervan uit dat het weet wat we ermee willen doen.
Dit raakt aan de kwestie van impliciete versus expliciete maatregelen. Nogmaals, u wilt deze besluitvorming niet overdragen aan LuckyTemplates dat u expliciete metingen wilt maken, en u wilt deze Sum-functies uitschakelen. In native LuckyTemplates is het niet mogelijk om al deze functies tegelijkertijd uit te schakelen.
Dus dan heb je de moeizame taak om ze allemaal te doorlopen waar die samenvatting aan is toegevoegd, en naar Column Tools te gaan en vervolgens op Niet samenvatten te klikken . Als je dat doet, zul je zien dat het optelteken wegvalt.
Maar u zult merken dat deze datumtabel veel van deze automatische samenvattingen bevat. Je vraagt je misschien af of er geen eenvoudigere manier is om dit te doen. Het antwoord is ja, u kunt de Tabular Editor 3 (TE3) gebruiken.
We gaan profiteren van de geavanceerde scriptmodus in TE3 om dit allemaal in één keer uit te schakelen. Om dat te doen, gaan we naar Macro's en klikken vervolgens op Samenvatting voor volledig model uitschakelen . Je zult zien dat het slechts een relatief kort cis-script is.
Vervolgens gaan we terug naar de TOM Explorer, klikken op ons datamodel, klikken met de rechtermuisknop op Macro's en klikken vervolgens op Samenvatting voor volledig model uitschakelen. En dat schakelde de samenvatting voor onze hele Date-tabel uit met slechts een paar klikken. Dat is gewoon een geweldige functie in TE3.
Naast deze vier ruiters is er nog één belangrijk ding dat je moet doen. U moet uw sleutelvelden verbergen aan de kant van de feitentabel van de relatie. Om dit te doen, moet u ze afzonderlijk doornemen en ze allemaal verbergen in native LuckyTemplates. Maar u kunt dat ook in TE3 scripten en met slechts twee klikken wordt alles correct gedaan binnen uw sjabloon.
Nadat we die vier ruiters hebben uitgeschakeld, maken we ons leven gemakkelijker vanuit ontwikkelingsstandpunt, qua thema's en achtergronden. U kunt zoiets als dit maken: een sjabloon met uw bedrijfslogo, de achtergrondkleur, enz. Hierna kunt u het opslaan als een PBIT-sjabloon, niet als een PBX-bestand. Wanneer je dit bestand opent, krijg je een mooie startplaats voor je ontwerp met al die vier ruiters uitgeschakeld en "verslagen".
Best practices voor de ontwikkeling van LuckyTemplates-rapporten
Best Practices voor LuckyTemplates voor rapporten en visualisaties
Gegevensmodellering in LuckyTemplates: tips en best practices
Conclusie
In deze blog heb ik je de vier verborgen valkuilen in LuckyTemplates laten zien, hoe je ze kunt vermijden, en meer tips voor het snel en gemakkelijk maken van rapporten. Hopelijk geeft dit u wat stof tot nadenken en hoe u een vergelijkbare sjabloon wilt opzetten en enkele van die grote valkuilen bij het maken van LuckyTemplates-rapporten wilt vermijden .
Proost!
Wat is zelf in Python: voorbeelden uit de echte wereld
Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.
In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.
Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.
In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.
Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.
Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.
Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.
Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.
Wat is LuckyTemplates Gateway? Alles wat u moet weten