Fossil SCM
Further tweaks to the byday form of /reports.
Commit
d35aad4da2a7cbe67ff8d82bb7048789cec43131619f3de650a353cd16647503
Parent
684f8aec82dd530…
1 file changed
+2
-4
+2
-4
| --- src/statrep.c | ||
| +++ src/statrep.c | ||
| @@ -707,14 +707,14 @@ | ||
| 707 | 707 | "SELECT julianday('%q-01-01','end of year','weekday 0')", |
| 708 | 708 | zYear); |
| 709 | 709 | db_multi_exec("CREATE TEMP TABLE wkdata(wk,n);"); |
| 710 | 710 | db_prepare(&q, |
| 711 | 711 | "WITH RECURSIVE c(wkn) AS (\n" |
| 712 | - " VALUES(if(:WeekZero<:WeekOne,0,1))\n" | |
| 712 | + " VALUES(0+strftime('%%W',:YearStart))\n" | |
| 713 | 713 | " UNION ALL\n" |
| 714 | 714 | " SELECT wkn+1 FROM c\n" |
| 715 | - " WHERE (:YearStart+wkn*7)<=:AllEnd\n" | |
| 715 | + " WHERE wkn<0+strftime('%%W',min(julianday(),:YearEnd))\n" | |
| 716 | 716 | ")\n" |
| 717 | 717 | "INSERT INTO wkdata(wk,n)\n" |
| 718 | 718 | " SELECT c.wkn, coalesce(x.n,0)\n" |
| 719 | 719 | " FROM c LEFT JOIN (\n" |
| 720 | 720 | " SELECT 0+strftime('%%W',min(max(mtime,:YearStart),:YearEnd)) AS w,\n" |
| @@ -726,11 +726,10 @@ | ||
| 726 | 726 | " ) AS x ON c.wkn=x.w", |
| 727 | 727 | zUserName |
| 728 | 728 | ); |
| 729 | 729 | db_bind_double(&q, ":YearStart", rYearStart); |
| 730 | 730 | db_bind_double(&q, ":YearEnd", rYearEnd); |
| 731 | - db_bind_double(&q, ":WeekOne", rWeekOne); | |
| 732 | 731 | db_bind_double(&q, ":WeekZero", rWeekZero); |
| 733 | 732 | db_bind_double(&q, ":AllEnd", rAllEnd); |
| 734 | 733 | db_step(&q); |
| 735 | 734 | db_finalize(&q); |
| 736 | 735 | |
| @@ -738,11 +737,10 @@ | ||
| 738 | 737 | |
| 739 | 738 | #if 0 |
| 740 | 739 | @ :YearStart = %h(db_text("","SELECT datetime(%!.17g)",rYearStart))<br> |
| 741 | 740 | @ :YearEnd = %h(db_text("","SELECT datetime(%!.17g)",rYearEnd))<br> |
| 742 | 741 | @ :WeekZero = %h(db_text("","SELECT datetime(%!.17g)",rWeekZero))<br> |
| 743 | - @ :WeekOne = %h(db_text("","SELECT datetime(%!.17g)",rWeekOne))<br> | |
| 744 | 742 | @ :AllEnd = %h(db_text("","SELECT datetime(%!.17g)",rAllEnd))<br> |
| 745 | 743 | #endif |
| 746 | 744 | |
| 747 | 745 | @ <h1>Timeline events (%h(stats_report_label_for_type())) |
| 748 | 746 | @ for the calendar weeks of %h(zYear) |
| 749 | 747 |
| --- src/statrep.c | |
| +++ src/statrep.c | |
| @@ -707,14 +707,14 @@ | |
| 707 | "SELECT julianday('%q-01-01','end of year','weekday 0')", |
| 708 | zYear); |
| 709 | db_multi_exec("CREATE TEMP TABLE wkdata(wk,n);"); |
| 710 | db_prepare(&q, |
| 711 | "WITH RECURSIVE c(wkn) AS (\n" |
| 712 | " VALUES(if(:WeekZero<:WeekOne,0,1))\n" |
| 713 | " UNION ALL\n" |
| 714 | " SELECT wkn+1 FROM c\n" |
| 715 | " WHERE (:YearStart+wkn*7)<=:AllEnd\n" |
| 716 | ")\n" |
| 717 | "INSERT INTO wkdata(wk,n)\n" |
| 718 | " SELECT c.wkn, coalesce(x.n,0)\n" |
| 719 | " FROM c LEFT JOIN (\n" |
| 720 | " SELECT 0+strftime('%%W',min(max(mtime,:YearStart),:YearEnd)) AS w,\n" |
| @@ -726,11 +726,10 @@ | |
| 726 | " ) AS x ON c.wkn=x.w", |
| 727 | zUserName |
| 728 | ); |
| 729 | db_bind_double(&q, ":YearStart", rYearStart); |
| 730 | db_bind_double(&q, ":YearEnd", rYearEnd); |
| 731 | db_bind_double(&q, ":WeekOne", rWeekOne); |
| 732 | db_bind_double(&q, ":WeekZero", rWeekZero); |
| 733 | db_bind_double(&q, ":AllEnd", rAllEnd); |
| 734 | db_step(&q); |
| 735 | db_finalize(&q); |
| 736 | |
| @@ -738,11 +737,10 @@ | |
| 738 | |
| 739 | #if 0 |
| 740 | @ :YearStart = %h(db_text("","SELECT datetime(%!.17g)",rYearStart))<br> |
| 741 | @ :YearEnd = %h(db_text("","SELECT datetime(%!.17g)",rYearEnd))<br> |
| 742 | @ :WeekZero = %h(db_text("","SELECT datetime(%!.17g)",rWeekZero))<br> |
| 743 | @ :WeekOne = %h(db_text("","SELECT datetime(%!.17g)",rWeekOne))<br> |
| 744 | @ :AllEnd = %h(db_text("","SELECT datetime(%!.17g)",rAllEnd))<br> |
| 745 | #endif |
| 746 | |
| 747 | @ <h1>Timeline events (%h(stats_report_label_for_type())) |
| 748 | @ for the calendar weeks of %h(zYear) |
| 749 |
| --- src/statrep.c | |
| +++ src/statrep.c | |
| @@ -707,14 +707,14 @@ | |
| 707 | "SELECT julianday('%q-01-01','end of year','weekday 0')", |
| 708 | zYear); |
| 709 | db_multi_exec("CREATE TEMP TABLE wkdata(wk,n);"); |
| 710 | db_prepare(&q, |
| 711 | "WITH RECURSIVE c(wkn) AS (\n" |
| 712 | " VALUES(0+strftime('%%W',:YearStart))\n" |
| 713 | " UNION ALL\n" |
| 714 | " SELECT wkn+1 FROM c\n" |
| 715 | " WHERE wkn<0+strftime('%%W',min(julianday(),:YearEnd))\n" |
| 716 | ")\n" |
| 717 | "INSERT INTO wkdata(wk,n)\n" |
| 718 | " SELECT c.wkn, coalesce(x.n,0)\n" |
| 719 | " FROM c LEFT JOIN (\n" |
| 720 | " SELECT 0+strftime('%%W',min(max(mtime,:YearStart),:YearEnd)) AS w,\n" |
| @@ -726,11 +726,10 @@ | |
| 726 | " ) AS x ON c.wkn=x.w", |
| 727 | zUserName |
| 728 | ); |
| 729 | db_bind_double(&q, ":YearStart", rYearStart); |
| 730 | db_bind_double(&q, ":YearEnd", rYearEnd); |
| 731 | db_bind_double(&q, ":WeekZero", rWeekZero); |
| 732 | db_bind_double(&q, ":AllEnd", rAllEnd); |
| 733 | db_step(&q); |
| 734 | db_finalize(&q); |
| 735 | |
| @@ -738,11 +737,10 @@ | |
| 737 | |
| 738 | #if 0 |
| 739 | @ :YearStart = %h(db_text("","SELECT datetime(%!.17g)",rYearStart))<br> |
| 740 | @ :YearEnd = %h(db_text("","SELECT datetime(%!.17g)",rYearEnd))<br> |
| 741 | @ :WeekZero = %h(db_text("","SELECT datetime(%!.17g)",rWeekZero))<br> |
| 742 | @ :AllEnd = %h(db_text("","SELECT datetime(%!.17g)",rAllEnd))<br> |
| 743 | #endif |
| 744 | |
| 745 | @ <h1>Timeline events (%h(stats_report_label_for_type())) |
| 746 | @ for the calendar weeks of %h(zYear) |
| 747 |