public async Task <SystemsAvailableResult> ReturnAreSystemsAvailableAsync( string v_sCompanyName, string v_sUserProfile, string v_sAuthID, string v_sToken) { m_wcfClient = new WcfExt116.ServiceClient(); SystemsAvailableResult result = new SystemsAvailableResult(); try { WcfExt116.SystemsAvailableResult sResult = await m_wcfClient.ReturnAreSystemsAvailableAsync( v_sCompanyName, v_sUserProfile, v_sAuthID, v_sToken); if (sResult.bSuccessfull == true) { result.bSuccessfull = sResult.bSuccessfull; result.SystemsAvailable = sResult.SystemsAvailable; result.UserAccountOK = sResult.UserAccountOK; } return(result); } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// Check if we are connected to AX /// </summary> /// <param name="v_bShowMessage"></param> /// <returns></returns> /// public async Task <SystemsAvailableResult> AreWeConnectedToAX() { SystemsAvailableResult rResult = null; try { if (DependencyService.Get <ISettings>().AreWeOnline() == true) { string sUserProfile = await DependencyService.Get <ISettings>().GetUserName(); if (sUserProfile.Trim() == string.Empty || sUserProfile.Trim() == "") { sUserProfile = Session.CurrentUserName; } rResult = await DependencyService.Get <IWcfExt116>().ReturnAreSystemsAvailableAsync( m_cCompanyName, sUserProfile, Settings.p_sSetting_AuthID, Session.Token); if (rResult != null) { if (rResult.bSuccessfull == true) { return(rResult); } } } return(rResult); } catch (Exception ex) { string sVal = ex.Message; return(rResult); } }
public async Task <bool> IsAXSystemAvailable(bool v_bShowMessageOnFailedConnection) { WcfExt116 cAX = null; SystemsAvailableResult rResult = null; string sSupportMsg = string.Empty; bool bConnected = true; try { try { cAX = new WcfExt116(); rResult = await cAX.AreWeConnectedToAX(); } catch (Exception ex) { //We do not need to log. // } if (cAX != null) { await DependencyService.Get <IWcfExt116>().CloseAXConnection(); } bool bDisplayNoConnection = false; if (rResult == null) { bDisplayNoConnection = true; } else if (rResult.bSuccessfull == false) { bDisplayNoConnection = true; } else if (rResult.SystemsAvailable == false) { bConnected = false; if (rResult.UserAccountOK == false) //v1.0.2 - Display different message for account disabled. { if (v_bShowMessageOnFailedConnection == true) { sSupportMsg = Settings.ReturnDisabledAccountMessage(); await DependencyService.Get <ISettings>().DisplayMessage(sSupportMsg, "Failed Connection"); } } else { bDisplayNoConnection = true; } } //If we cannot connect and we need to display a message. if (bDisplayNoConnection == true) { bConnected = false; //Only display if flagged to. if (v_bShowMessageOnFailedConnection == true) { sSupportMsg = Settings.ReturnNoConnectionMessage(); sSupportMsg += Environment.NewLine + Environment.NewLine; sSupportMsg += Settings.p_sSupportMessage; await DependencyService.Get <ISettings>().DisplayMessage(sSupportMsg, "No Connection"); } } return(bConnected); } catch (Exception ex) { throw new Exception(ex.Message); } }