protected async Task <Rkl.Erp.Sage.Sage100.TableObjects.API_Results> InsertErpTransactionImportDetail(JT_TransactionImportDetail importDetail) { // dch rkl 12/09/2016 Insert now returns object result //bool result = false; Rkl.Erp.Sage.Sage100.TableObjects.API_Results result = new Rkl.Erp.Sage.Sage100.TableObjects.API_Results(); switch (_dataConnectionType) { case ConnectionType.Rest: // dch rkl 12/09/2016 Insert now returns object result //result = await InsertTransactionImportDetailToRestService(importDetail); result.Success = await InsertTransactionImportDetailToRestService(importDetail); break; case ConnectionType.SData: // dch rkl 12/09/2016 Insert now returns object result result = InsertTransactionImportDetailToSData(importDetail); break; default: break; } return(result); }
public async void InsertErpTransactionImportDetail(List <JT_TransactionImportDetail> importDetails) { foreach (var importDetail in importDetails) { // dch rkl 12/09/2016 Insert now returns object result //bool result = await InsertErpTransactionImportDetail(importDetail); Rkl.Erp.Sage.Sage100.TableObjects.API_Results result = await InsertErpTransactionImportDetail(importDetail); //if (result) if (result.Success) { DeleteExportRow(importDetail); } } }
// dch rkl 12/09/2016 This now returns an object //public bool InsertTransactionImportDetailRecordSync(JT_TransactionImportDetail importDetail) public Rkl.Erp.Sage.Sage100.TableObjects.API_Results InsertTransactionImportDetailRecordSync(JT_TransactionImportDetail importDetail) { // dch rkl 12/09/2016 This now returns an object //bool returnData = false; Rkl.Erp.Sage.Sage100.TableObjects.API_Results returnData = new Rkl.Erp.Sage.Sage100.TableObjects.API_Results(); App_Settings appSettings = App.Database.GetApplicationSettings(); // set up the proper URL string url = GetRestServiceUrl(); if (!url.EndsWith(@"/")) { url += @"/"; } url += @"i/JT_TransactionImportDetail"; HttpClient client = new HttpClient(); client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); JsonSerializerSettings microsoftDateFormatSettings = new JsonSerializerSettings(); microsoftDateFormatSettings.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; if (appSettings.DeviceID != null) { SimpleAES encryptText = new SimpleAES("V&WWJ3d39brdR5yUh5(JQGHbi:FB@$^@", "W4aRWS!D$kgD8Xz@"); string authid = encryptText.EncryptToString(appSettings.DeviceID); string datetimever = encryptText.EncryptToString(DateTime.Now.ToString("yyyy-MM-ddTHH:mm:sszzz")); client.DefaultRequestHeaders.Add("x-tdws-authid", authid); client.DefaultRequestHeaders.Add("x-tdws-auth", datetimever); } // Make the call and get a valid response HttpResponseMessage response = client.PostAsync(client.BaseAddress, new StringContent(JsonConvert.SerializeObject(importDetail, microsoftDateFormatSettings), null, "application/json")).Result; // TODO.... await response.EnsureSuccessStatusCode(); // Read out the result... it better be JSON! string JsonResult = response.Content.ReadAsStringAsync().Result; try { // dch rkl 12/09/2016 This now returns an object //returnData = JsonConvert.DeserializeObject<bool>(JsonResult); returnData = JsonConvert.DeserializeObject <Rkl.Erp.Sage.Sage100.TableObjects.API_Results>(JsonResult); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); // dch rkl 12/07/2016 Log Error ErrorReporting errorReporting = new ErrorReporting(); errorReporting.sendException(ex, "TechDashboard.Data.RestClient"); } client.Dispose(); response.Dispose(); return(returnData); }