get_user_data {openappr} | R Documentation |
Get user data from OpenAppBuilder
Description
Retrieves data from the app_users
table in OpenAppBuilder, and efficiently converts the contact_fields
column from JSON format to a data frame.
If filter
is TRUE
, the function further filters the data to include only rows where the specified filter_variable
column matches filter_variable_value
.
Usage
get_user_data(
site = get_app_connection(),
filter = FALSE,
filter_variable = NULL,
filter_variable_value = NULL,
date_from = NULL,
date_to = NULL,
format_date = "%Y-%m-%d",
tzone_date = "UTC"
)
Arguments
site |
The name of the PostgreSQL database connection (using |
filter |
A logical value indicating whether to filter data (defaults to |
filter_variable |
A character string representing the name of the column to filter if |
filter_variable_value |
A character string representing the value of the |
date_from |
An optional character string representing the date from which to retrieve data. |
date_to |
An optional character string representing the date to which to retrieve data. |
format_date |
A character string specifying the format of the date strings (defaults to "%Y-%m-%d"). |
tzone_date |
A character string specifying the time zone for the date strings (defaults to "UTC").
System-specific (see |
Value
A data frame containing user data from the PostgreSQL database, with the contact_fields
column parsed into separate columns.
Examples
# First we need to set an app connection
set_app_connection(
dbname = "vmc",
host = "apps-server.idems.international",
port = 5432,
user = "vmc",
password = "LSQkyYg5KzL747"
)
# Retrieve all data from the 'app_users' table
data_all_users <- get_user_data()
# Retrieve data from the 'app_users' table where 'app_user_id' is
# a specified ID.
valid_ids <- c("3e68fcda-d4cd-400e-8b12-6ddfabced348",
"223925c7-443a-411c-aa2a-a394f991dd52")
data_filtered_users <- get_user_data(
filter = TRUE,
filter_variable = "app_user_id",
filter_variable_value = valid_ids
)
# Retrieve user data within a specific date range
date_filtered_data <- get_user_data(
date_from = "2023-01-01",
date_to = "2024-08-18"
)