As I found out now, probably the ignorance of ParameterData is a problem of my custom code which does not parse all possible trace options:
string traceDirectory = ConfigurationManager.AppSettings.Get("Rfc.TraceDirectory");
if (string.IsNullOrWhiteSpace(traceDirectory))
traceDirectory = ".";
string traceLevelAsStr = ConfigurationManager.AppSettings.Get("Rfc.TraceLevel");
uint traceLevel;
if (!uint.TryParse(traceLevelAsStr, out traceLevel))
traceLevel = RfcTrace.LEVEL2;
else
{
if (traceLevel == 0)
traceLevel = RfcTrace.NONE;
if (traceLevel == 1)
traceLevel = RfcTrace.LEVEL1;
else if (traceLevel == 2)
traceLevel = RfcTrace.LEVEL2;
else if (traceLevel == 3)
traceLevel = RfcTrace.LEVEL3;
else if (traceLevel == 4)
traceLevel = RfcTrace.LEVEL4;
else
traceLevel = RfcTrace.NONE;
}
_destinationConfig = new SapDestinationConfig(traceDirectory, traceLevel);