{"id":715,"date":"2019-10-18T14:51:24","date_gmt":"2019-10-18T12:51:24","guid":{"rendered":"http:\/\/bi-vaerkstedet.dk\/?page_id=715"},"modified":"2020-07-07T08:31:31","modified_gmt":"2020-07-07T06:31:31","slug":"kort-og-godt","status":"publish","type":"page","link":"http:\/\/bi-vaerkstedet.dk\/?page_id=715","title":{"rendered":"Kort og godt"},"content":{"rendered":"\n<h4 class=\"has-luminous-vivid-amber-color has-text-color wp-block-heading\"> Sm\u00e5 korte &#8211; men vigtige indsigter. <\/h4>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Best Practice<\/h2>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Modelering<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Oprettes en, en til mange eller mange til en relation mellem tabeller med automatisk dannede dato hierarkier bevares hierarkiet kun i den tabel der er p\u00e5 \u00e9n siden af relationen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oprettes en 1:1 relation mellem to tabeller med automatisk dannede dato hierarkier, bevares hierarkiet i den tabel relationen tr\u00e6kkes til (den der er nederst i vinduet til relations oprettelse).  <\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">DAX<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Iteratorer evaluere udtryk en linje ad gangen. DAX indeholder nedenst\u00e5ende iteratorer. De fleste iterator funktioner er navngivet som X-funktioner. Det er v\u00e6rd at bem\u00e6rke at den ofte bruget funktion  FILTER er en iterator samt at og&nbsp;<strong>beregnede kolonner<\/strong> virke som iterator.<br><br><\/p>\n\n\n\n<table id=\"tablepress-6\" class=\"tablepress tablepress-id-6 tablepress-responsive\">\n<thead>\n<tr class=\"row-1\">\n\t<td class=\"column-1\"><\/td><td class=\"column-2\"><\/td><td class=\"column-3\"><\/td><td class=\"column-4\"><\/td>\n<\/tr>\n<\/thead>\n<tbody>\n<tr class=\"row-2\">\n\t<td class=\"column-1\">ADDCOLUMNS<\/td><td class=\"column-2\">GENERATEALL<\/td><td class=\"column-3\">PRODUCTX<\/td><td class=\"column-4\">TOPN<\/td>\n<\/tr>\n<tr class=\"row-3\">\n\t<td class=\"column-1\">AVERAGEX<\/td><td class=\"column-2\">GEOMEANX<\/td><td class=\"column-3\">RANKX<\/td><td class=\"column-4\">TOPNSKIP<\/td>\n<\/tr>\n<tr class=\"row-4\">\n\t<td class=\"column-1\">CONCATENATEX<\/td><td class=\"column-2\">LASTNONBLANK<\/td><td class=\"column-3\">SAMPLE<\/td><td class=\"column-4\">VARX.P<\/td>\n<\/tr>\n<tr class=\"row-5\">\n\t<td class=\"column-1\">COUNTAX<\/td><td class=\"column-2\">MAXX<\/td><td class=\"column-3\">SELECTCOLUMNS<\/td><td class=\"column-4\">VARX.S<\/td>\n<\/tr>\n<tr class=\"row-6\">\n\t<td class=\"column-1\">COUNTX<\/td><td class=\"column-2\">MEDIANX<\/td><td class=\"column-3\">STDEVX.P<\/td><td class=\"column-4\">XIRR<\/td>\n<\/tr>\n<tr class=\"row-7\">\n\t<td class=\"column-1\">FILTER<\/td><td class=\"column-2\">MINX<\/td><td class=\"column-3\">STEDVX.S<\/td><td class=\"column-4\">XNPV<\/td>\n<\/tr>\n<tr class=\"row-8\">\n\t<td class=\"column-1\">FIRSTNONBLANK<\/td><td class=\"column-2\">PRECENTILEX.EXC<\/td><td class=\"column-3\">SUBSTITUTEWITHINDEX<\/td><td class=\"column-4\"><\/td>\n<\/tr>\n<tr class=\"row-9\">\n\t<td class=\"column-1\">GENERATE<\/td><td class=\"column-2\">PRECENTILEX.INC<\/td><td class=\"column-3\">SUMX<\/td><td class=\"column-4\"><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-6 from cache -->\n\n\n\n<p class=\"wp-block-paragraph\">Det er ikke god praksis at have indlejrede (nested) iteratorer.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">M\u00e5l eller beregnet kolonne?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Selv om m\u00e5l (measures) og beregnede kolonner p\u00e5 mange m\u00e5der minder om hinanden, og i nogen situationer kan begge benyttes, s\u00e5 er der betydelige forskelle. Beregnede kolonner beregnes n\u00e5r data opdateres, den enkelte r\u00e6kke er konteksten og beregnede kolonner er uafh\u00e6ngige af bruger handlinger i rapporterne.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Et m\u00e5l virker p\u00e5 aggregerede data afh\u00e6ngig af den aktuelle kontekst defineret udfra aktuelle filtreringer. Et m\u00e5l beregnes l\u00f8bende og \u00e6ndres af brugerens valg af filtreringer m.v. i rapporterne.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Brug beregnet kolonne n\u00e5r:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Resultatet skal anvendes i et udsnitsv\u00f8rkt\u00e6j (slicer)<\/li><li>Resultatet skal vises som dimensioner i en tabel eller et diagram.<\/li><li>Resultatet skal anvendes som filterbetingelse i et DAX udtryk.<\/li><li>Hvis der defineres et udtryk der er bundet dirrekte til kolonnerne f.eks. pris * m\u00e6ngde.<\/li><li>Der skal indeles i intevaller f.eks. aldersintervaller 0-18, 19-30 osv. <\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Brug m\u00e5l (measure) n\u00e5r:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>N\u00e5r der skal vises en beregning der er resultat af brugerens interaktive valg.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Se ogs\u00e5: <a rel=\"noreferrer noopener\" aria-label=\"Calculated Columns vs Measures (\u00e5bner i en ny fane)\" href=\"https:\/\/insightsoftware.com\/blog\/calculated-columns-vs-measures\/\" target=\"_blank\">Calculated Columns vs Measures<\/a>, <a rel=\"noreferrer noopener\" aria-label=\"Calculated Columns and Measures in DAX (\u00e5bner i en ny fane)\" href=\"https:\/\/www.sqlbi.com\/articles\/calculated-columns-and-measures-in-dax\/\" target=\"_blank\">Calculated Columns and Measures in DAX<\/a><\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Power Query &#8211; if s\u00e6tninger.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Fejl, ogs\u00e5 som resultat af if-s\u00e6tninger, kan h\u00e5ndteres med &#8220;try&#8221; &#8211; &#8220;otherwise&#8221;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If-s\u00e6tninger der tester flere gange p\u00e5 samme v\u00e6rdi evalueres i den r\u00e6kkef\u00f8lger de st\u00e5r, og<strong> linjer der er fundet sande evalueres ikke igen<\/strong>. Det betyder fx at hvis v\u00e6rdier skal grupperes efter st\u00f8rrelse skal if-s\u00e6tningerne komme i stigende r\u00e6kkef\u00f8lge, x>100, x>1.000, x>10.000 osv., x>1.000, x>10.000, x>100 vil give et forkert resultat.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sm\u00e5 korte &#8211; men vigtige indsigter. Best Practice Modelering Oprettes en, en til mange eller mange til en relation mellem tabeller med automatisk dannede dato hierarkier bevares hierarkiet kun i den tabel der er p\u00e5 \u00e9n siden af relationen. Oprettes en 1:1 relation mellem to tabeller med automatisk dannede dato hierarkier, bevares hierarkiet i den tabel relationen tr\u00e6kkes til (den der er nederst i vinduet til relations oprettelse). DAX Iteratorer&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-715","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/pages\/715","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=715"}],"version-history":[{"count":25,"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/pages\/715\/revisions"}],"predecessor-version":[{"id":1090,"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=\/wp\/v2\/pages\/715\/revisions\/1090"}],"wp:attachment":[{"href":"http:\/\/bi-vaerkstedet.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=715"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}