Erp.Lib.QueryExecutionDataSet can not be found in 10.2.400

Hi guys,

I am currently upgrading 10.1.600 to 10.2.400.

I can’t find the documentation to tell me where to find these things but after running ServiceDesigner and generating a new Erp.Proxy.Lib.****Impl.cs and loading this in Visual Studio, the ExecuteQuery method uses the following:
public System.Data.DataSet ExecuteQuery(string queryId, Erp.Lib.QueryExecutionDataSet ds)
but VS complains that QueryExecutionDataSet does not exist in Erp.lib.

I can see that a QueryExecutionDataSet does exist in Ice.Bo within the Ice.Contracts.Bo.DynamicQuery.dll, should i change to use this namespace instead?

As an aside, in 10.1.600 the signature of that method used to be:
public System.Data.DataSet ExecuteQuery(string queryId, Ice.Tablesets.QueryExecutionTableset ds)

That is in Ice.Proxy.BO

Thanks for the prompt response Jose.

Which dll is that in? I am using 10.2.400.

Thanks,
Richard

Here is a bit more context on this.
We have a custom wcf service which has the method:

        public DataSet ExecuteQuery(string queryId, Ice.Tablesets.QueryExecutionTableset ds)
        {
            var previousCompany = Session.CompanyID;
            DataSet results;
            try
            {
                Session.SetCompany(ConfigurationConstants.CRMCompanyCAPCRM);
                var service = ServiceRenderer.GetService<DynamicQuerySvcContract>(Db);
                results = service.ExecuteByID(queryId, ds);
            }
            finally
            {
                Session.SetCompany(previousCompany);
            }
            return results;
        }

When I run the service designer for 10.2.400 it tries to generate the impl class and instead of using Ice.Tablesets.QueryExecutionTableset ds it tries to put in Erp.Lib.QueryExecutionDataSet and then fails within ServiceDesigner when trying to compile it with the Erp.Lib.QueryExecutionDataSet. “QueryExecutionDataSet does not exist in Erp.lib” is the same error that Visual Studio states.

For now I have reverted to the previous generated code for that method only which is:

        public System.Data.DataSet ExecuteQuery(string queryId, Ice.Tablesets.QueryExecutionTableset ds)
        {
            HandleContractInitCall();
            callcontextMan.InitCall(BpmContext);
            if (DataTracer.TraceVerbose)
            {
                AddTraceParam("directoryId", "System.String", "", queryId);
            }
            DataSet result = null;
            for (RetryCount = OperationRetryCount; (RetryCount >= 0); RetryCount = HandlePrepareForRetry())
            {
                try
                {
                    var channel = HandleContractBeforeCall();
                    result = channel.ExecuteQuery(queryId, ds);
                    HandleContractAfterCall();
                    if (!callcontextMan.RunContextHandlers(BpmContext))
                    {
                        RetryCount = OperationRetryCount + 1;
                        continue;
                    }
                    if (DataTracer.TraceVerbose && DataTracer.ReturnDataVerbose)
                    {
                    }
                    break;
                }
                catch (Exception ex)
                {
                    if (this.ShouldRethrowNonRetryableException(ex)) { throw; };
                }
                finally
                {
                    this.HandleContractFinally("ExecuteQuery", "System.Data.DataSet");
                    callcontextMan.FinishCall(BpmContext);
                }
            }
            return result;
        }

Instead of the unknown namespace one of:

        public System.Data.DataSet ExecuteQuery(string queryId, Erp.Lib.QueryExecutionDataSet ds)
        {
            HandleContractInitCall(true);
            if (DataTracer.TraceVerbose)
            {
                AddTraceParam("queryId", "System.String", "", queryId);
                AddTraceParam("ds", "Erp.Lib.QueryExecutionDataSet", "", DataTracer.TraceDataSetsSwitch.Level >= TraceLevel.Info ? ds.Copy() : ds.Clone());
            }
            var result = new System.Data.DataSet();
            Ice.Tablesets.QueryExecutionTableset ts1 = new Ice.Tablesets.QueryExecutionTableset();
            DatasetAdapter.Copy(ds, ts1, false);
            for (RetryCount = OperationRetryCount; (RetryCount >= 0); RetryCount = HandlePrepareForRetry())
            {
                try
                {
                    var channel = HandleContractBeforeCall();
                    result = channel.ExecuteQuery(queryId, ts1);
                    if (!HandleContractAfterCall(true))
                    {
                        continue;
                    }
                    if (DataTracer.TraceVerbose && DataTracer.ReturnDataVerbose)
                    {
                        AddTraceReturnValue("result", "System.Data.DataSet", "", result);
                        AddTraceReturnValue("ds", "Ice.Tablesets.QueryExecutionTableset", "out", ds.Copy());
                    }
                    break;
                }
                catch (Exception ex)
                {
                    if (this.ShouldRethrowNonRetryableException(ex, ds)) { throw; };
                }
                finally
                {
                    this.HandleContractFinally("ExecuteQuery", "System.Data.DataSet", true);
                }
            }
            return result;
        }