Difference between revisions of "Presage/Internal:Great American Date Codes"
Hheffelbower (talk | contribs) |
(Added info about Simplot date codes and cleaned up the code snipets a bit) |
||
(5 intermediate revisions by one other user not shown) | |||
Line 2: | Line 2: | ||
<h2>The Wahoo Date Code</h2> | <h2>The Wahoo Date Code</h2> | ||
The Wahoo code is used in both the Nampa and Monroe plants for a number of | The Wahoo code is used in both the Nampa and Monroe plants for a number of analyses. For a date of '''2017-06-05 00:15:01''' (produced on '''Line 1''' in the '''Nampa''' plant), the Wahoo Code would display as ''''NF057J1'''' | ||
*The 'N' stands for Nampa. The Monroe plant's initial character is 'M'. | *The 'N' stands for Nampa. The Monroe plant's initial character is 'M'. | ||
*The 'F' stands for the month of June (controlled by the first case statement). | *The 'F' stands for the month of June (controlled by the first of the nested case statement). | ||
*The '05' is the day of the month formatted as a two-digit day using the format '%d'. | *The '05' is the day of the month formatted as a two-digit day using the format '%d'. | ||
*The '7' is the last number of the four-digit year using the RIGHT command to find the first digit on the right of the number, using the format '%y'. | *The '7' is the last number of the four-digit year using the RIGHT command to find the first digit on the right of the number, using the format '%y'. | ||
*The 'J' represents the time between midnight and 2 a.m. (controlled by the second case statement). | *The 'J' represents the time between midnight and 2 a.m. (controlled by the second of the nested case statement). | ||
*Finally, the '1' indicates the line number within the plant where the product was produced. | *Finally, the '1' indicates the line number within the plant where the product was produced. | ||
<source lang='text'> | |||
CASE | (SELECT CASE WHEN {?Date Code Format} = "Wahoo" THEN | ||
WHEN {?Date Code Format} = "Wahoo" THEN | CONCAT('N', | ||
CONCAT('N', | |||
Best Before/Meilleur Avant 2018 JN05 NF057J1 | CASE | ||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'A' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'B' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'C' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'D' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'E' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'F' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'G' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'H' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'I' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'J' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'K' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'L' | |||
END, | |||
date_format({?Check Timestamp},'%d'), | |||
RIGHT(DATE_FORMAT({?Check Timestamp},'%y'),1), | |||
CASE | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN 'A' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN 'B' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN 'C' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN 'D' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN 'E' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN 'F' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN 'G' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN 'H' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN 'I' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN 'J' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN 'K' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN 'L' | |||
END, | |||
{?Line}) | |||
END) | |||
</source> | |||
The code above references a choice {?Date Code Format} techs select against the {?Check Timestamp} in an analysis. The date format is compared against a code on the product's packaging. This assures the product packaging is labeled properly. An option name must always be preceded by '{?' and followed by '}' to be recognized as an analysis option. [This link https://www.w3schools.com/SQL/func_date_format.asp] offers a list of date formats for MySQL. | |||
<h2>Best Before/Meilleur Avant YYYY MO DD + Wahoo</h2> | |||
The Nampa plant requested a new date code for a product distributed in Canada. They requested month abbreviations that are not standard to MySQL. Therefore we used a case statement instead of using the date formats. That code looks like the code below. It concatenates 'Best Before/Meilleur Avant ' with the four-digit year, the two-character month (in the first case statment), the two-digit day, and the Wahoo Date Code (above). | |||
For a date of '''2017-06-05 00:15:01''' (produced on '''Line 1''' in the '''Nampa''' plant), the Date Code would display as ''''Best Before/Meilleur Avant 2018 JN05 NF057J1''''. | |||
<source lang='text'> | |||
(SELECT CASE WHEN {?Retail Date Code Format} = "Best Before/Meilleur Avant YYYY MO DD + Wahoo" THEN | |||
CONCAT('Best Before/Meilleur Avant ', DATE_FORMAT(DATE_ADD({?Check Timestamp}, INTERVAL 12 month), '%Y '), LEFT(date_format(date_add({?Check Timestamp}, interval 12 month), | |||
CASE | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'JA' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'FE' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'MR' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'AL' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'MA' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'JN' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'JL' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'AU' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'SE' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'OC' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'NO' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'DE' | |||
END),2), | |||
date_format(date_add({?Check Timestamp}, interval 12 month),'%d'), ' N', | |||
CASE | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'A' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'B' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'C' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'D' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'E' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'F' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'G' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'H' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'I' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'J' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'K' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'L' | |||
END, | |||
date_format({?Check Timestamp},'%d'), | |||
RIGHT(DATE_FORMAT({?Check Timestamp},'%y'),1), | |||
CASE | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN 'A' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN 'B' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN 'C' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN 'D' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN 'E' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN 'F' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN 'G' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN 'H' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN 'I' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN 'J' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN 'K' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN 'L' | |||
END, | |||
{?Line}) | |||
END) | |||
</source> | |||
<h2>Simplot</h2> | |||
As far as I know, the Simplot format is only used in the Nampa plant. It has the format: | |||
PPP MM DD YY L T | |||
*PPP = plant of production | |||
*MMM = Month of production (Alpha) | |||
*DD = Day of Production | |||
*YY = Year of Production | |||
*L = Line of Production | |||
*T = Time Interval of Production | |||
Here is an example of a Simplot date code format when it is filled out with information: | |||
968 JUN 16 17 4 3 | |||
<source lang='text'> | |||
(SELECT CASE WHEN {?Date Code Format} = {?Date Code Format} THEN | |||
CONCAT('968 ', DATE_FORMAT({?Check Timestamp},'%b %d %y'), ' ', {?Line}, ' ', CASE | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN '1' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN '2' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN '3' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN '4' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN '5' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN '6' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN '7' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN '8' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN '9' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN '10' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN '11' | |||
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN '12' | |||
END) | |||
END) | |||
</source> |
Latest revision as of 12:04, 16 June 2017
Great American [Appetizers] Snacks has unique date codes for their packaging.
The Wahoo Date Code
The Wahoo code is used in both the Nampa and Monroe plants for a number of analyses. For a date of 2017-06-05 00:15:01 (produced on Line 1 in the Nampa plant), the Wahoo Code would display as 'NF057J1'
- The 'N' stands for Nampa. The Monroe plant's initial character is 'M'.
- The 'F' stands for the month of June (controlled by the first of the nested case statement).
- The '05' is the day of the month formatted as a two-digit day using the format '%d'.
- The '7' is the last number of the four-digit year using the RIGHT command to find the first digit on the right of the number, using the format '%y'.
- The 'J' represents the time between midnight and 2 a.m. (controlled by the second of the nested case statement).
- Finally, the '1' indicates the line number within the plant where the product was produced.
(SELECT CASE WHEN {?Date Code Format} = "Wahoo" THEN
CONCAT('N',
CASE
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'A'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'B'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'C'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'D'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'E'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'F'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'G'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'H'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'I'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'J'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'K'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'L'
END,
date_format({?Check Timestamp},'%d'),
RIGHT(DATE_FORMAT({?Check Timestamp},'%y'),1),
CASE
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN 'A'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN 'B'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN 'C'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN 'D'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN 'E'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN 'F'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN 'G'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN 'H'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN 'I'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN 'J'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN 'K'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN 'L'
END,
{?Line})
END)
The code above references a choice {?Date Code Format} techs select against the {?Check Timestamp} in an analysis. The date format is compared against a code on the product's packaging. This assures the product packaging is labeled properly. An option name must always be preceded by '{?' and followed by '}' to be recognized as an analysis option. [This link https://www.w3schools.com/SQL/func_date_format.asp] offers a list of date formats for MySQL.
Best Before/Meilleur Avant YYYY MO DD + Wahoo
The Nampa plant requested a new date code for a product distributed in Canada. They requested month abbreviations that are not standard to MySQL. Therefore we used a case statement instead of using the date formats. That code looks like the code below. It concatenates 'Best Before/Meilleur Avant ' with the four-digit year, the two-character month (in the first case statment), the two-digit day, and the Wahoo Date Code (above).
For a date of 2017-06-05 00:15:01 (produced on Line 1 in the Nampa plant), the Date Code would display as 'Best Before/Meilleur Avant 2018 JN05 NF057J1'.
(SELECT CASE WHEN {?Retail Date Code Format} = "Best Before/Meilleur Avant YYYY MO DD + Wahoo" THEN
CONCAT('Best Before/Meilleur Avant ', DATE_FORMAT(DATE_ADD({?Check Timestamp}, INTERVAL 12 month), '%Y '), LEFT(date_format(date_add({?Check Timestamp}, interval 12 month),
CASE
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'JA'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'FE'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'MR'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'AL'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'MA'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'JN'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'JL'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'AU'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'SE'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'OC'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'NO'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'DE'
END),2),
date_format(date_add({?Check Timestamp}, interval 12 month),'%d'), ' N',
CASE
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 1 THEN 'A'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 2 THEN 'B'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 3 THEN 'C'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 4 THEN 'D'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 5 THEN 'E'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 6 THEN 'F'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 7 THEN 'G'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 8 THEN 'H'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 9 THEN 'I'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 10 THEN 'J'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 11 THEN 'K'
WHEN DATE_FORMAT({?Check Timestamp},'%c') = 12 THEN 'L'
END,
date_format({?Check Timestamp},'%d'),
RIGHT(DATE_FORMAT({?Check Timestamp},'%y'),1),
CASE
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN 'A'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN 'B'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN 'C'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN 'D'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN 'E'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN 'F'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN 'G'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN 'H'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN 'I'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN 'J'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN 'K'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN 'L'
END,
{?Line})
END)
Simplot
As far as I know, the Simplot format is only used in the Nampa plant. It has the format:
PPP MM DD YY L T
- PPP = plant of production
- MMM = Month of production (Alpha)
- DD = Day of Production
- YY = Year of Production
- L = Line of Production
- T = Time Interval of Production
Here is an example of a Simplot date code format when it is filled out with information:
968 JUN 16 17 4 3
(SELECT CASE WHEN {?Date Code Format} = {?Date Code Format} THEN
CONCAT('968 ', DATE_FORMAT({?Check Timestamp},'%b %d %y'), ' ', {?Line}, ' ', CASE
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '05:00:00' AND '07:59:59' THEN '1'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '08:00:00' AND '09:59:59' THEN '2'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '10:00:00' AND '11:59:59' THEN '3'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '12:00:00' AND '13:59:59' THEN '4'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '14:00:00' AND '15:59:59' THEN '5'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '16:00:00' AND '17:59:59' THEN '6'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '18:00:00' AND '19:59:59' THEN '7'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '20:00:00' AND '21:59:59' THEN '8'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '22:00:00' AND '23:59:59' THEN '9'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '00:00:00' AND '01:59:59' THEN '10'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '02:00:00' AND '03:59:59' THEN '11'
WHEN DATE_FORMAT({?Check Timestamp},'%T') BETWEEN '04:00:00' AND '04:59:59' THEN '12'
END)
END)