Hi,
That we are able to publish Queries and Pages from NAV 2013 as Web Services is great. Sadly I have a problem that seems almost random. I have configuered the Dynamics NAV Server Instance for OData and published some web services from NAV and it works fine. But sometimes after a server restart or just a restart of the NAV Server Instance I get problem to connect to some of my published web services (also random, not the same web services every time). Then I need to restart the NAV Server Instance until it works and then it will work until someone restart the server or the NAV Server Instance again.
I currently have the problem with Version 7.0.35026.0. Does anyone know what the problem are? Is it a known bug?
Here is an error that I get in the eventlog when the web service doesn't answer:
Server instance: DynamicsNAVOData
Session type: UnknownClient
Session ID: N/A
User:
Type: System.IndexOutOfRangeException
Message: Index was outside the bounds of the array.
StackTrace:
at Microsoft.Dynamics.Nav.Runtime.ReadOnlyRecordBuffer.get_Item(Int32 index)
at Microsoft.Dynamics.Nav.Runtime.DataProviderHelper.BuildPositioningFilterListFromRecordBuffer(MutableRecordBuffer record, ReadOnlyCollection`1 sortingFields, FilterExpressionType newPosition)
at Microsoft.Dynamics.Nav.Runtime.DataProviderHelper.BuildPositioningFilterFromRecordBuffer(MutableRecordBuffer record, ReadOnlyCollection`1 sortingFields, FilterExpressionType newPosition)
at Microsoft.Dynamics.Nav.Runtime.NavSqlQueryCommand.QueryExecute(NavSqlConnectionScope conScope, NCLMetaQueryDefinition query, Int32 companyToken, Int32 topNumberOfRowsToReturn, FiltersAndMarks queryFilters, Boolean includeCurrent, MutableRecordBuffer startingPosition, SecurityFiltering securityFiltering, Boolean addExplicitJoinHints)
at Microsoft.Dynamics.Nav.Runtime.NavSqlQueryCommand.<Query>d__1b.MoveNext()
at Microsoft.Dynamics.Nav.Runtime.ResultSet.TryGetAtIndex(Int32 index, ReadOnlyRecordBuffer& recordBuffer)
at Microsoft.Dynamics.Nav.Runtime.ResultSetEnumerator.TryGetRecordBufferFromResultSet(Int32 fetchIndex, MutableRecordBuffer& recordBuffer)
at Microsoft.Dynamics.Nav.Runtime.ResultSetEnumerator.TryMoveNextImpl(MutableRecordBuffer& recordBuffer)
at Microsoft.Dynamics.Nav.Runtime.NavQuery.GetNextRow()
at Microsoft.Dynamics.Nav.Runtime.NavQuery.RunQueryForOData(NavValue[] startingPosition, Int32 pageSize, Int32 skipSize)
at Microsoft.Dynamics.Nav.Service.ODataServiceProvider.ODataQueryProviderToNavQuery.FetchData(NavConnection connection)
at Microsoft.Dynamics.Nav.Service.ODataServiceProvider.ODataQueryProviderToNavQuery.GetResourcesFromNavObject(NavConnection connection)
at Microsoft.Dynamics.Nav.Service.ODataServiceProvider.NavServiceHelper.ExecuteOperation[TResult,T1,T2](String companyName, ODataOperation`3 operation, T1 parameter1, T2 parameter2)
Source: Microsoft.Dynamics.Nav.Ncl
HResult: -2146233080