public virtual void SubscribeForSourceSpecificationItemImpl(PXCache sender, HashSet <PXCache> subscribedCaches,
                                                                    CalendarOrganizationIDProvider.SourceSpecificationItem sourceSpecification)
        {
            if (!sender.Graph.IsImport && !sender.Graph.IsContractBasedAPI)
            {
                sender.Graph.RowUpdating.AddHandler(sender.GetItemType(), RowUpdating);
            }

            sender.Graph.RowUpdated.AddHandler(sender.GetItemType(), RowUpdated);
        }
        public override void SubscribeForSourceSpecificationItemImpl(PXCache sender, HashSet <PXCache> subscribedCaches,
                                                                     CalendarOrganizationIDProvider.SourceSpecificationItem sourceSpecification)
        {
            base.SubscribeForSourceSpecificationItemImpl(sender, subscribedCaches, sourceSpecification);

            if (MasterFinPeriodIDType != null)
            {
                sender.Graph.RowInserted.AddHandler(sender.GetItemType(), RowInserted);
            }
        }
        public virtual void SubscribeForSourceSpecificationItem(PXCache sender, HashSet <PXCache> subscribedCaches, CalendarOrganizationIDProvider.SourceSpecificationItem sourceSpecification)
        {
            if (sourceSpecification.IsAnySourceSpecified)
            {
                if (!subscribedCaches.Contains(sender))
                {
                    SubscribeForSourceSpecificationItemImpl(sender, subscribedCaches, sourceSpecification);

                    subscribedCaches.Add(sender);
                }
            }
        }