File Utility Program (FUP) Management Programming Manual
FUP Commands and Responses
File Utility Program (FUP) Management Programming Manual—523322-001
3-21
DUPLICATE Command
BEGIN
 CALL SSNULL (dup^par^def, params);
 IF $PARAM (partonly) THEN
 params.zpart^only := partonly;
 IF $PARAM (preserve^timestamp ) THEN
 params.zpreserve^timestamp := preserve^timestamp;
 IF $PARAM (preserve^owner ) THEN
 params.zpreserve^owner := preserve^owner;
 IF $PARAM (preserve^security ) THEN
 params.zpreserve^security := preserve^security;
 IF $PARAM (destoption ) THEN
 params.zdest^option := destoption;
 CALL SSPUT (buffer, dup^par^def, params);
 END;! Check for SPI error
CALL SSGETTKN (buffer, ZSPI^TKN^LASTERR, spi^error);IF error 
THEN
 BEGIN
 CALL print^error (error);
 RETURN error;
 ELSE
 numberduped := numberduped + 1D; ! Increment by 1
! Rebuild the buffer with context token
 spi^error := SSMOVETKN (ZSPI^TKN^CONTEXT,buffer,1,
 save^buffer,1);
 IF NOT spi^error THEN
 buffer ':=' save^buffer FOR 1 ELEMENTS
 ELSE IF spi^error = ZSPI^ERR^MISTKN THEN
 done := TRUE
 ELSE
 RETURN ss^error (spi^error);
 END; ! WHILE loop
 RETURN 0;
END; ! DUPLICATE Procedure
Figure 3-2. TAL Example of a DUPLICATE Procedure (page 3 of 3)










