public SerizalizedMeasureFilter(MeasureFilter f) { Condition = f.FilterCondition; FirstValue = f.FirstValue; SecondFalue = f.SecondValue; RestrictsTo = f.RestrictsTo; }
internal ClientMeasureFilter(MeasureFilter m) { Condition = m.FilterCondition; FirstValue = m.FirstValue; SecondValue = m.SecondValue; IsAggregatesRestricted = m.RestrictsTo == MeasureFilterRestriction.mfrAggregatedValues; }
internal static JsonDialog MakeHTML(MeasureFilter filter) { var result = new JsonDialog(); var fGrid = filter.Measure.Grid; var writer = new HtmlTextWriter(); writer.AddAttribute(HtmlTextWriterAttribute.Width, "700"); writer.RenderBeginTag(HtmlTextWriterTag.Table); result.title = string.Format(RadarUtils.GetResStr("rsfcTitleValue"), filter.Measure.DisplayName); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget-content"); writer.RenderBeginTag(HtmlTextWriterTag.Fieldset); writer.RenderBeginTag(HtmlTextWriterTag.Legend); writer.Write(RadarUtils.GetResStr("rsfcPrompt")); writer.RenderEndTag(); //legend writer.AddAttribute(HtmlTextWriterAttribute.Width, "100%"); writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.AddAttribute(HtmlTextWriterAttribute.Nowrap, "1"); writer.AddAttribute(HtmlTextWriterAttribute.Width, "30%"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_cond"); writer.RenderBeginTag(HtmlTextWriterTag.Select); OlapFilterCondition[] value_filters = { OlapFilterCondition.fcEqual, OlapFilterCondition.fcNotEqual, OlapFilterCondition.fcLess, OlapFilterCondition.fcNotLess, OlapFilterCondition.fcGreater, OlapFilterCondition.fcNotGreater,OlapFilterCondition.fcBetween, OlapFilterCondition.fcNotBetween }; for (var fCount = 0; fCount < value_filters.Length; fCount++) { var fc = value_filters[fCount]; if (fc == filter.FilterCondition) { writer.AddAttribute(HtmlTextWriterAttribute.Selected, "selected"); } writer.AddAttribute(HtmlTextWriterAttribute.Value, fc.ToString()); writer.RenderBeginTag(HtmlTextWriterTag.Option); writer.Write(RadarUtils.GetResStr("rs" + fc)); writer.RenderEndTag(); //option } writer.RenderEndTag(); //select writer.RenderEndTag(); //td writer.AddAttribute(HtmlTextWriterAttribute.Width, "30%"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_tbFirst"); writer.AddAttribute(HtmlTextWriterAttribute.Type, "text"); writer.AddAttribute("class", "ui-widget-content"); writer.AddStyleAttribute("width", "95%"); if (!string.IsNullOrEmpty(filter.FirstValue)) { writer.AddAttribute(HtmlTextWriterAttribute.Value, filter.FirstValue); } writer.RenderBeginTag(HtmlTextWriterTag.Input); writer.RenderEndTag(); // input writer.RenderEndTag(); //td writer.AddAttribute(HtmlTextWriterAttribute.Align, "center"); writer.RenderBeginTag(HtmlTextWriterTag.Td); if (filter.FilterCondition != OlapFilterCondition.fcNotBetween && filter.FilterCondition != OlapFilterCondition.fcBetween) { writer.AddStyleAttribute(HtmlTextWriterStyle.Display, "none"); } writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_lbAnd"); writer.RenderBeginTag(HtmlTextWriterTag.Span); writer.Write(RadarUtils.GetResStr("rsAnd")); writer.RenderEndTag(); //span writer.RenderEndTag(); //td writer.AddAttribute(HtmlTextWriterAttribute.Width, "30%"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_tbSecond"); writer.AddAttribute(HtmlTextWriterAttribute.Type, "text"); writer.AddAttribute("class", "ui-widget-content"); writer.AddStyleAttribute("width", "95%"); if (filter.FilterCondition != OlapFilterCondition.fcNotBetween && filter.FilterCondition != OlapFilterCondition.fcBetween) { writer.AddStyleAttribute("display", "none"); } if (!string.IsNullOrEmpty(filter.SecondValue)) { writer.AddAttribute(HtmlTextWriterAttribute.Value, filter.SecondValue); } writer.RenderBeginTag(HtmlTextWriterTag.Input); writer.RenderEndTag(); // input writer.RenderEndTag(); //td writer.RenderEndTag(); //tr if (fGrid.Cube.GetProductID() == RadarUtils.rsAspNetDesktop) { writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.AddAttribute(HtmlTextWriterAttribute.Colspan, "4"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.Write(RadarUtils.GetResStr("rsRestricts")); writer.AddStyleAttribute(HtmlTextWriterStyle.MarginLeft, "10px"); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_RestrictsAggregates"); writer.AddAttribute(HtmlTextWriterAttribute.Type, "radio"); if (filter.RestrictsTo == MeasureFilterRestriction.mfrAggregatedValues) { writer.AddAttribute("checked"); } writer.RenderBeginTag(HtmlTextWriterTag.Input); writer.RenderEndTag(); // input writer.Write(RadarUtils.GetResStr("rsAggregatedValues")); writer.WriteBreak(); writer.AddAttribute(HtmlTextWriterAttribute.Id, "ODLG_RestrictsFacts"); writer.AddAttribute(HtmlTextWriterAttribute.Type, "radio"); if (filter.RestrictsTo == MeasureFilterRestriction.mfrFactTable) { writer.AddAttribute("checked"); } writer.RenderBeginTag(HtmlTextWriterTag.Input); writer.RenderEndTag(); // input writer.Write(RadarUtils.GetResStr("rsFactTableValues")); writer.RenderEndTag(); //div writer.RenderEndTag(); //td writer.RenderEndTag(); //tr } writer.RenderEndTag(); //table writer.RenderEndTag(); //fieldset writer.RenderEndTag(); //td writer.RenderEndTag(); //tr writer.RenderEndTag(); //table result.buttons = new[] { new JsonDialogButton { text = RadarUtils.GetResStr("rsApply"), code = "RadarSoft.$('#" + fGrid.ClientID + "').data('grid').applyMeasureFilter('cmfilter|" + filter.Measure.UniqueName + "')" }, new JsonDialogButton { text = RadarUtils.GetResStr("repResetFilter"), code = "RadarSoft.$('#" + fGrid.ClientID + "').data('grid').clearMeasureFilter('" + filter.Measure.UniqueName + "')" }, new JsonDialogButton { text = RadarUtils.GetResStr("rsCancel"), code = "RadarSoft.$(this).dialog('close')" } }; result.data = writer.ToString(); return(result); }