Forum Discussion

isidnis's avatar
isidnis
Regular Visitor
7 years ago

START OF MONTH different per category

Hello,

I have this sample data:

where start of month has been calculated as:

startofmonth = CALCULATE(STARTOFMONTH(DataABS[Fecha]),ALLNOBLANKROW(DataABS[max],DataABS[Fecha]))

My problem is that the first date of the month for the category ESM005 is not 11/03/19 but 13/03/19 that is actually the first day of the month where ESM005 has a value. I tried to add allnoblankrow but it didn´t work either.

 

Any ideas?

6 Replies

  • Hi!

     

    you may consider using EARLIER if you want to calculate the earliest date per device ID:

     

    startofmonth = CALCULATE(MIN(Table[Table.Fecha].[Date]), FILTER(Table, Table[deviceid]=EARLIER(Table[deviceid])))

    Hope it helps!

    Matej

     

     

    • isidnis's avatar
      isidnis
      Regular Visitor

      Thanks a lot for your reply.

       

       

      It doesn´t work, it says:

      EARLIER/EARLIEST refers to an earlier row context which doesn't exist.

      and I don´t think it would work in subsequent months.

       

      • MatejZukovic's avatar
        MatejZukovic
        Resolver I

        Hi Isidnis,

         

        It would be good if you share some sample data. 

         

        Another option would be creating 2 columns : 

         

        1. Concatenate deviceid & month-year of the date

        Month_DeviceID = FORMAT(Table[Fecha].[Date],"YYYY-MM") & ":" & Table[Table.deviceid]

        2. Calculate minimum date value per newly created Month_DeviceID:

         

         

        mindate = CALCULATE(MIN(Table[Table.Fecha]),ALLEXCEPT(Table,Table[Month_DeviceID]))

         

        Let us know if it works!

         

  • Anonymous's avatar
    Anonymous
    Not applicable

    CalulatedColumn = CALCULATE(MIN(fecha),ALLEXCEPT(Table,deviceid))

    • isidnis's avatar
      isidnis
      Regular Visitor

      Anonymous  your solution works for the column but it gives me the same date for all year long, when what I would like to do i to have the first date per month. 

      MatejZukovic  your solution works perfectly and it creates a column that has the first date of the month with a value for each category

       

      But now what I wanted to do next is not working. I have attached sample data for your reference.

      What I am looking for is to find out the difference between the value of any given date and the value at the beginning of the month (or the earliest of that month with value) and the previous day with measure for each category.

      The final goal is to be able to see average of daily values, total acumulated per month etc...

      Problems/restrictions:

      • I am working with DirectQuery since I am getting all data from an sql.

        Sample data

      ActSal	DATE	deviceId
      403969	2019-03-11	ESM001
      404468	2019-03-12	ESM001
      404947	2019-03-13	ESM001
      1517842	2019-03-13	ESM005
      1518351	2019-03-14	ESM005
      405432	2019-03-14	ESM001
      405950	2019-03-15	ESM001
      1518892	2019-03-15	ESM005
      1519403	2019-03-16	ESM005
      406435	2019-03-16	ESM001
      406918	2019-03-17	ESM001
      1519913	2019-03-17	ESM005
      1520425	2019-03-18	ESM005
      407404	2019-03-18	ESM001
      407905	2019-03-19	ESM001
      1520949	2019-03-19	ESM005
      1521429	2019-03-20	ESM005
      408368	2019-03-20	ESM001
      1521960	2019-03-21	ESM005
      408870	2019-03-21	ESM001
      409357	2019-03-22	ESM001
      1522472	2019-03-22	ESM005
      1523000	2019-03-23	ESM005
      409858	2019-03-23	ESM001
      1523388	2019-03-24	ESM005
      410225	2019-03-24	ESM001
      410726	2019-03-25	ESM001
      1523916	2019-03-25	ESM005
      1524440	2019-03-26	ESM005
      411224	2019-03-26	ESM001
      1524979	2019-03-27	ESM005
      411736	2019-03-27	ESM001
      412248	2019-03-28	ESM001
      1525518	2019-03-28	ESM005
      1526060	2019-03-29	ESM005
      412762	2019-03-29	ESM001
      1526566	2019-03-30	ESM005
      413243	2019-03-30	ESM001
      413747	2019-03-31	ESM001
      1527097	2019-03-31	ESM005
      1527190	2019-04-01	ESM005
      413836	2019-04-01	ESM001
      1527436	2019-04-02	ESM005
      414067	2019-04-02	ESM001
      414425	2019-04-03	ESM001
      1527817	2019-04-03	ESM005
      1528355	2019-04-04	ESM005
      414935	2019-04-04	ESM001
      1528922	2019-04-05	ESM005
      415474	2019-04-05	ESM001
      415614	2019-04-06	ESM001
      1529070	2019-04-06	ESM005
      415908	2019-04-07	ESM001
      1529379	2019-04-07	ESM005
      1529697	2019-04-08	ESM005
      416214	2019-04-08	ESM001
      416534	2019-04-09	ESM001
      1530029	2019-04-09	ESM005
      1530323	2019-04-10	ESM005
      416814	2019-04-10	ESM001
      1530743	2019-04-11	ESM005
      417219	2019-04-11	ESM001
      417755	2019-04-12	ESM001
      1531299	2019-04-12	ESM005
      1531876	2019-04-13	ESM005
      418306	2019-04-13	ESM001
      1532422	2019-04-14	ESM005
      418827	2019-04-14	ESM001
      419290	2019-04-15	ESM001
      1532912	2019-04-15	ESM005
      1533324	2019-04-16	ESM005
      419684	2019-04-16	ESM001
      1533864	2019-04-17	ESM005
      420197	2019-04-17	ESM001
      420604	2019-04-18	ESM001
      1534292	2019-04-18	ESM005
      1534394	2019-04-19	ESM005
      420701	2019-04-19	ESM001
      1534459	2019-04-20	ESM005
      420763	2019-04-20	ESM001
      420826	2019-04-21	ESM001
      1534524	2019-04-21	ESM005
      1534698	2019-04-22	ESM005
      420991	2019-04-22	ESM001
      1535079	2019-04-23	ESM005
      421351	2019-04-23	ESM001
      421577	2019-04-24	ESM001
      1535315	2019-04-24	ESM005
      1535466	2019-04-25	ESM005
      421723	2019-04-25	ESM001
      1535839	2019-04-26	ESM005
      422083	2019-04-26	ESM001
      422573	2019-04-27	ESM001
      1536355	2019-04-27	ESM005
      1536903	2019-04-28	ESM005
      423095	2019-04-28	ESM001
      1537437	2019-04-29	ESM005
      423602	2019-04-29	ESM001
      424096	2019-04-30	ESM001
      1537959	2019-04-30	ESM005
      1538466	2019-05-01	ESM005
      424577	2019-05-01	ESM001
      486	2019-05-01	ESM003
      958	2019-05-02	ESM003
      425007	2019-05-02	ESM001
      1538919	2019-05-02	ESM005
      1539403	2019-05-03	ESM005
      1462	2019-05-03	ESM003
      425466	2019-05-03	ESM001
      1965	2019-05-04	ESM003
      1539890	2019-05-04	ESM005
      425933	2019-05-04	ESM001
      1540462	2019-05-05	ESM005
      2561	2019-05-05	ESM003
      426481	2019-05-05	ESM001
      427008	2019-05-06	ESM001
      3135	2019-05-06	ESM003
      1541014	2019-05-06	ESM005
      1541494	2019-05-07	ESM005
      427464	2019-05-07	ESM001
      3634	2019-05-07	ESM003
      4093	2019-05-08	ESM003
      427885	2019-05-08	ESM001
      1541937	2019-05-08	ESM005
      1542285	2019-05-09	ESM005
      4456	2019-05-09	ESM003
      428214	2019-05-09	ESM001
      4849	2019-05-10	ESM003
      1542663	2019-05-10	ESM005
      428569	2019-05-10	ESM001
      428970	2019-05-11	ESM001
      1543086	2019-05-11	ESM005
      5287	2019-05-11	ESM003
      5845	2019-05-12	ESM003
      1543623	2019-05-12	ESM005
      429484	2019-05-12	ESM001
      430014	2019-05-13	ESM001
      1544179	2019-05-13	ESM005
      6423	2019-05-13	ESM003
      7002	2019-05-14	ESM003
      1544736	2019-05-14	ESM005
      430546	2019-05-14	ESM001
      431048	2019-05-15	ESM001
      1545265	2019-05-15	ESM005
      7551	2019-05-15	ESM003
      8089	2019-05-16	ESM003
      1545782	2019-05-16	ESM005
      431542	2019-05-16	ESM001
      432027	2019-05-17	ESM001
      1546293	2019-05-17	ESM005
      8621	2019-05-17	ESM003
      9015	2019-05-18	ESM003
      1546671	2019-05-18	ESM005
      432393	2019-05-18	ESM001
      432838	2019-05-19	ESM001
      1547140	2019-05-19	ESM005
      9498	2019-05-19	ESM003
      9905	2019-05-20	ESM003
      1547530	2019-05-20	ESM005
      433210	2019-05-20	ESM001
      433632	2019-05-21	ESM001
      1547976	2019-05-21	ESM005
      10367	2019-05-21	ESM003
      10792	2019-05-22	ESM003
      1548383	2019-05-22	ESM005
      434018	2019-05-22	ESM001
      434457	2019-05-23	ESM001
      1548846	2019-05-23	ESM005
      11272	2019-05-23	ESM003
      11676	2019-05-24	ESM003
      1549236	2019-05-24	ESM005
      434826	2019-05-24	ESM001
      435306	2019-05-25	ESM001
      1549739	2019-05-25	ESM005
      12200	2019-05-25	ESM003
      12771	2019-05-26	ESM003
      1550287	2019-05-26	ESM005
      435827	2019-05-26	ESM001
      436350	2019-05-27	ESM001
      1550837	2019-05-27	ESM005
      13343	2019-05-27	ESM003
      13820	2019-05-28	ESM003
      1551294	2019-05-28	ESM005
      436784	2019-05-28	ESM001
      437288	2019-05-29	ESM001
      1551825	2019-05-29	ESM005
      14373	2019-05-29	ESM003
      14942	2019-05-30	ESM003
      1552373	2019-05-30	ESM005
      437808	2019-05-30	ESM001
      438298	2019-05-31	ESM001
      1552891	2019-05-31	ESM005
      15481	2019-05-31	ESM003
      16012	2019-06-01	ESM003
      1553402	2019-06-01	ESM005
      438780	2019-06-01	ESM001
      439257	2019-06-02	ESM001
      1553906	2019-06-02	ESM005
      16536	2019-06-02	ESM003
      17048	2019-06-03	ESM003
      1554398	2019-06-03	ESM005
      439723	2019-06-03	ESM001
      440152	2019-06-04	ESM001
      1554851	2019-06-04	ESM005
      17518	2019-06-04	ESM003
      18039	2019-06-05	ESM003
      1555351	2019-06-05	ESM005
      440626	2019-06-05	ESM001
      441081	2019-06-06	ESM001
      1555834	2019-06-06	ESM005
      18540	2019-06-06	ESM003
      19069	2019-06-07	ESM003
      1556343	2019-06-07	ESM005
      441559	2019-06-07	ESM001
      442087	2019-06-08	ESM001
      1556898	2019-06-08	ESM005
      19646	2019-06-08	ESM003
      20186	2019-06-09	ESM003
      1557418	2019-06-09	ESM005
      442580	2019-06-09	ESM001
      443075	2019-06-10	ESM001
      1557940	2019-06-10	ESM005
      20730	2019-06-10	ESM003
      21236	2019-06-11	ESM003
      1558429	2019-06-11	ESM005
      443542	2019-06-11	ESM001
      443900	2019-06-12	ESM001
      1558805	2019-06-12	ESM005
      21627	2019-06-12	ESM003
      22184	2019-06-13	ESM003
      1559341	2019-06-13	ESM005
      444408	2019-06-13	ESM001
      444816	2019-06-14	ESM001
      1559770	2019-06-14	ESM005
      22629	2019-06-14	ESM003
      23185	2019-06-15	ESM003
      1560304	2019-06-15	ESM005
      445321	2019-06-15	ESM001
      445827	2019-06-16	ESM001
      1560837	2019-06-16	ESM005
      23740	2019-06-16	ESM003
      24197	2019-06-17	ESM003
      1561276	2019-06-17	ESM005
      446243	2019-06-17	ESM001
      446729	2019-06-18	ESM001
      1561788	2019-06-18	ESM005
      24729	2019-06-18	ESM003
      25273	2019-06-19	ESM003
      1562309	2019-06-19	ESM005
      447224	2019-06-19	ESM001
      447698	2019-06-20	ESM001
      1562810	2019-06-20	ESM005
      25794	2019-06-20	ESM003
      26193	2019-06-21	ESM003
      1563196	2019-06-21	ESM005
      448064	2019-06-21	ESM001
      448528	2019-06-22	ESM001
      1563684	2019-06-22	ESM005
      26700	2019-06-22	ESM003
      27195	2019-06-23	ESM003
      1564160	2019-06-23	ESM005
      448980	2019-06-23	ESM001
      449413	2019-06-24	ESM001
      1564616	2019-06-24	ESM005
      27671	2019-06-24	ESM003
      28085	2019-06-25	ESM003
      1565011	2019-06-25	ESM005
      449789	2019-06-25	ESM001
      450234	2019-06-26	ESM001
      1565483	2019-06-26	ESM005
      28575	2019-06-26	ESM003
      29082	2019-06-27	ESM003
      1565970	2019-06-27	ESM005
      450697	2019-06-27	ESM001
      451110	2019-06-28	ESM001
      1566407	2019-06-28	ESM005
      29535	2019-06-28	ESM003
      30050	2019-06-29	ESM003
      1566897	2019-06-29	ESM005
      451560	2019-06-29	ESM001
      452006	2019-06-30	ESM001
      1567399	2019-06-30	ESM005
      30555	2019-06-30	ESM003
      31030	2019-07-01	ESM003
      1567870	2019-07-01	ESM005
      452423	2019-07-01	ESM001
      452777	2019-07-02	ESM001
      1568271	2019-07-02	ESM005
      31433	2019-07-02	ESM003
      31927	2019-07-03	ESM003
      1568760	2019-07-03	ESM005
      453211	2019-07-03	ESM001
      453662	2019-07-04	ESM001
      1569269	2019-07-04	ESM005
      32439	2019-07-04	ESM003
      32911	2019-07-05	ESM003
      1569739	2019-07-05	ESM005
      454075	2019-07-05	ESM001
      454517	2019-07-06	ESM001
      1570238	2019-07-06	ESM005
      33413	2019-07-06	ESM003
      33904	2019-07-07	ESM003
      1570725	2019-07-07	ESM005
      454949	2019-07-07	ESM001
      455374	2019-07-08	ESM001
      1571204	2019-07-08	ESM005
      34387	2019-07-08	ESM003
      34864	2019-07-09	ESM003
      1571676	2019-07-09	ESM005
      455794	2019-07-09	ESM001
      456206	2019-07-10	ESM001
      1572140	2019-07-10	ESM005
      35333	2019-07-10	ESM003
      35819	2019-07-11	ESM003
      1572622	2019-07-11	ESM005
      456635	2019-07-11	ESM001
      457076	2019-07-12	ESM001
      1573119	2019-07-12	ESM005
      36319	2019-07-12	ESM003
      36734	2019-07-13	ESM003
      1573530	2019-07-13	ESM005
      457441	2019-07-13	ESM001
      457838	2019-07-14	ESM001
      1573978	2019-07-14	ESM005
      37186	2019-07-14	ESM003
      37647	2019-07-15	ESM003
      1574436	2019-07-15	ESM005
      458246	2019-07-15	ESM001
      458698	2019-07-16	ESM001
      1574943	2019-07-16	ESM005
      38159	2019-07-16	ESM003
      38650	2019-07-17	ESM003
      1575432	2019-07-17	ESM005
      459132	2019-07-17	ESM001
      459571	2019-07-18	ESM001
      1575926	2019-07-18	ESM005
      39141	2019-07-18	ESM003
      39634	2019-07-19	ESM003
      1576414	2019-07-19	ESM005
      460004	2019-07-19	ESM001
      460421	2019-07-20	ESM001
      1576885	2019-07-20	ESM005
      40108	2019-07-20	ESM003
      40584	2019-07-21	ESM003
      1577357	2019-07-21	ESM005
      460842	2019-07-21	ESM001
      461264	2019-07-22	ESM001
      1577833	2019-07-22	ESM005
      41064	2019-07-22	ESM003
      41570	2019-07-23	ESM003
      1578336	2019-07-23	ESM005
      461710	2019-07-23	ESM001
      462124	2019-07-24	ESM001
      1578801	2019-07-24	ESM005
      42039	2019-07-24	ESM003
      42518	2019-07-25	ESM003
      1579278	2019-07-25	ESM005
      462543	2019-07-25	ESM001
      462983	2019-07-26	ESM001
      1579772	2019-07-26	ESM005
      43018	2019-07-26	ESM003
      43526	2019-07-27	ESM003
      1580276	2019-07-27	ESM005
      463430	2019-07-27	ESM001
      463872	2019-07-28	ESM001
      1580772	2019-07-28	ESM005
      44027	2019-07-28	ESM003
      44563	2019-07-29	ESM003
      1581302	2019-07-29	ESM005
      464344	2019-07-29	ESM001
      464803	2019-07-30	ESM001
      1581817	2019-07-30	ESM005
      45083	2019-07-30	ESM003
      45613	2019-07-31	ESM003
      1582341	2019-07-31	ESM005
      465271	2019-07-31	ESM001
      465732	2019-08-01	ESM001
      1582860	2019-08-01	ESM005
      46136	2019-08-01	ESM003
      46644	2019-08-02	ESM003
      1583364	2019-08-02	ESM005
      466180	2019-08-02	ESM001
      466628	2019-08-03	ESM001
      1583868	2019-08-03	ESM005
      47153	2019-08-03	ESM003
      47658	2019-08-04	ESM003
      1584368	2019-08-04	ESM005
      467073	2019-08-04	ESM001
      467525	2019-08-05	ESM001
      1584875	2019-08-05	ESM005
      48170	2019-08-05	ESM003
      48679	2019-08-06	ESM003
      1585377	2019-08-06	ESM005
      467972	2019-08-06	ESM001
      468423	2019-08-07	ESM001
      1585884	2019-08-07	ESM005
      49190	2019-08-07	ESM003
      49535	2019-08-08	ESM003
      1586229	2019-08-08	ESM005
      468726	2019-08-08	ESM001
      469173	2019-08-09	ESM001
      1586731	2019-08-09	ESM005
      50042	2019-08-09	ESM003
      50557	2019-08-10	ESM003
      1587241	2019-08-10	ESM005
      469627	2019-08-10	ESM001
      470079	2019-08-11	ESM001
      1587748	2019-08-11	ESM005
      51069	2019-08-11	ESM003
      51600	2019-08-12	ESM003
      1588272	2019-08-12	ESM005
      470545	2019-08-12	ESM001
      471031	2019-08-13	ESM001
      1588816	2019-08-13	ESM005
      52149	2019-08-13	ESM003
      52628	2019-08-14	ESM003
      1589291	2019-08-14	ESM005
      471453	2019-08-14	ESM001
      471905	2019-08-15	ESM001
      1589798	2019-08-15	ESM005
      53139	2019-08-15	ESM003
      53641	2019-08-16	ESM003
      1590294	2019-08-16	ESM005
      472347	2019-08-16	ESM001
      472788	2019-08-17	ESM001
      1590789	2019-08-17	ESM005
      54142	2019-08-17	ESM003
      54645	2019-08-18	ESM003
      1591287	2019-08-18	ESM005
      473231	2019-08-18	ESM001
      473395	2019-08-19	ESM001
      1591473	2019-08-19	ESM005
      54833	2019-08-19	ESM003
      • Anonymous's avatar
        Anonymous
        Not applicable

        Acum_month not showing correct values for ESM005 . Need to check

        Acum_Day = CALCULATE(SUM(Test[ActSal])) - CALCULATE(SUM(Test[ActSal]),PREVIOUSDAY(Test[DATE]))
        Acum_Month = CALCULATE(SUM(Test[ActSal])) - CALCULATE(SUM(Test[ActSal]),STARTOFMONTH(Test[DATE]))