/// <summary> /// Hide props that should not be present on Request Items that are marked as Recurring /// Make props that should not be edited on Recurring Request Items readonly /// </summary> protected void setRecurringPropVisibility(CswNbtNodeProp Prop) { switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Status: case CswNbtObjClassRequestItem.PropertyName.ExternalOrderNumber: case CswNbtObjClassRequestItem.PropertyName.ItemNumber: case CswNbtObjClassRequestItem.PropertyName.AssignedTo: case CswNbtObjClassRequestItem.PropertyName.NeededBy: case CswNbtObjClassRequestItem.PropertyName.Priority: case CswNbtObjClassRequestItem.PropertyName.TotalDispensed: case CswNbtObjClassRequestItem.PropertyName.TotalMoved: case CswNbtObjClassRequestItem.PropertyName.Comments: case CswNbtObjClassRequestItem.PropertyName.FulfillmentHistory: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotToDispense: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotsReceived: case CswNbtObjClassRequestItem.PropertyName.GoodsReceived: Prop.setHidden(true, SaveToDb: false); break; case CswNbtObjClassRequestItem.PropertyName.InventoryGroup: case CswNbtObjClassRequestItem.PropertyName.Location: case CswNbtObjClassRequestItem.PropertyName.Quantity: case CswNbtObjClassRequestItem.PropertyName.Size: case CswNbtObjClassRequestItem.PropertyName.SizeCount: Prop.setReadOnly(true, SaveToDb: false); break; } }
public override void setPropUIVisibility(CswNbtNodeProp Prop) { switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Location: case CswNbtObjClassRequestItem.PropertyName.ExternalOrderNumber: case CswNbtObjClassRequestItem.PropertyName.EnterprisePart: case CswNbtObjClassRequestItem.PropertyName.Material: case CswNbtObjClassRequestItem.PropertyName.Quantity: case CswNbtObjClassRequestItem.PropertyName.TotalDispensed: case CswNbtObjClassRequestItem.PropertyName.Size: case CswNbtObjClassRequestItem.PropertyName.SizeCount: case CswNbtObjClassRequestItem.PropertyName.TotalMoved: case CswNbtObjClassRequestItem.PropertyName.NewMaterialType: case CswNbtObjClassRequestItem.PropertyName.NewMaterialTradename: case CswNbtObjClassRequestItem.PropertyName.NewMaterialSupplier: case CswNbtObjClassRequestItem.PropertyName.NewMaterialPartNo: case CswNbtObjClassRequestItem.PropertyName.GoodsReceived: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotToDispense: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotsReceived: Prop.setHidden(true, SaveToDb: false); break; case CswNbtObjClassRequestItem.PropertyName.InventoryGroup: Prop.setReadOnly(true, SaveToDb: false); break; } }
public override void setPropUIVisibility(CswNbtNodeProp Prop) { bool IsVisible = true; switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Container: case CswNbtObjClassRequestItem.PropertyName.EnterprisePart: case CswNbtObjClassRequestItem.PropertyName.Size: case CswNbtObjClassRequestItem.PropertyName.SizeCount: case CswNbtObjClassRequestItem.PropertyName.NewMaterialType: case CswNbtObjClassRequestItem.PropertyName.NewMaterialTradename: case CswNbtObjClassRequestItem.PropertyName.NewMaterialSupplier: case CswNbtObjClassRequestItem.PropertyName.NewMaterialPartNo: Prop.setHidden(true, SaveToDb: false); IsVisible = false; break; case CswNbtObjClassRequestItem.PropertyName.Material: Prop.setReadOnly(true, SaveToDb: false); break; } if (IsVisible && _RequestItem.IsRecurring.Checked == CswEnumTristate.True) { setRecurringPropVisibility(Prop); } }
} //beforeDeleteNode() private void hideButtonProp(CswNbtNodeProp ButtonProp) { if (false == _CswNbtResources.Permit.canAnyTab(CswEnumNbtNodeTypePermission.Edit, NodeType) || Node.Locked) { ButtonProp.setHidden(value: false, SaveToDb: Node.Locked); } else if (ButtonProp.PropName == PropertyName.SetPreferred && (Status.Value == CswEnumNbtInspectionStatus.Overdue || Status.Value == CswEnumNbtInspectionStatus.ActionRequired || Status.Value == CswEnumNbtInspectionStatus.Pending)) { bool IsVisible = (Status.Value == CswEnumNbtInspectionStatus.Pending || Status.Value == CswEnumNbtInspectionStatus.Overdue) && false == _InspectionState.AllAnswered; ButtonProp.setHidden(value: false == IsVisible, SaveToDb: Node.Locked); } }
public override void setPropUIVisibility(CswNbtNodeProp Prop) { switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Container: case CswNbtObjClassRequestItem.PropertyName.EnterprisePart: case CswNbtObjClassRequestItem.PropertyName.Size: case CswNbtObjClassRequestItem.PropertyName.SizeCount: case CswNbtObjClassRequestItem.PropertyName.TotalMoved: Prop.setHidden(true, SaveToDb: false); break; //This is a special case that lets the Request-fulfiller choose an existing Material for MaterialCreate Request Items. //We may consider an alternative way to choose said Material in the future. //If and when that day comes, remove this (and other related) logic and make Material ServerManaged. case CswNbtObjClassRequestItem.PropertyName.Material: Prop.setHidden(_RequestItem.Status.Value == CswNbtObjClassRequestItem.Statuses.Pending, SaveToDb: false); break; } }
public override void setPropUIVisibility(CswNbtNodeProp Prop) { bool IsVisible = true; switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Container: case CswNbtObjClassRequestItem.PropertyName.EnterprisePart: case CswNbtObjClassRequestItem.PropertyName.Quantity: case CswNbtObjClassRequestItem.PropertyName.NewMaterialType: case CswNbtObjClassRequestItem.PropertyName.NewMaterialTradename: case CswNbtObjClassRequestItem.PropertyName.NewMaterialSupplier: case CswNbtObjClassRequestItem.PropertyName.NewMaterialPartNo: Prop.setHidden(true, SaveToDb: false); IsVisible = false; break; case CswNbtObjClassRequestItem.PropertyName.Material: Prop.setReadOnly(true, SaveToDb: false); break; case CswNbtObjClassRequestItem.PropertyName.Size: //Case 31302 - Filter Size options to requested Material CswNbtMetaDataObjectClass SizeOc = _CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.SizeClass); CswNbtMetaDataObjectClassProp SizeMaterialOcp = SizeOc.getObjectClassProp(CswNbtObjClassSize.PropertyName.Material); CswNbtView SizeView = _CswNbtResources.ViewSelect.restoreView(_RequestItem.Size.View.ViewId); SizeView.Root.ChildRelationships.Clear(); CswNbtViewRelationship SizeVr = SizeView.AddViewRelationship(SizeOc, false); SizeView.AddViewPropertyAndFilter(SizeVr, SizeMaterialOcp, _RequestItem.Material.RelatedNodeId.PrimaryKey.ToString(), CswEnumNbtSubFieldName.NodeID); SizeView.AddViewPropertyAndFilter(SizeVr, SizeOc.getObjectClassProp(CswNbtObjClassSize.PropertyName.Dispensable), "false", FilterMode: CswEnumNbtFilterMode.NotEquals); SizeView.AddViewPropertyAndFilter(SizeVr, SizeOc.getObjectClassProp(CswNbtObjClassSize.PropertyName.InitialQuantity), FilterMode: CswEnumNbtFilterMode.NotNull, SubFieldName: CswEnumNbtSubFieldName.Value); SizeView.AddViewPropertyAndFilter(SizeVr, SizeOc.getObjectClassProp(CswNbtObjClassSize.PropertyName.UnitCount), FilterMode: CswEnumNbtFilterMode.NotNull); SizeView.save(); _RequestItem.Size.OverrideView(SizeView); break; } if (IsVisible && _RequestItem.IsRecurring.Checked == CswEnumTristate.True) { setRecurringPropVisibility(Prop); } }
/// <summary> /// Hide props that should not be present on Pending Request Items; /// Make props that should not be edited once Request Item has been submitted readonly /// </summary> protected void setPropVisibilityBasedOnPendingStatus(CswNbtNodeProp Prop) { if (_RequestItem.Status.Value == CswNbtObjClassRequestItem.Statuses.Pending) { switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.Requestor: case CswNbtObjClassRequestItem.PropertyName.Priority: case CswNbtObjClassRequestItem.PropertyName.TotalDispensed: case CswNbtObjClassRequestItem.PropertyName.TotalMoved: case CswNbtObjClassRequestItem.PropertyName.FulfillmentHistory: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotToDispense: case CswNbtObjClassRequestItem.PropertyName.ReceiptLotsReceived: case CswNbtObjClassRequestItem.PropertyName.GoodsReceived: Prop.setHidden(true, SaveToDb: false); break; } } else { switch (Prop.PropName) { case CswNbtObjClassRequestItem.PropertyName.InventoryGroup: case CswNbtObjClassRequestItem.PropertyName.Location: case CswNbtObjClassRequestItem.PropertyName.Requestor: case CswNbtObjClassRequestItem.PropertyName.Quantity: case CswNbtObjClassRequestItem.PropertyName.Size: case CswNbtObjClassRequestItem.PropertyName.SizeCount: case CswNbtObjClassRequestItem.PropertyName.NewMaterialType: case CswNbtObjClassRequestItem.PropertyName.NewMaterialTradename: case CswNbtObjClassRequestItem.PropertyName.NewMaterialSupplier: case CswNbtObjClassRequestItem.PropertyName.NewMaterialPartNo: Prop.setReadOnly(true, SaveToDb: false); break; } } }