private bool _canViewProp(int NodeTypePropId, CswPrimaryKey PermissionGroupId)
        {
            CswNbtMetaDataNodeTypeProp NTProp = _CswNbtResources.MetaData.getNodeTypeProp(NodeTypePropId);

            // Must have permission to at least one tab where this property appears
            Dictionary <Int32, CswNbtMetaDataNodeTypeLayoutMgr.NodeTypeLayout> EditLayouts = NTProp.getEditLayouts();
            bool canView = EditLayouts.Values.Aggregate(false,
                                                        (current, EditLayout) => current || _CswNbtResources.Permit.canTab(
                                                            CswEnumNbtNodeTypePermission.View,
                                                            NTProp.getNodeType(),
                                                            _CswNbtResources.MetaData.getNodeTypeTab(EditLayout.TabId)));

            #region Container Request Button Inventory Group Permission

            if (canView)
            {
                CswNbtMetaDataObjectClass ContainerClass = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ContainerClass);
                if (null != ContainerClass)
                {
                    CswNbtMetaDataObjectClassProp RequestProp = _CswNbtResources.MetaData.getObjectClassProp(ContainerClass.ObjectClassId, CswNbtObjClassContainer.PropertyName.Request);
                    if (NTProp.ObjectClassPropId == RequestProp.PropId)
                    {
                        if (_CswNbtResources.Modules.IsModuleEnabled(CswEnumNbtModuleName.Requesting))
                        {
                            canView = CswNbtObjClassContainer.canContainer(_CswNbtResources, _CswNbtResources.Actions[CswEnumNbtActionName.Submit_Request], PermissionGroupId);
                        }
                        else
                        {
                            canView = false; // case 31851
                        }
                    }
                }
            }

            #endregion

            #region Material Receive Button View Permission

            if (canView)
            {
                CswNbtMetaDataObjectClass MaterialClass = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.ChemicalClass);
                if (null != MaterialClass)
                {
                    CswNbtMetaDataObjectClassProp RequestProp = _CswNbtResources.MetaData.getObjectClassProp(MaterialClass.ObjectClassId, CswNbtPropertySetMaterial.PropertyName.Receive);
                    if (NTProp.ObjectClassPropId == RequestProp.PropId)
                    {
                        canView = _CswNbtResources.Permit.can(CswEnumNbtActionName.Receiving);
                    }
                }
            }

            #endregion

            return(canView);
        }