public void AssetAcquisitionSearch(
            AssetAcquisitionSearch assetAcquisitionSearch)
        {
            assetAcquisitionSearch.ResponseMessage = new ResponseMessage(HttpStatusCode.InternalServerError);

            string message;

            try
            {
                var continueProcessing = false;

                sapConnect.MakeNonSsoConnection();


                if (sapConnect.r3Connection == null || sapConnect.r3Connection.IsOpen == false)
                {
                    message = "Non SSo Connection returned no connection";
                    Log.Error(message);
                    assetAcquisitionSearch.ResponseMessage = new ResponseMessage(HttpStatusCode.InternalServerError, message);
                }
                else
                {
                    continueProcessing = true;
                    Log.Information("Connection established successfully.");
                }

                if (continueProcessing)
                {
                    new bapiCalls().SapAssetAcquisitionSearch(sapConnect.r3Connection, assetAcquisitionSearch);
                }
            }
            catch (Exception exception)
            {
                Log.Error(exception, "Error Getting Non SSO Ticket: exception");
            }
        }
        // POST api/searchasset
        public HttpResponseMessage Post(
            [FromBody] AssetAcquisitionSearch assetAcquisitionSearch)
        {
            var result = new HttpResponseMessage(HttpStatusCode.InternalServerError);

            try
            {
                if (assetAcquisitionSearch == null)
                {
                    assetAcquisitionSearch =
                        new AssetAcquisitionSearch("",
                                                   "",
                                                   "",
                                                   null,
                                                   "",
                                                   null,
                                                   new ResponseMessage(
                                                       HttpStatusCode.BadRequest,
                                                       "Fixed asset transfer search web service call missing BODY parameters"),
                                                   null);
                }
                else
                {
                    Log.Information(
                        "Call received - parameters: {params}",
                        JsonConvert.SerializeObject(assetAcquisitionSearch));

                    SapAccess sapAccess = null;
                    try
                    {
                        sapAccess = new SapAccess();
                        this.Request.RegisterForDispose(sapAccess);

                        sapAccess.AssetAcquisitionSearch(
                            assetAcquisitionSearch);
                    }
                    finally
                    {
                        sapAccess?.Dispose();
                    }
                }
            }
            catch (Exception exception)
            {
                Log.Error(exception, "Error inside searchfixedAssetAcquisition");
                assetAcquisitionSearch.ResponseMessage =
                    new ResponseMessage(HttpStatusCode.InternalServerError,
                                        exception.Message);
            }
            finally
            {
            }

            result.Content =
                new StringContent(
                    JsonConvert.SerializeObject(assetAcquisitionSearch),
                    System.Text.Encoding.UTF8,
                    "application/json");
            result.StatusCode = assetAcquisitionSearch.ResponseMessage.responseCode;
            Log.Information(
                "Response - parameters: {params}",
                JsonConvert.SerializeObject(assetAcquisitionSearch));
            return(result);
        }