SK SKYVVA Documentation

1. What is Raw basket and how to use it?

Raw Basket Control Board to Process the Raw business data inside the file

The 'Raw Data Basket' is specifically designed to store raw business data in a file and is associated with a basket called the 'Raw Basket'. The raw basket contains unprocessed and pure business data in its original format. It serves as a solution for users who are uncertain about parsing the raw business data into the Skyvva message format. By utilizing the raw basket, users can avoid the complexities of parsing and transforming the data themselves. It enables users to store and work with their raw business data without the need for prior conversion or processing. However, it's important to note that hitting limits in Salesforce is a possibility when dealing with large raw data. Performing parsing and transformation logic within Apex can lead to CPU limitations, making it difficult to process big-size data. When working with the Raw Basket, it's essential to consider the nature of the request. For large-size requests, the Raw Basket may not be suitable. In such cases, it is recommended to utilize tools like Skyvva Batch, Bulk, Agent, and Bulk Data Loader.

Case1: How to Processing the Raw Basket Control Board using Scheduled Apex

Expectation:

A workflow for processing raw basket records using two methods: manual processing and a scheduler. Here's a breakdown of the steps involved in processing these raw baskets:

Manual Processing: Users can manually select the raw basket records they want to process.

Users can manually select specific raw basket records they wish to process.

When the scheduled time arrives, the scheduler automatically processes all the raw baskets that have the 'Init' status.

Once processed, the status of these raw baskets likely changes from 'Init' to a different status, indicating completion or progression in the workflow.

The Raw Basket Control Board is the interface or platform where users can monitor the status of raw baskets.

Overall, this process offers both manual control (for specific selections) and automated handling (via the scheduler) to efficiently manage the processing of raw basket records.

Required step:

Use SKYVVA API V3/V4 Integrate

[su_box title="Result:" box_color="#2a8af0" title_color="#000000"]After clicking 'Send', there is no response body, and the Status Code is 201 Created.[/su_box]

[su_box title="Note" box_color="#2a8af0" title_color="#000000"]Mode is “Asynchronous”[/su_box]

[su_box title="Result:" box_color="#2a8af0" title_color="#000000"]After clicking 'Send', there is no response body, and the Status Code is 201 Created.[/su_box]

[su_box title="Note" box_color="#2a8af0" title_color="#000000"]The API Key you have set on Postman is based on the Adapter Webhook.[/su_box]

Manually Processing

Select Baskets -> click Process button -> you can see pop-up screen Process Basket -> click Yes

[su_box title="Result: " box_color="#2a8af0" title_color="#000000"]When you click the 'Process' button after selecting the raw baskets, they will be processed. Once the raw baskets are completed, they will be moved to the Basket Histories section.[/su_box]

User push 30 New Basket

[su_box title="Result:" box_color="#2a8af0" title_color="#000000"]When the scheduler is ready to run at the set time, it will process all raw baskets with the status 'Init' in the New Baskets section. Once the raw baskets are completed, they will be moved to the Basket Histories section.[/su_box]

Scheduler Processing:

[su_box title="Note:" box_color="#2a8af0" title_color="#000000"]We have the feature called 'Don't Process the Interface in Parallel' in the 'Batch Processing Runtime Behavior' field, located in the 'Batch Setting' section. This feature is used to process baskets per Job, and you can set the 'Query Limit for Batch & Bulk Processing' to control the number of baskets processed within the Interface Group. If you don't set a limit on the Interface Group, it will process all available baskets per job.[/su_box]

Case2: How to Processing the Raw Basket Control Board using Event Trigger Apex

Expectation

The sequence of events to follow these steps:

This flow outlines the lifecycle of a basket from its initial creation to its processing and eventual movement to the 'Basket Histories' section. The 'Event Trigger Apex' and the SKYVVA Trigger handle the execution and processing steps, and the default user 'Automated Process manages the event processing.

Required step:

Push Records from Postman using API V3/V4 Integrate with Mode Asynchronous

  1. Use Webhook by Public Site and link Adapter on the Interface

[su_box title="Note" box_color="#2a8af0" title_color="#000000"] (This configuration Batch Size for Platform Event Trigger)[/su_box]

Example of processing Event Basket:

We can set configure (PlatformEventSubscriberConfig) this setting is not mandatory because the batch size of the message could be set by the number of records and specify the ‘Automate Process’ user. By default, the trigger runs as the “Automated Process” system user with a batch size of 2,000 event messages.

You can configure it anyway by following the salesforce document link: –  Configure the User and Batch Size for Your Platform Event Trigger with PlatformEventSubscriberConfig

[su_box title="Example with Rest API using Postman:" box_color="#2a8af0" title_color="#000000"]URL: ‘URL_Salesforce_Classic’/services/data/v57.0/tooling/sobjects/PlatformEventSubscriberConfig

Method: POST

Body:

{

"BatchSize": "5",

"DeveloperName":"trgEventSubscriberConfig",

"MasterLabel":"trgEventSubscriberConfig",

"PlatformEventConsumerId":"01q5t0000002cIiAAI",

"UserId":"0055t000004C9jIAAS"

}[/su_box]

Apex Trigger ID:

*Select id, Name from Apextrigger*

Query the Configuration PlatformEventSubscriberConfig:

*Select id, DeveloperName, MasterLabel, PlatformEventConsumerId, PlatformEventConsumer.Name, UserId, User.Name, BatchSize from PlatformEventSubscriberConfig*

Summary

Now users understand the purpose of a raw basket and utilize SKYVVA tools to create, populate, process, and transmit data within it, users can facilitate seamless integration between disparate systems or applications, ensuring efficient data flow and manipulation.

Open this article in the interactive viewer →