Our Finnish clients are now required to submit a monthly report to the transport authority in Finland. Use the following tags (in this order) when creating the Traficom reports for them. You can ignore the Traficom Requirement column when setting the report up, but it may be useful if clients ask why certain columns are required. This will help them refer back to the requirements set out by Traficom.
| Traficom Requirement | Column Header | Report Tag |
|---|---|---|
| Comp ID (7.1) This column will provide the details entered in Registration number in the “Use custom company details” section of the user page. |
CompID | [js($(driver.data.company_details.data.name))] |
| Vehicle ID (7.2) Provides the vehicle licence/registration number. |
VehicleID | [js($(vehicle.tags.plate))] |
| Order Time Approx No data needed, but a blank column is required. |
OrderTimeApprox | NONE |
| Order Duration No data needed, but a blank column is required. |
OrderDuration | NONE |
| TripDuration No data needed, but a blank column is required. |
TripDuration | NONE |
| Order time (7.3.2) Displays the time which we refer to as “Filed” (when the job was created). |
OrderTime | [time_format(job.filed, ddMMyyyy HH:mm, 1)] |
| DepTime (7.3.3) Displays the time at which the driver presses “POB” (when the passenger gets on board). |
DepTime | [time_format(job.stimes.pob, ddMMyyyy HH:mm, 1000)] |
| ArrTime (7.3.4) Displays the time at which the driver presses “Delivered” (when the passenger reaches their destination). |
ArrTime | [time_format(job.stimes.drp, ddMMyyyy HH:mm, 1000)] |
| DepLocMUN No data needed, but a blank column is required. |
DepLocMUN | NONE |
| DepLocGPSx (7.4) Displays the GPS co-ordinates of the pick up location. |
DepLocGPSx | [js($(job.route.from[lat]))] |
| DepLocGPSy (7.4) Displays the GPS co-ordinates of the drop off location. |
DepLocGPSy | [js($(job.route.from[lon]))] |
| Distance (7.5) Displays the distance between POB and delivered. For taximeter jobs, the distance displayed is the distance driven according to the taximeter. For flat-rate jobs, the distance displayed is the one estimated by the system as the taximeter is not active for these types of jobs. |
Distance | [js(function Format(num) { return (num.toFixed(2).replace('.', ',').replace(/(\d)(?=(\d)+(?!\d))/g, '$1')); } var grandDistance = $(receipt.route_metrics.distance); var newTotalFix = grandDistance / 1000; var newTotalFix = newTotalFix.toString(); var newTotal = Format(parseFloat(newTotalFix)); newTotal;)] |
| Order Type (7.6) The number displayed here will reflect the booking source as: 0 = Street pick 1 = Manual booking 2 = IVR (Telephone) 3 = App bookings (Mobile and API bookings as both are made through apps RPA/02Taksi app) 4 = Contract jobs |
OrderType | [js(var FOPtype; switch ($(job.account.src)) { case "2": FOPtype = "0"; break; case "1": FOPtype = "1"; break; case "20": FOPtype = "2"; break; case "18": FOPtype = "3"; break; case "99": FOPtype = "3"; break; default: FOPtype = "No information"; break; } if ($(account.name)) { FOPtype = "1"; } else { FOPtype; } FOPtype;)] |
| PreOrder (7.7) Displays if the job was a prebooking. 0 = No 1 = Yes |
Preorder | [js(var FOPtype; if(Boolean($(job.when) == false)){ FOPtype = "0"; } else{ FOPtype = "1"; } FOPtype; )] |
| AccessRequirement (7.8) Displays if a wheelchair was booked. 0 = No 1 = Yes |
AccessRequirement | [js( (function() { var wheelchair = $(job.extra.tags.wc); if (wheelchair > 0) { return "1"; } else { return "0"; } })() )] |
| PriceTotal (7.10) Displays the total fare with tax and INCLUDES extras. |
PriceTotal | [js(function currencyFormatDE(num) { return (num.toFixed(2).replace('.', ',').replace(/(\d)(?=(\d)+(?!\d))/g, '$1')); } var grandTotal = $(pay_shares.fare.grand_total); var newTotalFix = grandTotal / 1000; var newTotalFix = newTotalFix.toString(); var newTotal = currencyFormatDE(parseFloat(newTotalFix)); newTotal;)] |
| Price Without Added Services (7.11) Displays ONLY the fare price and tax. |
PriceWithoutAddServ | [js(function currencyFormatDE(num) { return (num.toFixed(2).replace('.', ',').replace(/(\d)(?=(\d)+(?!\d))/g, '$1')); } var grandTotal = $(receipt.fare.comps[0].tot); var vat = $(pay_shares.fare.tax); var discount = $(pay_shares.fare.discount); var tax = 1.15; var newTotalFix = grandTotal / 1000; newTotalFix = newTotalFix.toString(); newTotal = currencyFormatDE(parseFloat(newTotalFix)); newTotal;)] |
| Payment method (7.12) Displays the FOP (Form of payment). 0 = Cash 1 = Card 2 = Invoice 3 = E-tickets |
PaymentMethod | [js(var FOPtype; switch ($(job.account.src)) { case "2": FOPtype = "0"; break; case "1": FOPtype = "1"; break; case "20": FOPtype = "2"; break; case "18": FOPtype = "3"; break; case "99": FOPtype = "3"; break; default: FOPtype = "No information"; break; } if ($(account.name)) { FOPtype = "1"; } else { FOPtype; } FOPtype;)] |
| Addinfo (7.9) This column is subject to a 25-character limit as set out in your requirement. It will display any of the following information fields if completed on a job: Cost code Project Reference Info all Info driver |
AddInfo | [js(var AddInfo; var costCode; var reference; var project; var driverInfo; var allInfo; var shortened; if (Boolean($(job.extra.tags.acc_extra.cost_code) === '')) { costCode = ""; } else if (Boolean($(job.extra.tags.acc_extra.cost_code) != '')) { costCode = $(job.extra.tags.acc_extra.cost_code); } if (Boolean($(job.extra.tags.acc_extra.reference) === '')) { reference = ""; } else if (Boolean($(job.extra.tags.acc_extra.reference) != '')) { reference = $(job.extra.tags.acc_extra.reference); } if (Boolean($(job.extra.tags.acc_extra.project) === '')) { project = ""; } else if (Boolean($(job.extra.tags.acc_extra.project) != '')){ project = $(job.extra.tags.acc_extra.project); } if (Boolean($(job.extra.tags.info.driver) === '')) { driverInfo = ""; } else if (Boolean($(job.extra.tags.info.driver) != '')){ driverInfo = $(job.extra.tags.info.driver); } if (Boolean($(job.extra.info) === '')) { allInfo = ""; } else if (Boolean($(job.extra.info) != '')){ allInfo = $(job.extra.info); } AddInfo = allInfo + " " + driverInfo + " " + costCode + " " + reference + " " + project; shortened = AddInfo.substring(0, 25); shortened; )] |