Professional Documents
Culture Documents
Get Paged
Get Paged
Get Paged
check_logged_in=1
Workday Community
Search
Learn
Products
Collaborate
Feature Release
Get Help
Breadcrumb
1. Home
2. Parallel Paged Get Component
Posted Oct 8, 2019Updated Apr 20, 2022Retirement date: May 11, 2024Read 1288 times
Product Integrations
The parallel paged get component is used to call Workday's SOAP API's that support
paging. The component will call each page in sequence and can automatically aggregate
all the response pages together.
<wd:Response_Filter>
<wd:As_Of_Effective_Date>[Current Date]</wd:As_Of_Effective_Date>
<wd:Page>1</wd:Page>
<wd:Count>100</wd:Count>
</wd:Response_Filter>
The Count property allows you to specify how many records to return on each page. The
Page property specifies which page of data to return. When using the paged get
component, you do not need to make multiple calls to retrieve each page. The component
will do it for you. Some APIs will cache several pages at once when retrieving the first
page. This will only happen when each page request is identical. Therefore, because the
wd:As_Of_Entry_DateTime property defaults to the current moment, it will have a
different value for each page. You must specify a time for the entry moment field in your
initial request to take advantage of the caching.
Aggregation
The following properties can be set to allow the pages to be automatically aggregated :
Performing aggregation in this way works well for small to medium message sizes. The
paged get component will use either memory or file backed managed data to keep track
of the aggregation. This is all controlled automatically by the component.
Using local-in
However, for maximum efficiency, the paged get component can be configured to call a
local-in for each page as well as a local-in to control the aggregation.
Variables
When using multi-threading in Studio, each thread is passed a copy of the mediation (i.e.
the current message plus all variables and properties). Because the thread is running in
its own space, it can read from its copy of variables and properties but it cannot write to
them. The exception is any variable whose name starts with 'c2p' (child 2 parent). These
variables can be written to and then read by the aggregation or calling thread.
Therefore, in order to pass the output of the paging local-in to the aggregation local-in,
the output of the local-in must be written to a 'c2p' variable.
Sample Code
In the clar attached to this page, a call is made to Get_Workers. A paged get component
is used to process each page in a local-in, "HandleOnePage".
The HandleOnePage local-in transforms each page of the response and sets the output
to a variable called "c2p.PageFileOutbound".
The aggregation endpoint :
The aggregation is running in its own thread. In order to pass back data from this thread
to the main calling thread, again a c2p variable is needed.
When control is passed back from the paged get component, a store step is used to write
a file from the c2p.agg.message variable. Obviously, it will depend on the use case, but it
may be more efficient to process the aggregated file after the aggregator. The c2p
variable is only needed if processing is needed from the main assembly thread.
Attachments
Get_Parallel_Page_Demo_2.clar
Get_Parallel_Page_Demo_2
.clar
Subscriptions
Privacy
|
Legal
|
Cookie Preferences
|
Contact Us
|
Workday Careers
|
Community Guidelines
|