Conversion Report

When a software project like foxer currency converter grows in features and complexity, the need to thoroughly test and debug that everything is working well arises. We know we are dealing with more than numbers, so we take accuracy & reliability very seriously. Conversion Report was initially created for internal purposes, so we could follow, step by step, how calculations were made during conversions. Then, especially after the introduction of the Advanced Table Conversion (ATC), other parameters came into playing an important role too, such as currency and date specification, and so we decided to make this feature public and fully available from both the converter itself and the conversion pop ups.

Goal

As complex ATC conversions can modify important parameters, the objective with this tool is double:

  • Log detailed information of every calculation done in a conversion transaction.
  • Ensure that a clipboard instant conversion doesn’t affect current converter state. So when the conversion transaction finishes, same subscription, exchange rates and currencies are equally selected, as if nothing had happened.

Structure

The Conversion Report is divided into sections to help identify important report areas.

Header

The header section contains version and date / time stamp information:

**************************************************
* Foxer Conversion Report
* Version: 9.3.0.1
* Date: 2019.05.28 11:04:18
**************************************************

Initial State

This section registers currently loaded plugin, file in memory and base currency. A sample conversion of 100 units is always attached to this section, to compare with an identical conversion made at the end of the transaction.

**************************************************
* Pre Conversion State:
* Plugin: BCA / Bank Of Canada
* File: C:\Users\Public\Documents\Foxer\BCA\2019.05.27-BCA.fxr
* Base currency is: CAD
* 100 EUR = 74,39 USD
**************************************************

Original String

The strings section shows the original string as it was when obtained from the clipboard:

**************************************************
* String to convert:
**************************************************
ECB GBP AUD NOK
19/05/2019 100 110 120
20/05/2019 200 210 220
21/05/2019 300 310 320
**************************************************

Converter Array

The array section contains the indexed representation of the original string as an array. Note that every single item is analized and classified.

**************************************************
* Converter array:
**************************************************
0000 : “ECB ” as Plugin
0001 : “GBP ” as Currency
0002 : “AUD ” as Currency
0003 : “NOK” as Currency
0004 : “19/05/2019” as Date
0005 : “100” as Numeric (ambigous)
0006 : “110” as Numeric (ambigous)
0007 : “120” as Numeric (ambigous)
0008 : “20/05/2019” as Date
0009 : “200” as Numeric (ambigous)
0010 : “210” as Numeric (ambigous)
0011 : “220” as Numeric (ambigous)
0012 : “21/05/2019” as Date
0013 : “300 ” as Numeric (ambigous)
0014 : “310 ” as Numeric (ambigous)
0015 : “320” as Numeric (ambigous)
**************************************************

Detailed Conversion

All details of the conversion appear in this section. Apart from ratios and calculations, see how the exchange rate files are loaded when required, and reported if missing. The resulting formatted string is also shown for every conversion.

foxer Currency Calculator

Try Premium Free Demo Version

Original table. You can try it here

ECBGBPAUDNOK
19/05/2019100110120
20/05/2019200210220
21/05/2019300310320

A conversion report image

Features index

**************************************************
* Starting conversion of 16 elements
**************************************************
0000 = “ECB” is Plugin ECB / Last File is: C:\Users\Public\Documents\Foxer\ECB\2019.05.27-ECB.fxr
0001 = “GBP” is incoming Currency
0002 = “AUD” is incoming Currency
0003 = “NOK” is incoming Currency
0004 = “19/05/2019” ATC Date column = 19/05/2019 / File to load: C:\Users\Public\Documents\Foxer\ECB\2019.05.19-ECB.fxr (not found)
0004 -> Current values from: C:\Users\Public\Documents\Foxer\ECB\2019.05.17-ECB.fxr
0005 = “100” incoming Ratio GBP = ( 1,1416 or [1/0,8759] ) * outgoing Ratio USD = ( 1,1172 or [1/0,8951] ) = (1,2754) => 100 GBP = 127,542 USD. RESULT => “$127,54 ( £100 )”
0006 = “110” incoming Ratio AUD = ( 0,6158 or [1/1,6239] ) * outgoing Ratio USD = ( 1,1172 or [1/0,8951] ) = (0,6880) => 110 AUD = 75,677 USD. RESULT => “$75,68 ( A$110 )”
0007 = “120” incoming Ratio NOK = ( 0,1021 or [1/9,7953] ) * outgoing Ratio USD = ( 1,1172 or [1/0,8951] ) = (0,1141) => 120 NOK = 13,687 USD. RESULT => “$13,69 ( 120Kr )”
0008 = “20/05/2019” ATC Date column = 20/05/2019 / File to load: C:\Users\Public\Documents\Foxer\ECB\2019.05.20-ECB.fxr
0009 = “200” incoming Ratio GBP = ( 1,1413 or [1/0,8762] ) * outgoing Ratio USD = ( 1,1167 or [1/0,8955] ) = (1,2745) => 200 GBP = 254,896 USD. RESULT => “$254,90 ( £200 )”
0010 = “210” incoming Ratio AUD = ( 0,6195 or [1/1,6141] ) * outgoing Ratio USD = ( 1,1167 or [1/0,8955] ) = (0,6918) => 210 AUD = 145,287 USD. RESULT => “$145,29 ( A$210 )”
0011 = “220” incoming Ratio NOK = ( 0,1021 or [1/9,7978] ) * outgoing Ratio USD = ( 1,1167 or [1/0,8955] ) = (0,1140) => 220 NOK = 25,074 USD. RESULT => “$25,07 ( 220Kr )”
0012 = “21/05/2019” ATC Date column = 21/05/2019 / File to load: C:\Users\Public\Documents\Foxer\ECB\2019.05.21-ECB.fxr
0013 = “300” incoming Ratio GBP = ( 1,1414 or [1/0,8761] ) * outgoing Ratio USD = ( 1,1161 or [1/0,8960] ) = (1,2739) => 300 GBP = 382,182 USD. RESULT => “$382,18 ( £300 )”
0014 = “310” incoming Ratio AUD = ( 0,6164 or [1/1,6223] ) * outgoing Ratio USD = ( 1,1161 or [1/0,8960] ) = (0,6880) => 310 AUD = 213,272 USD. RESULT => “$213,27 ( A$310 )”
0015 = “320” incoming Ratio NOK = ( 0,1021 or [1/9,7913] ) * outgoing Ratio USD = ( 1,1161 or [1/0,8960] ) = (0,1140) => 320 NOK = 36,476 USD. RESULT => “$36,48 ( 320Kr )”
**************************************************

Final check

The last section repeats the same sample conversion done previously at the Initial State. Status is CORRECT if both the file loaded and the conversion result are the same.

**************************************************
* Post Conversion State:
* Plugin: BCA / Bank Of Canada
* File: C:\Users\Public\Documents\Foxer\BCA\2019.05.27-BCA.fxr
* Base currency is: CAD
* 100 EUR = 74,39 USD ( CORRECT )
**************************************************

End of Report

**************************************************
* End of Conversion Report
**************************************************