diff --git a/server/AyaNova/biz/FilterSpecialTokens.cs b/server/AyaNova/biz/FilterSpecialTokens.cs index 08a9b4a4..87849a0a 100644 --- a/server/AyaNova/biz/FilterSpecialTokens.cs +++ b/server/AyaNova/biz/FilterSpecialTokens.cs @@ -45,9 +45,9 @@ namespace AyaNova.Biz //The standard calendar quarters that make up the year are: January, February, and March (Q1); April, May, and June (Q2); July, August, and September (Q3); and October, November, and December (Q4). A quarter is often shown with its relevant year, as in Q1 2018 or Q1/18 which represents the first quarter of the year 2018. public const string Q1ThisYear = "{[q1thisyear]}"; - public const string Q2ThisYear = "{[q1thisyear]}"; - public const string Q3ThisYear = "{[q1thisyear]}"; - public const string Q4ThisYear = "{[q1thisyear]}"; + public const string Q2ThisYear = "{[q2thisyear]}"; + public const string Q3ThisYear = "{[q3thisyear]}"; + public const string Q4ThisYear = "{[q4thisyear]}"; public const string Q1LastYear = "{[q1lastyear]}"; public const string Q2LastYear = "{[q2lastyear]}"; public const string Q3LastYear = "{[q3lastyear]}"; diff --git a/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs b/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs index ba50b3a9..23ce81e2 100644 --- a/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs +++ b/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs @@ -800,6 +800,54 @@ namespace AyaNova.Biz sb.Append(PostgresDateFormat(dtBefore)); sb.Append("'"); break; + case FilterSpecialToken.Q1ThisYear: + dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); + dtBefore = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00); + sb.Append(">'"); + sb.Append(PostgresDateFormat(dtAfter)); + sb.Append("') AND ("); + sb.Append(sColumn); + sb.Append(" "); + sb.Append("<'"); + sb.Append(PostgresDateFormat(dtBefore)); + sb.Append("'"); + break; + case FilterSpecialToken.Q2ThisYear: + dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); + dtBefore = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00); + sb.Append(">'"); + sb.Append(PostgresDateFormat(dtAfter)); + sb.Append("') AND ("); + sb.Append(sColumn); + sb.Append(" "); + sb.Append("<'"); + sb.Append(PostgresDateFormat(dtBefore)); + sb.Append("'"); + break; + case FilterSpecialToken.Q1ThisYear: + dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); + dtBefore = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00); + sb.Append(">'"); + sb.Append(PostgresDateFormat(dtAfter)); + sb.Append("') AND ("); + sb.Append(sColumn); + sb.Append(" "); + sb.Append("<'"); + sb.Append(PostgresDateFormat(dtBefore)); + sb.Append("'"); + break; + case FilterSpecialToken.Q1ThisYear: + dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); + dtBefore = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00); + sb.Append(">'"); + sb.Append(PostgresDateFormat(dtAfter)); + sb.Append("') AND ("); + sb.Append(sColumn); + sb.Append(" "); + sb.Append("<'"); + sb.Append(PostgresDateFormat(dtBefore)); + sb.Append("'"); + break; //----- }