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);
        }
        public override void update()
        {
            CswNbtView Ret = _CswNbtSchemaModTrnsctn.makeSafeView( "Pending Requests", NbtViewVisibility.Global );

            Ret.Category = "Requests";
            Ret.ViewMode = NbtViewRenderingMode.Grid;

            foreach( NbtObjectClass Member in CswNbtPropertySetRequestItem.Members() )
            {
                CswNbtMetaDataObjectClass MemberOc = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( Member );
                CswNbtViewRelationship RequestItemRel = Ret.AddViewRelationship( MemberOc, IncludeDefaultFilters: false );

                Ret.AddViewPropertyAndFilter( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.Status ), CswNbtPropertySetRequestItem.Statuses.Pending, ShowInGrid: false );
                if( MemberOc.ObjectClass == NbtObjectClass.RequestMaterialDispenseClass )
                {
                    Ret.AddViewPropertyAndFilter( RequestItemRel, MemberOc.getObjectClassProp( CswNbtObjClassRequestMaterialDispense.PropertyName.IsFavorite ),
                                                  FilterMode: CswNbtPropFilterSql.PropertyFilterMode.NotEquals,
                                                  Value: CswNbtNodePropLogical.toLogicalGestalt( Tristate.True ), ShowInGrid: false );
                    Ret.AddViewPropertyAndFilter( RequestItemRel, MemberOc.getObjectClassProp( CswNbtObjClassRequestMaterialDispense.PropertyName.IsRecurring ), Tristate.False.ToString(), ShowInGrid: false );
                }
                CswNbtViewProperty Vp2 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.Description ) );
                Vp2.Width = 50;
                Vp2.Order = 2;
                CswNbtViewProperty Vp3 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.NeededBy ) );
                Vp3.Order = 3;
                CswNbtViewProperty Vp4 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.Location ) );
                Vp4.Width = 40;
                Vp4.Order = 4;
                CswNbtViewProperty Vp5 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.InventoryGroup ) );
                Vp5.Width = 20;
                Vp5.Order = 5;
                CswNbtViewProperty Vp6 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.RequestedFor ) );
                Vp6.Order = 6;
                CswNbtViewProperty Vp7 = Ret.AddViewProperty( RequestItemRel, MemberOc.getObjectClassProp( CswNbtPropertySetRequestItem.PropertyName.Requestor ) );
                Vp7.Order = 7;
            }

            Ret.save();

        } //Update()
Пример #3
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);
        }