Quote & Bookings Summary Dashboard: Difference between revisions
David.weller (talk | contribs) No edit summary |
David.weller (talk | contribs) |
||
| (10 intermediate revisions by 2 users not shown) | |||
| Line 22: | Line 22: | ||
|- | |- | ||
| Date Range || Displays only jobs created within the specified date range. | | Date Range || Displays only jobs created within the specified date range. | ||
|} | |||
== Data Transformation Applied == | |||
[To be added] | |||
{| class="wikitable" | |||
|+ | |||
!Query | |||
!Calculations | |||
!Description | |||
|- | |||
| | |||
| | |||
| | |||
|} | |} | ||
| Line 31: | Line 44: | ||
! style="width: 20%;" | Reference !! style="width: 40%;" | Calculation !! style="width: 40%;" | Description | ! style="width: 20%;" | Reference !! style="width: 40%;" | Calculation !! style="width: 40%;" | Description | ||
|- | |- | ||
| 1 - Total Pre-Quotes||Total Prequotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[pre_quoted_at]), NOT(ISBLANK(quotations[pre_quoted_at]))) + 0|| This measure counts the total number of prequotes created. It works by: | | 1 - Total Pre-Quotes||<pre>Total Prequotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[pre_quoted_at]), NOT(ISBLANK(quotations[pre_quoted_at]))) + 0</pre>|| This measure counts the total number of prequotes created. It works by: | ||
* Checking if a date exists in the `pre_quoted_at` column (i.e., the quote was created). | * Checking if a date exists in the `pre_quoted_at` column (i.e., the quote was created). | ||
| Line 38: | Line 51: | ||
* Ensuring only valid prequotes with a date are included. | * Ensuring only valid prequotes with a date are included. | ||
|- | |- | ||
| 2 - Total Quotes || Total Quotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[quoted_at]), NOT(ISBLANK(quotations[quoted_at]))) | | 2 - Total Quotes || <pre>Total Quotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[quoted_at]), NOT(ISBLANK(quotations[quoted_at])))</pre> | ||
|| This measure counts the total number of finalized quotes created. Here's how it works: | || This measure counts the total number of finalized quotes created. Here's how it works: | ||
| Line 47: | Line 60: | ||
|- | |- | ||
|3 -Total Bookings || | |3 -Total Bookings || | ||
Total Bookings = | <pre>Total Bookings = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 55: | Line 68: | ||
NOT (ISBLANK (quotations [booked_at])), | NOT (ISBLANK (quotations [booked_at])), | ||
USERELATIONSHIP (quotations [booked_at], DimDate [Date])) | USERELATIONSHIP (quotations [booked_at], DimDate [Date]))</pre> | ||
|| This measure counts the total number of bookings made. Here's how it works: | || This measure counts the total number of bookings made. Here's how it works: | ||
| Line 64: | Line 77: | ||
*Counts the rows: It counts all the rows where a valid booking date is present, giving the total number of bookings. | *Counts the rows: It counts all the rows where a valid booking date is present, giving the total number of bookings. | ||
|- | |- | ||
|4 - Confirmed Bookings || Confirmed Bookings = | |4 - Confirmed Bookings || <pre>Confirmed Bookings = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 72: | Line 85: | ||
NOT (ISBLANK (quotations [confirmed at])), | NOT (ISBLANK (quotations [confirmed at])), | ||
USERELATIONSHIP (DimDate [Date], quotations [confirmed at])) | USERELATIONSHIP (DimDate [Date], quotations [confirmed at])) </pre> | ||
|| This measure counts the total number of bookings that have been confirmed. Here's how it works: | || This measure counts the total number of bookings that have been confirmed. Here's how it works: | ||
| Line 83: | Line 96: | ||
*This measure helps track the number of bookings that have been officially finalized and confirmed. | *This measure helps track the number of bookings that have been officially finalized and confirmed. | ||
|- | |- | ||
|5 - Converted Bookings || Converted_Bookings = | |5 - Converted Bookings || <pre>Converted_Bookings = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 93: | Line 106: | ||
(NOT (ISBLANK (quotations[quoted_at])) || NOT (ISBLANK (quotations[pre_quoted_at]))) && | (NOT (ISBLANK (quotations[quoted_at])) || NOT (ISBLANK (quotations[pre_quoted_at]))) && | ||
NOT (ISBLANK (quotations[booked_at]))) | NOT (ISBLANK (quotations[booked_at]))) </pre> | ||
|| The Converted Bookings formula calculates the total number of quotations that successfully converted into bookings: | |||
The formula ensures that a booking is only counted if: | |||
*The quotation was either quoted (quoted_at) or pre-quoted (pre_quoted_at). | |||
*The quotation was successfully converted into a booking (booked_at). | |||
|- | |- | ||
|6 - Direct Booking || Direct_Booking = | |6 - Direct Booking || <pre>Direct_Booking = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 108: | Line 128: | ||
ISBLANK (quotations[pre_quoted_at]), | ISBLANK (quotations[pre_quoted_at]), | ||
NOT (ISBLANK (quotations[booked_at]))) | NOT (ISBLANK (quotations[booked_at]))) </pre> | ||
|| This measure counts the total number of bookings that were made without going through a quote or prequote process. Here's how it works: | || This measure counts the total number of bookings that were made without going through a quote or prequote process. Here's how it works: | ||
| Line 121: | Line 141: | ||
*Counts the rows: After applying these conditions, it counts the rows that meet the criteria. . | *Counts the rows: After applying these conditions, it counts the rows that meet the criteria. . | ||
|- | |- | ||
| 7 - Conversion Rate || Conversion Rate = DIVIDE([Converted_Bookings], [Total_Quotes],0) || This measure calculates the conversion rate, which shows the percentage of quotes that were successfully converted into bookings. Here's how it works: | | 7 - Conversion Rate || <pre>Conversion Rate = DIVIDE([Converted_Bookings], [Total_Quotes],0) </pre> || This measure calculates the conversion rate, which shows the percentage of quotes that were successfully converted into bookings. Here's how it works: | ||
*Numerator - Converted Bookings: It takes the total number of Converted Bookings, which are bookings that originated from quotes or prequotes and were successfully booked. | *Numerator - Converted Bookings: It takes the total number of Converted Bookings, which are bookings that originated from quotes or prequotes and were successfully booked. | ||
| Line 134: | Line 154: | ||
|- | |- | ||
| 8 - | | 8 - | ||
i. CW booking | || i. CW booking <pre>CW_Booking = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 143: | Line 162: | ||
NOT (ISBLANK (quotations[booked_at])), | NOT (ISBLANK (quotations[booked_at])), | ||
USERELATIONSHIP (DimDate [Date], quotations[booked_at])) | USERELATIONSHIP (DimDate [Date], quotations[booked_at]))</pre> | ||
ii. GW Booking <pre> GW Booking = | |||
CALCULATE ( | |||
SUM (quotations[gross_weight]), | |||
NOT (ISBLANK (quotations[booked_at])), | |||
USERELATIONSHIP (DimDate [Date], quotations[booked_at]) | |||
) </pre> | |||
iii. CW Quote <pre> CW_Quote = | |||
CALCULATE ( | |||
SUM (quotations[chargeable_weight]), | |||
NOT (ISBLANK (quotations[quoted_at])), | |||
USERELATIONSHIP (DimDate [Date], quotations[quoted_at])) </pre> | |||
iv. GW Quote <pre> GW Quote = | |||
CALCULATE ( | |||
SUM (quotations[gross_weight]), | |||
NOT (ISBLANK (quotations[quoted_at])), | |||
USERELATIONSHIP (DimDate [Date], quotations[quoted_at])) </pre> | |||
|| | || | ||
i. CW booking | |||
*Sum of chargeable weight: It sums the values from the chargeable_weight column in the quotations table, representing the total weight of items for bookings. | *Sum of chargeable weight: It sums the values from the chargeable_weight column in the quotations table, representing the total weight of items for bookings. | ||
| Line 155: | Line 209: | ||
This measure helps you track the total chargeable weight for all bookings within a specific date range. | This measure helps you track the total chargeable weight for all bookings within a specific date range. | ||
ii. GW Booking | |||
ii. | |||
* Sum of gross weight: It sums the values from the gross_weight column in the quotations table, representing the total weight of items for bookings, including any packaging or additional weight. | * Sum of gross weight: It sums the values from the gross_weight column in the quotations table, representing the total weight of items for bookings, including any packaging or additional weight. | ||
| Line 180: | Line 219: | ||
This measure helps track the total gross weight of all bookings within a specific date range. | This measure helps track the total gross weight of all bookings within a specific date range. | ||
iii. CW Quote | |||
*Sum of chargeable weight: It sums the values from the chargeable_weight column in the quotations table, representing the total chargeable weight for the items being quoted. | *Sum of chargeable weight: It sums the values from the chargeable_weight column in the quotations table, representing the total chargeable weight for the items being quoted. | ||
| Line 202: | Line 230: | ||
This measure helps you track the total chargeable weight for all quotations within a specific date range. | This measure helps you track the total chargeable weight for all quotations within a specific date range. | ||
iv. GW Quote | |||
*Sum of gross weight: It sums the values from the gross_weight column in the quotations table, representing the total weight of items in the quotations, including packaging and any additional weight. | *Sum of gross weight: It sums the values from the gross_weight column in the quotations table, representing the total weight of items in the quotations, including packaging and any additional weight. | ||
| Line 223: | Line 240: | ||
Purpose | Purpose | ||
This measure helps track the total gross weight for all quotations within a specific date range. | This measure helps track the total gross weight for all quotations within a specific date range. | ||
|- | |- | ||
|9 - Total || Total = [Won] + [Lost] + [Pending] | |9 - Total ||<pre> Total = [Won] + [Lost] + [Pending] </pre> | ||
|| The Total measure calculates the total count of quotations based on the sum of Won, Lost, and Pending quotations. | || The Total measure calculates the total count of quotations based on the sum of Won, Lost, and Pending quotations. | ||
|- | |- | ||
| 10 - Won || Won = | | 10 - Won ||<pre> Won = | ||
CALCULATE ( | CALCULATE ( | ||
| Line 236: | Line 254: | ||
quotations[spotrate] = 1 && quotations [Booking_categories] = "Direct Booking" | quotations[spotrate] = 1 && quotations [Booking_categories] = "Direct Booking" | ||
) | ) </pre> | ||
|| This measure counts the number of "Direct Bookings" where the SpotRate is 1, indicating a successful booking conversion. | || This measure counts the number of "Direct Bookings" where the SpotRate is 1, indicating a successful booking conversion. | ||
|- | |- | ||
| 11 - Conversion Rate || Conversion Rate(spotrate) = DIVIDE([Won], [Total],0) | | 11 - Conversion Rate || <pre> Conversion Rate(spotrate) = DIVIDE([Won], [Total],0) </pre> | ||
|| This measure calculates the conversion rate for SpotRate, which is the ratio of Won bookings to Total quotations. | || This measure calculates the conversion rate for SpotRate, which is the ratio of Won bookings to Total quotations. | ||
|- | |- | ||
| 12|| || The clustered bar chart breakdown total booking by Service. | | 12. Total Bookings By service||<pre>Total Bookings = | ||
CALCULATE ( | |||
COUNTROWS (quotations), | |||
NOT (ISBLANK (quotations [booked_at])), | |||
USERELATIONSHIP (quotations [booked_at], DimDate [Date]) | |||
) </pre> || The clustered bar chart breakdown total booking by Service. | |||
|- | |- | ||
| 13 || || Breakdown by Weight Breaks in Chargeable Weight: | | 13. WeightBreakChar|| <pre>WeightBreakChar = | ||
SWITCH( | |||
TRUE(), | |||
quotations[chargeable_weight] < 45, "<45", | |||
quotations[chargeable_weight] < 100, "<100", | |||
quotations[chargeable_weight] < 300, "<300", | |||
quotations[chargeable_weight] < 500, "<500", | |||
quotations[chargeable_weight] < 1000, "<1000", | |||
quotations[chargeable_weight] < 2000, "<2000", | |||
quotations[chargeable_weight] < 3000, "<3000", | |||
quotations[chargeable_weight] >= 3000, ">=3000", | |||
"Other" | |||
)</pre>|| Breakdown by Weight Breaks in Chargeable Weight: | |||
*The table segments the data based on different weight break categories in chargeable weight. | *The table segments the data based on different weight break categories in chargeable weight. | ||
| Line 250: | Line 290: | ||
*This segmentation helps in understanding which weight categories have the highest conversion rates and booking volumes. [Calculation goes here] | *This segmentation helps in understanding which weight categories have the highest conversion rates and booking volumes. [Calculation goes here] | ||
|- | |- | ||
| 14|| || This clustered column chart provides a detailed breakdown of total quotes categorized by loss reasons. Identify the most frequent reasons for losing potential bookings. | | 14. Total Qoutes By Loss Reasons|| <pre>Total Quotes = | ||
CALCULATE ( | |||
COUNTROWS (quotations), | |||
USERELATIONSHIP (DimDate [Date], quotations [quoted at]), | |||
NOT (ISBLANK (quotations[quoted_at]))) </pre> || This clustered column chart provides a detailed breakdown of total quotes categorized by loss reasons. Identify the most frequent reasons for losing potential bookings. | |||
|- | |- | ||
| 15 || || The clustered bar chart provides a detailed breakdown of Total Bookings categorized by Customer. | | 15. Total Bookings By Customer ||<pre>Total Bookings = | ||
CALCULATE ( | |||
COUNTROWS (quotations), | |||
NOT (ISBLANK (quotations [booked_at])), | |||
USERELATIONSHIP (quotations [booked_at], DimDate [Date]) | |||
) </pre> || The clustered bar chart provides a detailed breakdown of Total Bookings categorized by Customer. | |||
|} | |} | ||
Latest revision as of 14:11, 25 July 2025
Summary
This page offers a comprehensive overview of all pre-quotes, quotes, and bookings made within the specified date range. The report focuses on weight breaks, providing a detailed analysis of the total Gross Weight and Chargeable Weight. It also includes a breakdown of customers linked to the bookings and the service types utilized. Additionally, the report highlights the reasons for lost bookings, offering valuable insights for further evaluation.
Filters
| Filter | Description |
|---|---|
| Database | If you have access to multiple entity databases, you can filter and select specific ones. |
| Hide Lost / Deleted | Hides lost or deleted jobs from the report. |
| Site | Allows you to filter and focus on specific sites within your entity access. |
| Carrier | Enables filtering by carriers associated with the sites you have access to. |
| Users | Filters data by specific users. Users will be listed if they have access to the sites you can access. |
| Origin | Filters jobs based on their origin location. |
| Destination | Filters jobs based on their destination location. |
| Date Range | Displays only jobs created within the specified date range. |
Data Transformation Applied
[To be added]
| Query | Calculations | Description |
|---|---|---|
Calculations

| Reference | Calculation | Description |
|---|---|---|
| 1 - Total Pre-Quotes | Total Prequotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[pre_quoted_at]), NOT(ISBLANK(quotations[pre_quoted_at]))) + 0 |
This measure counts the total number of prequotes created. It works by:
|
| 2 - Total Quotes | Total Quotes = CALCULATE(COUNTROWS(quotations), USERELATIONSHIP(DimDate[Date], quotations[quoted_at]), NOT(ISBLANK(quotations[quoted_at]))) |
This measure counts the total number of finalized quotes created. Here's how it works:
|
| 3 -Total Bookings |
Total Bookings = CALCULATE ( COUNTROWS (quotations), NOT (ISBLANK (quotations [booked_at])), USERELATIONSHIP (quotations [booked_at], DimDate [Date])) |
This measure counts the total number of bookings made. Here's how it works:
|
| 4 - Confirmed Bookings | Confirmed Bookings = CALCULATE ( COUNTROWS (quotations), NOT (ISBLANK (quotations [confirmed at])), USERELATIONSHIP (DimDate [Date], quotations [confirmed at])) |
This measure counts the total number of bookings that have been confirmed. Here's how it works:
|
| 5 - Converted Bookings | Converted_Bookings = CALCULATE ( COUNTROWS (quotations), USERELATIONSHIP (DimDate [Date], quotations[booked_at]), // Temporarily activate the relationship with booked_at (NOT (ISBLANK (quotations[quoted_at])) || NOT (ISBLANK (quotations[pre_quoted_at]))) && NOT (ISBLANK (quotations[booked_at]))) |
The Converted Bookings formula calculates the total number of quotations that successfully converted into bookings:
The formula ensures that a booking is only counted if:
|
| 6 - Direct Booking | Direct_Booking = CALCULATE ( COUNTROWS (quotations), USERELATIONSHIP (DimDate [Date], quotations[booked_at]), ISBLANK (quotations[quoted_at]), ISBLANK (quotations[pre_quoted_at]), NOT (ISBLANK (quotations[booked_at]))) |
This measure counts the total number of bookings that were made without going through a quote or prequote process. Here's how it works:
|
| 7 - Conversion Rate | Conversion Rate = DIVIDE([Converted_Bookings], [Total_Quotes],0) |
This measure calculates the conversion rate, which shows the percentage of quotes that were successfully converted into bookings. Here's how it works:
Purpose This measure helps track how effectively quotes are being turned into actual bookings. A higher conversion rate indicates a better success rate in converting quotes into bookings. |
| 8 - | i. CW booking CW_Booking = CALCULATE ( SUM (quotations[chargeable_weight]), NOT (ISBLANK (quotations[booked_at])), USERELATIONSHIP (DimDate [Date], quotations[booked_at]))ii. GW Booking GW Booking =
CALCULATE (
SUM (quotations[gross_weight]),
NOT (ISBLANK (quotations[booked_at])),
USERELATIONSHIP (DimDate [Date], quotations[booked_at])
)
iii. CW Quote CW_Quote =
CALCULATE (
SUM (quotations[chargeable_weight]),
NOT (ISBLANK (quotations[quoted_at])),
USERELATIONSHIP (DimDate [Date], quotations[quoted_at]))
iv. GW Quote GW Quote =
CALCULATE (
SUM (quotations[gross_weight]),
NOT (ISBLANK (quotations[quoted_at])),
USERELATIONSHIP (DimDate [Date], quotations[quoted_at]))
|
i. CW booking
Purpose This measure helps you track the total chargeable weight for all bookings within a specific date range. ii. GW Booking
Purpose This measure helps track the total gross weight of all bookings within a specific date range. iii. CW Quote
Purpose This measure helps you track the total chargeable weight for all quotations within a specific date range. iv. GW Quote
Purpose This measure helps track the total gross weight for all quotations within a specific date range. |
| 9 - Total | Total = [Won] + [Lost] + [Pending] |
The Total measure calculates the total count of quotations based on the sum of Won, Lost, and Pending quotations. |
| 10 - Won | Won = CALCULATE ( COUNTROWS (quotations), quotations[spotrate] = 1 && quotations [Booking_categories] = "Direct Booking" ) |
This measure counts the number of "Direct Bookings" where the SpotRate is 1, indicating a successful booking conversion. |
| 11 - Conversion Rate | Conversion Rate(spotrate) = DIVIDE([Won], [Total],0) |
This measure calculates the conversion rate for SpotRate, which is the ratio of Won bookings to Total quotations. |
| 12. Total Bookings By service | Total Bookings = CALCULATE ( COUNTROWS (quotations), NOT (ISBLANK (quotations [booked_at])), USERELATIONSHIP (quotations [booked_at], DimDate [Date]) ) |
The clustered bar chart breakdown total booking by Service. |
| 13. WeightBreakChar | WeightBreakChar =
SWITCH(
TRUE(),
quotations[chargeable_weight] < 45, "<45",
quotations[chargeable_weight] < 100, "<100",
quotations[chargeable_weight] < 300, "<300",
quotations[chargeable_weight] < 500, "<500",
quotations[chargeable_weight] < 1000, "<1000",
quotations[chargeable_weight] < 2000, "<2000",
quotations[chargeable_weight] < 3000, "<3000",
quotations[chargeable_weight] >= 3000, ">=3000",
"Other"
) |
Breakdown by Weight Breaks in Chargeable Weight:
|
| 14. Total Qoutes By Loss Reasons | Total Quotes =
CALCULATE (
COUNTROWS (quotations),
USERELATIONSHIP (DimDate [Date], quotations [quoted at]),
NOT (ISBLANK (quotations[quoted_at]))) |
This clustered column chart provides a detailed breakdown of total quotes categorized by loss reasons. Identify the most frequent reasons for losing potential bookings. |
| 15. Total Bookings By Customer | Total Bookings = CALCULATE ( COUNTROWS (quotations), NOT (ISBLANK (quotations [booked_at])), USERELATIONSHIP (quotations [booked_at], DimDate [Date]) ) |
The clustered bar chart provides a detailed breakdown of Total Bookings categorized by Customer. |