{% extends "consol/base.html" %}{% load consol_tags %} {% block title %}FX rates{% endblock %} {% block content %}

FX rates

Closing / average per period. Missing direct pairs are derived as inverse or cross rates (e.g. SGD→INR = SGD/USD × USD/INR). Opening rate = prior period closing.

{% for f, t in pairs %}{% endfor %}{% for p in pairs %}{% endfor %}{% for row in table %} {% for c in row.cells %}{% if c %}{% else %}{% endif %}{% endfor %} {% endfor %}
Period{{ f }}/{{ t }}
closingaverage
{{ row.period.label }}{{ c.closing|rate }}{{ c.average|rate }}missing

Add / update a rate

{% csrf_token %}{{ form.as_p }}

Historical rates (equity)

{% for e, rates in hist %}{% for h in rates %}{% endfor %}{% endfor %}
EntityAccountRate → {{ group.presentation_currency }}
{{ e.code }} ({{ e.functional_currency }}){{ h.account.code }} {{ h.account.name }}{{ h.rate|rate }}

Share capital uses the acquisition-date rate; opening retained earnings the blended historical rate at the first consolidated period. Later periods roll retained earnings forward in {{ group.presentation_currency }}.

{% endblock %}