73 SUBROUTINE w3trnarg(SUBDIR,LSUBDR,TANKID,LTNKID,APPCHR,LAPCHR,
74 1 TLFLAG,IYMDHB,IYMDHE,IERR)
75 CHARACTER*(*) SUBDIR,TANKID,APPCHR,TLFLAG
76 INTEGER IDATIN(8),IDTOUT(8)
78 READ(5,*,
END=9999) SUBDIR,TANKID,APPCHR,iymdh
81 IF(subdir(lsubdr+1:lsubdr+1).EQ.
' ')
GO TO 10
86 WRITE(6,
'(1X,I2,'' CHARACTERS IN SUBDIRECTORY ARGUMENT'',
87 1 '' AT LEAST 4 CHARACTERS ARE REQUIRED'')') lsubdr
93 IF(tankid(ltnkid+1:ltnkid+1).EQ.
' ')
GO TO 20
98 WRITE(6,
'(1X,I2,'' CHARACTERS IN TANKFILE ARGUMENT'',
99 1 '' AT LEAST 4 CHARACTERS ARE REQUIRED'')') ltnkid
105 IF(appchr(lapchr+1:lapchr+1).EQ.
' ')
GO TO 30
110 READ(5,*,
END=40) tlflag
112 IF(tlflag(1:6).NE.
'TIMLIM')
THEN
114 print 123, iymdh,subdir(1:lsubdr),tankid(1:ltnkid)
115 123
FORMAT(/
'RUN ON ',i10/
'WRITE TO ',a,
'/',a/
'GROSS TIME LIMIT ',
116 1
'CHECKS ARE NOT PERFORMED HERE - SUBSEQUENT PROGRAM ',
117 1
'BUFR_TRANJB WILL TAKE CARE OF THIS'/)
124 READ(5,*,
END=60) ihrbef
131 READ(5,*,
END=80) ihraft
137 IF(ihrbef.GT.0 .AND. ihraft.LT.0)
THEN
141 ELSE IF(ihrbef.GT.0)
THEN
145 idatin(1) = iymdh / 1000000
146 idatin(2) = mod(iymdh,1000000) / 10000
147 idatin(3) = mod(iymdh,10000) / 100
149 idatin(5) = mod(iymdh,100)
152 timinc(2) = float(ihrbef)
154 CALL w3movdat(timinc,idatin,idtout)
155 iymdhb = ((idtout(1) * 100 + idtout(2)) * 100 + idtout(3)) *
157 timinc(2) = float(ihraft)
158 CALL w3movdat(timinc,idatin,idtout)
159 iymdhe = ((idtout(1) * 100 + idtout(2)) * 100 + idtout(3)) *
161 print 124, iymdh,subdir(1:lsubdr),tankid(1:ltnkid),iymdhb,iymdhe
162 124
FORMAT(/
'RUN ON ',i10/
'WRITE TO ',a,
'/',a/
'ACCEPT BETWEEN ',i10,
167 WRITE(6,
'('' INSUFFICIENT NO. OF ARGUMENTS TO BUFR '',
168 1 ''TRANSLATION PROCEDURE - AT LEAST 4 ARE NEEDED'')')