Megosztás a következőn keresztül:


Állapotalapú mérték hozzáadása a Power BI-jelentéshez

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

A hatékonyság megértéséhez fontos szempont, hogy egy munkaelem mennyi időt tölt egy adott munkafolyamat-állapotban vagy állapotsorozatban. A ciklusidő és az átfutási idő elemzési vezérlői bizonyos mértékeket biztosítanak az állapotban töltött időről. Előfordulhat azonban, hogy ezek a widgetek nem rendelkeznek a kívánt részletességgel.

Ez a cikk adatelemzési kifejezéseket (DAX) használó recepteket tartalmaz a munkaelemek által az állapotok kombinációjában töltött idő kiértékeléséhez. Megtudhatja, hogyan adhat hozzá a következő mértékeket és számított oszlopokat a Power BI-jelentésekhez, és hogyan hozhat létre különböző trenddiagramokat. Minden mező számított oszlop, kivéve az elsőt.

Count Leírás
Munkaelemek száma (mérték) Az egyes munkaelemek számát számítja ki a munkaelem utolsó napi bejegyzése alapján
Állapotrendezés sorrendje Hozzáad egy oszlopot a munkafolyamat-állapotok állapotának rendezéséhez az állapotkategória-sorozat alapján
Előző dátum Hozzáad egy oszlopot, amely kiszámítja az előző dátumot a Dátum oszlop alapján
Dátum diff napokban Olyan oszlopot ad hozzá, amely kiszámítja a dátum és az előző dátum oszlop közötti napok számát
Az utolsó nap állapotban van Olyan oszlopot ad hozzá, amely meghatározza, hogy a Dátum érték az utolsó nap, amikor a munkaelem állapotban volt
Állapotidő napokban Hozzáad egy oszlopot, amely kiszámítja az egyes állapotokban töltött munkanapok számát
Előző állapot Olyan oszlopot ad hozzá, amely az adattábla minden egyes sorához azonosítja az előző állapotot
Módosult állapot Hozzáad egy oszlopot, amely meghatározza azt a dátumot, amikor egy munkaelem áttért egyik állapotról a másikra
Állapotfolyamat Olyan oszlop hozzáadása, amely az állapotfolyamatot szemlélteti munkaelem-áttűnésként az egyik állapotról a másikra
Állapotváltozások száma Olyan oszlopot ad hozzá, amely kiszámítja, hogy egy munkaelem hányszor vált át egyik állapotról a másikra
Állapotváltozások száma – Első kész Hozzáad egy oszlopot, amely meghatározza, hogy egy munkaelem hányszor vált át első alkalommal a Kész állapotra. Más szavakkal, amikor az bármely más állapotból a Kész állapotba kerül.
Állapotváltozások száma – Legutóbb javasolt Olyan oszlopot ad hozzá, amely meghatározza, hogy egy munkaelem korábban javasolt állapotban volt-e, miután egy későbbi állapotra váltott
Állapot újraindítási ideje napokban Hozzáad egy oszlopot, amely kiszámítja azokat a napokat, amikor egy munkaelem újraindítási állapotban van
Állapot-átdolgozás időpontja napokban Olyan oszlopot ad hozzá, amely kiszámítja azokat a napokat, amelyeket egy munkaelem nem befejezett állapotban tölt

Fontos

  • Ha számított oszlopot vagy mértéket ad hozzá a cikkben bemutatott példákhoz, cserélje le a Nézet nevét az Analytics-nézet vagy adattábla táblanevére. Cserélje le például a nézet nevét aktív hibákra.
    Képernyőkép a Power BI Table Tools (Adattábla neve) lapról.
  • Az Elemzés nem támogatja a napközi változatokat. Ezek a példák a legpontosabban használják a Napi időközt egy Elemzési nézetre való hivatkozáskor.
  • A számítások figyelmen kívül hagyják az összes napon belüli vagy időszakon belüli (heti/havi) változatot. Ez olyan konkrét forgatókönyvek váratlan eredményeit eredményezheti, mint például egy munkaelem, amely nem jelenít meg "Folyamatban" időt, ha egy munkaelem egy napnál rövidebb ideig "Folyamatban" állapotban van.
  • A Power BI alapértelmezett összesítéseit a rendszer a mértékek létrehozása helyett mindig használja, amikor csak lehetséges.
  • Egyes számítások a +0 értéket is tartalmazzák annak érdekében, hogy a BLANK helyett minden sorhoz számérték legyen belefoglalva.
  • Előfordulhat, hogy felül kell vizsgálnia néhány számított oszlopdefiníciót a projekt által használt munkafolyamat-állapotok alapján. Ha például a projekt a Javasolt, Folyamatban és Befejezett helyett Új, Aktív és Zárt elemet használ.
  • A cikkben említett Dátum oszlop nem natív oszlop az Azure DevOpsban; Ez egy származtatott oszlop, amelyet a PowerBI-ban hoztak létre a Time in State jelentés megkönnyítése érdekében. Ezt az oszlopot a meglévő dátummal kapcsolatos oszlopok, például a "Módosított dátum" vagy az "Állapotváltozás dátuma" használatával hozhatja létre.

Előfeltételek

Feljegyzés

Az ebben a cikkben ismertetett összes állapotbeli mérték gyakorlásához mindenképpen vegye fel a következő mezőket az Analytics-nézetekbe, a Power Querybe vagy az OData-lekérdezésbe: Létrehozás dátuma és állapota kategória az alapértelmezett mezők mellett: Terület elérési útja, Hozzárendelt, Iterációs útvonal, Állapot, Cím, Munkaelem azonosítója és Munkaelem típusa.

Érdemes lehet a Napi részletesség alapján elemzési nézetet is használni. A cikkben szereplő példák az Active Bugs Analytics nézeten alapulnak, amelyet a Power BI-ban egy egyéni elemzési nézet alapján az aktív hibák jelentésében definiált, azzal a kivétellel, hogy 60 napnyi előzmény és napi részletesség van kiválasztva. Állapítsa meg azt is, hogy a befejezett vagy lezárt munkaelemeket szeretné-e áttekinteni.

Munkaelemek száma mérték hozzáadása

A jelentések gyors létrehozása érdekében úgy alakítottuk ki az Analytics-nézeteket, hogy a Power BI alapértelmezett összesítéseivel működjenek. Az alapértelmezett összesítés és a mérték közötti különbség szemléltetéséhez egy egyszerű munkaelemszám-mértékkel kezdjük.

  1. Töltse be az Analytics-nézetet a Power BI Desktopba. További információ: Csatlakozás Power BI-adatösszekötővel, Csatlakozás elemzési nézethez.

  2. Jelölje ki az adattáblát, majd a menüszalag Táblázateszközök lapJának Számítások szakaszában válassza az Új mérték lehetőséget.

    Képernyőkép a Power BI Table Tools (Új mérték) lapról.

  3. Cserélje le az alapértelmezett szöveget a következő kódra, majd jelölje ki a pipát.

    Work Items Count=CALCULATE(COUNTROWS ('View Name'),LASTDATE ('View Name'[Date]))
    

    A Munkaelemek száma mérték a CALCULATEcikk későbbi részében részletesebben ismertetett , COUNTROWSés LASTDATE DAX-függvényeket használja.

    Feljegyzés

    Ne felejtse el lecserélni a Nézet nevét az Elemzés nézet táblanevére. Itt például a nézetnevet aktív hibákra cseréljük.

    Képernyőkép a Power BI Mértékeszközök lapjának Munkaelemek száma szintaxisáról.

Miben különbözik egy mérték a számított oszloptól?

A mértékek mindig a teljes táblázatot értékelik ki, ahol egy számított oszlop egy adott sorra vonatkozik. További információ: Számított oszlopok és mértékek a DAX-ban.

Hasonlítsa össze a Munkaelemek száma mértéket a munkaelem azonosítója alapján alapértelmezett darabszám-összesítéssel. A következő kép úgy jön létre, hogy hozzáadja a Kártyavizualizációt és a Munkaelemszám mértéket az első kártyához, a Munkaelem azonosítója tulajdonságot pedig a második kártyához.

Képernyőkép a Power BI jelentésoldaláról, két kártyáról, amelyen a Munkaelem száma mérték és a Munkaelem azonosítója tulajdonság látható.

Ha alapértelmezett összesítéssel szeretné lekérni a megfelelő darabszámot, alkalmazza az Aktuális aktuális érték "Igaz" értéket. Ez a minta a szűrők alapértelmezett összesítésre való alkalmazásának mintája az ebben a cikkben ismertetett számos példa alapja.

Képernyőkép a Power BI jelentésoldaláról, a munkaelem-azonosítók száma szűrve.

Állapotrendezés hozzáadása

A Power BI alapértelmezés szerint betűrendbe rendezve jeleníti meg az állapotokat egy vizualizációban. Félrevezető lehet, ha állapotban szeretné megjeleníteni az időt, és a Javasolt megjelenik a Folyamatban állapot után. Az alábbi lépések segítenek a probléma megoldásában.

  1. Ellenőrizze, hogy az Állapotkategória mező szerepel-e az Elemzés nézetben. Ez a mező az összes alapértelmezett megosztott nézetben szerepel.

  2. Jelölje ki az adattáblát, majd a menüszalag Táblázateszközök lapJának Számítások szakaszában válassza az Új oszlop lehetőséget.

    Képernyőkép a Power BI Table Tools (Új oszlop) lapról.

  3. Cserélje le az alapértelmezett szöveget a következő kódra, majd jelölje ki a pipát.

    State Sort Order =  
    SWITCH (  
        'View Name'[State Category],  
        "Proposed", 1,  
        "InProgress", 2,  
        "Resolved", 3,  
        4  
    )  
    

    Lásd a következő példát:

    Képernyőkép a Power BI Table Tools lapról, állapotkategória-bejegyzésről.

    Feljegyzés

    Előfordulhat, hogy felül kell vizsgálnia a definíciót, ha az állapotkategória által biztosítottnál részletesebbre van szüksége. Az állapotkategória minden munkaelem-típushoz megfelelő rendezést biztosít az állapot testreszabásától függetlenül.

  4. Nyissa meg az Adatnézetet , és válassza ki az Állapot oszlopot.

  5. Az Oszlopeszközök lapon válassza a Rendezés oszlop szerint lehetőséget, majd válassza az Állapotrendezés sorrendje mezőt.

    Képernyőkép a Power BI Oszlopeszközök lapról, a Rendezés oszlopválasztás szerint parancsról.

Előző dátum hozzáadása

Az állapoton belüli idő kiszámításának következő lépéséhez az adathalmaz minden adatsorához meg kell adni az előző időközt (nap, hét, hónap). Ez egy egyszerű számítás számított oszlop használatával. Ezt az oszlopot általában az ábrán látható módon definiálja.

Date Previous  = 
PREVIOUSDAY ( 'View Name'[Date] )

Ennek a megközelítésnek azonban két fő problémája van:

  • Csak napi időszakokban működik.
  • Nem kezeli az adatokban lévő réseket. Ha például egy munkaelemet áthelyeznek a projektek között.

A problémák megoldásához a számított oszlopnak meg kell keresnie az előző napot a Dátum mező beolvasásával.

A Dátum előző számított oszlop hozzáadásához a Táblázateszközök lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget a következő kódra, és jelölje be a pipát.

Date Previous =
CALCULATE (
    MAX ( 'View Name'[Date] ),
        ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
        'View Name'[Date] < EARLIER ( 'View Name'[Date] )
)

Az Előző dátum számított oszlop három DAX-függvényt használ, MAXALLEXCEPTés EARLIERa cikk későbbi részében részletesebben ismertetjük. Mivel az oszlop ki van számítva, a tábla minden sorához fut, és minden futtatáskor az adott sor környezetével rendelkezik.

Képernyőkép a Power BI táblázatdiagramról és az Előző dátum és dátum vizualizáció lapról.

Tipp.

A Dátum és az Előző dátum mező helyi menüjében a Dátum (dátumhierarchia helyett) lehetőséget választva egyetlen dátumot jeleníthet meg ezekhez a mezőkhöz.

Dátumdiffiff hozzáadása napokban

Az Előző dátum az egyes sorok előző és aktuális dátuma közötti különbséget számítja ki. A Date Diff in Days függvénnyel kiszámítjuk az egyes időszakok közötti napok számát. A napi pillanatkép legtöbb sorában az érték 1. Sok olyan munkaelem esetében azonban, amelyekben rések vannak az adathalmazban, az érték nagyobb, mint 1.

Fontos

Ehhez hozzá kell adnia az Előző dátum számított oszlopot a táblához.

Fontos figyelembe venni az adathalmaz első napját, ahol az Előző dátum üres. Ebben a példában 1-et adunk a sornak, hogy a számítás konzisztens maradjon.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

Date Diff in Days =
IF (
    ISBLANK ( 'View Name'[Date Previous] ),
    1,
    DATEDIFF (
        'View Name'[Date Previous],
        'View Name'[Date],
        DAY
    )
)

Ez a számított oszlop a ISBLANK DATEDIFF jelen cikk későbbi részében ismertetett DAX-függvényeket használja.

Az utolsó nap hozzáadása állapotban

Ebben a következő lépésben kiszámítjuk, hogy egy adott sor azt az utolsó napot jelöli-e, amikor egy adott munkaelem állapotban volt. Támogatja az alapértelmezett összesítéseket a Power BI-ban, amit a következő szakaszban adunk hozzá az Állapotidő a Napok oszlopban.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

Is Last Day in State = 
ISBLANK (CALCULATE (
    COUNTROWS ( 'View Name' ),
        ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
        'View Name'[Date] > EARLIER ( 'View Name'[Date] ),
        'View Name'[State] = EARLIER ( 'View Name'[State] )
))

Állapotidő hozzáadása napokban

A munkaelem adott állapotban töltött ideje mostantól kiszámítható az egyes munkaelemek dátumdiffiójának összeadásával . Ez a számítás magában foglalja az adott állapotban töltött összes időt, még akkor is, ha többször váltott az állapotok között. Az Utolsó nap állapotban lehetőség van az egyes sorok trendként való kiértékelésére a Dátum vagy a legfrissebb adatok használatával.

Fontos

Ehhez hozzá kell adnia a Dátum diff értékét a Napok és az Utolsó nap állapotban számított oszlopokban a táblához.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Time in Days = 
CALCULATE (
    SUM ( 'View Name'[Date Diff in Days] ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
    'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
    'View Name'[State] = EARLIER ( 'View Name'[State] )
) + 0

Halmozott oszlop trenddiagramok létrehozása a napok állapotideje alapján

Az Állapotidő napok oszlopban való bemutatásához a következő halmozott oszlopdiagramok jönnek létre. Az első diagram az egyes állapotokban lévő munkaelemek számát mutatja az idő függvényében.

Képernyőkép a Power BI halmozott oszlopdiagramról és a Vizualizáció lapról, amely a munkaelem címének számát mutatja dátum és állapot szerint.

A második diagram azt szemlélteti, hogy az aktív munkaelemek átlagos napjainak trendje egy adott állapotban van.

Képernyőkép a Power BI halmozott oszlopdiagramról és a Vizualizáció lapról, amely a munkaelemek átlagos állapotát jeleníti meg dátum szerint.

Állapotidő hozzáadása napokban – Legújabb (az utolsó nap állapotban van)

Ha egy tábla minden munkaeleméhez kiértékeli az állapotban töltött időt, vagy ha egy mező( például a Terület elérési útja) szűri, ne használja az Állapotidő napokban oszlopot az összesítésben. Az összesítés a munkaelem állapotának minden napjára érvényes értéket használja. Ha például egy munkaelem hétfőn volt folyamatban, és csütörtökre lett áthelyezve, az állapotban töltött idő három nap, de a Napok oszlopban az állapotidő összege hat nap, 1+2+3ami helytelen.

Állapotidő hozzáadása napokban – legkésőbb.

A probléma megoldásához használja az Állapotidő napokban lehetőséget, és alkalmazza a "True" (Igaz) állapotú utolsó nap állapotú szűrőt. Kiküszöböli a trendhez szükséges összes előzményadatot, és ehelyett csak az egyes állapotok legújabb értékére összpontosít.

Használja a Napok állapotidőt, és alkalmazza a

Állapotidő hozzáadása napokban – Folyamatban

Az előző példákban az adott munkaelem napok szerinti állapotideje csak akkor lesz megszámolva, ha a munkaelem adott állapotban volt. Ha a cél az, hogy egy adott munkaelemhez tartozó idő folyamatosan az átlaghoz legyen megadva, módosítania kell a számítást. Ha például a "Folyamatban" állapotot szeretnénk nyomon követni, akkor hozzáadjuk az Állapotidő napokban – Folyamatban számított oszlopot.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Time in Days - In Progress = 
CALCULATE (
    SUM ( 'View Name'[Date Diff in Days] ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
   'View Name'[Date] <= EARLIER('View Name'[Date]),
   'View Name'[State] = "In Progress"
) + 0

Feljegyzés

Előfordulhat, hogy felül kell vizsgálnia a definíciót a projekt által használt munkafolyamat-állapotok alapján. A cikkben szereplő példákban használt projekt például a "Folyamatban" munkafolyamat-állapotot használja, az Agilis, a Scrum és a CMMI-folyamatok azonban általában az "Aktív" vagy a "Véglegesített" állapotot használják a folyamatban lévő munka ábrázolására. Áttekintésért tekintse meg a Munkafolyamat állapotai és állapotkategóriái című témakört.

Az alábbi képen az látható, hogy az adott napon (jobbra látható) egy adott állapotban lévő munkaelemhez képest az állapoton belüli összes időt figyelembe kell venni (balra látható).

Az állapotban töltött átlagos idő trend-összehasonlítása

Az állapotidő napokban trendje több államban

A teljesítmény több állapotban történő elemzése a "Folyamatos" minta használatával is lehetséges. Ez a megközelítés azonban csak trenddiagrammal működik.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Time in Days - Working States = 
CALCULATE (
    SUM ( 'View Name'[Date Diff in Days] ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
   'View Name'[Date] <= EARLIER('View Name'[Date]),
   'View Name'[State] IN { "Committed", "In Progress" }
) + 0

Feljegyzés

Előfordulhat, hogy felül kell vizsgálnia a definíciót a projekt által használt munkafolyamat-állapotok alapján. Ha például a projekt az "Aktív" értéket használja a "Véglegesített" vagy a "Javasolt" helyett.

A bal oldali diagramon az összesített átlag látható, míg a jobb oldalon az egyes állapotok láthatók.

Több állapot trend-összehasonlítása

Az állapotidő lekérése napokban – Több állapot legújabb száma

Trend létrehozásakor az Állapotidő a napokban – A legújabb számított oszlopot használja. Az állapotokra vonatkozó szűrővel a Napok állapotában oszlop és az Utolsó nap állapotban lehetőséggel egyszerűen lekérheti az egyes állapotokban töltött munkaelemek vagy munkaelemek csoportjának teljes idejét.

Utolsó időpont az államokban

Előző állapot hozzáadása

Az Előző dátum számított oszlop az egyes munkaelemek korábbi értékeinek, például az előző állapotnak a keresésére is használható.

Fontos

Ehhez hozzá kell adnia az Előző dátum számított oszlopot a táblához.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Previous =
LOOKUPVALUE (
    'View Name'[State],
    'View Name'[Work Item Id], 'View Name'[Work Item Id],
    'View Name'[Date], 'View Name'[Date Previous]
)

Ez a számított oszlop a LOOKUPVALUEcikk későbbi részében ismertetett értéket használja.

Az első LOOKUPVALUE paraméter a 'View Name'[State][State] értékét adja vissza.

A következő paraméter azt határozza meg, 'View Name'[Work Item Id], 'View Name'[Work Item Id]hogy csak az aktuális sornak megfelelő munkaelem-azonosítóval rendelkező sorokat vegye figyelembe.

Az utolsó paraméter pedig azt adja meg, 'View Name'[Date], 'View Name'[Date Previous]hogy a visszaadott sor dátumának [Date] karakterrel kell rendelkeznie, amely megfelel az aktuális sor [Előző dátum] értékének. Egy pillanatképben csak egy sor felelhet meg ennek a feltételnek.

Módosult állapot hozzáadása

Az Előző állapot oszlop használatával megjelölhetjük az egyes munkaelemek sorait, ahol az állapotváltás történt. A Szakasz módosított számított oszlopának két különleges szempontja van:

  • A *Előző állapot üres értékei, amelyeket a munkaelem létrehozási dátumára állítottunk be
  • A munkaelem létrehozása állapotváltásnak minősül

Fontos

Ehhez hozzá kell adnia az Előző állapot számított oszlopot a táblához.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Changed =
IF (
    ISBLANK ( 'View Name'[State Previous] ),
    'View Name'[Created Date].[Date] = 'View Name'[Date],
    'View Name'[State Previous] <> 'View Name'[State]
)

A számított oszlop logikai érték, amely azonosítja, hogy a sor állapotáttűnés-e. Az operátor használatával helyesen foghatja fel azokat a Not Equal To sorokat, ahol az előző állapot nem egyezik az aktuális állapottal, ami azt jelenti, hogy az összehasonlítás a várt módon igaz értéket ad vissza.

Állapotfolyamat hozzáadása

A State Previous és az State Changed számított oszlopokkal létrehozhat egy oszlopot, amely egy adott munkaelem állapotfolyamatát mutatja be. Az oszlop létrehozása nem kötelező a cikk alkalmazásában.

Fontos

Ehhez hozzá kell adnia az Előző állapot és az Állapotváltozás számított oszlopokat a táblához.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Flow = 
IF([State Changed], [State Previous], [State]) & " => " & [State]

Állapotváltozások számának hozzáadása

A bonyolultabb mértékekbe lépve az állapotváltozások teljes számát kell ábrázolnunk, hogy összehasonlíthassuk egy adott munkaelem adatsorait. A reprezentációt az Állapotváltozások száma számított oszlop hozzáadásával kapjuk meg.

Fontos

Ehhez hozzá kell adnia az Állapotváltozás számított oszlopot a táblához.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Change Count = 
CALCULATE (
    COUNTROWS ( 'View Name' ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
    'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
    'View Name'[State Changed]
) + 0

Állapotváltozások számának hozzáadása – Utolsó javasolt és állapot-újraindítási idő napokban

Az állapot újraindítási ideje napokban meglehetősen összetett számítás. Az első lépés annak megkeresése, hogy egy munkaelem mikor volt utoljára javasolt állapotban. Adja hozzá az Állapotváltozások száma – Utolsó javasolt számított oszlopot.

Feljegyzés

Előfordulhat, hogy felül kell vizsgálnia a következő definíciókat a projekt által használt munkafolyamat-állapotok alapján. Ha például a projekt az "Új" értéket használja a "Javasolt" helyett.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Change Count - Last Proposed = 
CALCULATE (
    MAX ( 'View Name'[State Change Count] ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
    'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
    'View Name'[State] = "Proposed"
)

Ezután térjen vissza a múlthoz, és ellenőrizze, hogy voltak-e aktív állapotok a javasolt állapot előtt. Végül összegzi azokat a napokat, amikor a munkaelem aktív állapotban volt a legutóbbi javaslat előtt.

A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

State Restart Time in Days = 
CALCULATE (
    SUM ( 'View Name'[Date Diff in Days] ),
    ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
    'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
    'View Name'[State Change Count] < EARLIER('View Name'[State Change Count - Last Proposed] ),
    'View Name'[State] <"Proposed"
) + 0

Mivel a Napok állapot újraindítási ideje minden adatsorhoz frissül, létrehozhat egy trendet, amely kiértékeli az átdolgozásokat adott futamokon, vagy megvizsgálhatja az egyes munkaelemek újradolgozását az Aktuális állapot használatával.

Állapot-átdolgozás időének hozzáadása napokban

A napok állapot-újraindítási idejéhez hasonlóan a Napok állapotátdolgozás ideje is azt keresi, hogy egy munkaelem mikor volt első alkalommal a Kész állapot kategóriában. Ezután egy munkaelem minden nap nem befejezett állapotban tölt, átdolgozásnak számít.

  1. Hozza létre az "Állapotváltozások száma – Első kész" oszlopot. Ez az oszlop nyomon követi, hogy egy munkaelem hányszor vált át a Kész állapotra bármely más állapotból.

    State Change Count - First Completed =
    VAR CompletedState = "Completed"
    RETURN
    CALCULATE(
       COUNTROWS('YourTable'),
       FILTER(
           'YourTable',
           'YourTable'[State] = CompletedState
           && 'YourTable'[State Change Date] = MIN('YourTable'[State Change Date])
       )
    )
    
  2. A Modellezés lapon válassza az Új oszlop lehetőséget, majd cserélje le az alapértelmezett szöveget az alábbi kódra, és jelölje be a pipát.

    State Rework Time in Days = 
    IF (
        ISBLANK ( 'View Name'[State Change Count - First Completed] ),
        0,
        CALCULATE (
            SUM ( 'View Name'[Date Diff in Days] ),
            ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
            'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
            'View Name'[State Change Count] <= EARLIER ( 'View Name'[State Change Count - First Completed] ),
            'View Name'[State] IN {"Completed", "Closed", "Cut" } = FALSE()
        ) + 0
    )
    

    Feljegyzés

    Előfordulhat, hogy felül kell vizsgálnia az előző definíciót a projekt által használt munkafolyamat-állapotok alapján. Ha például a projekt a Kész elemet használja a Zárt helyett, és így tovább.

DAX-függvények

Ebben a szakaszban további információt talál a cikkben hozzáadott számított oszlopok és mérték létrehozásához használt DAX-függvényekkel kapcsolatban. Lásd még : DAX, Időintelligencia-függvények.

Függvény Leírás
ALLEXCEPT A tábla összes környezeti szűrőjének eltávolítása a megadott oszlopokra alkalmazott szűrők kivételével. Lényegében a táblázat sorait csak azokra csökkenti, ALLEXCEPT ('View Name'', 'View Name'[Work Item Id]) amelyek ugyanazt a munkaelem-azonosítót használják, mint az aktuális sor.
CALCULATE Ez a függvény szinte minden példa alapja. Az alapstruktúra egy kifejezés, amelyet a kifejezésre alkalmazott szűrők sorozata követ.
COUNTROWS Ez a függvény COUNTROWS ( 'View Name' )egyszerűen megszámolja a szűrők alkalmazása után megmaradó sorok számát.
DATEDIFF A két dátum között keresztezett intervallumhatárok számát adja vissza. DATEDIFFkivonja az Előző dátumot a dátumból a közöttük lévő napok számának meghatározásához.
EARLIER A megadott oszlop aktuális értékét adja vissza az említett oszlop külső próbaidőszakában. Az adatkészletet például csak azokra a sorokra csökkenti, 'View Name'[Date] < EARLIER ( 'View Name'[Date] ) amelyek a függvény használatával EARLIER hivatkozott aktuális sor dátuma előtt történtek. EARLIER nem hivatkozik a korábbi dátumokra; a számított oszlop sorkörnyezetét határozza meg.
ISBLANK Ellenőrzi, hogy egy érték üres-e, és IGAZ vagy HAMIS értéket ad vissza. ISBLANKkiértékeli az aktuális sort annak megállapításához, hogy az előző dátumnak van-e értéke. Ha nem, akkor a Ha utasítás a Dátum diff értéket napok szerint 1 értékre állítja.
LASTDATE A szűrőt LASTDATE például LASTDATE ( 'View Name'[Date] )egy kifejezésre alkalmazva megkeressük a legújabb dátumot a tábla összes sorában, és eltávolítjuk azokat a sorokat, amelyek nem azonos dátummal osztoznak. Az Analytics-nézet által létrehozott pillanatképtáblával ez a szűrő hatékonyan kiválasztja a kijelölt időszak utolsó napját.
LOOKUPVALUE A search_columnName és search_value által megadott feltételeknek megfelelő sor result_columnName értékét adja vissza.
MAX Egy oszlop legnagyobb numerikus értékét adja vissza, vagy két skaláris kifejezés között. Az összes szűrő alkalmazása utáni legutóbbi dátum meghatározásához alkalmazunk MAX ( 'View Name'[Date] ).