private bool _isMostRecentContainerLocation(CswNbtResources _CswNbtResources, CswNbtObjClassContainerLocation ContainerLocation)
        {
            bool       isMostRecent                       = true;
            CswNbtView ContainerLocationsView             = new CswNbtView(_CswNbtResources);
            CswNbtMetaDataObjectClass ContainerLocationOc = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ContainerLocationClass);
            CswNbtViewRelationship    ParentRelationship  = ContainerLocationsView.AddViewRelationship(ContainerLocationOc, true);

            ParentRelationship.NodeIdsToFilterOut.Add(ContainerLocation.NodeId);
            CswNbtMetaDataObjectClassProp ContainerOcp = ContainerLocationOc.getObjectClassProp(CswNbtObjClassContainerLocation.PropertyName.Container);

            ContainerLocationsView.AddViewPropertyAndFilter(ParentRelationship,
                                                            MetaDataProp: ContainerOcp,
                                                            Value: ContainerLocation.Container.RelatedNodeId.PrimaryKey.ToString(),
                                                            SubFieldName: CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID,
                                                            FilterMode: CswEnumNbtFilterMode.Equals);
            CswNbtMetaDataObjectClassProp ScanDateOcp = ContainerLocationOc.getObjectClassProp(CswNbtObjClassContainerLocation.PropertyName.ScanDate);

            ContainerLocationsView.AddViewPropertyAndFilter(ParentRelationship,
                                                            MetaDataProp: ScanDateOcp,
                                                            Value: ContainerLocation.ScanDate.DateTimeValue.ToString(),
                                                            SubFieldName: CswNbtFieldTypeRuleDateTime.SubFieldName.Value,
                                                            FilterMode: CswEnumNbtFilterMode.GreaterThan);
            ICswNbtTree ContainerLocationsTree = _CswNbtResources.Trees.getTreeFromView(ContainerLocationsView, false, false, false);

            if (ContainerLocationsTree.getChildNodeCount() > 0)
            {
                isMostRecent = false;
            }
            return(isMostRecent);
        }
Exemplo n.º 2
0
        } // 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;
        }
Exemplo n.º 3
0
        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();
                        }
                    }

                }
            }
        }
Exemplo n.º 4
0
        //takes the default request view, adds items, and filters by favorites
        public CswNbtView getFavoriteRequestsItemsView()
        {
            CswNbtView Ret = new CswNbtView(_CswNbtResources)
            {
                Category       = "Request Configuration",
                Visibility     = CswEnumNbtViewVisibility.Hidden,
                ViewMode       = CswEnumNbtViewRenderingMode.Grid,
                ViewName       = FavoriteItemsViewName,
                GridGroupByCol = CswNbtObjClassRequestItem.PropertyName.Name
            };
            CswNbtViewRelationship RequestItemRel = Ret.AddViewRelationship(_RequestItemOC, false);
            CswNbtViewProperty     NameVP         = Ret.AddViewProperty(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.Name), 1);

            NameVP.SortBy = true;
            Ret.AddViewPropertyFilter(NameVP, ShowAtRuntime: true);
            CswNbtViewProperty DescriptionVP = Ret.AddViewProperty(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.Description), 2);

            DescriptionVP.Width = 50;
            CswNbtViewProperty InventoryGroupVP = Ret.AddViewProperty(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.InventoryGroup), 3);

            InventoryGroupVP.Width = 30;
            CswNbtViewProperty LocationVP = Ret.AddViewProperty(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.Location), 4);

            LocationVP.Width = 40;
            Ret.AddViewPropertyAndFilter(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.Requestor), Value: "me", ShowInGrid: false);
            Ret.AddViewPropertyAndFilter(RequestItemRel, _RequestItemOC.getObjectClassProp(CswNbtObjClassRequestItem.PropertyName.IsFavorite), Value: CswNbtNodePropLogical.toLogicalGestalt(CswEnumTristate.True), ShowInGrid: false);
            return(Ret);
        }
Exemplo n.º 5
0
        // onButtonClick()

        private bool areMoreActionsRequired() //case 25041
        {
            CswNbtView SiblingView = new CswNbtView(_CswNbtResources);

            SiblingView.ViewName = "SiblingView";
            CswNbtViewRelationship ParentRelationship = SiblingView.AddViewRelationship(this.NodeType, false);

            ParentRelationship.NodeIdsToFilterOut.Add(this.NodeId);
            SiblingView.AddViewPropertyAndFilter(
                ParentRelationship,
                this.NodeType.getNodeTypePropByObjectClassProp(PropertyName.Status),
                CswEnumNbtInspectionStatus.ActionRequired,
                CswNbtFieldTypeRuleList.SubFieldName.Value,
                false,
                CswEnumNbtFilterMode.Equals
                );
            SiblingView.AddViewPropertyAndFilter(
                ParentRelationship,
                this.NodeType.getNodeTypePropByObjectClassProp(PropertyName.Target),
                this.Parent.RelatedNodeId.PrimaryKey.ToString(),
                CswNbtFieldTypeRuleRelationship.SubFieldName.NodeID,
                false,
                CswEnumNbtFilterMode.Equals
                );
            ICswNbtTree SiblingTree   = _CswNbtResources.Trees.getTreeFromView(_CswNbtResources.CurrentNbtUser, SiblingView, true, false, false);
            int         NumOfSiblings = SiblingTree.getChildNodeCount();

            return(0 < NumOfSiblings || Status.Value.Equals(CswEnumNbtInspectionStatus.ActionRequired));
        }
        public override void update()
        {
            // Create a view that the impersonation nodeselect uses
            CswNbtView ImpersonationView = _CswNbtSchemaModTrnsctn.makeNewView( "Impersonation NodeSelect View", CswEnumNbtViewVisibility.Hidden );
            ImpersonationView.IsSystem = true;

            CswNbtMetaDataObjectClass UserOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.UserClass );
            CswNbtMetaDataObjectClassProp UsernameOCP = UserOC.getObjectClassProp( CswNbtObjClassUser.PropertyName.Username );
            CswNbtMetaDataObjectClassProp RoleOCP = UserOC.getObjectClassProp( CswNbtObjClassUser.PropertyName.Role );
            CswNbtViewRelationship Parent = ImpersonationView.AddViewRelationship( UserOC, true );
            ImpersonationView.AddViewPropertyAndFilter(
                ParentViewRelationship: Parent,
                MetaDataProp: UsernameOCP,
                Conjunction: CswEnumNbtFilterConjunction.And,
                Value: CswNbtObjClassUser.ChemSWAdminUsername,
                FilterMode: CswEnumNbtFilterMode.NotEquals
                );
            ImpersonationView.AddViewPropertyAndFilter(
                ParentViewRelationship: Parent,
                MetaDataProp: RoleOCP,
                Conjunction: CswEnumNbtFilterConjunction.And,
                Value: CswNbtObjClassRole.ChemSWAdminRoleName,
                FilterMode: CswEnumNbtFilterMode.NotEquals,
                SubFieldName: CswEnumNbtSubFieldName.Name
                );
            ImpersonationView.save();
        } // update()
        public CswNbtView getOutstandingContainerLocations(CswNbtResources _CswNbtResources)
        {
            CswNbtView ContainerLocationsView = new CswNbtView(_CswNbtResources);
            CswNbtMetaDataObjectClass     ContainerLocationOc = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ContainerLocationClass);
            CswNbtViewRelationship        ParentRelationship  = ContainerLocationsView.AddViewRelationship(ContainerLocationOc, true);
            CswNbtMetaDataObjectClassProp ActionAppliedOcp    = ContainerLocationOc.getObjectClassProp(CswNbtObjClassContainerLocation.PropertyName.ActionApplied);

            ContainerLocationsView.AddViewPropertyAndFilter(ParentRelationship,
                                                            MetaDataProp: ActionAppliedOcp,
                                                            Value: CswEnumTristate.True.ToString(),
                                                            SubFieldName: CswNbtFieldTypeRuleLogical.SubFieldName.Checked,
                                                            FilterMode: CswEnumNbtFilterMode.NotEquals);
            CswNbtMetaDataObjectClassProp ActionOcp = ContainerLocationOc.getObjectClassProp(CswNbtObjClassContainerLocation.PropertyName.Action);

            ContainerLocationsView.AddViewPropertyAndFilter(ParentRelationship,
                                                            MetaDataProp: ActionOcp,
                                                            Value: String.Empty,
                                                            SubFieldName: CswNbtFieldTypeRuleList.SubFieldName.Value,
                                                            FilterMode: CswEnumNbtFilterMode.NotNull);
            ContainerLocationsView.AddViewPropertyAndFilter(ParentRelationship,
                                                            MetaDataProp: ActionOcp,
                                                            Value: CswEnumNbtContainerLocationActionOptions.Ignore.ToString(),
                                                            SubFieldName: CswNbtFieldTypeRuleList.SubFieldName.Value,
                                                            FilterMode: CswEnumNbtFilterMode.NotEquals);
            return(ContainerLocationsView);
        }
Exemplo n.º 8
0
        }//UpdateBalanceData()


        public static void listConnectedBalances( ICswResources CswResources, CswNbtBalanceReturn Return, object Request )
        {

            CswNbtResources NbtResources = (CswNbtResources) CswResources;
            Return.Data.BalanceList = new Collection<SerialBalance>();


            CswNbtMetaDataObjectClass BalanceOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.BalanceClass );
            if( null != BalanceOC )
            {

                CswNbtView ExistingBalancesView = new CswNbtView( NbtResources );
                ExistingBalancesView.ViewName = "Connected Balances";
                CswNbtViewRelationship BalanceRel = ExistingBalancesView.AddViewRelationship( BalanceOC, true );
                //only add to the list of returned balances if it has had an announcement in the last 11 minutes
                ExistingBalancesView.AddViewPropertyAndFilter( BalanceRel, BalanceOC.getObjectClassProp( CswNbtObjClassBalance.PropertyName.LastActive ),
                                        SubFieldName: CswEnumNbtSubFieldName.Value,
                                        Value: DateTime.Now.Subtract( TimeSpan.FromMinutes( 11 ) ).ToString(),
                                        FilterMode: CswEnumNbtFilterMode.GreaterThan );

                //only add to the list of returned balances if it is Operational
                ExistingBalancesView.AddViewPropertyAndFilter( BalanceRel, BalanceOC.getObjectClassProp( CswNbtObjClassBalance.PropertyName.Operational ),
                                        SubFieldName: CswEnumNbtSubFieldName.Checked,
                                        Value: CswEnumTristate.True,
                                        FilterMode: CswEnumNbtFilterMode.Equals );

                ExistingBalancesView.AddViewPropertyAndFilter( BalanceRel, BalanceOC.getObjectClassProp( CswNbtObjClassBalance.PropertyName.Quantity ),
                                        SubFieldName: CswEnumNbtSubFieldName.Value,
                                        Value: "0",
                                        FilterMode: CswEnumNbtFilterMode.NotEquals );

                ICswNbtTree BalanceTree = NbtResources.Trees.getTreeFromView( ExistingBalancesView, true, false, false );
                int BalanceCount = BalanceTree.getChildNodeCount();
                if( BalanceCount > 0 )
                {
                    BalanceTree.goToRoot();
                    for( int i = 0; i < BalanceCount; i++ )
                    {
                        BalanceTree.goToNthChild( i );
                        CswNbtObjClassBalance Balance = BalanceTree.getCurrentNode();

                        Return.Data.BalanceList.Add( new SerialBalance
                        {
                            NbtName = Balance.Name.Text,
                            CurrentWeight = Balance.Quantity.Quantity,
                            UnitOfMeasurement = Balance.Quantity.CachedUnitName,
                            NodeId = Balance.NodeId.ToString(),
                            IsActive = ( Balance.LastActive.DateTimeValue + TimeSpan.FromMinutes( 10 ) > DateTime.Now ),
                        } );

                        BalanceTree.goToParentNode();

                    } //for ( int i = 0; i < BalanceCount; i++ )
                } //if( BalanceCount > 0 )

            } //if ( null != BalanceOC )
        }//listConnectedBalances( ICswResources CswResources, CswNbtBalanceReturn Return, object Request )
Exemplo n.º 9
0
        }//getBalanceInformation( ICswResources CswResources, CswNbtBalanceReturn Return, string Request )



        private static CswNbtObjClassUnitOfMeasure _mapUnitToNode( CswNbtResources NbtResources, string UnitName )
        {
            CswNbtObjClassUnitOfMeasure Unit = null;

            CswNbtMetaDataObjectClass UnitsOfMeasureOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.UnitOfMeasureClass );
            CswNbtView MatchingUOMsView = new CswNbtView( NbtResources );
            CswNbtViewRelationship ParentRelationship = MatchingUOMsView.AddViewRelationship( UnitsOfMeasureOC, false );

            CswNbtMetaDataObjectClassProp NameOCP = UnitsOfMeasureOC.getObjectClassProp( CswNbtObjClassUnitOfMeasure.PropertyName.Name );
            MatchingUOMsView.AddViewPropertyAndFilter( ParentRelationship,
                                                       MetaDataProp: NameOCP,
                                                       Value: UnitName,
                                                       SubFieldName: CswEnumNbtSubFieldName.Text,
                                                       FilterMode: CswEnumNbtFilterMode.Equals );

            CswNbtMetaDataObjectClassProp AliasesOCP = UnitsOfMeasureOC.getObjectClassProp( CswNbtObjClassUnitOfMeasure.PropertyName.Aliases );
            MatchingUOMsView.AddViewPropertyAndFilter( ParentRelationship,
                                                       MetaDataProp: AliasesOCP,
                                                       Value: "," + UnitName + ",",
                                                       SubFieldName: CswEnumNbtSubFieldName.Text,
                                                       FilterMode: CswEnumNbtFilterMode.Contains,
                                                       Conjunction: CswEnumNbtFilterConjunction.Or );
            MatchingUOMsView.AddViewPropertyAndFilter( ParentRelationship,
                                                       MetaDataProp : AliasesOCP,
                                                       Value : UnitName + ",",
                                                       SubFieldName : CswEnumNbtSubFieldName.Text,
                                                       FilterMode : CswEnumNbtFilterMode.Begins,
                                                       Conjunction : CswEnumNbtFilterConjunction.Or );
            MatchingUOMsView.AddViewPropertyAndFilter( ParentRelationship,
                                                       MetaDataProp : AliasesOCP,
                                                       Value : "," + UnitName,
                                                       SubFieldName : CswEnumNbtSubFieldName.Text,
                                                       FilterMode : CswEnumNbtFilterMode.Ends,
                                                       Conjunction : CswEnumNbtFilterConjunction.Or );
            MatchingUOMsView.AddViewPropertyAndFilter( ParentRelationship,
                                                       MetaDataProp : AliasesOCP,
                                                       Value : UnitName,
                                                       SubFieldName : CswEnumNbtSubFieldName.Text,
                                                       FilterMode : CswEnumNbtFilterMode.Equals,
                                                       Conjunction : CswEnumNbtFilterConjunction.Or );

            // Get and iterate the Tree
            ICswNbtTree MatchingUOMsTree = NbtResources.Trees.getTreeFromView( MatchingUOMsView, false, false, true );

            int Count = MatchingUOMsTree.getChildNodeCount();

            for( int i = 0; i < Count; i++ )
            {
                MatchingUOMsTree.goToNthChild( i );
                Unit = MatchingUOMsTree.getNodeForCurrentPosition();
                MatchingUOMsTree.goToParentNode();
            }

            return Unit;

        }//_mapUnitToNode( CswNbtResources NbtResources, string UnitName )
Exemplo n.º 10
0
        public void TogglePrintLabels(bool Hidden, CswEnumNbtModuleName Module)
        {
            CswNbtMetaDataObjectClass     printLabelOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.PrintLabelClass);
            CswNbtMetaDataObjectClassProp nodetypesOCP = printLabelOC.getObjectClassProp(CswNbtObjClassPrintLabel.PropertyName.NodeTypes);

            CswNbtView             printLabelsView = new CswNbtView(_CswNbtResources);
            CswNbtViewRelationship parent          = printLabelsView.AddViewRelationship(printLabelOC, false);

            CswTableSelect childObjectClasses_TS = _CswNbtResources.makeCswTableSelect("getModuleChildren", "jct_modules_objectclass");

            int       moduleId           = _CswNbtResources.Modules.GetModuleId(Module);
            DataTable childObjClasses_DT = childObjectClasses_TS.getTable("where moduleid = " + moduleId);
            bool      first = true;

            foreach (DataRow Row in childObjClasses_DT.Rows)
            {
                int ObjClassId = CswConvert.ToInt32(Row["objectclassid"]);
                foreach (CswNbtMetaDataNodeType NodeType in _CswNbtResources.MetaData.getNodeTypes(ObjClassId))
                {
                    if (first)
                    {
                        printLabelsView.AddViewPropertyAndFilter(parent, nodetypesOCP,
                                                                 Value: NodeType.NodeTypeName,
                                                                 FilterMode: CswEnumNbtFilterMode.Contains);

                        first = false;
                    }
                    else
                    {
                        printLabelsView.AddViewPropertyAndFilter(parent, nodetypesOCP,
                                                                 Value: NodeType.NodeTypeName,
                                                                 FilterMode: CswEnumNbtFilterMode.Contains,
                                                                 Conjunction: CswEnumNbtFilterConjunction.Or);
                    }
                }
            }


            ICswNbtTree printLabelsTree = _CswNbtResources.Trees.getTreeFromView(printLabelsView, false, true, true);
            int         childCount      = printLabelsTree.getChildNodeCount();

            for (int i = 0; i < childCount; i++)
            {
                printLabelsTree.goToNthChild(i);
                CswNbtNode printLabelNode = printLabelsTree.getNodeForCurrentPosition();
                printLabelNode.Hidden = Hidden;
                printLabelNode.postChanges(false);
                printLabelsTree.goToParentNode();
            }
        }
Exemplo n.º 11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="VendorName"></param>
        /// <returns></returns>
        public C3CreateMaterialResponse.State.Supplier constructVendorObject(string VendorName)
        {
            C3CreateMaterialResponse.State.Supplier Supplier = new C3CreateMaterialResponse.State.Supplier();

            CswNbtView VendorView = new CswNbtView(_CswNbtResources);

            VendorView.ViewName = "VendorWithNameEquals";

            CswNbtMetaDataObjectClass VendorOC           = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.VendorClass);
            CswNbtViewRelationship    ParentRelationship = VendorView.AddViewRelationship(VendorOC, true);

            CswNbtMetaDataObjectClassProp VendorNameOCP = VendorOC.getObjectClassProp(CswNbtObjClassVendor.PropertyName.VendorName);

            VendorView.AddViewPropertyAndFilter(ParentRelationship, VendorNameOCP, VendorName, CswEnumNbtSubFieldName.Text);

            // If MLM is enabled, we only want to match on corporate vendors
            if (_CswNbtResources.Modules.IsModuleEnabled(CswEnumNbtModuleName.MLM))
            {
                CswNbtMetaDataObjectClassProp VendorTypeOCP = VendorOC.getObjectClassProp(CswNbtObjClassVendor.PropertyName.VendorTypeName);
                VendorView.AddViewPropertyAndFilter(ParentRelationship, VendorTypeOCP, CswNbtObjClassVendor.VendorTypes.Corporate, CswEnumNbtSubFieldName.Text);
            }

            ICswNbtTree VendorsTree = _CswNbtResources.Trees.getTreeFromView(VendorView, false, true, true);
            bool        NewVendor   = true;

            if (VendorsTree.getChildNodeCount() > 0)
            {
                NewVendor = false;

                VendorsTree.goToNthChild(0);
                CswNbtObjClassVendor VendorNode = VendorsTree.getNodeForCurrentPosition();
                Supplier.name     = CswConvert.ToString(VendorNode.VendorName.Text);
                Supplier.val      = CswConvert.ToString(VendorNode.NodeId);
                Supplier.nodelink = CswConvert.ToString(VendorNode.Node.NodeLink);
            }

            if (NewVendor)
            {
                // Don't create a new node just return an empty value in the return object - Case 28687
                Supplier.name     = VendorName;
                Supplier.val      = string.Empty;
                Supplier.nodelink = string.Empty;
            }

            Supplier.corporate = _CswNbtResources.Modules.IsModuleEnabled(CswEnumNbtModuleName.MLM);

            return(Supplier);
        }//createVendorNode()
Exemplo n.º 12
0
        }//_getUnitOfMeasure()

        private ICswNbtTree _createUoMView(string Value)
        {
            ICswNbtTree Ret;

            // Create the view
            CswNbtMetaDataObjectClass UnitsOfMeasureOC = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.UnitOfMeasureClass);
            CswNbtView             MatchingUOMsView    = new CswNbtView(_CswNbtResources);
            CswNbtViewRelationship ParentRelationship  = MatchingUOMsView.AddViewRelationship(UnitsOfMeasureOC, false);

            CswNbtMetaDataObjectClassProp NameOCP    = UnitsOfMeasureOC.getObjectClassProp(CswNbtObjClassUnitOfMeasure.PropertyName.Name);
            CswNbtMetaDataObjectClassProp AliasesOCP = UnitsOfMeasureOC.getObjectClassProp(CswNbtObjClassUnitOfMeasure.PropertyName.Aliases);

            MatchingUOMsView.AddViewPropertyAndFilter(ParentRelationship,
                                                      MetaDataProp: NameOCP,
                                                      Value: Value,
                                                      SubFieldName: CswNbtFieldTypeRuleText.SubFieldName.Text,
                                                      FilterMode: CswEnumNbtFilterMode.Equals);

            MatchingUOMsView.AddViewPropertyAndFilter(ParentRelationship,
                                                      MetaDataProp: AliasesOCP,
                                                      Value: "," + Value + ",",
                                                      SubFieldName: CswEnumNbtSubFieldName.Text,
                                                      FilterMode: CswEnumNbtFilterMode.Contains,
                                                      Conjunction: CswEnumNbtFilterConjunction.Or);
            MatchingUOMsView.AddViewPropertyAndFilter(ParentRelationship,
                                                      MetaDataProp: AliasesOCP,
                                                      Value: Value + ",",
                                                      SubFieldName: CswEnumNbtSubFieldName.Text,
                                                      FilterMode: CswEnumNbtFilterMode.Begins,
                                                      Conjunction: CswEnumNbtFilterConjunction.Or);
            MatchingUOMsView.AddViewPropertyAndFilter(ParentRelationship,
                                                      MetaDataProp: AliasesOCP,
                                                      Value: "," + Value,
                                                      SubFieldName: CswEnumNbtSubFieldName.Text,
                                                      FilterMode: CswEnumNbtFilterMode.Ends,
                                                      Conjunction: CswEnumNbtFilterConjunction.Or);
            MatchingUOMsView.AddViewPropertyAndFilter(ParentRelationship,
                                                      MetaDataProp: AliasesOCP,
                                                      Value: Value,
                                                      SubFieldName: CswEnumNbtSubFieldName.Text,
                                                      FilterMode: CswEnumNbtFilterMode.Equals,
                                                      Conjunction: CswEnumNbtFilterConjunction.Or);

            // Create the tree
            Ret = _CswNbtResources.Trees.getTreeFromView(MatchingUOMsView, false, false, true);

            return(Ret);
        }
        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();
        }
        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);
        }
Exemplo n.º 15
0
        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()
Exemplo n.º 16
0
        } // InitActionPermissionOptions()

        private void _deleteRelatedPermissionNodes()
        {
            CswNbtView PermissionsView = new CswNbtView( _CswNbtResources );
            CswNbtMetaDataPropertySet PermissionPS = _CswNbtResources.MetaData.getPropertySet( CswEnumNbtPropertySetName.PermissionSet );
            CswNbtViewRelationship RootVR = PermissionsView.AddViewRelationship( PermissionPS, false );
            CswNbtViewPropertyFilter Filter = null;
            foreach( CswNbtMetaDataObjectClass PermOC in PermissionPS.getObjectClasses() )
            {
                if( Filter == null )
                {
                    CswNbtMetaDataNodeType PermNT = PermOC.FirstNodeType;
                    if( null != PermNT )
                    {
                        CswNbtMetaDataNodeTypeProp RoleOCP = PermNT.getNodeTypePropByObjectClassProp( CswNbtPropertySetPermission.PropertyName.Role );
                        Filter = PermissionsView.AddViewPropertyAndFilter( RootVR,
                                                                           MetaDataProp: RoleOCP,
                                                                           Value: NodeId.PrimaryKey.ToString(),
                                                                           SubFieldName: CswEnumNbtSubFieldName.NodeID,
                                                                           FilterMode: CswEnumNbtFilterMode.Equals );
                    }
                }
                else
                {
                    break;
                }
            }
            ICswNbtTree PermissionsTree = _CswNbtResources.Trees.getTreeFromView( PermissionsView, false, true, true );
            for( int i = 0; i < PermissionsTree.getChildNodeCount(); i++ )
            {
                PermissionsTree.goToNthChild( i );
                CswNbtNode PermissionNode = PermissionsTree.getNodeForCurrentPosition();
                PermissionNode.delete();
                PermissionsTree.goToRoot();
            }
        }
        public override void update()
        {
            CswNbtMetaDataObjectClass BatchOpOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.BatchOpClass );

            foreach( CswNbtMetaDataNodeType BatchOpNT in BatchOpOC.getNodeTypes() )
            {
                CswNbtMetaDataNodeTypeProp BatchOpIdNTP = BatchOpNT.getNodeTypeProp( "Batch Op Id" );
                CswNbtView batchOpView = _CswNbtSchemaModTrnsctn.makeNewView( "BatchOps_51743", CswEnumNbtViewVisibility.Hidden );
                CswNbtViewRelationship parent = batchOpView.AddViewRelationship( BatchOpNT, false );
                batchOpView.AddViewPropertyAndFilter( parent, BatchOpIdNTP, FilterMode : CswEnumNbtFilterMode.Null );

                ICswNbtTree batchOpsTree = _CswNbtSchemaModTrnsctn.getTreeFromView( batchOpView, true );
                for( int i = 0; i < batchOpsTree.getChildNodeCount(); i++ )
                {
                    batchOpsTree.goToNthChild( i );

                    CswNbtObjClassBatchOp batchNode = batchOpsTree.getNodeForCurrentPosition();
                    batchNode.Node.Properties[BatchOpIdNTP].AsSequence.setSequenceValue();
                    batchNode.postChanges( false );

                    batchOpsTree.goToParentNode();
                }
            }


        } // update()
Exemplo n.º 18
0
        private void _updateContainersView( CswNbtMetaDataNodeType MaterialNT )
        {
            CswNbtMetaDataNodeTypeProp ContainersNTP = MaterialNT.getNodeTypeProp( MaterialNT.NodeTypeName + " Containers" );
            if( null != ContainersNTP )
            {
                CswNbtMetaDataObjectClass ContainerOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.ContainerClass );
                CswNbtMetaDataObjectClassProp MatOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Material );
                CswNbtMetaDataObjectClassProp DisposedOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Disposed );
                CswNbtMetaDataObjectClassProp BarcodeOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Barcode );
                CswNbtMetaDataObjectClassProp QuantityOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Quantity );
                CswNbtMetaDataObjectClassProp StatusOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Status );
                CswNbtMetaDataObjectClassProp OwnerOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Owner );
                CswNbtMetaDataObjectClassProp LocationOCP = ContainerOC.getObjectClassProp( CswNbtObjClassContainer.PropertyName.Location );

                CswNbtView ContainersView = _CswNbtSchemaModTrnsctn.ViewSelect.restoreView( ContainersNTP.ViewId );
                ContainersView.Root.ChildRelationships.Clear();
                CswNbtViewRelationship RootRel = ContainersView.AddViewRelationship( MaterialPS, false );
                CswNbtViewRelationship MatRel = ContainersView.AddViewRelationship( RootRel, CswEnumNbtViewPropOwnerType.Second, MatOCP, true );
                ContainersView.AddViewPropertyAndFilter( MatRel, DisposedOCP, CswEnumTristate.False.ToString(),
                                                             FilterMode: CswEnumNbtFilterMode.Equals,
                                                             ShowAtRuntime: false,
                                                             ShowInGrid: false );
                ContainersView.AddViewProperty( MatRel, BarcodeOCP, 1 );
                ContainersView.AddViewProperty( MatRel, QuantityOCP, 2 );
                ContainersView.AddViewProperty( MatRel, StatusOCP, 3 );
                ContainersView.AddViewProperty( MatRel, OwnerOCP, 4 );
                ContainersView.AddViewProperty( MatRel, LocationOCP, 5 );
                ContainersView.save();
            }
        }
Exemplo n.º 19
0
        /// <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()
Exemplo n.º 20
0
        public override void update()
        {

            CswNbtMetaDataObjectClass invGrpOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( NbtObjectClass.InventoryGroupPermissionClass );
            CswNbtMetaDataObjectClassProp workUnitOCP = invGrpOC.getObjectClassProp( CswNbtObjClassInventoryGroupPermission.PropertyName.WorkUnit );

            CswNbtMetaDataObjectClass workUnitOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( NbtObjectClass.WorkUnitClass );
            CswNbtMetaDataObjectClassProp nameOCP = workUnitOC.getObjectClassProp( CswNbtObjClassWorkUnit.PropertyName.Name );

            CswNbtView workUnits = _CswNbtSchemaModTrnsctn.makeView();
            CswNbtViewRelationship parent = workUnits.AddViewRelationship( workUnitOC, false );
            workUnits.AddViewPropertyAndFilter( parent, nameOCP,
                Value: "Default Work Unit",
                FilterMode: CswNbtPropFilterSql.PropertyFilterMode.Equals );

            ICswNbtTree tree = _CswNbtSchemaModTrnsctn.getTreeFromView( workUnits, true );
            CswPrimaryKey nodeid = null;
            if( tree.getChildNodeCount() > 0 )
            {
                tree.goToNthChild( 0 );
                nodeid = tree.getNodeIdForCurrentPosition();
            }

            if( null != nodeid )
            {
                _CswNbtSchemaModTrnsctn.MetaData.SetObjectClassPropDefaultValue( workUnitOCP, nodeid.PrimaryKey, CswNbtSubField.SubFieldName.NodeID );
            }

        } //Update()
Exemplo n.º 21
0
        } // OnDisable()

        private void _toggleMaterialSupplierView(bool MLMDisabled)
        {
            CswNbtMetaDataObjectClass vendorOC    = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.VendorClass);
            CswNbtMetaDataPropertySet MaterialSet = _CswNbtResources.MetaData.getPropertySet(CswEnumNbtPropertySetName.MaterialSet);

            foreach (CswNbtMetaDataObjectClass materialOC in MaterialSet.getObjectClasses())
            {
                foreach (CswNbtMetaDataNodeType materialNT in _CswNbtResources.MetaData.getNodeTypes(materialOC.ObjectClassId))
                {
                    CswNbtMetaDataNodeTypeProp supplierNTP = materialNT.getNodeTypePropByObjectClassProp(CswNbtObjClassChemical.PropertyName.Supplier);
                    CswNbtView supplierView = _CswNbtResources.ViewSelect.restoreView(supplierNTP.ViewId);
                    supplierView.Clear();
                    CswNbtViewRelationship parent = supplierView.AddViewRelationship(vendorOC, true);
                    if (false == MLMDisabled)
                    {
                        CswNbtMetaDataObjectClassProp vendorTypeOCP = vendorOC.getObjectClassProp(CswNbtObjClassVendor.PropertyName.VendorTypeName);
                        supplierView.AddViewPropertyAndFilter(parent,
                                                              MetaDataProp: vendorTypeOCP,
                                                              Value: CswNbtObjClassVendor.VendorTypes.Corporate,
                                                              FilterMode: CswEnumNbtFilterMode.Equals);
                    }
                    supplierView.Visibility = CswEnumNbtViewVisibility.Property;
                    supplierView.ViewName   = "Supplier";
                    supplierView.save();
                }
            }
        }
Exemplo n.º 22
0
        } // runBatchOp()

        #region Private Helper Methods

        #region Helper Methods

        private CswNbtNode _getNodeFromBarcode(string barcode, CswEnumNbtObjectClass objClassType, string barcodePropertyName, bool IncludeDefaultFilters = true)
        {
            CswNbtNode returnNode = null;

            CswNbtView objClassView = new CswNbtView(_CswNbtResources);
            CswNbtMetaDataObjectClass     objClass   = _CswNbtResources.MetaData.getObjectClass(objClassType);
            CswNbtMetaDataObjectClassProp barcodeOCP = objClass.getObjectClassProp(barcodePropertyName);

            CswNbtViewRelationship parent = objClassView.AddViewRelationship(objClass, IncludeDefaultFilters);

            objClassView.AddViewPropertyAndFilter(parent,
                                                  MetaDataProp: barcodeOCP,
                                                  Value: barcode,
                                                  FilterMode: CswEnumNbtFilterMode.Equals);

            ICswNbtTree Tree = _CswNbtResources.Trees.getTreeFromView(objClassView, false, true, true);

            Tree.goToRoot();
            for (int i = 0; i < Tree.getChildNodeCount(); i++)
            {
                Tree.goToNthChild(i);
                returnNode = Tree.getNodeForCurrentPosition();
                Tree.goToParentNode();
            }

            return(returnNode);
        }
Exemplo n.º 23
0
        }//listBalanceConfigurations()



        private static CswNbtObjClassBalanceConfiguration _findConfigurationWithName( CswNbtResources NbtResources, string Name )
        {
            CswNbtObjClassBalanceConfiguration Ret = null;

            CswNbtMetaDataObjectClass BalanceConfigurationOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.BalanceConfigurationClass );
            CswNbtMetaDataObjectClassProp ConfigNameOCP = BalanceConfigurationOC.getObjectClassProp( CswNbtObjClassBalanceConfiguration.PropertyName.Name );

            CswNbtView ExistingConfigsView = new CswNbtView( NbtResources );
            ExistingConfigsView.ViewName = "Balance Configurations";
            CswNbtViewRelationship ConfigNameRel = ExistingConfigsView.AddViewRelationship( BalanceConfigurationOC, false );
            ExistingConfigsView.AddViewPropertyAndFilter( ConfigNameRel, ConfigNameOCP,
                                                           Value: Name,
                                                           FilterMode: CswEnumNbtFilterMode.Equals );
            ICswNbtTree ExistingConfigsTree = NbtResources.Trees.getTreeFromView( ExistingConfigsView, false, true, true );


            if( ExistingConfigsTree.getChildNodeCount() > 0 )
            {
                //this configuration exists, grab a reference to it.
                ExistingConfigsTree.goToNthChild( 0 );
                Ret = ExistingConfigsTree.getCurrentNode();
            }

            return Ret;
        }
Exemplo n.º 24
0
        /// <summary>
        /// Convenience function for hiding Role nodes. Entering 'cispro' for the modulename param will hide all Roels with 'cispro' in the name.
        /// </summary>
        /// <param name="hidden">True if the nodes should be hidden</param>
        /// <param name="modulename">The module of the nodes to hide</param>
        public void ToggleRoleNodes(bool hidden, string modulename)
        {
            CswNbtMetaDataObjectClass     roleOC  = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.RoleClass);
            CswNbtMetaDataObjectClassProp nameOCP = roleOC.getObjectClassProp(CswNbtObjClassRole.PropertyName.Name);
            CswNbtView             rolesView      = new CswNbtView(_CswNbtResources);
            CswNbtViewRelationship parent         = rolesView.AddViewRelationship(roleOC, false);

            rolesView.AddViewPropertyAndFilter(parent,
                                               MetaDataProp: nameOCP,
                                               Value: modulename,
                                               SubFieldName: CswNbtFieldTypeRuleText.SubFieldName.Text,
                                               FilterMode: CswEnumNbtFilterMode.Contains);

            ICswNbtTree cisproUsersTree = _CswNbtResources.Trees.getTreeFromView(rolesView, false, true, true);
            int         count           = cisproUsersTree.getChildNodeCount();

            for (int i = 0; i < count; i++)
            {
                cisproUsersTree.goToNthChild(i);
                CswNbtNode userNode = cisproUsersTree.getNodeForCurrentPosition();
                userNode.Hidden = hidden;
                userNode.postChanges(false);
                cisproUsersTree.goToParentNode();
            }
        }
        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();
        }
        /// <summary>
        /// Update logic
        /// </summary>
        public override void update()
        {
            // Set the Request Item's Size Relationship View
            CswNbtMetaDataObjectClass RequestItemOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswNbtMetaDataObjectClass.NbtObjectClass.RequestItemClass );
            CswNbtMetaDataObjectClass SizeOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswNbtMetaDataObjectClass.NbtObjectClass.SizeClass );
            CswNbtMetaDataObjectClassProp RequestItemMaterialOCP = RequestItemOC.getObjectClassProp( CswNbtObjClassRequestItem.PropertyName.Material );
            CswNbtMetaDataObjectClassProp SizeMaterialOCP = SizeOC.getObjectClassProp( CswNbtObjClassSize.PropertyName.Material );

            foreach( CswNbtMetaDataNodeType RequestItemNT in RequestItemOC.getNodeTypes() )
            {
                CswNbtMetaDataNodeTypeProp RequestItemSizeNTP = RequestItemNT.getNodeTypePropByObjectClassProp( CswNbtObjClassRequestItem.PropertyName.Size );

                CswNbtView SizeView = _CswNbtSchemaModTrnsctn.restoreView( RequestItemSizeNTP.ViewId );
                SizeView.Root.ChildRelationships.Clear();

                CswNbtViewRelationship RequestItemViewRel = SizeView.AddViewRelationship( RequestItemOC, false );
                CswNbtViewRelationship MaterialViewRel = SizeView.AddViewRelationship( RequestItemViewRel, NbtViewPropOwnerType.First, RequestItemMaterialOCP, true );
                CswNbtViewRelationship SizeViewRel = SizeView.AddViewRelationship( MaterialViewRel, NbtViewPropOwnerType.Second, SizeMaterialOCP, true );

                //Case 27438 
                CswNbtMetaDataObjectClass SizeOc = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswNbtMetaDataObjectClass.NbtObjectClass.SizeClass );
                CswNbtMetaDataNodeType SizeNt = SizeOc.FirstNodeType;
                CswNbtMetaDataNodeTypeProp DispensableNtp = SizeNt.getNodeTypePropByObjectClassProp( CswNbtObjClassSize.PropertyName.Dispensable );
                SizeView.AddViewPropertyAndFilter(
                        ParentViewRelationship: SizeViewRel,
                        MetaDataProp: DispensableNtp,
                        Value: Tristate.False.ToString(),
                        SubFieldName: CswNbtSubField.SubFieldName.Checked,
                        FilterMode: CswNbtPropFilterSql.PropertyFilterMode.NotEquals
                        );

                SizeView.save();
            }

        }//Update()
Exemplo n.º 27
0
        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()
Exemplo n.º 28
0
        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 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();
                 } );
         }
     }
 }
Exemplo n.º 30
0
        private void _updateDocumentsView( CswNbtMetaDataNodeType MaterialNT )
        {
            CswNbtMetaDataNodeTypeProp DocumentsNTP = MaterialNT.getNodeTypeProp( "Documents" );
            if( null != DocumentsNTP )
            {
                CswNbtMetaDataNodeType DocumentNT = _CswNbtSchemaModTrnsctn.MetaData.getNodeType( "Material Document" );
                if( null != DocumentNT )
                {
                    CswNbtMetaDataNodeTypeProp MatOCP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.Owner );
                    CswNbtMetaDataNodeTypeProp AcquiredDateNTP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.AcquiredDate );
                    CswNbtMetaDataNodeTypeProp ExpDateNTP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.ExpirationDate );
                    CswNbtMetaDataNodeTypeProp FileNTP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.File );
                    CswNbtMetaDataNodeTypeProp LinkNTP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.Link );
                    CswNbtMetaDataNodeTypeProp ArchivedNTP = DocumentNT.getNodeTypePropByObjectClassProp( CswNbtObjClassDocument.PropertyName.Archived );

                    CswNbtView DocumentsView = _CswNbtSchemaModTrnsctn.ViewSelect.restoreView( DocumentsNTP.ViewId );
                    DocumentsView.Root.ChildRelationships.Clear();
                    CswNbtViewRelationship RootRel = DocumentsView.AddViewRelationship( MaterialPS, false );
                    CswNbtViewRelationship MatRel = DocumentsView.AddViewRelationship( RootRel, CswEnumNbtViewPropOwnerType.Second, MatOCP, true );
                    DocumentsView.AddViewPropertyAndFilter( MatRel, ArchivedNTP, CswEnumTristate.False.ToString(),
                                                             FilterMode: CswEnumNbtFilterMode.Equals,
                                                             ShowAtRuntime: true,
                                                             ShowInGrid: false );
                    DocumentsView.AddViewProperty( MatRel, AcquiredDateNTP, 1 );
                    DocumentsView.AddViewProperty( MatRel, ExpDateNTP, 2 );
                    DocumentsView.AddViewProperty( MatRel, FileNTP, 3 );
                    DocumentsView.AddViewProperty( MatRel, LinkNTP, 4 );
                    DocumentsView.save();
                }
            }
        }