There are 4 objects in Precursive, that when the multi-currency is enabled, have exchange rates applied automatically from the FX Rate data table:
Phase - the exchange rate applies based on the Start Date of the phase, if the Start Date is set up only on the Project, then it takes the Start date of the project. If there are no Start Dates at all, then the exchange rate is applied based on the date the project has been created.
Booking - the exchange rates are set up on bookings only when the participant they belong to is a resource request. The exchange rate is set up according to the Start Date of the booking.
Timesheet Entry - as timesheet entries only relate to named individuals and not resource requests, this is where you will find what are the exchange rates of a resource booking. On entries we apply exchange rates for resources and project currency as the currency can differ on both and both need to be recalculated to the org currency in that case. The Date field defines which exchange rate should be set up.
Expense - the exchange rates are set up for the resource, project and expense as they can all differ. The exchange rate is applied based on the Start Date of the Expense.