Official Content

The procedural way of loading an SDT (like the one needed in the TabbedView Web Component) is:

Event Start
    ...
    &Tabs = new()
    &TabsItem = new()
    &TabsItem.Code = 'General'
    &TabsItem.Description = 'General info'
    &TabsItem.Link = link(ViewCustomer, CustomerId, 'General'
    &TabsItem.WebComponent = create(CustomerGeneral, CustomerId)
    &Tabs.add(&TabsItem)
    &TabsItem = new()
    &TabsItem.Code = 'Invoices'
    &TabsItem.Description = 'Invoices'
    &TabsItem.Link = link(ViewCustomer, CustomerId, 'Invoices'
    &TabsItem.WebComponent = create(CustomerInvoices, CustomerId)
    &Tabs.add(&TabsItem)
    ...
    TabWC.Object = Create(TabbedView, &Tabs)
EndEvent

Using Data Providers, the declarative way is:

LoadCustomerTabs
Tabs
{ 
   TabOptionsItem
   {
      Code           = 'General'
      Description    = 'General info'
      Link           = link(ViewCustomer, CustomerId, 'General'
      WebComponent   = create(CustomerGeneral, CustomerId)
   } 
   TabOptionsItem
   {
      Code           = 'Invoices'
      Description    = 'Invoices'
      Link           = link(ViewCustomer, CustomerId, 'Invoices'
      WebComponent   = create(CustomerInvoices, CustomerId)
   }
} 

So the Event Start becomes:

Event Start
   &Tabs = LoadCustomerTabs()
   TabWC.Object = Create(TabbedView, &Tabs)
Endevent





Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant