## zowe › file-master-plus › create › vsam-vrrds

Create a variable-length relative-record data set (VRRDS) Virtual Storage Access Method (VSAM) data set.

#### Usage

zowe file-master-plus create vsam-vrrds <name> [options]

#### Positional Arguments

- `name` (string)

  - Specifies the name of the data set to create.

#### Options

- `--model` | `-m` (string)

  - Specifies the name of a model VRRDS (variable-length relative-record VSAM data set) for allocating parameters.
    The parameters of the model data set override all defaults.
    Example: -m fmmvs.model.dsname

- `--maximum-record-size` | `--mrs` (number)

  - Specifies the maximum length of data records.
    This parameter is mandatory unless a model data set is specified and it should be greater than the average record size.
    Example: --mrs 180

- `--average-record-size` | `--ars` (number)

  - Specifies the average length of data records.
    This parameter is mandatory unless a model data set is specified and it should be less than the maximum record size.
    Example: --ars 110

- `--data-dsname` | `--ddsn` (string)

  - Specifies the data set name of the data VSAM component.
    If this parameter is not specified then by default it is set to the cluster name with ‘.DATA’.
    Example: --ddsn fmmvs.vsam.ksds.data

- `--data-control-interval-size` | `--dcis` (number)

  - Specifies the size of the Control Interval for the data VSAM component.
    Default value: 20480
    Example: --dcis 3584

- `--data-space-units` | `--dsu` (string)

  - Specifies the space allocation unit for data vsam component.
    The allowed values have the following meaning:
    TRK - Tracks
    CYL - Cylinders
    REC - Records
    K - Kilobytes
    M - Megabytes
    Default value: TRK
    Example: --dsu rec

    Allowed values: TRK, CYL, REC, K, M

- `--data-primary-space` | `--dps` (number)

  - Specifies the primary space allocation unit for the data VSAM component.
    Allowed values: 1-16777215
    Default value: 18
    Example: --dps 3

- `--data-secondary-space` | `--dss` (number)

  - Specifies the secondary space allocation unit for the data VSAM component.
    Allowed values: 1-16777215
    Default value: 3
    Example: --dss 5

- `--data-volume` | `--dv` (array)

  - Specifies a disk volume or specific tapes for the data VSAM component.
    Example: -dv vol002

- `--index-dsname` | `--idsn` (string)

  - Specifies the data set name of the index VSAM component.
    If this parameter is not specified then it is set to the cluster name with ‘.INDEX’ appended.
    Example: --ddsn fmmvs.vsam.ksds.index

- `--index-control-interval-size` | `--icis` (number)

  - Specifies the size of Control Interval for index VSAM component.
    Default value: 512
    Example: --icis 3584

- `--index-space-units` | `--isu` (string)

  - Specifies the space allocation unit for index VSAM component.
    The allowed values have the following meaning:
    TRK - Tracks
    CYL - Cylinders
    REC - Records
    K - Kilobytes
    M - Megabytes
    Default value: TRK
    Example: --isu cyl

    Allowed values: TRK, CYL, REC, K, M

- `--index-primary-space` | `--ips` (number)

  - Specifies primary space allocation unit for index VSAM component.
    Allowed values: 1-16777215
    Default value: 1
    Example: --ips 3

- `--index-secondary-space` | `--iss` (number)

  - Specifies secondary space allocation unit for index VSAM component.
    Allowed values: 1-16777215
    Default value: 1
    Example: --iss 5

- `--index-volume` | `--iv` (array)

  - Specifies a disk volume or specific tapes for the data VSAM component.
    Example: -iv vol002

- `--buffer-space` | `--bs` (number)

  - Specifies the minimum buffer space to allocate when this VSAM file is accessed.
    Example: --bs 37376

- `--erase` | `-e` (string)

  - Indicates whether the VSAM file was allocated with the ERASE parameter, causing all components of the file to be overwritten with binary zeros, when the VSAM file is deleted from the catalog.
    Default value: n
    Example: -e y

    Allowed values: y, n

- `--load-restartable` | `--lr` (string)

  - Specify 'Y' to request that the VSAM component definition use the 'RECOVERY' parameter (which causes the data component to be preformatted previous to the initial load). Using this option causes the initial load to take longer, but loads which do not complete successfully can be restarted.
    Specify 'N' to request that the VSAM component definition use the 'SPEED' parameter (which causes the data component to NOT be preformatted previous to the initial load).
    Default value: n
    Example: -lr y

    Allowed values: y, n

- `--reuse` | `-r` (string)

  - Indicates whether the VSAM file was allocated with the REUSE parameter specifying that the cluster can be opened again and again as a reusable cluster.
    Default value: n
    Example: -r y

    Allowed values: y, n

- `--write-check` | `--wc` (string)

  - Indicates whether the VSAM file was allocated with the WRITECHECK parameter requesting each write to the VSAM file to be validated by a read without data transfer.
    Default value: n
    Example: --wc y

    Allowed values: y, n

- `--control-interval-freespace-percentage` | `--cifp` (number)

  - Specifies the percentage of empty space in each control interval when the file is initially loaded.The free space lets records be inserted or expanded within a control interval before requiring a control interval split.
    Example: --cifp 10

- `--control-area-freespace-percentage` | `--cafp` (number)

  - Specifies the percentage of control intervals to be left unused in each control area as the file is initially loaded. The use of control area free space lets some control interval splits occur before requiring a control area split.
    Example: --cafp 10

- `--cross-region-share-option` | `--crso` (number)

  - Specifies that the file can be shared among regions within the same system or within multiple systems using GRS (Global Resource Serialization).
    The allowed values have the following meaning:
    1 - The data set can be opened for read processing by an unlimited number of users, but the data set can be accessed by only one user when that user is doing read and write processing.
    2 - The data set can be opened by only one user at a time for read and write processing, but any number of users can also be accessing the data set for read processing
    3 - The data set can be fully shared by any number of users.
    4 - The data set can be fully shared by any number of users. VSAM immediately updates the data set for PUTs and refreshes all input buffers for GETs.
    Default value: 1
    Example: --crso 2

    Allowed values: 1, 2, 3, 4

- `--cross-system-share-option` | `--csso` (number)

  - Specifies how the file can be shared among systems.
    The allowed values have the following meaning:
    3 - The data set can be fully shared by any number of users.
    4 - The data set can be fully shared by any number of users. VSAM immediately updates the data set for PUTs and refreshes all input buffers for GETs.
    Default value: 3
    Example: --csso 4

    Allowed values: 3, 4

- `--expiration-date` | `--ed` (string)

  - Specifies the expiration date after which the data set can be deleted.
    Specify 'P' or 'p' to make the data set permanent, or an expiration date in YYYY-MM-DD format.
    Example: --ed 2032-07-31

- `--storage-class` | `--sc` (string)

  - Specifies the storage class.
    Example: --sc scl002

- `--management-class` | `--mc` (string)

  - Specifies the management class.
    Example: --mc mcl002

- `--data-class` | `--dc` (string)

  - Specifies the data class.
    Example: --dc dcl002

- `--log` | `-l` (string)

  - When specified, 'ALL' or 'UNDO' or 'NONE' indicates the VSAM RLS recovery option.
    Example: --log ALL

    Allowed values: NONE, UNDO, ALL

- `--frlog` | `--fr` (string)

  - Specifies the type of VSAM batch logging to perform for this VSAM data set.
    The allowed values have the following meaning:
    NONE - Disables VSAM batch logging.
    REDO - Enables VSAM batch logging.
    UNDO - Changes made to your VSAM data set are backed out using VSAM batch logging.
    ALL - Changes made to your VSAM data set are backed out and forward recovered using VSAM batch logging.
    Example: --frlog ALL

    Allowed values: NONE, UNDO, ALL, REDO

- `--log-replicate` | `--lrp` (string)

  - Specify 'Y' to enable VSAM replication for this data set.
    Example: --lrp y

    Allowed values: Y, N

- `--log-stream-id` | `--lsi` (string)

  - Specifies the 1- to 26-character name of the forward recovery log stream.
    Example: --lsi LOGSTRA

- `--rls-enable` | `--rls` | `--re` (string)

  - Specify 'N' to disable VSAM record-level sharing.
    Default value: y
    Example: --rls n

    Allowed values: Y, N

#### FMP Connection Options

- `--host` | `-H` (string)

  - Specifies File Master Plus server host name.

- `--port` | `-P` (number)

  - Specifies File Master Plus server port.

    Default value: 51914

- `--user` | `-u` (string)

  - Specifies Mainframe user name. May be the same as TSO login.

- `--password` | `--pass` | `--pw` (string)

  - Specifies Mainframe password. May be the same as TSO password.

- `--protocol` | `-o` (string)

  - Specifies File Master Plus REST API protocol.

    Default value: https
    Allowed values: http, https

- `--reject-unauthorized` | `--ru` (boolean)

  - Reject self-signed certificates.

    Default value: true

- `--base-path` | `--bp` (string)

  - The base path for your API mediation layer instance. Specify this option to prepend the base path to all FMP resources when making REST requests. Do not specify this option if you are not using an API mediation layer.

#### Profile Options

- `--fmp-profile` | `--fmp-p` (string)

  - The name of a (fmp) profile to load for this command execution.

- `--base-profile` | `--base-p` (string)

  - The name of a (base) profile to load for this command execution.

#### Base Connection Options

- `--token-type` | `--tt` (string)

  - The type of token to get and use for the API. Omit this option to use the default token type, which is provided by 'zowe auth login'.

- `--token-value` | `--tv` (string)

  - The value of the token to pass to the API.

- `--cert-file` (local file path)

  - The file path to a certificate file to use for authentication.

    Note: The CLI does not support certificate files that require a password. For more information, search Troubleshooting PEM Certificates in Zowe Docs.

- `--cert-key-file` (local file path)

  - The file path to a certificate key file to use for authentication

#### Examples

- Creating a VRRDS with default option values and mandatory options:

  - `zowe file-master-plus create vsam-vrrds fmmvs.test.dsname --mrs 160`

- Creating a VRRDS with options:

  - `zowe file-master-plus create vsam-vrrds fmmvs.test.dsname --mrs 160 --ars 120 --dcis 3584 --dsu cyl --dps 1 --dss 3 --dv vol002 --icis 512 --isu cyl --ips 1 --iss 1 --iv vol002 --bs 37376 -e y -r y --ed 2025-09-27`

- Creating a RLS enabled VRRDS with logging options:

  - `zowe file-master-plus create vsam-vrrds fmmvs.test.dsname --mrs 160 --ars 120 --dcis 3584 --dsu cyl --dps 1 --dss 3 --dv vol002 --icis 512 --isu cyl --ips 1 --iss 1 --iv vol002 --bs 37376 -e y -r y --rls y -l all --lsi loga --lrp y --fr ALL`

- Creating a VRRDS data set like a model VRRDS data set:

  - `zowe file-master-plus create vsam-vrrds fmmvs.test.dsname --model fmmvs.model.dsname`

- Creating a VRRDS like a model VRRDS data set and overriding the parameters with options:

  - `zowe file-master-plus create vsam-vrrds fmmvs.test.dsname --model fmmvs.model.dsname --mrs 160 --wc y --bs 37376 --crso 3 --csso 4 --ed p`