Posted: 20 Mar 2019 13:35 EDT Last activity: 20 Mar 2019 15:44 EDT
Extending components in Pega Robotics
I'm trying to extend the DiagnosticsLog component from Pega Robotics Advanced. I've added the DiagnosticsLog component to my global container and selected "Create Type Extension" which created the extension. I can add methods to the extension and they show up as methods on the component that I can use in my automations. What I need to do is access the properties and existing methods on the diagnosticsLog (e.g Log method and Category property). I can't get to work from the extension. Using the Object Browser and looking at the OpenSpan.ExpressTranslators.ExpressExtensionBase there are two properties; Control and NativeControl that I should have access too. Reading some documentation I found NativeControl may not be available since this is not an extension of an Adapter control but the document says Control should always be available (see below).
Creating UI Connectors
All extensions have a Control property. Use this property to access the extended control. Additionally, extensions associated with adapter controls have a NativeControl property. Use this property to operate against the associated native control.
When I try to use the Control property I get a compile error "The name 'Control' does not exist in the current context".
UI Connectors and UI Extensions only support dotNet and Java controls on an adapter. While the option to add a "Type Extension" to your project is available almost universally... it really doesn't work for anything other than the supported controls.
So... you'd have to go the painful route of creating your own module and subclassing the DiagnosticLog class from the OpenSpan.Controls.dll. Then you could access those properties, etc, etc.