private static string GetTranslatedString(HPMUniqueID projectId, EHPMProjectDefaultColumn column, uint iValue) { HPMUntranslatedString unTranslated = SessionManager.Session.UtilGetColumnDataItemFormatted(projectId, column, iValue); HPMLanguage language = SessionManager.Session.LocalizationGetDefaultLanguage(); String translated = SessionManager.Session.LocalizationTranslateString(language, unTranslated); return(translated); }
/// <summary> /// Gets a localized string from a Hansoft full translation ID. /// /// NOTE: Currently there is no way to select which translation to use but UK English will always be used. /// </summary> /// <param name="fullId">The full translation ID for the string to get.</param> /// <returns>The localized string.</returns> public static string GetLocalizedStringForFullId(string fullId) { uint translationId = SessionManager.Session.LocalizationGetTranslationIDFromFullTranslationID(fullId); HPMUntranslatedString untranslated = SessionManager.Session.LocalizationCreateUntranslatedStringFromTranslationID(translationId, null); HPMLanguage language = SessionManager.Session.LocalizationGetDefaultLanguage(); // This means that UK English always will be used return(SessionManager.Session.LocalizationTranslateString(language, untranslated)); }
protected void Page_Load(object sender, EventArgs e) { // The ID of the authenticated user FormsIdentity ID = (FormsIdentity)HttpContext.Current.User.Identity; m_ResourceID = new HPMUniqueID(Convert.ToInt32(ID.Name)); m_NoUserID = new HPMUniqueID(-1); // Find context is empty but can be set by choosing a report or providing a search string m_FindContexts = new Dictionary<string, HPMFindContextData>(); ErrorLabel.Visible = false; try { InitHansoftVirtualSession(); m_UpdatedFromWeb = m_VirtSession.LocalizationCreateUntranslatedStringFromString("Updated from web integration sample"); AddProjectControls(); // update info contains info from callbacks about changed Hansoft elements HPMUpdateInfo update = Session["updateinfo"] as HPMUpdateInfo; if (!IsPostBack || update.FullUpdate) { AddData(); update.FullUpdate = false; // retain selected tab between postbacks (doesn't work for the first tab - TabContainer bug?) Uncomment it if you want to experiment with it //if (Session["ActiveTabIndex"] != null) //{ // int storedIndex = (int)Session["ActiveTabIndex"]; // TabContainer projectTabs = Page.FindControl("ProjectTabs") as TabContainer; // if (storedIndex <= projectTabs.Tabs.Count) // projectTabs.ActiveTabIndex = storedIndex; //} BindDataSources(); } } catch (HPMSdkException error) { SetErrorMessage("An error occurred when communicating with the Hansoft server.", error.ErrorAsStr()); } catch (HPMSdkManagedException error) { SetErrorMessage("An error occurred when communicating with the Hansoft server.", error.ErrorAsStr()); } }