In order for an Extract Dataraptor to execute successfully, it is necessary to include at least one filter. Filters are used to specify the criteria for selecting the data to be extracted from the source system. Without a filter, the Extract Dataraptor would extract all available data, which could result in long processing times and large data sets that may not be useful. Therefore, it is important to define appropriate filters to narrow down the data set to only the information that is required for your specific use case.
To apply filters in an Extract Dataraptor, follow these steps:
-
- Open the Extract Dataraptor in the Vlocity DataRaptor Designer.
- Select the “Filters” tab.
- Click on the “Add Filter” button to create a new filter.
- Select the field you want to filter by from the dropdown list.
- Choose the comparison operator (such as “equals“, “greater than”, “less than”, etc.).
- Enter the filter value (e.g., a specific date or text string).
- Repeat steps 3-6 to add additional filters as needed.
- Click “Save” to apply the filters to the Extract Dataraptor.
If you want to fetch all records using filters in Vlocity, you can use either of the following basic filters:
-
- “Id = Id”: This filter condition will always be true, so all records will be included in the extracted data.
- “Id <> ‘$Vlocity.NULL‘”: This filter condition will exclude any records that have a null value for the Id field. This is useful if you want to ensure that only fully populated records are included in the extraction.
It’s important to note that using these filters may result in a large amount of data being extracted, which could impact performance and processing times. Therefore, it’s recommended to use filters that narrow down the data set to only the information that is required for your specific use case, whenever possible.
There are two ways to pass values for filters in Vlocity:
-
- Hardcoded values: You can directly specify the filter value in the filter definition. For example, if you want to filter records by a specific date range, you can specify the start and end dates as hardcoded values in the filter.
- Dynamic values: You can pass values for filters dynamically at runtime using variables. This allows you to customize the filter values based on user input or other factors. For example, you might use a variable to set the filter value based on the current date or the user’s location.
When passing a hardcoded value for a filter in Vlocity, it’s important to ensure that the value is formatted correctly. If the value is a string, you should enclose it in double quotes to indicate that it’s a string literal. For example, if you want to filter records by a specific account name, you might use a filter like this:
Account.Name = "Acme Corporation"
In this example, “Acme Corporation” is a string literal, so it’s enclosed in double quotes. If the value is a number, you don’t need to enclose it in quotes. For example, if you want to filter records by a specific order total, you might use a filter like this:
Order.Total > 1000
In this example, 1000 is a numeric value, so it’s not enclosed in quotes.
By ensuring that your hardcoded values are formatted correctly, you can avoid errors and ensure that your filters are working as expected.
In Vlocity, a search variable is a type of variable that can be used to pass values from various sources, such as Omniscripts, Integration Procedures, or Flexcards. The search variable is designed to hold a single value, which can be used to filter data or perform other operations.
To use a search variable, you must first define it in the appropriate context. For example, if you want to use a search variable in an Omniscript, you would define the variable in the Omniscript definition. You can then pass a value to the search variable from the Omniscript, either by prompting the user to enter a value or by passing a value dynamically based on other factors.
Similarly, if you want to use a search variable in an Integration Procedure or Flexcard, you would define the variable in the appropriate context and pass a value to it from the Integration Procedure or Flexcard. This allows you to reuse the same search variable across multiple components or operations, providing a consistent and flexible way to pass values between different parts of the Vlocity application.
By using search variables in this way, you can create a more flexible and reusable application that can adapt to changing requirements and user needs.
Both methods have their own advantages and disadvantages, and the choice depends on the specific use case. Hardcoded values are simpler to implement and may be more appropriate for fixed or static filters, while dynamic values offer more flexibility and can be used for filters that need to be customized based on user input or other factors.
In addition to the basic filters, Vlocity also provides several additional filter settings that can be used to further refine and customize the data extraction process. These include:
-
- Compound filters: These filters allow you to combine multiple filter conditions using logical operators such as AND, OR, and NOT. For example, you might use a compound filter to extract records that meet several criteria, such as a specific date range and a certain record type.
- Custom filters: Custom filters allow you to define more complex filter conditions using custom logic. This can be useful if you need to perform more advanced filtering operations that are not supported by the basic filters.
- Order by: The order by setting allows you to specify the order in which the extracted data should be sorted. This can be useful if you want to ensure that the data is presented in a specific order, such as sorting by date or alphabetical order.
- Limit: The limit setting allows you to limit the number of records that are extracted. This can be useful if you only need to extract a subset of the available data, or if you need to limit the size of the extracted data set for performance reasons.
By using these additional filter settings, you can create more complex and customized data extraction processes that meet your specific requirements. However, it’s important to carefully consider the impact of these settings on performance and processing times, and to use them only when necessary to avoid unnecessary processing overhead.
I hope this information is helpful for you.