SetUsedIdentifiers and OpenEdge DataProvider

We are using the OpenEdge DataProvider to perform ad-hc reporting together with List and Label 24.005.

Our progress database has field names which contain dashes ‘-’, e.g. ‘protocol-id’. When these are send to LL using the dataprovider, they show as ‘protocol_id’ (i.e. the dash replaced by an underscore) which is fine.

However, if I add a subelement, then the link field between the tables (e.g. “protocol-id”) shows twice in the list of usedIdentifiers in the .LST file: One time with an underscore “_”, and once with a dash ("-").

Any attempt to show a preview (or run the report) subsequently results in “Object reference not set to an instance of an object.”.

Looking at the sourcecode in the OpenEdge Dataprovider (DataProvider.cs) shows that the OpenEdge Dataprovider is attempting to get the corresponding OpenEdge table column based on the list of fields contained in “usedIdentifiers”. As this list contains “protocol_id”, this will fail of course as the database column is “protocol-id” (with a dash).

The issue occurs only when linking subelements in a container. If I use only a single table, then everything works fine.

I am in the dark here: is this a List&Label issue, or an issue with the OpenEdge DataProvider. Any clues on how to solve this would be appreciated.

1 Like

This is something we should try to fix in the Progress provider. I’ll try to repro this here and see how we can best fix it.

Thanks again for reporting this. @Thomas_Wurl has provided a fix for the provider, @ealacali will contact you with details.

Hi Jochen (and Thomas!), thanks for the prompt action!