Skip to contents

Takes a DW state and an updated view and sets that view to the current view_id

Usage

DW_set_current_view(state, dw_view)

Arguments

state

DW state from DW_fetch_state()

dw_view

Data view list of the format returned from DW_fetch_current_view() (see the structure of state$DW$views in the output of DW_fetch_state()).

Value

DW state object with the value of dw_view set to the current view id.

Examples

library(formods)
# The example requires a formods DW state object
state  = DW_test_mksession()$state
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → ASM:   dest:   file.path("config","report.docx")
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → ASM:   dest:   file.path("config","report.pptx")
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → ASM:   dest:   file.path("config","report.yaml")
#> → ASM: State initialized
#> → ASM: module isgood: TRUE
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → UD:   dest:   file.path("config","report.docx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → UD:   dest:   file.path("config","report.pptx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → UD:   dest:   file.path("config","report.yaml")
#> → UD: State initialized
#> → UD: module checksum updated:897d952fecbc804999396a96f9df4b20
#> → UD: module isgood: TRUE
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → DW:   dest:   file.path("config","report.docx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → DW:   dest:   file.path("config","report.pptx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → DW:   dest:   file.path("config","report.yaml")
#> → DW: State initialized
#> → DW: module checksum updated:5b0f0b05ee3ac7336a74c564bb6efdad
#> → DW: loading data view idx: 1
#> → DW: setting name: Observations
#> → DW: module checksum updated:1ac3e0afcc601f848943f92b854b3830
#> → DW:   -> filter
#> → DW: module checksum updated:67aff6e926eba73b3ecb361d26624844
#> → DW:   -> filter
#> → DW: module checksum updated:0234f6d458ef7487a3b2e991b2d0957b
#> → DW:   -> mutate
#> → DW: module checksum updated:37d0958f042076b974fdd3f894157822
#> → DW: loading data view idx: 2
#> → DW: setting name: PK 3mg SD IV
#> → DW: module checksum updated:4e7ca05728d66df3adfcf87387f9543a
#> → DW:   -> filter
#> → DW: module checksum updated:2d95bc56262f46b7f135dd33fc4722b3
#> → DW:   -> filter
#> → DW: module checksum updated:b8a30837145926d2d9cc6f788c10b7ed
#> → DW:   -> filter
#> → DW: module checksum updated:24b554ee8736ebc84979c896ac2e93c3
#> → DW:   -> filter
#> → DW: module checksum updated:daad88263faf7cbf90871ed00a0dd275
#> → DW: loading data view idx: 3
#> → DW: setting name: PK 3mg SD IV (NCA)
#> → DW: module checksum updated:a7b3ea35cdba272682716aa4619d3983
#> → DW:   -> filter
#> → DW: module checksum updated:e8d2f77c0bd731995d845ee8be623e22
#> → DW:   -> filter
#> → DW: module checksum updated:24cc7b591ca756a0abf560fb5295e04d
#> → DW:   -> filter
#> → DW: module checksum updated:f79ef26bdb4dac420c24650b9e96f721
#> → DW: loading data view idx: 4
#> → DW: setting name: PKPD 3mg SD IV (NCA)
#> → DW: module checksum updated:c737e8b3a28ba600a83ddf58a969c90a
#> → DW:   -> filter
#> → DW: module checksum updated:4c0d054f8ec47ae97fd1c650d8ddad55
#> → DW:   -> filter
#> → DW: module checksum updated:1e3d65ec1bd6ee5850d67bd2250e3223
#> → DW:   -> filter
#> → DW: module checksum updated:1e3d65ec1bd6ee5850d67bd2250e3223
#> → DW: module isgood: TRUE
state[["DW"]][["ui"]][["select_dw_element"]]          = "filter"
state[["DW"]][["ui"]][["select_fds_filter_column"]]   = "EVID"
state[["DW"]][["ui"]][["select_fds_filter_operator"]] = "=="
state[["DW"]][["ui"]][["fds_filter_rhs"]]             = 0

# This builds the data wrangling statement based on
# elemets scraped from the UI
dwb_res  = dwrs_builder(state)

# Here we evaluate the resulting command:
dwee_res = dw_eval_element(state, dwb_res[["cmd"]])

# Next we add this wrangling element to the state
state    = DW_add_wrangling_element(state, dwb_res, dwee_res)
#> → DW: module checksum updated:1e3d65ec1bd6ee5850d67bd2250e3223

# This creates a new data view and makes it active
state = DW_new_view(state)

# Here we can pluck out that data view from the state
current_view = DW_fetch_current_view(state)

# This will update the key in this view
current_view[["key"]] = "My new view"

# And this will place it back into the state
state = DW_set_current_view(state, current_view)
#> → DW: module checksum updated:3df70b9a4737bcb426d640974a05cb9d