43 SUBROUTINE ufbmms(IMSG,ISUB,SUBSET,JDATE)
48 CHARACTER*128 bort_str
57 CALL
rdmemm(imsg,subset,jdate,iret)
58 IF(iret.LT.0) goto 900
60 IF(iret.NE.0) goto 901
66 900
IF(imsg.GT.0)
THEN
67 WRITE(bort_str,
'("BUFRLIB: UFBMMS - REQUESTED MEMORY MESSAGE '//
68 .
'NUMBER TO READ IN (",I5,") EXCEEDS THE NUMBER OF MESSAGES IN '//
69 .
'MEMORY (",I5,")")') imsg,msgp(0)
71 WRITE(bort_str,
'("BUFRLIB: UFBMMS - REQUESTED MEMORY MESSAGE '//
72 .
'NUMBER TO READ IN IS ZERO - THIS IS NOT VALID")')
75 901 CALL
status(munit,lun,il,im)
76 WRITE(bort_str,
'("BUFRLIB: UFBMMS - REQ. SUBSET NUMBER TO READ '//
77 .
'IN (",I3,") EXCEEDS THE NUMBER OF SUBSETS (",I3,") IN THE '//
78 .
'REG. MEMORY MESSAGE (",I5,")")') isub,msub(lun),imsg
subroutine ufbmms(IMSG, ISUB, SUBSET, JDATE)
This subroutine provides a handy way to combine the functionality of subroutines rdmemm() and rdmems(...
This module contains array and variable declarations used to store the contents of one or more BUFR f...
subroutine rdmemm(IMSG, SUBSET, JDATE, IRET)
This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in s...
subroutine rdmems(ISUB, IRET)
This subroutine reads a specified data subset from the BUFR message that was most recently read via a...
subroutine status(LUNIT, LUN, IL, IM)
This subroutine checks whether a specified Fortran logical unit number is currently connected to the ...
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...