LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Pentru tutorialul de astăzi, voi arăta cum puteți automatiza procesul de sortare a unei coloane după o altă coloană în cadrul serviciilor de analiză LuckyTemplates și SSAS sau SQL server. Puteți viziona videoclipul complet al acestui tutorial în partea de jos a acestui blog.

În acest exemplu, avem tabelul Date cu mai multe coloane. Unele coloane sunt partea întreagă, pe care o vom ascunde; iar unele coloane sunt partea șirului, pe care o vom arăta utilizatorului final.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Deci, avem coloanele An calendaristic, Calendar Year Month și Month. Ceea ce vrem să facem este să automatizăm sortarea acestor trei coloane după partea lor întreagă. Voi sorta anul calendaristic după numărul anului calendaristic, luna anului calendaristic după numărul lunii anului calendaristic, precum și luna după numărul lunii.

Dar nu vom face asta unul câte unul. Vom rula un script care îl va sorta automat pentru acest tabel special. În cazul în care aveți mai multe coloane pentru mai multe tabele, puteți utiliza acel script pe acele seturi de tabele.

Vom folosi Editorul Tabular pentru a scrie acel cod C#, dar pentru moment, Editorul Tabular nu are un IntelliSense pentru limbajul C#. Pentru a face mai ușor, vom folosi Visual Studio (VS), unde avem limbajul IntelliSense pentru C# și puteți folosi și codul VS.

Cuprins

Sortarea coloanelor în LuckyTemplates și SSAS folosind C#

Mai întâi, trebuie să creăm un nou proiect în Visual Studio, care va fi Console App (.Net Framework) pentru limbajul C#. Să selectăm acel clic pe Următorul.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Apoi, putem oferi orice nume proiectului. Voi apela acest SortBy și voi face clic pe Creare.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Acum, puteți vedea că avem codul. Odată ce codul funcționează, pur și simplu îl vom copia și lipi în interiorul Tabular Editor.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Dar, pentru ca codul să funcționeze în Visual Studio, trebuie să setăm o referință la o bibliotecă. Și pentru asta, putem pur și simplu să facem clic pe Referințe și să alegem opțiunea Gestionare pachete NuGet în opțiunea browserului.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

În interiorul opțiunii de navigare, trebuie să scriem servicii de analiză . Și apoi, în opțiunile disponibile, trebuie să o selectăm pe a doua și să facem clic pe Instalare. Va începe instalarea și va dura câteva secunde până când instalarea se va finaliza.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Apoi, trebuie să scriem în cod, Utilizând Microsoft.AnalysisServices.Tabular și apoi să scriem un punct și virgulă. Vom crea un obiect server, astfel încât să putem scrie pur și simplu Server , iar numele obiectului server va fi Server însuși și vom scrie New Server .

Deci, practic, creăm un nou obiect în interiorul memoriei. Și pentru a conecta acel server la fișierul LuckyTemplates, vom folosi o metodă a obiectului server. Deci, să scriem server.Connect și aici vom furniza numărul portului pe care ascultă AnalysisServices din LuckyTemplates.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Pentru a găsi acel număr de port, mergem la Instrumente externe, facem clic pe DAX Studio , iar în partea de jos, vom găsi gazda locală. Acesta este numărul de cod pe care serviciile de analiză a serverului SQL pe care le avem în interiorul LuckyTemplates ascultă modificările pe care le trimitem prin LuckyTemplates sau orice alt instrument extern.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Serverul este un lucru, dar un server poate avea mai multe modele și în cazul SSAS. Dar acum, în LuckyTemplates, avem un singur model. Deci, vom declara acel model. Scriem aici Modelul este egal cu (=) server.Databases și vom accesa prima bază de date din acel server, așa că vom scrie .Model .

Acum să testăm dacă acea parte a codului funcționează sau nu. Pentru a face asta, vom tipări pur și simplu lista tuturor tabelelor pe care le avem în acel model de date. Deci, vom introduce aici, pentru fiecare (Tabel t în model.Tables) , deschidem paranteza și apăsăm Enter.

După aceea, introducem Console.WriteLine (t.Name) . Pentru a ne asigura că fereastra nu se închide automat odată ce imprimă numele tabelelor, vom scrie acel Console.ReadLine , deschiderea și închiderea parantezei și un punct și virgulă. Acum, tot ce trebuie să facem este să facem clic pe opțiunea Start și să așteptăm să se execute.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Puteți vedea că putem tipări numele tabelelor pe care le avem în interiorul modelului de date. Avem datele, produsul, clientul și magazinul. Asta confirmă că configurația pe care am creat-o funcționează.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Așa că acum, putem de fapt să intrăm în carnea codului și să începem să creăm codul care ne va ajuta să sortăm acea coloană după omologul întreg.

Să scăpăm de tot ce am creat din partea ForEach . Vom păstra serverul și modelul așa cum sunt. Să declarăm o variabilă care va ține numele tabelului pe care dorim să iterăm. Îl voi numi ca DatesTable , iar numele tabelului va fi practic Dates .

În continuare, vom avea foreach var t în model.Tables , apoi vom folosi o clauză where , astfel încât să putem spune unde T merge la t.Name ar trebui să fie egal cu DatesTable . Dacă în prezent iterăm pe DatesTable, vom iniția o altă buclă peste toate coloanele acelui DatesTable. Deci, pentru asta, putem scrie pentru fiecare var c în t.Columns .

Pentru a testa dacă iterăm doar peste DatesTable și avem acces la toate coloanele DatesTable, putem pur și simplu să tipărim Console.WriteLine și vom spune c.Name .

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Dacă apăs pe F5, puteți vedea că avem acces la coloane.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Acum putem continua și să scriem mai mult cod.

Vom crea o listă de tupluri care va conține încă trei coloane. Una dintre coloane va fi coloana țintă. A doua coloană va fi coloana prin care dorim să sortăm coloana țintă, iar a treia coloană va ține pur și simplu adevărat sau fals, indiferent dacă vrem să ascundem coloana prin care sortăm de fapt.

Să presupunem că vrem să sortăm coloana Anului calendaristic după numărul anului calendaristic. Prima coloană va conține Anul calendaristic, a doua coloană va fi pentru Numărul anului calendaristic, iar a treia coloană va decide dacă vrem să ascundem coloana Numărul anului calendaristic după ce am finalizat sortarea sau nu.

Și pentru asta, să revenim la Visual Studio, unde vom crea o nouă variabilă. Îi poți numi orice vrei. În acest exemplu, îl voi numi colOperations . În continuare, vom scrie new , apoi vom crea o listă și vom scrie tipul de coloane (șir, șir și bool). După aceea, creăm tuplurile.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Deci, practic, pur și simplu creăm o listă de trei coloane, iar pentru trei coloane, am furnizat două rânduri. Acum, în bucla noastră foreach , vom iniția o buclă for . Deci, practic, ceea ce spunem este că declarăm o variabilă care începe cu i în fiecare iterație. Dacă i este mai mic decât colOperations.Count, atunci pur și simplu incrementați acel .

În continuare, vom scrie o instrucțiune IF . C.Name aparține numelui coloanei în care ne aflăm în prezent. Apoi, avem colOperations i . I , practic, ne permite să accesăm un anumit rând. Și când scriem .Item1 , putem accesa prima coloană, a doua coloană sau a treia coloană.

Deci, mai întâi vom folosi coloana Item1 . Dacă este adevărat, scriem pur și simplu c.SortByColumn ar trebui să fie egal cu t.Columns . Amintiți-vă că t este obiectul tabelului. Apoi, accesăm coloanele din acel tabel special. Vrem colOperations , rândul pe care ne aflăm în prezent în operațiunile pe coloană, iar coloana este practic obiectul Item2 .

În cele din urmă, pentru a ascunde acea coloană specială prin care aplicăm sortarea, scriem o ultimă linie de cod.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Deci, acum că am scris codul principal pe care urmează să-l executăm pe modelul nostru tabular, putem pur și simplu să copiam codul din var colOperations și să-l ducem la Editorul tabelar și apoi vom executa același cod.

Sortarea coloanelor în LuckyTemplates și SSAS utilizând Editorul tabelar

Nu vom folosi serverul sau obiectul model, deoarece în spatele scenei Editorul tabelar va ști automat la ce model LuckyTemplates sau modelul serviciilor de analiză trebuie să se conecteze. Deci, nu trebuie să folosim acele variabile, deoarece aceasta este deja sarcina Editorului tabelar pentru a identifica modul în care dorește să se conecteze la acele modele.

Înapoi în LuckyTemplates, vom lansa fie Editorul tabelar 3, fie Editorul tabelar 2. Puteți folosi oricare dintre acestea doriți. În acest caz, să mergem cu Editorul tabelar 3.

Mergem la fila Fișier, facem clic pe Cod nou C# și închidem opțiunea Proprietăți. Apoi, putem lipi codul aici. Singurul lucru de care trebuie să ne asigurăm este că în loc să folosim variabila model este să folosim obiectul model . Deci, să folosim M majuscule și să executăm acel cod.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Acum că scriptul a fost executat cu succes și că arată, de asemenea, trei modificări de model, vom remite modificările în modelul de date. Vom salva orice am aplicat acelor coloane.

Înapoi în LuckyTemplates, puteți vedea că numărul lunii este ascuns. Dacă dau clic pe coloana Lună și merg la Instrumente pentru coloane și la coloana Sortare după , puteți vedea că acea coloană a fost sortată după numărul lunii. Același lucru este valabil și cu numărul lunii anului calendaristic.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#

Anul calendaristic este sortat singur, deoarece nu aveam acea coloană în acel cod C#. Deci, ceea ce putem face este să lansăm înapoi Editorul tabelar și să creăm un alt tuplu. Și apoi, încă o dată executăm acel script.

LuckyTemplates și SSAS – Sortarea coloanelor folosind TE3 și C#


Editor tabelar LuckyTemplates: Versiunea 3 Revizuire și tutorial
LuckyTemplates Editor tabelar 3: Automatizare cu un script
Codare DAX în Editorul tabelar 3

Concluzie

Așa este cât de ușor este să automatizezi procesul de sortare a unei coloane după o altă coloană în și SSAS. Acesta a fost un exemplu foarte de bază despre cum puteți face acea operație în tabelul Date. Dar puteți îmbogăți această listă adăugând mai multe coloane și apoi verificați pentru un alt tabel.

În acest fel, puteți reduce timpul pe care trebuie să îl petreceți pentru sortarea acestor coloane pentru aceleași modele pe care le veți crea din nou și din nou.

Sper că ați găsit acest lucru util. Dacă aveți întrebări, spuneți-mi doar în secțiunea de comentarii.

Leave a Comment

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți