I am using an Excel Online connector to my Canvas app.
I want to Collect the datasource on app load and then patch the Datasource with new/edit records as I work with them on Local Collection Storage.
According to Excel the types are:
Text, Number, Text, Text

However when I Collect the Table from DataSource (Excel Sheet) I cannot run it as I get the Error: Incompatible Type. Column in data source expects a "Number" type your using a "Text" type.
ClearCollect(CurrencyCollection,Currency2);
ClearCollect(tempCurCollection,Currency2);
ForAll(tempCurCollection, Collect(CurrencyCollection,ThisRecord));
Neither method works, (im aware they're basically the same thing).
It's true, when I load it in to a separate Collection I haven't predefined values on, It loads in as a Text Field, even if in my Excel Sheet it has been noted as a number.
I have found a workaround to get the values to load in:
ClearCollect(tempCurCollection,Currency);
ForAll(tempCurCollection, Collect(CurrencyCollection,
{
Cur_Name: ThisRecord.Cur_Name,
Date:ThisRecord.Date,
ExchangeRate: Value(ThisRecord.ExchangeRate)
}));
But as I mentioned I want to maintain the sync between the two, I know if you just load in the collection without explicity stating values (like I have done above) then you can "Patch" the record back as they save the PowerAppsID too.
I think I could also do an UpdateIf to maintain the sync but, in terms of code friendliness, finding a way to force the schema from Excel would really help.
Can anyone think of a way around this problem?
Thanks in advance,
Michael