Usage
entity_changes(
pid = get_default_pid(),
did = "",
eid = "",
url = get_default_url(),
un = get_default_un(),
pw = get_default_pw(),
retries = get_retries(),
odkc_version = get_default_odkc_version(),
orders = get_default_orders(),
tz = get_default_tz()
)
Arguments
- pid
The numeric ID of the project, e.g.: 2.
Default:
get_default_pid
.Set default
pid
throughru_setup(pid="...")
.See
vignette("Setup", package = "ruODK")
.- did
(chr) The name of the Entity List, internally called Dataset. The function will error if this parameter is not given. Default: "".
- eid
(chr) The UUID of an Entity, which can be retrieved by
entity_list()
. The function will error if this parameter is not given. Default: "".- url
The ODK Central base URL without trailing slash.
Default:
get_default_url
.Set default
url
throughru_setup(url="...")
.See
vignette("Setup", package = "ruODK")
.- un
The ODK Central username (an email address). Default:
get_default_un
. Set defaultun
throughru_setup(un="...")
. Seevignette("Setup", package = "ruODK")
.- pw
The ODK Central password. Default:
get_default_pw
. Set defaultpw
throughru_setup(pw="...")
. Seevignette("Setup", package = "ruODK")
.- retries
The number of attempts to retrieve a web resource.
This parameter is given to
RETRY(times = retries)
.Default: 3.
- odkc_version
The ODK Central version as a semantic version string (year.minor.patch), e.g. "2023.5.1". The version is shown on ODK Central's version page
/version.txt
. Discard the "v".ruODK
uses this parameter to adjust for breaking changes in ODK Central.Default:
get_default_odkc_version
or "2023.5.1" if unset.Set default
get_default_odkc_version
throughru_setup(odkc_version="2023.5.1")
.See
vignette("Setup", package = "ruODK")
.- orders
(vector of character) Orders of datetime elements for lubridate.
Default:
c("YmdHMS", "YmdHMSz", "Ymd HMS", "Ymd HMSz", "Ymd", "ymd")
.- tz
A timezone to convert dates and times to.
Read
vignette("setup", package = "ruODK")
to learn howruODK
's timezone can be set globally or per function.
Value
A nested list of lists.
The first nesting level corresponds to entity updates, the second level
lists each updated property. Within the nested list, the names are
old
(old value), new
(new value), propertyName
(name of changed
entity property).
Details
This returns the changes, or edits, between different versions of an Entity. These changes are returned as a list of lists. Between two Entities, there is a list of objects representing how each property changed. This change object contains the old and new values, as well as the property name.
See also
https://docs.getodk.org/central-api-entity-management/#getting-changes-between-versions
Other entity-management:
entity_audits()
,
entity_create()
,
entity_delete()
,
entity_detail()
,
entity_list()
,
entity_update()
,
entity_versions()
,
entitylist_detail()
,
entitylist_download()
,
entitylist_list()
,
entitylist_update()
Examples
if (FALSE) { # \dontrun{
# See vignette("setup") for setup and authentication options
# ruODK::ru_setup(svc = "....svc", un = "me@email.com", pw = "...")
el <- entitylist_list()
# Entity List name (dataset ID, did)
did <- el$name[1]
# All Entities of Entity List
en <- entity_list(did = did)
ed <- entity_detail(did = did, eid = en$uuid[1])
e_label <- ed$current_version$label
# This example updates one field which exists in the example form.
# Your own Entity will have different fields to update.
e_data <- list(
details = paste0(
ed$current_version$data$details, ". Updated on ", Sys.time()
)
)
# Update the Entity (implicitly forced update)
eu <- entity_update(
did = did,
eid = en$uuid[1],
label = e_label,
data = e_data
)
ec <- entity_changes(did = did, eid = en$uuid[1])
ec
} # }