/// <summary> /// Display the list of values attached to the current lookup group /// </summary> private void UpdateDataView() { if (lookupGroupId != -1) { LookupValueList lookupValuesList = LookupGroup.GetByKey(lookupGroupId).Values; dg.DataSource = lookupValuesList; Utils.InitGridSort(ref dg, false); dg.DataBind(); Utils.EnableIntelligentSort(ref dg, Convert.ToInt32(txtSortColPos.Value)); dg.DisplayLayout.AllowSortingDefault = AllowSorting.No; dg.DisplayLayout.CellClickActionDefault = CellClickAction.Edit; // Refresh tab title UITools.RefreshTab(Page, "Values", lookupValuesList.Count); if (dg.Rows.Count == 0) { UITools.HideToolBarButton(uwToolbar, "Delete"); UITools.HideToolBarSeparator(uwToolbar, "DeleteSep"); } else { if (SessionState.User.HasCapability(CapabilitiesEnum.MANAGE_DICTIONARY)) { UITools.ShowToolBarButton(uwToolbar, "Delete"); UITools.ShowToolBarSeparator(uwToolbar, "DeleteSep"); } } } }
// Display data protected void UpdateDataView() { if (lookupGroupId == -1) { // ************************************************************************* // Provide an empty screen to create a new Input form // ************************************************************************* panelId.Visible = false; Page.DataBind(); UITools.HideToolBarButton(uwToolbar, "Delete"); UITools.HideToolBarSeparator(uwToolbar, "DeleteSep"); } else { LookupGroup lookupObj = LookupGroup.GetByKey(lookupGroupId); txtGroupId.Text = lookupObj.Id.ToString(); txtGroupName.Text = lookupObj.Name; txtComment.Text = lookupObj.Comment; cbMultiChoice.Checked = lookupObj.MultiChoice; panelId.Visible = true; Page.DataBind(); } }
// Save the new or updated Input form private void Save() { LookupGroup lookupObj = LookupGroup.GetByKey(lookupGroupId); if (lookupObj == null) { lookupObj = new LookupGroup(lookupGroupId, txtGroupName.Text.Trim(), txtComment.Text.Trim(), (bool)cbMultiChoice.Checked); } else { lookupObj.Name = txtGroupName.Text; lookupObj.Comment = txtComment.Text; lookupObj.MultiChoice = cbMultiChoice.Checked; } if (!lookupObj.Save(SessionState.User.Id)) { lbError.CssClass = "hc_error"; lbError.Text = LookupGroup.LastError; lbError.Visible = true; } else { lbError.Text = "Data saved!"; lbError.CssClass = "hc_success"; lbError.Visible = true; SessionState.ClearAppLookupGroups(); if (lookupGroupId < 0) { lookupGroupId = lookupObj.Id; Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "reloadTab", "<script>DisplayTab(" + lookupObj.Id + ");</script>"); // display new tab } } }
/// <summary> /// Toolbar action /// </summary> /// <param name="sender"></param> /// <param name="be"></param> private void uwToolbar_ButtonClicked(object sender, Infragistics.WebUI.UltraWebToolbar.ButtonEvent be) { string btn = be.Button.Key.ToLower(); if (btn == "save") { Save(); } if (btn == "delete") { Delete(); } if (btn == "export") { string lookupGroupName = LookupGroup.GetByKey(lookupGroupId).Name; Utils.ExportToExcel(dg, "LookupGroup" + lookupGroupName, lookupGroupName); } }
// Delete current Input form private void Delete() { if (panelId.Visible) { LookupGroup lookupObj = LookupGroup.GetByKey(lookupGroupId); if (!lookupObj.Delete(HyperCatalog.Shared.SessionState.User.Id)) { lbError.CssClass = "hc_error"; lbError.Text = LookupGroup.LastError; lbError.Visible = true; } else { SessionState.ClearAppLookupGroups(); Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "clientScript", "<script>back();</script>"); } } }
// Display an input form selected private void UpdateDataEdit(string lookupGroupId) { panelGrid.Visible = false; LookupGroup lookupGroup = LookupGroup.GetByKey(Convert.ToInt32(lookupGroupId)); webTab.Tabs.GetTab(0).ContentPane.TargetUrl = "./lookups/Lookup_Properties.aspx?lg=" + lookupGroupId; if (lookupGroup == null) { webTab.Tabs[1].Visible = false; lbTitle.Text = "Lookup group: New"; } else { lbTitle.Text = "Lookup group: " + lookupGroup.Name; webTab.Tabs[1].Visible = true; webTab.Tabs.GetTab(1).ContentPane.TargetUrl = "./lookups/Lookup_Values.aspx?lg=" + lookupGroupId; if (lookupGroup.Values != null) { webTab.Tabs.GetTab(1).Text = " Values(" + lookupGroup.Values.Count.ToString() + ")"; } } panelTabs.Visible = true; }
/// <summary> /// Export the lookups List with values in Excel file /// </summary> /// <param name="page"></param> public static void ExportLookups(Page page) { using (LookupGroupList lList = LookupGroup.GetAll()) { // string contains html code to export System.Text.StringBuilder sb = new System.Text.StringBuilder(string.Empty); sb.Append("<html><body>"); sb.Append("<table border='1'>"); #region "Header" sb.Append("<tr align='center' style='font-size: 14; font-weight: bold; background-color: lightgrey' wordwrap='true'>"); sb.Append("<td>Id</td>"); sb.Append("<td>Name</td>"); sb.Append("<td>Comment</td>"); sb.Append("<td>Multi choice</td>"); sb.Append("<td>Sep</td>"); sb.Append("<td>Value</td>"); sb.Append("<td>Comment</td>"); sb.Append("<td>Sort</td>"); sb.Append("</tr>"); #endregion string cellColor = "#D0D0D0", defaultCellColor = "#D0D0D0"; for (int i = 0; i < lList.Count; i++) { LookupGroup curLookupGroup = lList[i]; LookupValueList lvList = LookupGroup.GetByKey(curLookupGroup.Id).Values; for (int j = 0; j < lvList.Count; j++) { LookupValue curLookupValue = lvList[j]; sb.Append("<tr valign='top' style='background-color: " + cellColor + "; text-color: black;'>"); sb.Append("<td>" + curLookupGroup.Id + "</td>"); sb.Append("<td>" + curLookupGroup.Name + "</td>"); sb.Append("<td>" + curLookupGroup.Comment + "</td>"); sb.Append("<td>" + curLookupGroup.MultiChoice + "</td>"); sb.Append("<td>" + curLookupValue.Text + "</td>"); sb.Append("<td>" + curLookupValue.Comment + "</td>"); sb.Append("<td>" + curLookupValue.Sort + "</td>"); sb.Append("</tr>"); if (cellColor == defaultCellColor) { cellColor = "white"; } else { cellColor = defaultCellColor; } } } sb.Append("</table>"); sb.Append("</body></html>"); string fileName = string.Empty; fileName += "Lookups.xls"; string exportContent = sb.ToString(); page.Response.Clear(); page.Response.ClearContent(); page.Response.ClearHeaders(); page.Response.Charset = string.Empty; page.Response.AddHeader("content-disposition", "attachment;filename=" + fileName); page.Response.ContentType = "application/vnd.ms-excel;"; //Fix for CR 5109 - Prabhu R S page.Response.ContentEncoding = System.Text.Encoding.UTF8; page.EnableViewState = false; page.Response.Write(exportContent); page.Response.End(); } }