Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: AIBCVT3

AIBCVT3.m

Go to the documentation of this file.
  1. AIBCVT3 ;IHS/DDPS/DFM-IBM STAT RECORDS WRITE [ 01/12/89 1:11 PM ]
  1. ;1.3; 1/13/89 DEFAULT TO "3" ON RG3 SOURCE - PIECE 7 INSTEAD OF "2"
  1. ;1.3 RECODE BUILD OF DELETE MERGE NODE TO SET SOURCE = 3
  1. ;1.3; 9/23/88 RESTRUCTURE, ALLOW FOR REGISTRATION ELIGIBILITY FILE
  1. ;1.0; 3/28/88
  1. G:AIBFILE="ibmjob" BLDCARDS D WRITE U AIBPDV G RETURN
  1. BLDCARDS ;BUILD CARDS FOR RJE BYSYNC JOB SUBMISSION
  1. S AIBB1=1,AIBOW=AIBOT_AIBOT(1),(AIBOT,AIBOT(1))=""
  1. CARDLOOP ;BUILD NEXT CARD
  1. S AIBRK=$P(AIBB(AIBB1),U,1),AIBRKB=$P(AIBB(AIBB1),U,6)
  1. S AIBRL=$P(AIBB(AIBB1),U,4),AIBRB=$P(AIBB(AIBB1),U,5)
  1. S AIBRE=AIBRB+AIBRL-1
  1. I AIBRKB<2 G MOVREST
  1. S AIBOT=$E(AIBOW,AIBRB,AIBRE)_$J("",80-AIBRL-$L(AIBRK))_AIBRK G WRITEC
  1. MOVREST ;
  1. S:AIBRKB=0 AIBRK=""
  1. S AIBOT=AIBRK_$E(AIBOW,AIBRB,AIBRE)_$J("",80-AIBRL-$L(AIBRK))
  1. WRITEC ;WRITE 1 CARD
  1. D WRITE I AIBB1=AIBB2 U AIBPDV G RETURN
  1. S AIBB1=AIBB1+1,AIBOT="" G CARDLOOP
  1. WRITE ;WRITE RECORD TO FILE
  1. U AIBTDV W AIBOT,AIBOT(1) S (AIBOT,AIBOT(1))=""
  1. I AIBOS="D" G DSMLOGIC
  1. W ! G:$L(AIBJ)>0 RETURN G DISPLAY
  1. DSMLOGIC ;SPECIAL WRITE LOGIC FOR DSM
  1. X ^%ZOSF("MTERR") I Y S AIBA="R" G RETURN
  1. X ^%ZOSF("EOT") I Y D NEWTAPE G:$L(AIBA)>0 RETURN
  1. DISPLAY ;DISPLAY RECORD COUNT ON CONSOLE (BY 10S)
  1. S AIBCTW=AIBCTW+1 U AIBCDV S AIBRM=AIBCTW#10 G:AIBRM>0 RETURN
  1. S AIBLK="",AIBLK=AIBLK_$J("",8-$L(AIBCTW)) W AIBLK,AIBCTW G RETURN
  1. NEWTAPE ;WRITE TAPEMARK, CLOSE AND REWIND, MOUNT AND OPEN NEXT TAPE
  1. U AIBTDV W %MT("WTM"),%MT("REW") S IO=AIBTDV X ^%ZIS("C")
  1. S AIBMSG="Tape # "_AIBTC_" Volume Serial Number Created : "_AIBV
  1. D ERRMSG^AIBCVT6 D MOUNT^AIBSDEV1 G RETURN
  1. WRITET ;WRITE TEMPORY GLOBAL FOR DIFFERENT FORMAT RECORDS
  1. I $L(AIBTZ)>0 G CKNEXT
  1. S AIBTZ=0,AIBZ(0)=AIBZ,AIBZZ(0)=AIBZZ,AIBZ=0,AIBZZ=0
  1. S @AIBTGLT=@AIBGBLT,AIBZ=AIBZ(0),@AIBTGFT=@AIBGBFT,AIBZZ=AIBZZ(0)
  1. CKNEXT ;
  1. I AIBZ=AIBZ(0) G NEXT
  1. S AIBZ(1)=AIBZ,AIBZ=AIBZ(0),AIBZZ(0)=AIBZZ,AIBZZ=0
  1. S AIBTZ(0)=AIBTZ,AIBTZ=0
  1. S $P(@AIBTGFT,U,3)=AIBTZ(0),$P(@AIBTGFT,U,4)=AIBTZ(0)
  1. S AIBTZ(1)=AIBTZ(1)+AIBTZ(0),AIBZ=AIBZ(1),AIBZ(0)=AIBZ
  1. S @AIBTGFT=@AIBGBFT,AIBZZ=AIBZZ(0)
  1. NEXT ;PROCESS CONTINUE
  1. S AIBTZ=AIBTZ+1 G:AIBNK="RG3" RG3FORM
  1. I AIBNK="RG4" G RG4BATH
  1. S AIBOT=AIBIN G CONTWT
  1. RG3FORM ;REFORMAT NODE RG3 REGISTRATION DELETE MERGE
  1. S AIBRG4=$P(AIBIN,U,4) IF $L(AIBRG4)=0 S AIBRRR="" G RG3BLD
  1. S AIBRRR="RRR"
  1. RG3BLD ;BUILD NEW RG3 NODE
  1. S AIBRG2=$P(AIBIN,U,2),AIBSRC=$P(AIBIN,U,7) S:AIBSRC="" AIBSRC="3"
  1. S AIBOT="RG3"_U_$E(AIBRG2,1,2)_$E(AIBRG2,1,6)_$E(AIBRG2,1,6)_U_"?"
  1. S AIBOT=AIBOT_U_$P(AIBIN,U,5)_U_$P(AIBIN,U,6)_U_AIBRRR_U_$P(AIBIN,U,3)
  1. S AIBOT=AIBOT_U_"99RR"_U_AIBYMD_U_"***"_U_AIBRRR_U_AIBRG4_U_AIBSRC K AIBSRC
  1. S AIBOT=AIBOT_U_$E(AIBRG2,5,6) G CONTWT
  1. RG4BATH ;EXPAND BATCH HEADER CONTROL DATA FOR RG4 RECORDS
  1. S AIBOT=AIBIN G:AIBGBLP="AGTX" CONTWT
  1. S AIBRG2=$P(AIBOT,U,2)
  1. S $P(AIBOT,U,2)=$E(AIBRG2,1,2)_$E(AIBRG2,1,6)_$E(AIBRG2,1,6)
  1. G CONTWT
  1. CONTWT ;READY FOR WRITE OF TEMP NODE
  1. S @AIBTGFT=AIBOT,AIBOT="",AIBCT2=AIBCT2+1
  1. RETURN ;RETURN TO CALLING ROUTINE
  1. Q