public PXEventSubscriberAttribute[] GetFieldAttributes(int ordinal, int iAttribute)
 {
     PXEventSubscriberAttribute[] definedAttrs = fields[iAttribute].GetAttributes(null);
     PXEventSubscriberAttribute[] result       = new PXEventSubscriberAttribute[definedAttrs.Length + 1];
     result[0] = new ExtraFieldAttribute(ordinal, iAttribute, AttributeIdByIndex[iAttribute]);
     Array.Copy(definedAttrs, 0, result, 1, definedAttrs.Length);
     return(result);
 }
        internal PXEventSubscriberAttribute[] GetAttributes(String graphName)
        {
            var    customGraphRule = attributes.FirstOrDefault(a => a.GraphName.Equals(graphName, StringComparison.OrdinalIgnoreCase));
            String myAttributes    = customGraphRule.Attributes ?? DefaultAttributes;
            // TODO: Parse string with attributes
            PXEventSubscriberAttribute sa = GetFailSafeAttribute();

            return(sa == null ? new PXEventSubscriberAttribute[] {} : new PXEventSubscriberAttribute[] { sa });
        }