private void TestSAPConnection() { using (var c =NestedContainer) { var tested = new PullMasterdataService().TestSapcOnnection(); if(tested) { Alert("Connection OK...!"); } //else //{ // Alert("Something is not adding up..confirm the setting and ensure all SAP licences are updated and license server running!"); //} } }
protected override async void LoadMenuItem(MenuItem item) { string itemname = item.Name; if (string.IsNullOrEmpty(itemname)) return; if (itemname == "sap") { var service = new PullMasterdataService(); bool fileImported = true; foreach (var masterdata in GenerateMasterDataList) { if (fileImported) fileImported = service.Import(masterdata).Status; } if (fileImported) Messenger.Default.Send("Ready to import"); MessageBox.Show(fileImported ? "Done...!" : "Completed with errors...see logs for details!"); } if (itemname == "ordes") { var done= await new ExportTransactionsService().ExportToSap(OrderType.OutletToDistributor); } if (itemname == "sales") { await new ExportTransactionsService().ExportToSap(OrderType.DistributorPOS); } if (itemname == "inventory") { new ExportTransactionsService().PullInventory(); } if (itemname == "settings") { Navigate(@"/views/settings.xaml"); } if (itemname == "Sync") { Navigate(@"/views/sync.xaml"); } }
protected async override void Sync() { IntializeSyncMasterData(); await Task.Factory.StartNew(() => { try { dtsyncCommand.Stop(); Informer("Sap"); var service = new PullMasterdataService(); bool fileImported = true; foreach (var masterdata in GenerateMasterDataList) { Informer("\t\t Pulling " + masterdata); if (fileImported) { var result = service.Import(masterdata); fileImported = result.Status; if (!fileImported) { Informer("\t\t Error " + result.Info); } } } if (fileImported) { Informer("Ready to import"); Informer("Done...!"); } else { Informer("Completed with errors...see logs for details!"); } Informer("Distributor"); foreach (var masterdata in GenerateMasterDataList) { ImportMasterDataItem(masterdata); } Informer("Distributor --> Inventory"); var config = InventoryConfiguration.Load(); if (config == null) { var info = new ExportTransactionsService().PullIntialInventory(); if (info.Status) Informer("\t\tIntial Inventory uploaded successfully "); else { Informer("\t\t " + info.Info); } } else { var info = new ExportTransactionsService().PullInventoryTransfer(); if (info.Status) Informer("\t\tInventory transfer uploaded successfully "); else { Informer("\t\t " + info.Info); } } ExportOrders(); ExportSaleOrders(); if (!IsTimeStopped) { dtsyncCommand.Interval = new TimeSpan(0, 10, 0); dtsyncCommand.Start(); } }catch(Exception ex) { Informer(ex.Message); } }); }
private void ImportMasterDataItem(string masterdata) { MasterDataFilepath = FileUtility.GetFilePath("masterdataimportpath"); var syncTracker = MasterDataSyncConfiguration.Load(); var servicesync = new PullMasterdataService(); using (var c = NestedContainer) { bool isSuccess = false; var service = Using<IMasterDataImportService>(c); try { var imports = service.ImportAsync(MasterDataFilepath, (MasterDataCollective) Enum.Parse(typeof (MasterDataCollective), masterdata)).Result; if (imports != null) { if (imports.Count <= 0) { Informer(string.Format("\t\t{0} --> No master data items to upload", masterdata)); return; } var responses = service.Upload(imports).Result; if (responses.ValidationResults == null || responses.Result == null || responses.Result.Contains("Error")) { var error = responses != null && !string.IsNullOrEmpty(responses.ResultInfo) ? responses.ResultInfo : string.Format( "{0} -> There is an unknown error response from server..import failed", masterdata); Informer("\t\t" + error); return; } if (responses != null && responses.ValidationResults.Any()) { if (responses.ValidationResults.Any(n => !n.IsValid)) { responses.ValidationResults.Where(n => !n.IsValid).SelectMany(s => s.Results). ToList ().ForEach(s => Informer(string.Format("\t\t{0} ->" + s, masterdata))); } else { isSuccess = true; Informer(string.Format("\t\t{0} -> Uploaded successfully", masterdata)); } } else if (responses != null && responses.Result == "Success" && (responses.ValidationResults.Count == 0 || responses.ValidationResults.All(n => n.IsValid))) { Informer(string.Format("\t\t{0} -> Uploaded successfully", masterdata)); isSuccess = true; } var tracker= syncTracker.Item.FirstOrDefault(s => s.Collective == (MasterDataCollective) Enum.Parse(typeof (MasterDataCollective), masterdata)); if (tracker != null) { tracker.LastSyncDateTime =servicesync.GetCurrentDatetime().AddDays(-1); syncTracker.Save(); } } } catch (AggregateException ex) { //var errors = ex.InnerExceptions.Aggregate(string.Empty, // (current, error) => // current + error); Informer(string.Format("\t\t{0} ->"+ex.Message,masterdata)); return ; } catch (Exception ex) { Informer(string.Format("\t\t{0} ->Error=>" + ex.Message,masterdata)); return; } return; } }