}//_addMaterialComponentPermissions() private void _addTitleToDocumentsView() { CswNbtMetaDataPropertySet MaterialPS = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); foreach( CswNbtMetaDataObjectClass MaterialOC in MaterialPS.getObjectClasses() ) { foreach( CswNbtMetaDataNodeType MaterialNT in MaterialOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp DocumentsNTP = MaterialNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetMaterial.PropertyName.Documents ); CswNbtMetaDataNodeType MaterialDocumentNT = _CswNbtSchemaModTrnsctn.MetaData.getNodeType( "Material Document" ); if( null != MaterialDocumentNT ) { CswNbtMetaDataObjectClass DocumentOC = MaterialDocumentNT.getObjectClass(); CswNbtMetaDataNodeTypeProp[] propsToAdd = { MaterialDocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.Title ) }; CswNbtView DocumentsView = _CswNbtSchemaModTrnsctn.restoreView( DocumentsNTP.ViewId ); if( null != DocumentsView ) { _addPropertiesToView( DocumentsView, DocumentsView.Root.ChildRelationships, DocumentOC, MaterialDocumentNT, propsToAdd ); } } } } }
public override void update() { if( _CswNbtSchemaModTrnsctn.isMaster() ) { CswNbtObjClassRole CISProReceiverRole = null; CswNbtMetaDataObjectClass RoleOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.RoleClass ); foreach( CswNbtObjClassRole RoleNode in RoleOC.getNodes( false, false, false, true ) ) { if( RoleNode.Name.Text == "CISPro_Receiver" ) { CISProReceiverRole = RoleNode; break; } } if( null != CISProReceiverRole ) { _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtActionName.Create_Material, CISProReceiverRole, true ); CswNbtMetaDataPropertySet MaterialPS = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); foreach( CswNbtMetaDataObjectClass MaterialOC in MaterialPS.getObjectClasses() ) { foreach( CswNbtMetaDataNodeType MaterialNT in MaterialOC.getNodeTypes() ) { _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtNodeTypePermission.View, MaterialNT, CISProReceiverRole, true ); _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtNodeTypePermission.Edit, MaterialNT, CISProReceiverRole, true ); _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtNodeTypePermission.Create, MaterialNT, CISProReceiverRole, true ); _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtNodeTypePermission.Delete, MaterialNT, CISProReceiverRole, true ); } } } } } // update()
protected override void OnEnable() { //Show the following Container properties... // Requests // Submitted Requests CswNbtMetaDataObjectClass ContainerOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ContainerClass); foreach (int NodeTypeId in ContainerOC.getNodeTypeIds().Keys) { _CswNbtResources.Modules.ShowProp(NodeTypeId, CswNbtObjClassContainer.PropertyName.Request); _CswNbtResources.Modules.ShowProp(NodeTypeId, CswNbtObjClassContainer.PropertyName.SubmittedRequests); } //Show the following Inventory Group properties... // Limit Request Delivery Location CswNbtMetaDataObjectClass InventoryGroupOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.InventoryGroupClass); foreach (int NodeTypeId in InventoryGroupOC.getNodeTypeIds().Keys) { _CswNbtResources.Modules.ShowProp(NodeTypeId, CswNbtObjClassInventoryGroup.PropertyName.LimitRequestDeliveryLocation); } //Show the following Location properties... // Request Delivery Location CswNbtMetaDataObjectClass LocationOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.LocationClass); foreach (int NodeTypeId in LocationOC.getNodeTypeIds().Keys) { _CswNbtResources.Modules.ShowProp(NodeTypeId, CswNbtObjClassLocation.PropertyName.RequestDeliveryLocation); } //Show the following Material properties... // Request Button CswNbtMetaDataPropertySet MaterialSet = _CswNbtResources.MetaData.getPropertySet(CswEnumNbtPropertySetName.MaterialSet); foreach (CswNbtMetaDataObjectClass MaterialOC in MaterialSet.getObjectClasses()) { foreach (int NodeTypeId in MaterialOC.getNodeTypeIds().Keys) { _CswNbtResources.Modules.ShowProp(NodeTypeId, CswNbtObjClassChemical.PropertyName.Request); } } //Show all views in the Requests category _CswNbtResources.Modules.ToggleViewsInCategory(false, "Requests", CswEnumNbtViewVisibility.Global); //Show the request fulfiller Role/User _CswNbtResources.Modules.ToggleRoleNodes(false, "request_fulfiller"); _CswNbtResources.Modules.ToggleUserNodes(false, "request_fulfiller"); //TODO - Case 31274 - Add CISPro_Guardian Role/User to this list // Case 28930 - Enable Scheduled Rules _CswNbtResources.Modules.ToggleScheduledRule(CswEnumNbtScheduleRuleNames.GenRequest, Disabled: false); //Case 31546 - If we're enabling Requesting AFTER MLM, we need to show the MLM props if (_CswNbtResources.Modules.IsModuleEnabled(CswEnumNbtModuleName.MLM)) { CswNbtObjClassRequestItem.ToggleMLMProps(_CswNbtResources, false); } }
public override void update() { _CswNbtSchemaModTrnsctn.createAction( CswEnumNbtActionName.Container_Expiration_Lock, false, String.Empty, "Containers" ); _CswNbtSchemaModTrnsctn.createModuleActionJunction( CswEnumNbtModuleName.Containers, CswEnumNbtActionName.Container_Expiration_Lock ); CswNbtMetaDataObjectClass RoleOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.RoleClass ); foreach( CswNbtObjClassRole RoleNode in RoleOC.getNodes( false, true ) ) { _CswNbtSchemaModTrnsctn.Permit.set( CswEnumNbtActionName.Container_Expiration_Lock, RoleNode.Node, RoleNode.Administrator.Checked == CswEnumTristate.True ); } CswNbtMetaDataPropertySet MaterialSet = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); foreach( CswNbtMetaDataObjectClass MaterialOC in MaterialSet.getObjectClasses() ) { foreach( CswNbtMetaDataNodeType MaterialNT in MaterialOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp ExpirationLockedNTP = MaterialNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetMaterial.PropertyName.ContainerExpirationLocked ); ExpirationLockedNTP.removeFromLayout( CswEnumNbtLayoutType.Add ); } foreach( CswNbtPropertySetMaterial MaterialNode in MaterialOC.getNodes( false, false ) ) { MaterialNode.ContainerExpirationLocked.Checked = CswEnumTristate.True; MaterialNode.postChanges( false ); } } } // update()
public override void update() { // Create the view CswNbtMetaDataPropertySet MaterialPS = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); CswNbtMetaDataObjectClass ManufacturerOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ManufacturerClass ); CswNbtMetaDataObjectClassProp MaterialOCP = ManufacturerOC.getObjectClassProp( CswNbtObjClassManufacturer.PropertyName.Material ); CswNbtMetaDataObjectClassProp ManufacturingSiteOCP = ManufacturerOC.getObjectClassProp( CswNbtObjClassManufacturer.PropertyName.ManufacturingSite ); CswNbtMetaDataObjectClassProp QualifiedOCP = ManufacturerOC.getObjectClassProp( CswNbtObjClassManufacturer.PropertyName.Qualified ); CswNbtView ManufacturersView = _CswNbtSchemaModTrnsctn.makeSafeView( "ManufacturingSites", CswEnumNbtViewVisibility.Property ); ManufacturersView.ViewName = "ManufacturingSites"; ManufacturersView.ViewMode = CswEnumNbtViewRenderingMode.Grid; ManufacturersView.Root.ChildRelationships.Clear(); CswNbtViewRelationship root = ManufacturersView.AddViewRelationship( MaterialPS, false ); CswNbtViewRelationship relationship = ManufacturersView.AddViewRelationship( root, CswEnumNbtViewPropOwnerType.Second, MaterialOCP, true ); ManufacturersView.AddViewProperty( relationship, ManufacturingSiteOCP ); ManufacturersView.AddViewProperty( relationship, QualifiedOCP ); ManufacturersView.save(); foreach( CswNbtMetaDataObjectClass MaterialOC in MaterialPS.getObjectClasses() ) { CswNbtMetaDataObjectClassProp GridOCP = MaterialOC.getObjectClassProp( CswNbtPropertySetMaterial.PropertyName.ManufacturingSites ); _CswNbtSchemaModTrnsctn.MetaData.UpdateObjectClassProp( GridOCP, CswEnumNbtObjectClassPropAttributes.viewxml, ManufacturersView.ToString() ); } } // update()
public override void update() { CswNbtMetaDataObjectClass BiologicalOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.BiologicalClass ); CswNbtMetaDataObjectClass SupplyOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.NonChemicalClass ); CswNbtMetaDataNodeType TimeUoM_OC = _CswNbtSchemaModTrnsctn.MetaData.getNodeType( "Unit Time" ); CswTableUpdate JctPropSetOCP = _CswNbtSchemaModTrnsctn.makeCswTableUpdate( "52990_JCT_PS_OCP", "jct_propertyset_ocprop" ); DataTable JctTable = JctPropSetOCP.getEmptyTable(); foreach( CswNbtMetaDataObjectClass MaterialOC in new[] {BiologicalOC, SupplyOC} ) { CswNbtMetaDataObjectClassProp ExpireInterval = _CswNbtSchemaModTrnsctn.createObjectClassProp( MaterialOC, new CswNbtWcfMetaDataModel.ObjectClassProp { PropName = CswNbtPropertySetMaterial.PropertyName.ExpirationInterval, FieldType = CswEnumNbtFieldType.Quantity, IsFk = true, FkType = "NodeTypeId", FkValue = TimeUoM_OC.NodeTypeId } ); CswNbtMetaDataObjectClassProp OpenExpireInterval = _CswNbtSchemaModTrnsctn.createObjectClassProp( MaterialOC, new CswNbtWcfMetaDataModel.ObjectClassProp { PropName = CswNbtPropertySetMaterial.PropertyName.OpenExpireInterval, FieldType = CswEnumNbtFieldType.Quantity, IsFk = true, FkType = "NodeTypeId", FkValue = TimeUoM_OC.NodeTypeId } ); DataRow Row = JctTable.NewRow(); Row["propertysetid"] = MaterialOC.getPropertySet().PropertySetId; Row["objectclasspropid"] = ExpireInterval.ObjectClassPropId; JctTable.Rows.Add( Row ); Row = JctTable.NewRow(); Row["propertysetid"] = MaterialOC.getPropertySet().PropertySetId; Row["objectclasspropid"] = OpenExpireInterval.ObjectClassPropId; JctTable.Rows.Add( Row ); } JctPropSetOCP.update( JctTable ); } // update()
public override void update() { CswNbtMetaDataObjectClass BiologicalOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.BiologicalClass ); CswNbtMetaDataObjectClass SupplyOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.NonChemicalClass ); foreach( CswNbtMetaDataObjectClass MaterialOC in new[] {BiologicalOC, SupplyOC} ) { CswNbtMetaDataObjectClassProp OpenExpireOCP = MaterialOC.getObjectClassProp( CswNbtPropertySetMaterial.PropertyName.OpenExpireInterval ); CswNbtMetaDataObjectClassProp ExpirationIntervalOCP = MaterialOC.getObjectClassProp( CswNbtPropertySetMaterial.PropertyName.ExpirationInterval ); foreach( CswNbtMetaDataObjectClassProp OCP in new[] {OpenExpireOCP, ExpirationIntervalOCP} ) { foreach( CswNbtMetaDataNodeTypeProp NTP in OCP.getNodeTypeProps() ) { CswNbtMetaDataNodeType NT = NTP.getNodeType(); NTP.updateLayout( CswEnumNbtLayoutType.Edit, true, NT.getFirstNodeTypeTab().TabId ); } } } } // update()
/// <summary> /// The actual update call /// </summary> public override void update() { CswNbtMetaDataPropertySet MaterialSet = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet(CswEnumNbtPropertySetName.MaterialSet); foreach (CswNbtMetaDataObjectClass MaterialOC in MaterialSet.getObjectClasses()) { CswNbtMetaDataObjectClassProp ExpirationLockedOCP = MaterialOC.getObjectClassProp(CswNbtPropertySetMaterial.PropertyName.ContainerExpirationLocked); if (null == ExpirationLockedOCP) { ExpirationLockedOCP = _CswNbtSchemaModTrnsctn.createObjectClassProp(MaterialOC, new CswNbtWcfMetaDataModel.ObjectClassProp { PropName = CswNbtPropertySetMaterial.PropertyName.ContainerExpirationLocked, FieldType = CswEnumNbtFieldType.Logical, SetValOnAdd = false, IsRequired = true }); _CswNbtSchemaModTrnsctn.MetaData.SetObjectClassPropDefaultValue(ExpirationLockedOCP, CswEnumTristate.True, CswEnumNbtSubFieldName.Checked); } } }
public override void update() { CswNbtMetaDataPropertySet MaterialPS = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); foreach( CswNbtMetaDataObjectClass MaterialOC in MaterialPS.getObjectClasses() ) { // Set default value for Obsolete property on Materials to false // Remove obsolete from Add layout CswNbtMetaDataObjectClassProp ManufacturerSitesOCP = MaterialOC.getObjectClassProp( CswNbtPropertySetMaterial.PropertyName.ManufacturingSites ); CswNbtView ManufacturersView = _CswNbtSchemaModTrnsctn.ViewSelect.restoreView( "ManufacturingSites", CswEnumNbtViewVisibility.Property ); // Set view on nodetypes foreach( CswNbtMetaDataNodeType MaterialNT in MaterialOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp ObsoleteNTP = MaterialNT.getNodeTypeProp( CswNbtPropertySetMaterial.PropertyName.Obsolete ); //ObsoleteNTP.getDefaultValue( true ).AsLogical.Checked = CswEnumTristate.False; ObsoleteNTP.DesignNode.AttributeProperty[CswEnumNbtPropertyAttributeName.DefaultValue].AsLogical.Checked = CswEnumTristate.False; ObsoleteNTP.removeFromLayout( CswEnumNbtLayoutType.Add ); CswNbtMetaDataNodeTypeProp GridNTP = MaterialNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetMaterial.PropertyName.ManufacturingSites ); GridNTP.ViewId.set( ManufacturersView.ViewId.get() ); } } } // update()
public override void update() { // New 'IsConstituent' property CswNbtMetaDataPropertySet MaterialPS = _CswNbtSchemaModTrnsctn.MetaData.getPropertySet( CswEnumNbtPropertySetName.MaterialSet ); foreach( CswNbtMetaDataObjectClass MaterialOC in _CswNbtSchemaModTrnsctn.MetaData.getObjectClassesByPropertySetId( MaterialPS.PropertySetId ) ) { foreach( CswNbtMetaDataNodeType MaterialNT in MaterialOC.getNodeTypes() ) { CswNbtMetaDataNodeTypeProp IsConstituentNTP = MaterialNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetMaterial.PropertyName.IsConstituent ); IsConstituentNTP.DefaultValue.AsLogical.Checked = CswEnumTristate.False; IsConstituentNTP.removeFromAllLayouts(); foreach( CswNbtPropertySetMaterial MaterialNode in MaterialNT.getNodes( false, true ) ) { MaterialNode.IsConstituent.Checked = CswEnumTristate.False; MaterialNode.postChanges( false ); } } } CswNbtMetaDataObjectClass ChemicalOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ChemicalClass ); if( null != ChemicalOC.FirstNodeType ) { //1. Create a new NodeType (of ObjClassChemical) called "Constituent" CswNbtMetaDataNodeType ConstituentNT = _CswNbtSchemaModTrnsctn.MetaData.CopyNodeType( ChemicalOC.FirstNodeType, "Constituent" ); CswNbtMetaDataNodeTypeProp TradeNameNTP = ConstituentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassChemical.PropertyName.TradeName ); ConstituentNT.setNameTemplateText( CswNbtMetaData.MakeTemplateEntry( TradeNameNTP.PropName ) ); // IsConstituent is true here CswNbtMetaDataNodeTypeProp IsConstituentNTP = ConstituentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassChemical.PropertyName.IsConstituent ); IsConstituentNTP.DefaultValue.AsLogical.Checked = CswEnumTristate.True; //2. Set Allow Receiving prop to "false" by default CswNbtMetaDataNodeTypeProp ApprovedReceivingNTP = ConstituentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassChemical.PropertyName.ApprovedForReceiving ); ApprovedReceivingNTP.DefaultValue.AsLogical.Checked = CswEnumTristate.False; ApprovedReceivingNTP.ServerManaged = true; Collection<CswNbtMetaDataNodeTypeProp> PropertiesToDelete = new Collection<CswNbtMetaDataNodeTypeProp>(); PropertiesToDelete.Add( ConstituentNT.getNodeTypeProp( "Chemical Sizes" ) ); PropertiesToDelete.Add( ConstituentNT.getNodeTypeProp( "Inventory Levels" ) ); PropertiesToDelete.Add( ConstituentNT.getNodeTypeProp( "Chemical Containers" ) ); PropertiesToDelete.Add( ConstituentNT.getNodeTypeProp( "Components" ) ); foreach( CswNbtMetaDataNodeTypeProp DoomedProp in PropertiesToDelete ) { if( null != DoomedProp ) { _CswNbtSchemaModTrnsctn.MetaData.DeleteNodeTypeProp( DoomedProp ); } } CswNbtMetaDataNodeTypeProp SupplierNTP = ConstituentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassChemical.PropertyName.Supplier ); SupplierNTP.removeFromAllLayouts(); // Grant permissions to cispro_admin CswNbtObjClassRole CISProAdminRole = _CswNbtSchemaModTrnsctn.Nodes.makeRoleNodeFromRoleName( "CISPro_Admin" ); CswEnumNbtNodeTypePermission[] AllPerms = new CswEnumNbtNodeTypePermission[] { CswEnumNbtNodeTypePermission.Create, CswEnumNbtNodeTypePermission.Delete, CswEnumNbtNodeTypePermission.Edit, CswEnumNbtNodeTypePermission.View }; _CswNbtSchemaModTrnsctn.Permit.set( AllPerms, ConstituentNT, CISProAdminRole, true ); } // if( null != ChemicalOC.FirstNodeType ) } // update()