Exporting Data

You can group data listings together for export as Export Definitions from the Export area of CDB Workbench. For each Export Definition, you can add one or more of the data listings from your study. When you generate the export package, you can choose to generate it in CSV or SAS (sas7bdat) format. CDB then generates a set of files, one for each export listing. Once you generate the export package, you or any other CDB user with access to your Study can download the export package (a ZIP file containing the collection of listing files, either CSV or sas7bdat, and the manifest, “manifest.json”, describing the package contents). Then, you can share it with study stakeholders, such as regulatory authorities, medical monitors, and statisticians. You can also send datasets from the Study Data Extract job in EDC Tools to CDB.

Availability: Clinical DataBase (CDB) is only available to CDB license holders. Contact your Veeva Services representative for details.

Prerequisites

You can export data based on system-generated Core Listings, but if you want to export data from custom listing formats, you must first create listings.


By default, users with the standard CDMS Lead Data Manager and CDMS Data Manager study roles are able to perform the actions described below. If your organization uses custom roles, then your role must grant the following permissions:.

Type Permission Label Controls
Functional Permission Workbench Tab

Ability to access and use the Data Workbench application, via the Workbench tab

Functional Permission View Casebook

Ability to view information about and from subject Casebooks (for reports, dashboards, and CDBs)

Functional Permission View Export

Ability to access the Export page

Functional Permission Create Export Definition

Ability to create and copy Export Definitions

Functional Permission Generate Export Package

Ability to generate a CSV or SAS export package

Functional Permission Delete Export Definition

Ability to delete an Export Definition

Functional Permission View Export Packages

Ability to access Export > Packages to view generated export packages

If your Study contains restricted data, you must have the Restricted Data Access permission to view it.

Learn more about Study Roles.


Accessing Export

You can access your Export Definitions from the Export area of CDB Workbench. You can navigate to the Export area from the Navigation Drawer or the Study menu.

Export in the Navigation Drawer Export in the Study Menu

Viewing Exports

The Export page has two tabs, Definitions and Packages. From Export > Definitions, you can view, create, and edit Export Definitions for your Study. From Export > Packages, you can view all generated export packages and review an error log for any failures.

Definitions

Workbench lists all Export Definitions for your study in Export > Definitions. The table below details each column of the Export Definition listing:

Column Description
Name The Title of the export definition, defined during definition creation. Workbench shows a clock icon () in this column if this definition has scheduled exports set up. Hover over the icon to show the schedule.
Status An Export Definition can be in one of two statuses: Draft and Published.
Listings The number of data listings within the Export Definition.
Type The type of Export Definition. See Export Types below for details.
Created On The date and time of the Export Definition creation and the name of the user who created it.
Last Modified The date and time of the last modification to the Export Definition and the name of the user who made the change.
Latest Package The status of the export package and the date and time the package was generated. Click Download () to download the package.

You can sort this listing by Latest Package, Modified By, Modified Date, or Name. Select a sort column and order from the Sort By menu.

Sort By menu

Click Reset in the Sort By menu to return to the default sort order (Descending, Modified Date).

Packages

Workbench lists all packages generated for a Study in Export > Packages. The table below lists the details of each column for the package listing:

Column Description
Name This column lists the Title of the Export Definition used to generate the package, the Date and Time the package was generated, and the number of listings included in the package. Workbench shows a clock icon () in this column if this package has scheduled exports set up. Hover over the icon to show the schedule that was run.
Type This column lists the Type of the Export Definition used to generate the package.
Processed By The Name of the user who initiated package generation and the Date and Time they did so.
Status This column lists the status of the package: In Progress, Complete, or Error. When Complete, click Download () to download the package.

Sort Packages

You can sort this listing by Name, Processed By, Process Date, and Process Status. Select a sort column and order from the Sort By menu.

Sort By menu

Click Reset in the Sort By menu to return to the default sort order (Descending, Process Date).

Errors

If package generation fails, you can view a list of errors from Export > Packages.

To view errors:

  1. Navigate to Export > Packages for your Study.
  2. Locate the failed package in the list.
  3. Click View Issue Log (). View Issue Log

  4. Workbench opens the Issues panel. This lists each error that occurred during package generation.
  5. Optional: Click Download () to download the issue log.
  6. Click Close () to close the Issues panel.

Export Types

Workbench supports three types of exports: None, Raw, and SDTM. The default is None, which allows you to create your own export definition without the defined conventions that the Raw and SDTM types include.

Raw

When creating an Export Definition, you can choose to use Raw format (by selecting Raw for Type). Raw export packages have the following characteristics:

  • The package contains an export listing for each core listing within the study, even if the form has no data.
  • Any date and datetime items display both the default and the RawDate() format. See the table below for examples of RawDate() format dates.
  • Items with units include columns for the translated name and unit value. See the table below for examples of unit columns.
  • The package contains additional System Listings for contextual header information. See a detailed list below.

Export Listings for Forms

Each form’s listing in your raw export will include the following columns, in addition to columns for each Item on the Form:

  • Study.Name
  • Site.Number
  • Subject.Name
  • EventGroup.Name
  • EventGroup.SeqNbr
  • Event.Name
  • Event.Date
  • Event.Status
  • Form.Name
  • Form.DataSource
  • Form.SeqNbr
  • Form.LastModifiedDate
  • ItemGroup.SeqNbr

System Listings

Raw exports include the following System Listings, which list operational metadata for your study. The table below lists the columns included in each System Listing.

System Listing CQL Columns
Sys_Sites CALL Sys_Sites
  • Study.Name
  • Site.Country
  • Site.Number
  • Site.Nme
  • Site.PI
Sys_Subjects CALL Sys_Subjects
  • Study.Name
  • Site.Country
  • Site.Number
  • Subject.Name
  • Subject.Status
Sys_Events CALL Sys_Events
  • Study.Name
  • Site.Number
  • Subject.Name
  • EventGroup.Name
  • EventGroup.SeqNbr
  • Event.Name
  • Event.Date
  • Event.Status
Sys_Forms CALL Sys_Forms
  • Study.Name
  • Site.Number
  • Subject.Name
  • EventGroup.Name
  • EventGroup.SeqNbr
  • Event.Name
  • Form.Name
  • Form.SeqNbr
  • Form.Status
  • Form.CreatedDate
  • Form.SubmissionDate
  • Form.SubmissionCount
  • Form.SDVDate
  • Form.DMRDate
  • Form.FrozenDate
  • Form.LockedDate
  • Form.Signed
Sys_ILB CALL Sys_ILB
  • Study.Name
  • Site.Number
  • Subject.Name
  • EventGroup.Name
  • EventGroup.SeqNbr
  • Event.Name
  • Form.Name
  • Form.SeqNbr
  • ItemGroup.Name
  • ItemGroup.SeqNbr
  • Item.Name
  • Item.ILBReason
Sys_Links CALL Sys_Links
  • Study.Name
  • Site.Country
  • Site.Number
  • Subject.Name
  • EventGroup.Name
  • EventGroup.SeqNbr
  • Event.Name
  • Form.Name
  • Form.SeqNbr
  • Form.LinkCreatedDate
  • Form.LinkID
  • ItemGroup.Name
  • ItemGroup.SeqNbr
  • FormLink.Name

Raw Date Formats

For date and datetime items, Workbench includes the default date format and the RawDate() format for the date. In RawDate() format, partial dates and times display without any modifications.

Date or DateTime as Recorded Raw Format
1 27-Oct-2020 27-Oct-2020
2 ?-Oct-2020 UN-Oct-2020
3 ?-?-2020 UN-UNK-2020
4 27-Oct-2020 10:40 27-Oct-2020 10:40
5 27-Oct-2020 ? 27-Oct-2020 UN:UN
6 ?-Oct-2020 ? UN-Oct-2020 UN:UN
7 ?-?-2020 ? UN-UNK-2020 UN:UN

Items with Unit Columns

For unit-type Items, Workbench includes additional columns for the translated name and unit value. The table below shows the included columns for the “Weight” item, which is collected in kilograms.

Weight Weight_UOM Weight_TRANSLATED Weight_UOM_TRANSLATED
65 kgs 143.3 lbs

Duplicate Column Handling

CQL allows duplicate columns and will display them in the UI.

System-generated columns, such as ones that have “_RAW” or “_UOM” appended, for example, automatically have “_2” appended to prevent duplicate column conflicts in certain scenarios. This occurs during the CQL transformaiton, before the Export Listing is exported to CSV or SAS.

For user-defined item names, CDB attempts to preserve the original name by prepending the Name of the Item Group. This occurs when the CSV or SAS file is generated.

SDTM

When creating an Export Definition, you can choose to use SDTM format (by selecting SDTM for Type). SDTM export packages have the following characteristics:

  • Every listing CSV includes a column for Domain (the Short Title of the listing).
  • Listing CSV files are named using the short title (“short_title.csv”).
  • All Date, DateTime, and Time items use ISO8601 format.
  • Unknown dates and times are formatted as shown in the table below.
  • Columns for data items use the SDTM Name or the External ID of the EDC definition, based on the selection during export definition creation.
Date or DateTime as Recorded Interval of Uncertainty Nominal Date/Time (--DTC)
1 March 15, 2020 13:14:17 Complete date 2020-03-14T13:14:17
2 March 15, 2020 13:14 Unknown seconds 2020-03-15T13:14
3 March 15, 2020 13 Unknown minutes 2020-03-15T13
4 March 15, 2020 Unknown time 2020-03-15
5 March, 2020 Unknown day 2020-03
6 2020 Unknown month 2020

Restricted (Blinded) Data in Export Packages

CDB determines the inclusion of restricted (blinded) data in the export package based on the Blinded property of the Export Definition.

When the Unblinded checkbox is selected, and one or more Export Listings contain restricted data, Workbench only allows users who have the Restricted Data Access permission to download the resulting export packages.

If your Export Listings contain restricted (blinded) data, Workbench only exports the restricted data if your Study Role grants the Restricted Data Access permission. By default, this permission is assigned to users with the standard CDMS Lead Data Manager study role.

The list below describes how Workbench handles restricted data when generating the package for an unblinded export definiton:

  • Source-level restriction: If an entire Source is restricted, which is only possible for third party data, the blinded export package will not contain any data from this source. If a listing only has data from the restricted source, then Workbench will not include that listing in the export package.
  • Form-level restriction: If a Form is restricted, the blinded export package will not contain any data from that Form. If a listing only has data from the restricted Form, then Workbench will not include that listing in the export package. Workbench will not include any @HDR, @Form, or @ItemGroup information for the Form, and any Items from the Form are also excluded from export.
  • Item-level restriction: If an Item is restricted, the blinded export package will not contain this Item. Workbench will not include any columns for the Item in any listings. If a listing uses this Item in the CQL statement to derive the value of another column, that column will also be excluded.

Create an Export Definition

To create an Export Definition:

  1. Navigate to Export > Definitions.
  2. Click + Create …. Create button

  3. Enter a Title for your Export Definition. This displays in the Name column of the Export Definition list.
  4. Select Raw or SDTM for Type to create an export definition of that type. Otherwise, leave this set to None.
  5. If you choose SDTM, you can select Auto generate column labels with EDC External name to use the External ID for column labels. Otherwise, leave this set to Auto generate column labels with EDC SDTM name to use the SDTM Name.
  6. Optional: Enter a Description.
  7. Click Next.
  8. Optional: Click Expand or Collapse to expand and collapse listing categories and export definitions. Workbench groups listings by Category in Available Listings and by Export Definition in Export Definitions.
  9. Drag and drop a Listing or Listing Category from Available Listings to Selected Listings. You can also drag and drop an Export Definition to Selected Listings to automatically add every listing from that definition. Drag and drop listings into the Export Definition

  10. Continue dragging and dropping listings into Selected Listings until the Selected Listings include everything you want in your Export Definition.
  11. To remove a listing from the definition, click Remove (). While you can’t remove System Listings for raw-type exports when creating an Export Definition, you can remove them later with the Modify Listings action. Removing a listing

  12. When finished, click Next.
  13. Optional: Enter a Short Title for your export listings. Workbench uses the Short Title as the filename for the listing inthe export package and to populate the Domain column in SDTM exports.
  14. Optional: Edit the Title for your export listings.
  15. Click Save.

You can now generate and download the export package for this Export Definition.

Export Listing Creation: Adding a listing to the Export Definition creates a copy of that listing as an Export Listing. Any actions you take on the Export Listing only apply to it, and not the original core or custom listing.

Export Definition Workflow

All Export Definitions start in the Draft status. Each listing within the definition also starts in Draft. Once all listings are marked as Ready, the Export Definition moves into the Published status. If at any time a listing is invalidated, the Export Definition moves into the Draft status. To return to Published, the invalid listing must be removed or updated. If any listings return to Draft, the Export Definition also returns to the Draft status.

You can generate an export package for an Export Definition that is in the Draft or Published statuses.

Look to the Status Badge to identify the status of an Export Listing or Export Definition. The Status Badge is displayed in the definition list, the list of listings within the definition, and on the listing page.

Draft status badge

How to Mark a Listing as Ready

To mark an Export Listing as Ready:

  1. Open the Export Listing in Workbench > Export > Definitions.
  2. Verify that your listing is ready for use.
  3. Click Ready in the Status Toggle. Ready status toggle

You can return the listing to the Draft status by clicking Draft in the Status Toggle.

Export Change Detection

When you create an Export Definition, it’s made up of Export Listings. Those Export Listings are snapshots of the listings they were created from. A “parent listing” refers to a listing that was used as the source to create an Export Listing. When the parent listing’s CQL syntax is updated upstream, in some cases, the Export Listing CQL statement may become out of sync with that of hte parent listing. This can lead to outdated listing structure in export packages. For example, if the CQL statement for a public Custom Listing was updated, any Export Listing that was created from that parent listing will still reflect the original statement that the Export Listing was created with.

CDB, at specific trigger points, checks the parent listings of your export definition’s Export Listings for changes. When you or another user modifies a parent listing, CDB displays a change indicator on the Export Definition. Then, you can optionally review the CQL changes and choose to sync the Export Listing with the parent.

You must be the owner of the Export Definition or have the Vault Owner security profile to sync an Export Listing with the parent.

Detected Changes

CDB detects only changes in the same environment, and it doesn’t detect changes across different environments.

CDB detects the following changes:

  • Updates to the CQL statement for a Custom Listing
  • Updates to the CQL statement for a View Listing, if the View was directly a part of the export
  • Changes to a study’s design, such as a new Item or Item Group, that are applied to a Core Listing used in a raw or SDTM type export definition
  • Updates to the CQL statement for a parent listing whose child listing is used as an Export Listing

CDB doesn’t consider study design changes that are applied to a Core Listing when that listing is used in an export definition using the None type. Select * acccounts for those changes in study design.

CDB doesn’t consider comments (single line or multi-line), line breaks and returns, tabs, or extra spaces, including leading or trailing spaces, as changes because these types of changes don’t change the result set. However, the Change Comparison panel still highlights these differences.

CDB doesn’t consider updates to a listing’s Name or other properties as changes.

CDB checks for changes at these events:

  • Swap (when new data becomes available after successful import): CDB checks for changes across all Export Definitions.
  • Saved changes to the CQL statement for public Custom Listings or Views: CDB checks for changes in Export Definitions that contain the listing or view that was modified.
  • Deployment: CDB checks for changes in Export Definitions that contain the listings or views that were deployed.

Review CQL Changes

To review changes:

  1. Navigate to Export > Definitions.
  2. Click Impacted to filter the list of Export Definitions to only show those that are impacted by changes.
  3. Click to open the Export Definition containing changes.
  4. Click Impacted to filter the list of Export Listings to only show those out of sync with their parent.

  5. For the listing that you want to review, click Compare. This opens the Change Comparison panel.

  6. Review the changes.
  7. When finished reviewing, if you don’t want to sync with the parent, click Close () to close the panel.

Once you have reviewed the changes, you can sync the listing with the parent.

Change Comparison panel, showing changes to the adverse_event form
Change Comparison panel, showing changes to the adverse_event form

Sync with the Parent

To sync an Export Listing with the parent:

  1. Navigate to the impacted Export Definition.
  2. Click Impacted to filter the list of Export Listings to only show those out of sync with their parent.
  3. For the listing that you want to sync, click Compare.
  4. In the Change Comparison panel, click Sync with Parent.
  5. In the confirmation dialog, click Confirm.

To sync multiple Export Listings with their parents:

  1. Navigate to the impacted Export Definition.
  2. Click Impacted to filter the list of Export Listings to only show those out of sync with their parent.
  3. Select the Export Listing checkbox for each listing that you want to sync.
  4. Optional: Select the Select All checkbox to select all listings on the current page.
  5. Click Sync with Parent.

  6. In the confirmation dialog, click Confirm.

Edit an Export Definition

After creating an Export Definition, you can return later and modify which listings are included, edit the definition’s properties, and rename listings.

Note that you can only save changes to definitions that you created. To make changes to someone else’s listing, you can create a copy of it to make your changes.

How to Rename Listings

You can easily rename export listings in your Export Definition. Renaming a listing here only renames the Export Listing. It doesn’t rename the original data listing.

To rename a listing:

  1. Navigate to Export > Definitions.
  2. Open your Export Definition.
  3. In the Export Listings table, click Edit () to enter Edit mode. Edit button

  4. Enter the new name for your listing in the text field. Listing title text field

  5. Click View () to return to View mode and save your changes. View button

How to Modify Included Listings

You can add and remove listings from an Export Definition.

To modify included listings:

  1. Navigate to Export > Definitions.
  2. Click to open your Export Definition.
  3. From the Actions menu (), select Select Listings. Modify Listings action

  4. Optional: Click Expand or Collapse to expand and collapse listing categories and export definitions. Workbench groups listings by Category in Available Listings and by Export Definition in Export Definitions.
  5. Drag and drop a Listing or Listing Category from Available Listings to Selected Listings. You can also drag and drop an Export Definition to Selected Listings to automatically add every listing from that definition. Drag and drop listings into the Export Definition

  6. Continue dragging and dropping listings into Selected Listings until the Selected Listings include everything you want in your Export Definition.
  7. To remove a listing from the definition, click Remove (). Removing a listing

  8. Click Next.
  9. Optional: Enter a Short Title for your export listings. Workbench uses the Short Title as the filename for the listing in the export package.
  10. Optional: Edit the Title for your export listings.
  11. Click Save.

How to Edit Export Definition Properties

To edit the properties of an Export Definition:

  1. Navigate to Export > Definitions.
  2. Click to open an Export Definition.
  3. From the Export Definition () menu, select Properties. Properties menu item

  4. In the Properties dialog, click Edit. Properties dialog in View mode

  5. Edit properties as needed. Properties dialog in Edit mode

  6. Click Save.

Copy an Export Definition

You can copy an Export Definition using Save As.

To copy an Export Definition:

  1. Navigate to Export > Definitions.
  2. Click to open your Export Definition.
  3. From the Export Definition () menu, select Save As. Save As action

  4. Optional: Enter a Title for your new export definition. By default, the Title is the title of the original definition with a “2” appended to it.
  5. Optional: Enter a Description.
  6. Click Save.

Delete an Export Definition

Note that you can only delete Export Definitions that you created.

To delete an Export Definition:

  1. Navigate to Export > Definitions.
  2. Locate your Export Definition in the list.
  3. From the Export () menu, select Delete.

Generate & Download an Export Package

You can generate and download an export package from any existing Export Definition as a set of CSV or SAS files and a manifest file.

  1. Navigate to Export > Definitions.
  2. Locate an Export Definition in the list.
  3. From the Export () menu, select Generate Package. Generate Package

  4. Select CSV or SAS for the export format.
  5. Once Workbench generates the package, click Download () to download the export package (ZIP). Download export package

Export Package Expiration: After an export package is generated, it is available to download for up to thirty (30) days. After thirty days, the package is expired, and a user must re-generate it to download. If the export package is modified, the thirty day period restarts.

Example Manifest File

The manifest file consists of system-generated listings and one Core Listing, with each containing the following:

  • A description of the CQL used to create the file
  • A list of columns and their descriptions
  • For Items, attributes such as the Name, Type, Item Type, Item Label, Source, and Form
  • For Codelist Items, Codes and Decodes

See below for an example manifest file.

Restricted data: If your export package is blinded, the manifest file will indicate the blinded attribute for each blinded item.

{
  "study" : "Cholecap_DEV1",
  "exportname" : "Raw_Export",
  "exportstartdatetime" : "2024-03-11 18:05:10",
  "filecount" : 6,
  "data" : [ {
    "filename" : "adverse_events.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "SELECT\n  `@HDR`.`Study`.`Name`\n, `@Form`.`DataSource`\n, `@HDR`.`Site`.`Number`\n, `@HDR`.`Subject`.`Name`\n, `@HDR`.`EventGroup`.`Name`\n, `@HDR`.`EventGroup`.`SeqNbr`\n, `@HDR`.`Event`.`Name`\n, `@HDR`.`Event`.`Date`\n, `@HDR`.`Event`.`Status`\n, `@Form`.`Name`\n, `@Form`.`SeqNbr`\n, `@ItemGroup`.`SeqNbr`\n, `@Form`.`LastModifiedDate`\n, `EDC.adverse_events`.`common_forms_ig`.`adverse_event_term` `adverse_event_term`\n, codedstatus(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`) `CodingStatus`\n, codeddictrel(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`) `DictionaryRelease`\n, codedcode(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'LLTCD') `LLTCD`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'LLT') `LLT`\n, codedcode(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'PTCD') `PTCD`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'PT') `PT`\n, codedcode(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'HLTCD') `HLTCD`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'HLT') `HLT`\n, codedcode(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'HLGTCD') `HLGTCD`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'HLGT') `HLGT`\n, codedcode(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'SOCCD') `SOCCD`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'SOC') `SOC`\n, codedterm(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`, 'Primary Path') `PrimaryPath`\n, codedby(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`) `LastCodedBy`\n, lastcoded(`EDC.adverse_events`.`common_forms_ig.adverse_event_term`) `LastCodedDate`\n, `EDC.adverse_events`.`common_forms_ig`.`start_date` `start_date`\n, rawdate(`EDC.adverse_events`.`common_forms_ig`.`start_date`) `start_date_RAW`\n, `EDC.adverse_events`.`common_forms_ig`.`end_date` `end_date`\n, rawdate(`EDC.adverse_events`.`common_forms_ig`.`end_date`) `end_date_RAW`\n, `EDC.adverse_events`.`common_forms_ig`.`serious` `serious`\n, `EDC.adverse_events`.`common_forms_ig`.`outcome` `outcome`\nFROM\n  `EDC`.`adverse_events`\nWHERE ((`@Form`.`Status` = 'submitted__v') OR (`@HDR`.`Event`.`Status` IN ('did_not_occur__v')))\n",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.DataSource",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Event.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Event.Date",
      "type" : "DATE",
      "source" : "EDC"
    }, {
      "name" : "Event.Status",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "ItemGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Form.LastModifiedDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "adverse_event_term",
      "type" : "VARCHAR",
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "CodingStatus",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "DictionaryRelease",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "LLTCD",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "LLT",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "PTCD",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "PT",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "HLTCD",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "HLT",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "HLGTCD",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "HLGT",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "SOCCD",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "SOC",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "PrimaryPath",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "LastCodedBy",
      "type" : "INTEGER",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "LastCodedDate",
      "type" : "DATETIME",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Adverse Event Term",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "start_date",
      "type" : "DATE",
      "itemlabel" : "Start Date",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "start_date_RAW",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "Start Date",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "end_date",
      "type" : "DATE",
      "itemlabel" : "End Date",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "end_date_RAW",
      "type" : "VARCHAR",
      "itemtype" : [ "cdbderived" ],
      "itemlabel" : "End Date",
      "source" : "EDC",
      "form" : "adverse_events"
    }, {
      "name" : "serious",
      "type" : "VARCHAR",
      "datatype" : "codelist",
      "itemlabel" : "Serious",
      "source" : "EDC",
      "form" : "adverse_events",
      "code_decode" : [ {
        "code" : "Y",
        "decode" : "Yes"
      }, {
        "code" : "N",
        "decode" : "No"
      } ]
    }, {
      "name" : "outcome",
      "type" : "VARCHAR",
      "itemlabel" : "Outcome",
      "source" : "EDC",
      "form" : "adverse_events"
    } ]
  }, {
    "filename" : "Sys_Forms.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "CALL SYS_FORMS",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Country",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.PI",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Status",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Event.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Event.Date",
      "type" : "DATE",
      "source" : "EDC"
    }, {
      "name" : "Event.Status",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Form.Status",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.CreatedDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.SubmissionDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.SubmissionCount",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Form.ILB",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.ILBReason",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.SDV",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.SDVDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.DMR",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.DMRDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.Frozen",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.FrozenDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.Locked",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.LockedDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.Signed",
      "type" : "BOOLEAN",
      "source" : "EDC"
    }, {
      "name" : "Form.SignatureDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.LastModifiedDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.Version",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.ExternalID",
      "type" : "VARCHAR",
      "source" : "EDC"
    } ]
  }, {
    "filename" : "Sys_ILB.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "CALL SYS_ILB",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Event.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "ItemGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "ItemGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Item.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "ILB Reason",
      "type" : "VARCHAR",
      "source" : "EDC"
    } ]
  }, {
    "filename" : "Sys_Links.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "CALL SYS_LINKS",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Country",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "EventGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "Event.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "ItemGroup.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "ItemGroup.SeqNbr",
      "type" : "INTEGER",
      "source" : "EDC"
    }, {
      "name" : "FormLink.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Form.LinkCreatedDate",
      "type" : "DATETIME",
      "source" : "EDC"
    }, {
      "name" : "Form.LinkID",
      "type" : "VARCHAR",
      "source" : "EDC"
    } ]
  }, {
    "filename" : "Sys_Sites.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "CALL SYS_SITES",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Country",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.PI",
      "type" : "VARCHAR",
      "source" : "EDC"
    } ]
  }, {
    "filename" : "Sys_Subjects.csv",
    "dateapplied" : "2024-03-11 17:39:54",
    "cql" : "CALL SYS_SUBJECTS",
    "columns" : [ {
      "name" : "Study.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Country",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Site.Number",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Name",
      "type" : "VARCHAR",
      "source" : "EDC"
    }, {
      "name" : "Subject.Status",
      "type" : "VARCHAR",
      "source" : "EDC"
    } ]
  } ]
}

Refer to Importing 3rd Party Data for more information about manifest files in CDB.

Schedule Recurring Exports

You can schedule a daily, weekly, or monthly export and select users to notify of the export package’s availability. Once a scheduled export finishes generating the package, you can download it from Export > Definitions, or deliver it via FTP to a location of your choosing.

To schedule a recurring export:

  1. Navigate to Export > Definitions.
  2. Click to open an Export Definition.
  3. From the Export Definition () menu, select Properties.
  4. Click Edit.
  5. If a scheduled export already exists, click Add Schedule. You can have up to five (5) scheduled exports per Export Definition. CDB doesn’t allow duplicate schedules (matching date, time, interval, and format).
  6. Select the Schedule checkbox.
  7. Select a Date and Time. This is the date of the first export. Workbench will then generate future export packages after the chosen interval (step 8) has passed. For example, if you select “Weekly” and “7 December 2020, 12:00 AM”, Workbench will generate an export package at that time, and then the next export would occur on “14 December 2020, 12:00AM” .
  8. Select Daily, Weekly, or Monthly as an Interval.
  9. Select CSV or SAS for Format. This determines the type of files that Workbench generates for the export package.
  10. Optional: Select the Delivery checkbox and select an FTP delivery location. See Create an FTP Destination for details about creating destinations for delivery.
  11. Click Save.

How to Edit a Scheduled Export

To edit a scheduled export:

  1. Navigate to Export > Definitions.
  2. Click to open an Export Definition.
  3. From the Export Definition () menu, select Properties.
  4. Click Edit.
  5. Make changes as needed to the export Schedule and Delivery.
  6. Click Save.

How to Stop a Scheduled Export

At any time, you can stop a scheduled export. The export won’t reoccur until you start it again.

To stop a scheduled export:

  1. Navigate to Export > Definitions.
  2. Click to open an Export Definition.
  3. From the Export Definition () menu, select Properties.
  4. Click Edit.
  5. Clear the Schedule checkbox.
  6. Click Save.

Create an FTP Connection

Workbench supports the use of both the provided Veeva Vault FTP server and third party FTP servers. If you plan to use a location other than the provided Vault FTP server, you must already have that server set up.

A user with the Vault Owner security profile can set up the Destination for a scheduled export from Tools > EDC Tools > FTPs.

If your vault uses custom Study Roles, your role must have the following permissions:

Type Permission Label Permission
Standard Tab EDC Tools Tab Ability to access the EDC Tools tab.
Functional Permission Manage FTP Ability to create and edit FTP Connections in EDC Tools.

To set up an FTP Connection:

  1. Navigate to your Study in Tools > EDC Tools > FTPs.
  2. Click + New FTP.
  3. Enter an FTP Name. This name will display in the Delivery drop-down menu of the Export Definition in the Exports section of CDB Workbench. New FTP Connection CDB

  4. Select CDB Workbench for Type, even if you’re creating a connection to send exports from CDB to the Veeva Vault FTP.
  5. Enter your User Name. For the Veeva Vault FTP server, this is the User Name that you use to log in to Vault, including the domain, with the host in front. For example, “verteopharma.veevavault.com+cordelia.hunter@verteopharma.com”.
  6. Enter your Password.
  7. Confirm password.
  8. Select FTP Scheme. Select FTPS if you’re sending your export from CDB to the Veeva Vault FTP server.
  9. Enter the Host. For the Veeva Vault FTP server, this is the URL of your vault: {DNS}.veevavault.com. For example, “veepharm” is the DNS in veepharm.veevavault.com.
  10. Enter Port.
  11. Enter the Destination Path for where you want to deliver the package. If necessary, you can create a Destination Path in the FTP server prior to entering it here. To create a Destination Path in the Veeva Vault FTP server, a user needs API Access permission.
  12. Click Save.

For more information on connection field details and how to edit the FTP record, see Connecting to an FTP Server from EDC Tools.

Subscribe for Package Notifications

CDB can send an email notification when an export package enters a given status. Work with your organization’s user administrator to subscribe.