/*------------------------------------------------------------------ THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES -------------------------------------------------------------------*/ /* CLON1LNX EXEC: clone 100 disk from zvl281 to a target user ID */ /* Arg 1: the target user ID */ parse arg targetID . sourceID = "zvl281" call checkID sourceID call checkID targetID say ' ' say 'Copying mindisk 100 from' sourceID 'to' targetID 'CP LINK' sourceID '100 1100 RR' 'CP LINK' targetID '100 2100 MR' COPYMDSK 1100 2100 'CP DETACH 1100' 'CP DETACH 2100' exit /*+------------------------------------------------------------------+*/ checkID: procedure /*| Check that a user ID is logged off |*/ /*| parm 1: userID in question |*/ /*+------------------------------------------------------------------+*/ parse arg userid 'cp query' userid retVal = rc select when (retVal = 0) then do say 'User ID' userid 'must be logged off' exit 1 end when (retVal = 3) then do say 'User ID' userid 'does not exist' exit 2 end when (retVal = 45) then do /* no-op - this is expected */ end otherwise say 'Return code of' retval 'is not expected' exit 3 end /* select */ return