PROGRESS.Session.NoSchemaMarshal
- Last Updated: February 11, 2026
- 1 minute read
- OpenEdge
- Version 13.0
- Documentation
Data Type:
Boolean
Session model:
Session-free and session-managed
When set to true, this property prevents .NET from sending schema
information to the application server for input-output and output DataSet and DataTable
properties. The property applies to all DataSet and DataTable parameters for subsequent
method calls. Set the property before a proxy method is called. Reset the NoSchemaMarshal property back to false for subsequent proxy
method calls if needed.
This property
must be used for output only DataSet or DataTable parameters, and
not the ProDataTable.SetNoSchemaMarshal( ) method.
This
is because the c# compiler considers an output parameter unassigned and
it must be assigned before its value is used, therefore, the .NET
proxy code is not able to look at the output DataSet or DataTable
object to detect if SetNoSchemaMarshal( ) was
called.
The property can be used in place of the ProDataTable SetNoSchemaMarshal( ) method. Use this method if you need all
DataSet and DataTable parameters in a single proxy method to not pass schema info from .NET
to the application server.
For example:
|
RunTimeProperties.NoSchemaMarshal = true; appObj.getMyDSet(1, out myOutDS); |
See SetNoSchemaMarshal( ) for more details on disabling schema marshaling.
This property
applies to the RunTimeProperties class only (it
does not apply to Connection objects).
ttmarshal startup parameter, or you can use the temp table properties NO-SCHEMA-MARSHAL and MIN-SCHEMA-MARSHAL. For more information, see Startup
Command and Parameter Reference and ABL
Reference.Default:
False