public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { // BZ 7941 bool UseNumericHack = CswNbtViewPropertyFilterIn.SubfieldName == SubFieldName.Value; return(_CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber, UseNumericHack)); }//makeWhereClause()
public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { string ReturnVal = string.Empty; CswNbtSubField CswNbtSubField = null; CswNbtSubField = SubFields[CswNbtViewPropertyFilterIn.SubfieldName]; if (!CswNbtSubField.SupportedFilterModes.Contains(CswNbtViewPropertyFilterIn.FilterMode)) { throw (new CswDniException("Filter mode " + CswNbtViewPropertyFilterIn.FilterMode.ToString() + " is not supported for sub field: " + CswNbtSubField.Name + "; view name is: " + CswNbtViewPropertyFilterIn.View.ViewName)); } // Are we using a Date filter? if (CswNbtSubField.Name == StartDateSubField.Name) { return(CswNbtFieldTypeRuleDateImpl.renderViewPropFilter(RunAsUser, _CswNbtFieldResources, CswNbtViewPropertyFilterIn, CswNbtSubField.Column)); } else { ReturnVal = _CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber); } return(ReturnVal); }//makeWhereClause()
public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { //return ( _CswNbtFieldTypeRuleDefault.renderViewPropFilter( RunAsUser, SubFields, CswNbtViewPropertyFilterIn ) ); CswEnumNbtSubFieldName OldSubfieldName = CswNbtViewPropertyFilterIn.SubfieldName; CswEnumNbtFilterMode OldFilterMode = CswNbtViewPropertyFilterIn.FilterMode; string OldValue = CswNbtViewPropertyFilterIn.Value; // BZ 8558 if (OldSubfieldName == SubFieldName.Value && OldValue.ToLower() == "me") { CswNbtViewProperty Prop = (CswNbtViewProperty)CswNbtViewPropertyFilterIn.Parent; ICswNbtMetaDataProp MetaDataProp = null; if (Prop.Type == CswEnumNbtViewPropType.NodeTypePropId) { MetaDataProp = Prop.NodeTypeProp; } else if (Prop.Type == CswEnumNbtViewPropType.ObjectClassPropId) { MetaDataProp = _CswNbtFieldResources.CswNbtResources.MetaData.getObjectClassProp(Prop.ObjectClassPropId); } // Could be a propref of a propref, so we can't look at the relationship //ICswNbtMetaDataProp RelationshipProp = null; //if( MetaDataProp.FKType == NbtViewPropType.NodeTypePropId.ToString() ) // RelationshipProp = _CswNbtFieldResources.CswNbtResources.MetaData.getNodeTypeProp( MetaDataProp.FKValue); //else if( MetaDataProp.FKType == NbtViewPropType.ObjectClassPropId.ToString() ) // RelationshipProp = _CswNbtFieldResources.CswNbtResources.MetaData.getObjectClassProp( MetaDataProp.FKValue ); //if( RelationshipProp != null && RelationshipProp.IsUserRelationship() ) //{ if (CswNbtViewPropertyFilterIn.Value.ToLower() == "me") { CswNbtViewPropertyFilterIn.SubfieldName = SubFieldName.Value; CswNbtViewPropertyFilterIn.FilterMode = CswEnumNbtFilterMode.Equals; CswNbtViewPropertyFilterIn.Value = _CswNbtFieldResources.CswNbtResources.Nodes[RunAsUser.UserId].NodeName; } //} } string ret = _CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber); CswNbtViewPropertyFilterIn.SubfieldName = OldSubfieldName; CswNbtViewPropertyFilterIn.FilterMode = OldFilterMode; CswNbtViewPropertyFilterIn.Value = OldValue; return(ret); }//makeWhereClause()
public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { CswEnumNbtSubFieldName OldSubfieldName = CswNbtViewPropertyFilterIn.SubfieldName; CswEnumNbtFilterMode OldFilterMode = CswNbtViewPropertyFilterIn.FilterMode; string OldValue = CswNbtViewPropertyFilterIn.Value; // BZ 8558 if (OldSubfieldName == SubFieldName.Name && OldValue.ToLower() == "me") { CswNbtViewProperty Prop = (CswNbtViewProperty)CswNbtViewPropertyFilterIn.Parent; ICswNbtMetaDataProp MetaDataProp = null; if (Prop.Type == CswEnumNbtViewPropType.NodeTypePropId) { MetaDataProp = Prop.NodeTypeProp; } else if (Prop.Type == CswEnumNbtViewPropType.ObjectClassPropId) { MetaDataProp = _CswNbtFieldResources.CswNbtResources.MetaData.getObjectClassProp(Prop.ObjectClassPropId); } if (MetaDataProp != null && MetaDataProp.IsUserRelationship()) { if (CswNbtViewPropertyFilterIn.Value.ToLower() == "me" && false == (RunAsUser is CswNbtSystemUser)) { CswNbtViewPropertyFilterIn.SubfieldName = SubFieldName.NodeID; CswNbtViewPropertyFilterIn.FilterMode = CswEnumNbtFilterMode.Equals; CswNbtViewPropertyFilterIn.Value = RunAsUser.UserId.PrimaryKey.ToString(); } } } string ret = _CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber); CswNbtViewPropertyFilterIn.SubfieldName = OldSubfieldName; CswNbtViewPropertyFilterIn.FilterMode = OldFilterMode; CswNbtViewPropertyFilterIn.Value = OldValue; return(ret); }
public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { return(_CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber)); }//makeWhereClause()
public string renderViewPropFilter(ICswNbtUser RunAsUser, CswNbtViewPropertyFilter CswNbtViewPropertyFilterIn, Dictionary <string, string> ParameterCollection, int FilterNumber) { string ReturnVal = string.Empty; CswNbtSubField CswNbtSubField = null; CswNbtSubField = SubFields[CswNbtViewPropertyFilterIn.SubfieldName]; if (!CswNbtSubField.SupportedFilterModes.Contains(CswNbtViewPropertyFilterIn.FilterMode)) { throw (new CswDniException("Filter mode " + CswNbtViewPropertyFilterIn.FilterMode.ToString() + " is not supported for sub field: " + CswNbtSubField.Name + "; view name is: " + CswNbtViewPropertyFilterIn.View.ViewName)); } // Are we using a Date filter? if (CswNbtSubField.Name == DateAnsweredSubField.Name || CswNbtSubField.Name == DateCorrectedSubField.Name) { ReturnVal = CswNbtFieldTypeRuleDateImpl.renderViewPropFilter(RunAsUser, _CswNbtFieldResources, CswNbtViewPropertyFilterIn, CswNbtSubField.Column); } else if (CswNbtSubField.Name == IsCompliantSubField.Name) { string ValueColumn = "jnp." + CswNbtSubField.Column.ToString(); if (CswNbtViewPropertyFilterIn.FilterMode == CswEnumNbtFilterMode.Equals) { if (CswNbtViewPropertyFilterIn.Value == "1" || CswNbtViewPropertyFilterIn.Value.ToLower() == "true") { ReturnVal = ValueColumn + " = '1' "; } else if (CswNbtViewPropertyFilterIn.Value == "0" || CswNbtViewPropertyFilterIn.Value.ToLower() == "false") { ReturnVal = ValueColumn + " = '0' "; } else { ReturnVal = ValueColumn + " is null"; } } else if (CswNbtViewPropertyFilterIn.FilterMode == CswEnumNbtFilterMode.NotEquals) { if (CswNbtViewPropertyFilterIn.Value == "1" || CswNbtViewPropertyFilterIn.Value.ToLower() == "true") { ReturnVal = "(" + ValueColumn + " = '0' or " + ValueColumn + " is null) "; } else if (CswNbtViewPropertyFilterIn.Value == "0" || CswNbtViewPropertyFilterIn.Value.ToLower() == "false") { ReturnVal = "(" + ValueColumn + " = '1' or " + ValueColumn + " is null) "; } else { ReturnVal = "(" + ValueColumn + " = '1' or " + ValueColumn + " = '0') "; } } else { throw new CswDniException(CswEnumErrorType.Error, "Invalid filter", "An invalid FilterMode was encountered in CswNbtFieldTypeRuleQuestion.renderViewPropFilter()"); } } else { ReturnVal = (_CswNbtFieldTypeRuleDefault.renderViewPropFilter(RunAsUser, CswNbtViewPropertyFilterIn, ParameterCollection, FilterNumber)); } return(ReturnVal); }//renderViewPropFilter()