/// <summary> /// Throws dni exception if other non-obsolete methods exist with the same prop number CIS-52300 /// </summary> /// <param name="NodeProp"></param> /// <param name="Creating"></param> private void _onAfterMethodNumberChange(CswNbtNodeProp NodeProp, bool Creating) { string thisMethodNo = MethodNo.Text; //create a view of all Method nodes CswNbtView MethodView = new CswNbtView(_CswNbtResources); MethodView.ViewName = "Check for Duplicate Method View"; //ignore already obsolete methods CswNbtViewRelationship MethodRelationship = MethodView.AddViewRelationship(ObjectClass, true); CswNbtMetaDataObjectClassProp MethodNoOCP = ObjectClass.getObjectClassProp(PropertyName.MethodNo); MethodView.AddViewPropertyAndFilter(MethodRelationship, MethodNoOCP, Value: thisMethodNo, FilterMode: CswEnumNbtFilterMode.Equals); ICswNbtTree MethodNodesTree = _CswNbtResources.Trees.getTreeFromView(MethodView, false, false, false); if (MethodNodesTree.getChildNodeCount() > 0) { throw new CswDniException(CswEnumErrorType.Warning, "Method number must be unique", "Found existing non-obsolete method with method number: " + thisMethodNo); } }//_onAfterMethodChange()
public CswNbtNode makeRoleNodeFromRoleName(string RoleName) { CswNbtNode RoleNode = null; CswNbtMetaDataObjectClass Role_ObjectClass = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.RoleClass); CswNbtMetaDataObjectClassProp RoleName_ObjectClassProp = Role_ObjectClass.getObjectClassProp(CswNbtObjClassRole.PropertyName.Name); // generate the view CswNbtView View = new CswNbtView(_CswNbtResources); View.ViewName = "CswNbtNodes.makeRoleNodeFromRoleName(" + RoleName + ")"; CswNbtViewRelationship RoleRelationship = View.AddViewRelationship(Role_ObjectClass, false); CswNbtViewProperty Prop = View.AddViewProperty(RoleRelationship, RoleName_ObjectClassProp); CswNbtViewPropertyFilter Filter = View.AddViewPropertyFilter(Prop, CswNbtFieldTypeRuleText.SubFieldName.Text, CswEnumNbtFilterMode.Equals, RoleName, false); // generate the tree ICswNbtTree UserTree = _CswNbtResources.Trees.getTreeFromView(View, false, true, IncludeHiddenNodes: true); // get user node UserTree.goToRoot(); if (UserTree.getChildNodeCount() > 0) { UserTree.goToNthChild(0); RoleNode = UserTree.getNodeForCurrentPosition(); } return(RoleNode); }
private Collection <CswNbtNodeKey> _loadNodeAsChildFromRow(CswNbtNodeKey ParentNodeKey, DataRow DataRowToAdd, bool UseGrouping, string GroupName, CswNbtViewRelationship Relationship, bool Selectable, bool ShowInTree, CswEnumNbtViewAddChildrenSetting AddChildren, Int32 RowCount, bool Included = true, bool Favorited = false) { CswNbtMetaDataNodeType NodeType = _CswNbtResources.MetaData.getNodeType(CswConvert.ToInt32(DataRowToAdd[_CswNbtColumnNames.NodeTypeId.ToLower()].ToString())); //string TableName = NodeType.TableName; //string PkColumnName = _CswNbtResources.getPrimeKeyColName( TableName ); return(_loadNodeAsChild(ParentNodeKey, UseGrouping, GroupName, Relationship, Selectable, ShowInTree, AddChildren, RowCount, Included, DataRowToAdd[_CswNbtColumnNames.IconFileName.ToLower()].ToString(), DataRowToAdd[_CswNbtColumnNames.NameTemplate.ToLower()].ToString(), new CswPrimaryKey("nodes", CswConvert.ToInt32(DataRowToAdd["nodeid"])), new CswPrimaryKey(CswConvert.ToString(DataRowToAdd["relationaltable"]), CswConvert.ToInt32(DataRowToAdd["relationalid"])), DataRowToAdd[_CswNbtColumnNames.NodeName.ToLower()].ToString(), CswConvert.ToInt32(DataRowToAdd[_CswNbtColumnNames.NodeTypeId.ToLower()].ToString()), DataRowToAdd[_CswNbtColumnNames.NodeTypeName.ToLower()].ToString(), CswConvert.ToInt32(DataRowToAdd[_CswNbtColumnNames.ObjectClassId.ToLower()].ToString()), DataRowToAdd[_CswNbtColumnNames.ObjectClassName.ToLower()].ToString(), CswConvert.ToBoolean(DataRowToAdd[_CswNbtColumnNames.Locked.ToLower()]), Favorited )); }
private void OnLocationScanPropChange( CswNbtNodeProp Prop, bool Creating ) { if( null != LocationScan.Text ) { CswNbtMetaDataObjectClass LocationOc = _CswNbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.LocationClass ); CswNbtView LocationView = new CswNbtView( _CswNbtResources ); CswNbtViewRelationship LocationRel = LocationView.AddViewRelationship( LocationOc, false ); CswNbtMetaDataObjectClassProp BarcodeOcp = LocationOc.getObjectClassProp( CswNbtObjClassLocation.PropertyName.Barcode ); LocationView.AddViewPropertyAndFilter( LocationRel, BarcodeOcp, LocationScan.Text ); ICswNbtTree LocationTree = _CswNbtResources.Trees.getTreeFromView( LocationView, false, false, true ); if( LocationTree.getChildNodeCount() > 0 ) { LocationTree.goToNthChild( 0 ); CswNbtObjClassLocation LocationNode = LocationTree.getNodeForCurrentPosition(); Location.SelectedNodeId = LocationNode.NodeId; Location.RefreshNodeName(); } else { Location.SelectedNodeId = null; Location.CachedNodeName = String.Empty; Location.CachedPath = String.Empty; Location.CachedBarcode = String.Empty; } } _setStatus(); }
public override void update() { CswNbtMetaDataObjectClass MEPOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ManufacturerEquivalentPartClass ); CswNbtMetaDataObjectClass ManufacturerOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ManufacturerClass ); if( null != ManufacturerOC ) { CswNbtMetaDataObjectClassProp MaterialOCP = MEPOC.getObjectClassProp( "Material" ); if( null != MaterialOCP ) { _CswNbtSchemaModTrnsctn.MetaData.DeleteObjectClassProp( MaterialOCP, true ); } CswNbtMetaDataObjectClassProp ManufacturerOCP = MEPOC.getObjectClassProp( CswNbtObjClassManufacturerEquivalentPart.PropertyName.Manufacturer ); if( null != ManufacturerOCP ) { CswNbtView ManufacturerView = _CswNbtSchemaModTrnsctn.makeView(); CswNbtViewRelationship parent = ManufacturerView.AddViewRelationship( ManufacturerOC, true ); ManufacturerView.Visibility = CswEnumNbtViewVisibility.Property; ManufacturerView.ViewName = "Manufacturer"; _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( ManufacturerOCP, CswEnumNbtObjectClassPropAttributes.viewxml, ManufacturerView.ToString() ); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( ManufacturerOCP, CswEnumNbtObjectClassPropAttributes.fktype, CswEnumNbtViewRelatedIdType.ObjectClassId.ToString() ); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( ManufacturerOCP, CswEnumNbtObjectClassPropAttributes.fkvalue, ManufacturerOC.ObjectClassId.ToString() ); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( ManufacturerOCP, CswEnumNbtObjectClassPropAttributes.isrequired, true ); CswNbtMetaDataObjectClassProp EPOCP = MEPOC.getObjectClassProp( CswNbtObjClassManufacturerEquivalentPart.PropertyName.EnterprisePart ); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( EPOCP, CswEnumNbtObjectClassPropAttributes.isrequired, true ); foreach( CswNbtMetaDataNodeType MEPNT in MEPOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp ManufacturerNTP = MEPNT.getNodeTypePropByObjectClassProp( ManufacturerOCP ); ManufacturerNTP.DesignNode.syncFromObjectClassProp(); CswNbtMetaDataNodeTypeProp EPNTP = MEPNT.getNodeTypePropByObjectClassProp( EPOCP ); EPNTP.DesignNode.syncFromObjectClassProp(); } } _CswNbtSchemaModTrnsctn.createModuleObjectClassJunction( CswEnumNbtModuleName.MLM, MEPOC.ObjectClassId ); } } // update()
public CswNbtView setupPhraseView(CswNbtView View, CswCommaDelimitedString SelectedPhraseIds) { CswNbtMetaDataObjectClass GhsPhraseOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.GHSPhraseClass); CswNbtMetaDataNodeType GhsPhraseNT = GhsPhraseOC.FirstNodeType; View.SetVisibility(CswEnumNbtViewVisibility.Hidden, null, null); View.ViewMode = CswEnumNbtViewRenderingMode.Grid; View.Root.ChildRelationships.Clear(); if (SelectedPhraseIds.Count > 0) { CswNbtViewRelationship PhraseVR = View.AddViewRelationship(GhsPhraseOC, false); foreach (string PhraseId in SelectedPhraseIds) { CswPrimaryKey PhrasePk = new CswPrimaryKey(); PhrasePk.FromString(PhraseId); PhraseVR.NodeIdsToFilterIn.Add(PhrasePk); } View.AddViewProperty(PhraseVR, GhsPhraseOC.getObjectClassProp(CswNbtObjClassGHSPhrase.PropertyName.Code)); if (null != GhsPhraseNT) { CswNbtMetaDataNodeTypeProp LanguageProp = GhsPhraseNT.getNodeTypePropByObjectClassProp(_getLanguageForTranslation()); CswNbtViewProperty LanguageVP = View.AddViewProperty(PhraseVR, LanguageProp); LanguageVP.Width = 100; } } // if( SelectedPhraseIds.Count > 0 ) return(View); } // setupPhraseView()
public IEnumerable <CswPrimaryKey> getContainersInGroup() { CswNbtView ContainersInGroupView = new CswNbtView(_CswNbtResources); ContainersInGroupView.ViewName = "ContainersInGroup"; CswNbtMetaDataObjectClass ContainerOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ContainerClass); CswNbtViewRelationship Rel1 = ContainersInGroupView.AddViewRelationship(ContainerOC, true); CswNbtMetaDataObjectClassProp ContainerGroupOCP = ContainerOC.getObjectClassProp(CswNbtObjClassContainer.PropertyName.ContainerGroup); CswNbtViewProperty Prop2 = ContainersInGroupView.AddViewProperty(Rel1, ContainerGroupOCP); CswNbtViewPropertyFilter Filt3 = ContainersInGroupView.AddViewPropertyFilter(Prop2, CswEnumNbtFilterConjunction.And, CswEnumNbtFilterResultMode.Hide, CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID, CswEnumNbtFilterMode.Equals, this.NodeId.PrimaryKey.ToString(), false, false); Collection <CswPrimaryKey> _ContainerGroupNodePks = new Collection <CswPrimaryKey>(); ICswNbtTree ContainersInGroupTree = _CswNbtResources.Trees.getTreeFromView(ContainersInGroupView, false, true, true); ContainersInGroupTree.goToRoot(); for (int i = 0; i < ContainersInGroupTree.getChildNodeCount(); i++) { ContainersInGroupTree.goToNthChild(i); _ContainerGroupNodePks.Add(ContainersInGroupTree.getNodeIdForCurrentPosition()); ContainersInGroupTree.goToParentNode(); } return(_ContainerGroupNodePks); }
public override void archiveMatchingDocs() { //Archives existing Documents related to the same Owner. if( Archived.Checked != CswEnumTristate.True ) { CswNbtNode OwnerNode = _CswNbtResources.Nodes.GetNode( Owner.RelatedNodeId ); if( null != OwnerNode ) { CswNbtView ExistingDocsView = new CswNbtView( _CswNbtResources ); CswNbtViewRelationship DocumentVr = ExistingDocsView.AddViewRelationship( NodeType, false ); ExistingDocsView.AddViewPropertyAndFilter( DocumentVr, Owner.NodeTypeProp, OwnerNode.NodeId.PrimaryKey.ToString(), CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID ); ExistingDocsView.AddViewPropertyAndFilter( DocumentVr, Archived.NodeTypeProp, CswEnumTristate.True.ToString(), FilterMode : CswEnumNbtFilterMode.NotEquals ); ICswNbtTree Tree = _CswNbtResources.Trees.getTreeFromView( ExistingDocsView, true, false, false ); Int32 DocCount = Tree.getChildNodeCount(); if( DocCount > 0 ) { for( Int32 I = 0; I < DocCount; I += 1 ) { Tree.goToNthChild( I ); CswNbtNode DocNode = Tree.getNodeForCurrentPosition(); if( DocNode.NodeId != NodeId ) { CswNbtObjClassCofADocument DocNodeAsDocument = DocNode; DocNodeAsDocument.Archived.Checked = CswEnumTristate.True; DocNode.postChanges( true ); } Tree.goToParentNode(); } } } } }
public override void update() { CswNbtMetaDataNodeType ChemicalNT = _CswNbtSchemaModTrnsctn.MetaData.getNodeType( "Chemical" ); if( null != ChemicalNT ) { CswNbtView MHCView = _CswNbtSchemaModTrnsctn.makeNewView( "Missing Hazard Classes", NbtViewVisibility.Global ); MHCView.Category = "Materials"; MHCView.Visibility = NbtViewVisibility.Global; MHCView.ViewMode = NbtViewRenderingMode.Tree; CswNbtViewRelationship RootRel = MHCView.AddViewRelationship( ChemicalNT, true ); CswNbtMetaDataNodeTypeProp SpecialFlagsNTP = ChemicalNT.getNodeTypeProp( "Special Flags" ); CswNbtViewProperty SpecialFlagsVP = MHCView.AddViewProperty( RootRel, SpecialFlagsNTP ); MHCView.AddViewPropertyFilter( SpecialFlagsVP, CswNbtPropFilterSql.PropertyFilterConjunction.And, CswNbtPropFilterSql.FilterResultMode.Hide, CswNbtSubField.SubFieldName.Value, CswNbtPropFilterSql.PropertyFilterMode.NotContains, "Not Reportable"); CswNbtMetaDataNodeTypeProp HazardClassesNTP = ChemicalNT.getNodeTypeProp( "Hazard Classes" ); CswNbtViewProperty HazardClassesVP = MHCView.AddViewProperty( RootRel, HazardClassesNTP ); MHCView.AddViewPropertyFilter( HazardClassesVP, CswNbtPropFilterSql.PropertyFilterConjunction.And, CswNbtPropFilterSql.FilterResultMode.Hide, CswNbtSubField.SubFieldName.Value, CswNbtPropFilterSql.PropertyFilterMode.Null); MHCView.save(); } }//Update()
public override void update() { CswNbtMetaDataObjectClass PrinterOc = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.PrinterClass ); foreach( CswNbtMetaDataNodeType JobNt in PrinterOc.getLatestVersionNodeTypes() ) { CswNbtMetaDataNodeTypeProp GridNtp = JobNt.getNodeTypePropByFirstVersionName( "Jobs" ); if( null != GridNtp && CswEnumNbtFieldType.Grid == GridNtp.getFieldType().FieldType ) { CswNbtView GridView = _CswNbtSchemaModTrnsctn.ViewSelect.restoreView( GridNtp.ViewId ); if( null != GridView ) { GridView.Root.ChildRelationships.Clear(); CswNbtViewRelationship RootVr = GridView.AddViewRelationship( PrinterOc, IncludeDefaultFilters : true ); CswNbtMetaDataObjectClass PrintJobOc = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.PrintJobClass ); CswNbtMetaDataObjectClassProp PrinterOcp = PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.Printer ); CswNbtViewRelationship PrinterVr = GridView.AddViewRelationship( RootVr, CswEnumNbtViewPropOwnerType.Second, PrinterOcp, IncludeDefaultFilters: true ); GridView.AddViewProperty( PrinterVr, PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.JobNo ) ); GridView.AddViewProperty( PrinterVr, PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.RequestedBy ) ); GridView.AddViewProperty( PrinterVr, PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.CreatedDate ) ); GridView.AddViewProperty( PrinterVr, PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.JobState ) ); GridView.AddViewProperty( PrinterVr, PrintJobOc.getObjectClassProp( CswNbtObjClassPrintJob.PropertyName.Label ) ); GridView.save(); } } } } //Update()
public static CswNbtView getAssignedCofADocumentsView( CswNbtResources _CswNbtResources, CswPrimaryKey ReceiptLotId, bool IncludeArchivedDocs = false ) { CswNbtMetaDataObjectClass ReceiptLotOC = _CswNbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.ReceiptLotClass ); CswNbtMetaDataObjectClass CofADocOC = _CswNbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.CofADocumentClass ); CswNbtMetaDataObjectClassProp OwnerOCP = CofADocOC.getObjectClassProp( PropertyName.Owner ); CswNbtMetaDataObjectClassProp RevisionDateOCP = CofADocOC.getObjectClassProp( PropertyName.RevisionDate ); CswNbtMetaDataObjectClassProp ArchivedOCP = CofADocOC.getObjectClassProp( PropertyName.Archived ); CswNbtMetaDataObjectClassProp FileOCP = CofADocOC.getObjectClassProp( PropertyName.File ); CswNbtMetaDataObjectClassProp LinkOCP = CofADocOC.getObjectClassProp( PropertyName.Link ); CswNbtView AssignedCofAView = new CswNbtView( _CswNbtResources ) { ViewName = "All Assigned C of A Documents", ViewMode = CswEnumNbtViewRenderingMode.Grid, ViewVisibility = CswEnumNbtViewVisibility.Property.ToString() }; CswNbtViewRelationship RootRel = AssignedCofAView.AddViewRelationship( ReceiptLotOC, false ); RootRel.NodeIdsToFilterIn.Add( ReceiptLotId ); CswNbtViewRelationship DocRel = AssignedCofAView.AddViewRelationship( RootRel, CswEnumNbtViewPropOwnerType.Second, OwnerOCP, true ); if( false == IncludeArchivedDocs ) { AssignedCofAView.AddViewPropertyAndFilter( DocRel, ArchivedOCP, CswEnumTristate.False.ToString(), FilterMode : CswEnumNbtFilterMode.Equals, ShowAtRuntime : true, ShowInGrid : false ); } AssignedCofAView.AddViewProperty( DocRel, RevisionDateOCP, 1 ); AssignedCofAView.AddViewProperty( DocRel, FileOCP, 2 ); AssignedCofAView.AddViewProperty( DocRel, LinkOCP, 3 ); return AssignedCofAView; }
public override void update() { CswNbtMetaDataNodeType ControlZoneNt = _CswNbtSchemaModTrnsctn.MetaData.getNodeType( "Control Zone" ); if( null != ControlZoneNt ) { CswNbtMetaDataNodeTypeTab LocationsTab = _CswNbtSchemaModTrnsctn.MetaData.makeNewTab( ControlZoneNt, "Locations", 2 ); CswNbtMetaDataObjectClass LocationOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( NbtObjectClass.LocationClass ); CswNbtMetaDataObjectClassProp ControlZoneOCP = _CswNbtSchemaModTrnsctn.MetaData.getObjectClassProp( LocationOC.ObjectClassId, CswNbtObjClassLocation.PropertyName.ControlZone ); CswNbtMetaDataNodeTypeProp LocationsNTP = _CswNbtSchemaModTrnsctn.MetaData.makeNewProp( new CswNbtWcfMetaDataModel.NodeTypeProp( ControlZoneNt, _CswNbtSchemaModTrnsctn.MetaData.getFieldType( CswNbtMetaDataFieldType.NbtFieldType.Grid ), "Locations" ) { TabId = LocationsTab.TabId } ); CswNbtView LocationsView = _CswNbtSchemaModTrnsctn.makeNewView( "Control_Zone_Locations", NbtViewVisibility.Property ); LocationsNTP.ViewId = LocationsView.ViewId; LocationsView.Root.ChildRelationships.Clear(); LocationsView.SetViewMode( NbtViewRenderingMode.Grid ); LocationsView.Visibility = NbtViewVisibility.Property; CswNbtViewRelationship RootRel = LocationsView.AddViewRelationship( ControlZoneNt, true ); CswNbtViewRelationship LocationRel = LocationsView.AddViewRelationship( RootRel, NbtViewPropOwnerType.Second, ControlZoneOCP, false ); LocationsView.AddViewProperty( LocationRel, LocationOC.getObjectClassProp( CswNbtObjClassLocation.PropertyName.Barcode ) ); LocationsView.AddViewProperty( LocationRel, LocationOC.getObjectClassProp( CswNbtObjClassLocation.PropertyName.Name ) ); LocationsView.AddViewProperty( LocationRel, LocationOC.getObjectClassProp( CswNbtObjClassLocation.PropertyName.Location ) ); LocationsView.save(); } }
public static void createDefaultWildcardPermission( CswNbtResources _CswNbtResources, CswEnumNbtObjectClass PermissionClass, CswPrimaryKey GroupId ) { CswNbtMetaDataObjectClass PermissionOC = _CswNbtResources.MetaData.getObjectClass( PermissionClass ); CswNbtView PermissionsView = new CswNbtView( _CswNbtResources ); CswNbtViewRelationship PermissionVR = PermissionsView.AddViewRelationship( PermissionOC, IncludeDefaultFilters: false ); CswNbtMetaDataObjectClassProp GroupOCP = PermissionOC.getObjectClassProp( PropertyName.PermissionGroup ); PermissionsView.AddViewPropertyAndFilter( PermissionVR, GroupOCP, Value: GroupId.ToString(), SubFieldName: CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID ); ICswNbtTree PermissionTree = _CswNbtResources.Trees.getTreeFromView( PermissionsView, false, false, false ); if( PermissionTree.getChildNodeCount() == 0 ) { CswNbtMetaDataNodeType PermissionNT = PermissionOC.FirstNodeType; if( null != PermissionNT ) { _CswNbtResources.Nodes.makeNodeFromNodeTypeId( PermissionNT.NodeTypeId, delegate( CswNbtNode NewNode ) { CswNbtPropertySetPermission WildCardPermission = NewNode; WildCardPermission.ApplyToAllRoles.Checked = CswEnumTristate.True; WildCardPermission.ApplyToAllWorkUnits.Checked = CswEnumTristate.True; WildCardPermission.PermissionGroup.RelatedNodeId = GroupId; WildCardPermission.View.Checked = CswEnumTristate.True; WildCardPermission.Edit.Checked = CswEnumTristate.True; WildCardPermission.setWildCardValues(); } ); } } }
public static CswNbtViewNode makeViewNode( CswNbtResources CswNbtResources, CswNbtView View, CswDelimitedString ViewNodeString ) { CswNbtViewNode newNode = null; CswEnumNbtViewNodeType type = (CswEnumNbtViewNodeType) ViewNodeString[0]; if( type == CswEnumNbtViewNodeType.CswNbtViewRelationship ) { newNode = new CswNbtViewRelationship( CswNbtResources, View, ViewNodeString ); } else if( type == CswEnumNbtViewNodeType.CswNbtViewProperty ) { newNode = new CswNbtViewProperty( CswNbtResources, View, ViewNodeString ); } else if( type == CswEnumNbtViewNodeType.CswNbtViewPropertyFilter ) { newNode = new CswNbtViewPropertyFilter( CswNbtResources, View, ViewNodeString ); } else if( type == CswEnumNbtViewNodeType.CswNbtViewRoot ) { newNode = new CswNbtViewRoot( CswNbtResources, View, ViewNodeString ); } else { throw new CswDniException( CswEnumErrorType.Error, "Invalid ViewNode", "CswNbtViewNode.makeViewNode() got an invalid ViewNodeString: " + ViewNodeString.ToString() ); } return newNode; } // makeViewNode()
private CswCommaDelimitedString _getMaterialPKsForEP(CswPrimaryKey EPId) { CswCommaDelimitedString EPMaterialPks = new CswCommaDelimitedString(); CswNbtMetaDataObjectClass ManufacturerEquivalentPartOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ManufacturerEquivalentPartClass); CswNbtMetaDataObjectClassProp EPOCP = ManufacturerEquivalentPartOC.getObjectClassProp(CswNbtObjClassManufacturerEquivalentPart.PropertyName.EnterprisePart); CswNbtMetaDataObjectClassProp MaterialOCP = ManufacturerEquivalentPartOC.getObjectClassProp(CswNbtObjClassManufacturerEquivalentPart.PropertyName.Material); CswNbtView EPMatsView = new CswNbtView(_CswNbtResources); EPMatsView.ViewName = "Materials under " + EPId; CswNbtViewRelationship MEPVR = EPMatsView.AddViewRelationship(ManufacturerEquivalentPartOC, false); EPMatsView.AddViewPropertyAndFilter(MEPVR, EPOCP, SubFieldName: CswEnumNbtSubFieldName.NodeID, Value: EPId.PrimaryKey.ToString()); CswNbtViewRelationship MatVR = EPMatsView.AddViewRelationship(MEPVR, CswEnumNbtViewPropOwnerType.First, MaterialOCP, false); ICswNbtTree EPMatsTree = _CswNbtResources.Trees.getTreeFromView(EPMatsView, false, true, true); for (int i = 0; i < EPMatsTree.getChildNodeCount(); i++) { EPMatsTree.goToNthChild(i); //EP's MEPs if (EPMatsTree.getChildNodeCount() > 0) { EPMatsTree.goToNthChild(0); //MEP's Material EPMaterialPks.Add(EPMatsTree.getNodeIdForCurrentPosition().PrimaryKey.ToString()); EPMatsTree.goToParentNode(); } EPMatsTree.goToParentNode(); } return(EPMaterialPks); }
} // GeneratedNodeCount public CswNbtView GetGeneratedTargetsView( DateTime TargetDay ) { CswNbtView View = new CswNbtView( _CswNbtResources ); View.ViewName = "Generated Node Count"; CswNbtMetaDataNodeType TargetNT = _CswNbtResources.MetaData.getNodeType( CswConvert.ToInt32( TargetType.SelectedNodeTypeIds[0] ) ); CswNbtMetaDataNodeTypeProp GeneratorNTP = TargetNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetGeneratorTarget.PropertyName.Generator ); CswNbtMetaDataNodeTypeProp CreatedDateNTP = TargetNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetGeneratorTarget.PropertyName.CreatedDate ); CswNbtViewRelationship TargetRel = View.AddViewRelationship( TargetNT, false ); View.AddViewPropertyAndFilter( TargetRel, GeneratorNTP, Conjunction: CswEnumNbtFilterConjunction.And, ResultMode: CswEnumNbtFilterResultMode.Hide, Value: this.NodeId.PrimaryKey.ToString(), SubFieldName: ( (CswNbtFieldTypeRuleRelationship) GeneratorNTP.getFieldTypeRule() ).NodeIDSubField.Name, FilterMode: CswEnumNbtFilterMode.Equals ); if( DateTime.MinValue != TargetDay ) { View.AddViewPropertyAndFilter( TargetRel, CreatedDateNTP, Conjunction: CswEnumNbtFilterConjunction.And, ResultMode: CswEnumNbtFilterResultMode.Hide, Value: TargetDay.Date.ToString(), FilterMode: CswEnumNbtFilterMode.Equals ); } return View; }
} // setObjectClassPropListOptions() private string _getOwnerName(CswNbtViewProperty ViewProperty) { string ret = string.Empty; CswNbtViewRelationship parent = (CswNbtViewRelationship)ViewProperty.Parent; CswEnumNbtViewRelatedIdType ownerType = parent.getOwnerType(); if (ownerType == CswEnumNbtViewRelatedIdType.NodeTypeId) { CswNbtMetaDataNodeType ntOwner = parent.getNodeTypeOwner(); ret = ntOwner.NodeTypeName; } else if (ownerType == CswEnumNbtViewRelatedIdType.ObjectClassId) { CswNbtMetaDataObjectClass ocOwner = parent.getObjClassOwner(); ret = ocOwner.ObjectClass.ToString(); } else { CswNbtMetaDataPropertySet psOwner = parent.getPropSetOwner(); ret = psOwner.Name; } return(ret); }
} // _setPropertyValuesFromObjectClass() public Collection <CswNbtObjClassDesignNodeTypeProp> getPropNodes() { Collection <CswNbtObjClassDesignNodeTypeProp> ret = new Collection <CswNbtObjClassDesignNodeTypeProp>(); CswNbtMetaDataObjectClass DesignPropOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.DesignNodeTypePropClass); CswNbtMetaDataObjectClassProp NtpNodeTypeOCP = DesignPropOC.getObjectClassProp(CswNbtObjClassDesignNodeTypeProp.PropertyName.NodeTypeValue); CswNbtView PropsView = new CswNbtView(_CswNbtResources); CswNbtViewRelationship ocRel = PropsView.AddViewRelationship(this.ObjectClass, false); ocRel.NodeIdsToFilterIn.Add(this.NodeId); PropsView.AddViewRelationship(ocRel, CswEnumNbtViewPropOwnerType.Second, NtpNodeTypeOCP, false); ICswNbtTree PropsTree = _CswNbtResources.Trees.getTreeFromView(PropsView, false, true, true); for (Int32 nt = 0; nt < PropsTree.getChildNodeCount(); nt++) { PropsTree.goToNthChild(nt); for (Int32 p = 0; p < PropsTree.getChildNodeCount(); p++) { PropsTree.goToNthChild(p); ret.Add(PropsTree.getCurrentNode()); PropsTree.goToParentNode(); } PropsTree.goToParentNode(); } // for( Int32 nt = 0; nt < PropsTree.getChildNodeCount(); nt++ ) return(ret); } // PropNodes()
} // setupPhraseView() private void _setupClassificationView(CswNbtView View, CswCommaDelimitedString SelectedClassIds) { CswNbtMetaDataObjectClass GhsClassOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.GHSClassificationClass); CswNbtMetaDataNodeType GhsClassNT = GhsClassOC.FirstNodeType; View.SetVisibility(CswEnumNbtViewVisibility.Hidden, null, null); View.ViewMode = CswEnumNbtViewRenderingMode.Grid; View.Root.ChildRelationships.Clear(); if (SelectedClassIds.Count > 0) { CswNbtViewRelationship ClassVR = View.AddViewRelationship(GhsClassOC, false); foreach (string ClassId in SelectedClassIds) { CswPrimaryKey ClassPk = new CswPrimaryKey(); ClassPk.FromString(ClassId); ClassVR.NodeIdsToFilterIn.Add(ClassPk); } View.AddViewProperty(ClassVR, GhsClassOC.getObjectClassProp(CswNbtObjClassGHSClassification.PropertyName.Category)); if (null != GhsClassNT) { CswNbtMetaDataNodeTypeProp LanguageProp = GhsClassNT.getNodeTypePropByObjectClassProp(_getLanguageForTranslation()); CswNbtViewProperty LanguageVP = View.AddViewProperty(ClassVR, LanguageProp); LanguageVP.Width = 100; } } // if( SelectedClassIds.Count > 0 ) View.SaveToCache(IncludeInQuickLaunch: false, UpdateCache: true, KeepInQuickLaunch: false); } // _setupClassificationView()
} // PropNodes() public Collection <CswNbtObjClassDesignNodeTypeTab> getTabNodes() { Collection <CswNbtObjClassDesignNodeTypeTab> ret = new Collection <CswNbtObjClassDesignNodeTypeTab>(); CswNbtMetaDataObjectClass DesignTabOCP = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.DesignNodeTypeTabClass); CswNbtMetaDataObjectClassProp NttNodeTypeOCP = DesignTabOCP.getObjectClassProp(CswNbtObjClassDesignNodeTypeTab.PropertyName.NodeTypeValue); CswNbtView TabsView = new CswNbtView(_CswNbtResources); CswNbtViewRelationship ocRel = TabsView.AddViewRelationship(this.ObjectClass, false); ocRel.NodeIdsToFilterIn.Add(this.NodeId); TabsView.AddViewRelationship(ocRel, CswEnumNbtViewPropOwnerType.Second, NttNodeTypeOCP, false); ICswNbtTree TabsTree = _CswNbtResources.Trees.getTreeFromView(TabsView, false, true, true); for (Int32 nt = 0; nt < TabsTree.getChildNodeCount(); nt++) { TabsTree.goToNthChild(nt); for (Int32 t = 0; t < TabsTree.getChildNodeCount(); t++) { TabsTree.goToNthChild(t); ret.Add(TabsTree.getCurrentNode()); TabsTree.goToParentNode(); } TabsTree.goToParentNode(); } // for( Int32 nt = 0; nt < TabsTree.getChildNodeCount(); nt++ ) return(ret); } // TabNodes()
private void OnContainerScanPropChange( CswNbtNodeProp Prop, bool Creating ) { if( null != ContainerScan.Text ) { CswNbtMetaDataObjectClass ContainerOc = _CswNbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.ContainerClass ); CswNbtView ContainerView = new CswNbtView( _CswNbtResources ); CswNbtViewRelationship ContainerRel = ContainerView.AddViewRelationship( ContainerOc, false ); CswNbtMetaDataObjectClassProp BarcodeOcp = ContainerOc.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Barcode ); ContainerView.AddViewPropertyAndFilter( ContainerRel, BarcodeOcp, ContainerScan.Text ); ICswNbtTree ContainerTree = _CswNbtResources.Trees.getTreeFromView( ContainerView, false, false, true ); if( ContainerTree.getChildNodeCount() > 0 ) { ContainerTree.goToNthChild( 0 ); CswNbtObjClassContainer ContainerNode = ContainerTree.getNodeForCurrentPosition(); Container.RelatedNodeId = ContainerNode.NodeId; } else { Container.RelatedNodeId = null; } } _setStatus(); }
} // _addNodeToData() public static void UploadBulkEditData(ICswResources CswResources, BulkEditReturn ret, BulkEditUpload Params) { CswNbtResources NbtResources = (CswNbtResources)CswResources; CswTempFile temp = new CswTempFile(CswResources); string tempPath = temp.saveToTempFile(Params.PostedFile.InputStream, CswResources.AccessId + "_bulkedit_" + DateTime.Now.Ticks.ToString()); DataSet uploadDataSet = CswNbtImportTools.ReadExcel(tempPath); if (uploadDataSet.Tables.Count > 0) { DataTable uploadTable = uploadDataSet.Tables[0]; CswNbtBatchOpBulkEdit batch = new CswNbtBatchOpBulkEdit(NbtResources); CswNbtObjClassBatchOp batchNode = batch.makeBatchOp(uploadTable); CswNbtView BatchOpsView = new CswNbtView((CswNbtResources)CswResources); BatchOpsView.ViewName = "New Batch Operations"; BatchOpsView.ViewMode = CswEnumNbtViewRenderingMode.Tree; CswNbtViewRelationship BatchRel = BatchOpsView.AddViewRelationship(batchNode.NodeType, false); BatchRel.NodeIdsToFilterIn.Add(batchNode.NodeId); BatchOpsView.SaveToCache(true); ret.ViewId = BatchOpsView.SessionViewId.ToString(); } // if( uploadDataSet.Tables.Count > 0 ) } // UploadBulkEditData()
public override void update() { #region UPDATE VIEWS CswNbtMetaDataObjectClass userOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswNbtMetaDataObjectClass.NbtObjectClass.UserClass ); CswNbtMetaDataObjectClassProp archivedOCP = userOC.getObjectClassProp( CswNbtObjClassUser.PropertyName.Archived ); foreach( CswNbtMetaDataNodeTypeProp relationshipProp in _CswNbtSchemaModTrnsctn.MetaData.getNodeTypeProps( CswNbtMetaDataFieldType.NbtFieldType.Relationship ) ) { if( relationshipProp.IsUserRelationship() ) { CswNbtView userView = _CswNbtSchemaModTrnsctn.ViewSelect.restoreView( relationshipProp.ViewId ); if( false == userView.IsEmpty() ) { CswNbtViewRelationship parent = userView.Root.ChildRelationships[0]; bool filterExists; bool viewPropExists; CswNbtViewProperty archivedVP = _viewPropAndFilterExists( out filterExists, out viewPropExists, userView, archivedOCP, CswNbtPropFilterSql.PropertyFilterMode.NotEquals, Tristate.True.ToString() ); if( false == viewPropExists ) //the view prop isn't there, add it with the filter { userView.AddViewPropertyAndFilter( parent, archivedOCP, FilterMode: CswNbtPropFilterSql.PropertyFilterMode.NotEquals, Value: Tristate.True.ToString() ); } else if( viewPropExists && false == filterExists ) //the view prop is there, but with no filter { userView.AddViewPropertyFilter( archivedVP, FilterMode: CswNbtPropFilterSql.PropertyFilterMode.NotEquals, Value: Tristate.True.ToString() ); } userView.save(); } } } #endregion }//Update()
public override void update() { // add active to constituent grid CswNbtMetaDataObjectClass ChemicalOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ChemicalClass ); CswNbtMetaDataObjectClass ComponentOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.MaterialComponentClass ); foreach( CswNbtMetaDataNodeType ChemicalNT in ChemicalOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp ChemicalComponentsNTP = ChemicalNT.getNodeTypeProp( "Components" ); if( null != ChemicalComponentsNTP ) { CswNbtView ComponentsView = _CswNbtSchemaModTrnsctn.restoreView( ChemicalComponentsNTP.ViewId ); if( ComponentsView.Root.ChildRelationships.Count > 0 ) { CswNbtViewRelationship ChemRel = ComponentsView.Root.ChildRelationships[0]; if( ChemRel.ChildRelationships.Count > 0 ) { CswNbtViewRelationship CompRel = ChemRel.ChildRelationships[0]; Int32 order = 1; foreach( CswNbtViewProperty vp in CompRel.Properties ) { vp.Order = order; order++; } ComponentsView.AddViewProperty( CompRel, ComponentOC.getObjectClassProp( CswNbtObjClassMaterialComponent.PropertyName.Active ), order ); } } ComponentsView.save(); } // if( null != ChemicalComponentsNTP ) } // foreach( CswNbtMetaDataNodeType ChemicalNT in ChemicalOC.getNodeTypes() ) } // update()
}//afterPopulateProps() public override CswNbtNode CopyNode(bool IsNodeTemp = false, Action <CswNbtNode> OnCopy = null) { // Copy this Assembly CswNbtNode CopiedAssemblyNode = base.CopyNodeImpl(IsNodeTemp, OnCopy); // Copy all Equipment CswNbtMetaDataObjectClass EquipmentObjectClass = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.EquipmentClass); CswNbtView EquipmentView = new CswNbtView(_CswNbtResources); CswNbtViewRelationship EquipmentRelationship = EquipmentView.AddViewRelationship(EquipmentObjectClass, false); CswNbtViewProperty AssemblyProperty = EquipmentView.AddViewProperty(EquipmentRelationship, EquipmentObjectClass.getObjectClassProp(CswNbtObjClassEquipment.PropertyName.Assembly)); CswNbtViewPropertyFilter AssemblyIsOriginalFilter = EquipmentView.AddViewPropertyFilter( AssemblyProperty, CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID, CswEnumNbtFilterMode.Equals, NodeId.PrimaryKey.ToString()); ICswNbtTree EquipmentTree = _CswNbtResources.Trees.getTreeFromView(_CswNbtResources.CurrentNbtUser, EquipmentView, true, false, false); EquipmentTree.goToRoot(); Int32 c = 0; while (c < EquipmentTree.getChildNodeCount()) { EquipmentTree.goToNthChild(c); CswNbtObjClassEquipment OriginalEquipmentNode = EquipmentTree.getNodeForCurrentPosition(); OriginalEquipmentNode.CopyNode(IsNodeTemp, delegate(CswNbtNode CopiedEquipmentNode) { ((CswNbtObjClassEquipment)CopiedEquipmentNode).Assembly.RelatedNodeId = CopiedAssemblyNode.NodeId; }); EquipmentTree.goToParentNode(); c++; } return(CopiedAssemblyNode); }
public Collection<string> getCASNumbers() { Collection<string> ret = new Collection<string>(); CswNbtMetaDataObjectClass RegListCasNoOC = _CswNbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.RegulatoryListCasNoClass ); CswNbtMetaDataObjectClassProp RegListCasNoCasNoOCP = RegListCasNoOC.getObjectClassProp( CswNbtObjClassRegulatoryListCasNo.PropertyName.CASNo ); CswNbtMetaDataObjectClassProp RegListCasNoRegListOCP = RegListCasNoOC.getObjectClassProp( CswNbtObjClassRegulatoryListCasNo.PropertyName.RegulatoryList ); CswNbtView View = new CswNbtView( _CswNbtResources ); View.ViewName = "Reglist_getCASNumbers"; CswNbtViewRelationship casnoRel = View.AddViewRelationship( RegListCasNoOC, false ); View.AddViewProperty( casnoRel, RegListCasNoCasNoOCP ); View.AddViewPropertyAndFilter( casnoRel, RegListCasNoRegListOCP, SubFieldName: CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID, FilterMode: CswEnumNbtFilterMode.Equals, Value: this.NodeId.PrimaryKey.ToString() ); ICswNbtTree Tree = _CswNbtResources.Trees.getTreeFromView( View, RequireViewPermissions: false, IncludeSystemNodes: true, IncludeHiddenNodes: true ); for( Int32 i = 0; i < Tree.getChildNodeCount(); i++ ) { Tree.goToNthChild( i ); CswNbtTreeNodeProp casnoTreeProp = Tree.getChildNodePropsOfNode().FirstOrDefault( p => p.ObjectClassPropName == RegListCasNoCasNoOCP.PropName ); if( null != casnoTreeProp ) { ret.Add( casnoTreeProp[( (CswNbtFieldTypeRuleCASNo) RegListCasNoCasNoOCP.getFieldTypeRule() ).TextSubField.Column] ); } Tree.goToParentNode(); } return ret; } // getCASNumbers()
public override void update() { List<CswNbtView> ReportViews = _CswNbtSchemaModTrnsctn.restoreViews( "Reports" ); foreach( CswNbtView ReportView in ReportViews ) { if( ReportView.Visibility != CswEnumNbtViewVisibility.Property ) { ReportView.Root.ChildRelationships.Clear(); CswNbtMetaDataObjectClass ReportGroupOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ReportGroupClass ); CswNbtViewRelationship ReportGroupVR = ReportView.AddViewRelationship( ReportGroupOC, IncludeDefaultFilters: false ); CswNbtMetaDataObjectClass ReportOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ReportClass ); CswNbtMetaDataObjectClassProp ReportGroupOCP = ReportOC.getObjectClassProp( CswNbtObjClassReport.PropertyName.ReportGroup ); ReportView.AddViewRelationship( ReportGroupVR, CswEnumNbtViewPropOwnerType.Second, ReportGroupOCP, false ); ReportView.save(); } } List<CswNbtView> MailReportViews = _CswNbtSchemaModTrnsctn.restoreViews( "Mail Reports" ); foreach( CswNbtView MailReportView in MailReportViews ) { _updateMailReportView( MailReportView ); } List<CswNbtView> MailReportFEViews = _CswNbtSchemaModTrnsctn.restoreViews( "Mail Reports (FE)" ); foreach( CswNbtView MailReportView in MailReportFEViews ) { _updateMailReportView( MailReportView ); } List<CswNbtView> MailReportIMCSViews = _CswNbtSchemaModTrnsctn.restoreViews( "Mail Reports (IMCS)" ); foreach( CswNbtView MailReportView in MailReportIMCSViews ) { _updateMailReportView( MailReportView ); } } // update()
public override void update() { CswNbtMetaDataObjectClass MailReportOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( NbtObjectClass.MailReportClass ); foreach( CswNbtMetaDataNodeType MailReportNT in MailReportOC.getNodeTypes() ) { // remove 'Nodes to Report' from all layouts CswNbtMetaDataNodeTypeProp NodesToReportNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.NodesToReport ); _CswNbtSchemaModTrnsctn.MetaData.NodeTypeLayout.removePropFromAllLayouts( NodesToReportNTP ); // remove Run Status from Add layout CswNbtMetaDataNodeTypeProp RunStatusNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.RunStatus ); RunStatusNTP.removeFromLayout( CswNbtMetaDataNodeTypeLayoutMgr.LayoutType.Add ); // set Target Type and Event to be conditional on Type = View CswNbtMetaDataNodeTypeProp TypeNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.Type ); CswNbtMetaDataNodeTypeProp TargetTypeNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.TargetType ); CswNbtMetaDataNodeTypeProp EventNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.Event ); TargetTypeNTP.setFilter( TypeNTP, TypeNTP.getFieldTypeRule().SubFields.Default, CswNbtPropFilterSql.PropertyFilterMode.Equals, CswNbtObjClassMailReport.TypeOptionView ); EventNTP.setFilter( TypeNTP, TypeNTP.getFieldTypeRule().SubFields.Default, CswNbtPropFilterSql.PropertyFilterMode.Equals, CswNbtObjClassMailReport.TypeOptionView ); // add help text to Report View CswNbtMetaDataNodeTypeProp ReportViewNTP = MailReportNT.getNodeTypePropByObjectClassProp( CswNbtObjClassMailReport.PropertyName.ReportView ); ReportViewNTP.HelpText = "For 'Exists' events, a report is generated if the view returns any results that match the Target Type. For 'Edit' events, a report is only generated if one of the properties in the view was modified."; // set target type and event for existing mail reports foreach( CswNbtObjClassMailReport MailReportNode in MailReportNT.getNodes( false, true ) ) { if( CswNbtObjClassMailReport.TypeOptionView == MailReportNode.Type.Value && 0 == MailReportNode.TargetType.SelectedNodeTypeIds.Count ) { CswNbtView View = _CswNbtSchemaModTrnsctn.restoreView( MailReportNode.ReportView.ViewId ); if( View.Root.ChildRelationships.Count > 0 ) { CswNbtViewRelationship RootRel = View.Root.ChildRelationships[0]; if( RootRel.SecondType == NbtViewRelatedIdType.NodeTypeId ) { MailReportNode.TargetType.SelectedNodeTypeIds.Add( RootRel.SecondId.ToString() ); } else { CswNbtMetaDataObjectClass RootOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( RootRel.SecondId.ToString() ); if( null != RootOC.FirstNodeType ) { MailReportNode.TargetType.SelectedNodeTypeIds.Add( RootOC.FirstNodeType.NodeTypeId.ToString() ); } } } } if( MailReportNode.Event.Empty ) { MailReportNode.Event.Value = CswNbtObjClassMailReport.EventOption.Exists.ToString(); } MailReportNode.postChanges( false ); } // foreach( CswNbtObjClassMailReport MailReportNode in MailReportNT.getNodes( false, true ) ) } // foreach( CswNbtMetaDataNodeType MailReportNT in MailReportOC.getNodeTypes() ) }//Update()
public override void onPropertySetAddDefaultViewFilters(CswNbtViewRelationship ParentRelationship) { CswNbtMetaDataObjectClassProp RequestorOcp = ObjectClass.getObjectClassProp(PropertyName.Requestor); ParentRelationship.View.AddViewPropertyAndFilter(ParentRelationship, RequestorOcp, FilterMode: CswEnumNbtFilterMode.Equals, Value: "me", ShowInGrid: false); CswNbtMetaDataObjectClassProp IsFavoriteOcp = ObjectClass.getObjectClassProp(PropertyName.IsFavorite); ParentRelationship.View.AddViewPropertyAndFilter(ParentRelationship, IsFavoriteOcp, FilterMode: CswEnumNbtFilterMode.NotEquals, Value: CswNbtNodePropLogical.toLogicalGestalt(CswEnumTristate.True), ShowInGrid: false); CswNbtMetaDataObjectClassProp IsRecurringOcp = ObjectClass.getObjectClassProp(PropertyName.IsRecurring); ParentRelationship.View.AddViewPropertyAndFilter(ParentRelationship, IsRecurringOcp, FilterMode: CswEnumNbtFilterMode.NotEquals, Value: CswEnumTristate.True.ToString(), ShowInGrid: false); CswNbtMetaDataObjectClassProp StatusOcp = ObjectClass.getObjectClassProp(PropertyName.Status); ParentRelationship.View.AddViewPropertyAndFilter(ParentRelationship, StatusOcp, FilterMode: CswEnumNbtFilterMode.NotEquals, Value: NonRequestableStatus, ShowInGrid: false); }
private void _createGroupPermissionsGridProp(CswNbtMetaDataObjectClass PermissionGroupOC, PermissionSetAttributes PermSet) { CswNbtMetaDataObjectClassProp PermissionsGridOCP = PermissionGroupOC.getObjectClassProp("Permissions"); if (null == PermissionsGridOCP) { PermissionsGridOCP = _CswNbtSchemaModTrnsctn.createObjectClassProp(new CswNbtWcfMetaDataModel.ObjectClassProp(PermissionGroupOC) { PropName = CswNbtObjClassReportGroup.PropertyName.Permissions, FieldType = CswEnumNbtFieldType.Grid }); CswNbtMetaDataObjectClass PermissionOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass(PermSet.PermissionClassName); CswNbtMetaDataObjectClassProp PermGroupOCP = PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.PermissionGroup); CswNbtView PermissionsView = _CswNbtSchemaModTrnsctn.makeView(); PermissionsView.ViewName = PermSet.GroupTargetPropName; PermissionsView.ViewMode = CswEnumNbtViewRenderingMode.Grid; CswNbtViewRelationship RootRel = PermissionsView.AddViewRelationship(PermissionGroupOC, false); CswNbtViewRelationship PermRel = PermissionsView.AddViewRelationship(RootRel, CswEnumNbtViewPropOwnerType.Second, PermGroupOCP, true); PermissionsView.AddViewProperty(PermRel, PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.PermissionGroup), 1); PermissionsView.AddViewProperty(PermRel, PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.Role), 2); PermissionsView.AddViewProperty(PermRel, PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.WorkUnit), 3); PermissionsView.AddViewProperty(PermRel, PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.View), 4); PermissionsView.AddViewProperty(PermRel, PermissionOC.getObjectClassProp(CswNbtPropertySetPermission.PropertyName.Edit), 5); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp(PermissionsGridOCP, CswEnumNbtObjectClassPropAttributes.viewxml, PermissionsView.ToString()); } }