Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

MODIFY-JV

&pagelevel(3)&pagelevel

Modify contents of job variable

Component:

JV

Functional area:

Job variables                                                                                    

Domain:

JOB-VARIABLES

Privileges:

STD-PROCESSING
HARDWARE-MAINTENANCE
SAT-FILE-EVALUATION
SAT-FILE-MANAGEMENT
SECURITY-ADMINISTRATION

Routing code:

J

This function is only available to the user if the chargeable software product JV has been loaded as a subsystem.

Function

The MODIFY-JV command modifies the contents of a job variable. All or part of the JV is given a new value (SET-VALUE operand). The value being set may be specified directly as a character string or derived from another JV.

Privileged functions

Privileged users (OPERATING privilege and the TSOS user ID) can modify the contents of any user job variable.

By default, systems support (TSOS privilege) is a co-owner of all the job variables (and therefore possesses the same access rights). When SECOS is used, this co-ownership can be restricted for permanent job variables. 

Format

MODIFY-JV                                                               

Alias: MDJV

JV-CONTENTS = <filename 1..54 without-gen-vers> / [*SUBSTRING](...) / *LINK(...)


[*SUBSTRING](...)



|

JV-NAME = <filename 1..54 without-gen-vers>



|

,POSITION = 1 / <integer 1..256>



|

,LENGTH = *REST / <integer 1..256>


*LINK(...)



|

LINK-NAME = <alphanum-name 1..7>



|

,POSITION = 1 / <integer 1..256>



|

,LENGTH = *REST / <integer 1..256>

,SET-VALUE = <c-string 1..254 with-low> / <x-string 1..508> /





<filename 1..54 without-gen-vers> / [*SUBSTRING](...) / *LINK(...)


[*SUBSTRING](...)



|

JV-NAME = <filename 1..54 without-gen-vers>



|

,POSITION = 1 / <integer 1..256>



|

,LENGTH = *REST / <integer 1..256>


*LINK(...)



|

LINK-NAME = <alphanum-name 1..7>



|

,POSITION = 1 / <integer 1..256>



|

,LENGTH = *REST / <integer 1..256>

,PASSWORD = *NONE / <c-string 1..4> / <x-string 1..8> / <integer -2147483648..2147483647> / *SECRET

Operands

JV-CONTENTS = <filename 1..54 without-gen-vers> / *SUBSTRING(...) / *LINK(...)
Specifies the job variable contents which are to be changed.
A JV can be identified by its name or by its link name. Optionally, a subarea may be specified. The contents of the JV, or the specified subarea, are changed to the value specified in the SET-VALUE operand.

JV-CONTENTS = <filename 1..54 without-gen-vers>
Name of the JV. The contents of the entire JV are modified.

JV-CONTENTS = *SUBSTRING(...)
The contents of the subarea identified by POSITION and LENGTH are modified. If POSITION and LENGTH are not specified, the contents of the entire JV are modified.

JV-NAME = <filename 1..54 without-gen-vers>
Name of the JV.

POSITION = 1 / <integer 1..256>
Position within the JV from which the change is to begin. An undefined area ahead of this position is filled with blanks.

LENGTH = *REST / <integer 1..256>
Number of characters to be changed.
The sum of the numeric values specified in the POSITION and LENGTH operands must not exceed 257.

LENGTH = *REST
The length of the JV value starting from the position specified in the POSITION operand up to position 256 applies. If the number of characters transferred is less than the number specified by the *REST operand, no blank padding is performed; the subsequent area is (again) undefined.

JV-CONTENTS = *LINK(...)
The JV is identified by a link name. If POSITION and LENGTH are not specified, the contents of the entire JV are modified; if they are, the contents of the specified subarea are modified.

LINK-NAME = <alphanum-name 1..7>
Link name of the JV.

POSITION = 1 / <integer 1..256>
Position within the JV from which the change is to begin. An undefined area ahead of this position is filled with blanks.

LENGTH = *REST / <integer 1..256>
Number of characters to be changed.
The sum of the numeric values specified in the POSITION and LENGTH operands must not exceed 257.

LENGTH = *REST
The length of the JV value starting from the position specified in the POSITION operand up to position 256 applies. If the number of characters transferred is less than the number specified by the *REST operand, no blank padding is performed; the subsequent area is (again) undefined.

SET-VALUE = <c-string 1..254 with-low> / <x-string 1..508> / <filename 1..54 without-gen-vers> / 
*SUBSTRING(...) / *LINK(...)
New value for the JV contents specified in the JV-CONTENTS operand. The value to be set may be

  • It may be entered directly as a string (<c-string> or <x-string>); in the case of a C string the uppercase/lowercase distinction is significant.
  • It may be derived from a JV identified by its name or its link name; a subarea may be specified.

If the value being supplied is longer than the value being changed, it is truncated; if it is shorter, it is padded with blanks.

The command is rejected if

  • the JV specified does not exist
  • the JV specified is not set (has no value)
  • there is no access right for the specified JV
  • the subarea of the JV indicated by POSITION and LENGTH is not fully defined.

SET-VALUE = <filename 1..54 without-gen-vers>
Name of the JV. The entire value of this JV is taken as the new value.

SET-VALUE = *SUBSTRING(...) 
The contents of the subarea identified by POSITION and LENGTH are taken as the new value. If no subarea is specified, the contents of the entire JV are taken.

JV-NAME = <filename 1..54 without-gen-vers>
Name of the JV.

POSITION = 1 / <integer 1..256>
Position within the JV from which the transfer is to be made.

LENGTH = *REST / <integer 1..256> 
Number of characters to be transferred.
The sum of the numeric values specified in the POSITION and LENGTH operands must not exceed 257.

LENGTH = *REST
The length of the current JV value starting from the position specified in the POSITION operand applies.

SET-VALUE = *LINK(...)
The contents of a JV identified by its link name are taken as the new value. If no subarea is specified, the contents of the entire JV are taken; if a subarea is specified, the contents of the specified subarea are used

LINK-NAME = <alphanum-name 1..7>
Link name of the JV.

POSITION = 1 / <integer 1..256>
Position within the JV from which the transfer is to be made.

LENGTH = *REST / <integer 1..256>
Number of characters to be transferred.
The sum of the numeric values specified in the POSITION and LENGTH operands must not exceed 257.

LENGTH = *REST
The length of the current JV value starting from the position specified in the POSITION operand applies.

PASSWORD = *NONE / <c-string 1..4> / <x-string 1..8> / <integer -2147483648..2147483648> / *SECRET
Write or read password for the JV to be changed.
The PASSWORD operand has the following special characteristics:

  • The input field is automatically blanked out in the guided dialog.

  • In unguided dialog and foreground procedures, the entry *SECRET or ^, SDF provides a blanked out input field for inputting the password.

  • The password entered is not logged. 

Return codes

(SC2)

SC1

Maincode

Meaning


0

CMD0001

Command executed

1

0

CMD0001

No action necessary

2

0

CMD0001

Command executed with a warning


1

CMD0202

Syntax error


32

CMD0221

System error


64

JVS04E0

Command not executable in the call environment; if possible, remove cause of error (see SYSOUT message JVS04xx)


130

JVS04E1

Command cannot be executed at this time; for cause see SYSOUT message JVS04xx


130

CMD2282

Subsystem JV not available for indefinite time

Example

/mod-jv jv=hugo, set-val='I like SDF' —————————————————————————————————  (1)
/show-jv hugo

%I like SDF

/mod-jv jv=*link(lina),set-val=hugo   —————————————————————————————————  (2)
/show-jv *link(lina)

%I like SDF

/mod-jv jv=(hugo,8,4),set-val=*link(lora,128,4) ———————————————————————  (3)
/show-jv hugo

%I like milk

/mod-jv jv=*link(lina,8,6),set-val=x'839686868585' ———————————————————  (4)
/show-jv *link(lina)

%I like coffee    

(1)

The job variable HUGO is set to the value ’I like SDF’.

(2)

The contents of the job variable HUGO are transferred to the job variable identified by the link name LINA. 

(3)

The contents of bytes 128 - 131 of the job variable identified by the link name LORA are transferred to bytes 8 - 11 of the job variable HUGO.

(4)

Bytes 8 - 13 of the job variable identified by the link name LINA are set to the value X’839686868585’.