11 type(dbasession) :: session, sessionto
12 type(dbaconnection) :: connection
13 integer :: ier, category
14 CHARACTER(len=512) :: a_name
17 call l4f_launcher(a_name,a_name_force=
"dballe_test")
21 category=l4f_category_get(a_name//
".main")
25 session=
dbasession(connection,wipe=.true.,write=.true.)
29 sessionto=
dbasession(filename=
"dballe_test3.bufr",wipe=.true.,write=.true.,memdb=.false.,template=
"generic")
30 call export2bufrwithfilter()
32 # ifndef F2003_FULL_FEATURES 34 call sessionto%delete()
36 call connection%delete()
41 CALL l4f_category_delete(category)
48 type(dbametaanddata),
allocatable :: metaanddata(:)
52 print *,
"----------------------------------------------" 53 print *,
"--------------- write ------------------------" 55 allocate(metaanddata(1))
58 level=
dbalevel(level1=105, l1=2000) &
60 ,ana=
dbaana(lon=10.d0,lat=45.d0) &
66 allocate (metaanddata(1)%dataattrv%dataattr(2))
69 allocate (metaanddata(1)%dataattrv%dataattr(1)%dat,source=
dbadatai(
"B13003",85))
71 allocate (metaanddata(1)%dataattrv%dataattr(2)%dat,source=
dbadatai(
"B12101",27315))
74 allocate (attrv%dcv(3))
75 allocate (attrv%dcv(1)%dat,source=
dbadatar(
"*B33192",30.))
76 allocate (attrv%dcv(2)%dat,source=
dbadatai(
"*B33193",50))
77 allocate (attrv%dcv(3)%dat,source=
dbadatar(
"*B33194",70.))
79 metaanddata(1)%dataattrv%dataattr(1)%attrv=attrv
80 metaanddata(1)%dataattrv%dataattr(2)%attrv=attrv
86 do i=1,
size(metaanddata)
87 call metaanddata(i)%display()
89 call metaanddata(i)%extrude(session)
96 subroutine export2bufrwithfilter
97 type(dbametaanddata),
allocatable:: metaanddatav(:)
98 type(dbadcv) :: vars,starvars
99 type(dbafilter) filter
103 print *,
"----------------------------------------------" 104 print *,
"--------------- export2bufr ------------------------" 106 allocate (vars%dcv(1))
107 allocate (vars%dcv(1)%dat,source=
dbadatai(
"B12101"))
109 allocate (starvars%dcv(2))
110 allocate (starvars%dcv(1)%dat,source=
dbadatab(
"*B33193"))
111 allocate (starvars%dcv(2)%dat,source=
dbadatab(
"*B33194"))
114 call filter%display()
115 call session%ingest(metaanddatav,filter=filter)
116 do i=1,
size(metaanddatav)
117 call metaanddatav(i)%display()
118 call metaanddatav(i)%extrude(sessionto)
123 call filter%display()
124 call session%ingest(metaanddatav,filter=filter)
125 do i=1,
size(metaanddatav)
126 call metaanddatav(i)%display()
127 call metaanddatav(i)%extrude(sessionto)
131 filter=
dbafilter(vars=vars,starvars=starvars)
132 call filter%display()
133 call session%ingest(metaanddatav,filter=filter)
134 do i=1,
size(metaanddatav)
135 call metaanddatav(i)%display()
136 call metaanddatav(i)%extrude(sessionto)
141 call filter%display()
142 call session%ingest(metaanddatav,filter=filter)
143 do i=1,
size(metaanddatav)
144 call metaanddatav(i)%display()
145 call metaanddatav(i)%extrude(sessionto)
148 end subroutine export2bufrwithfilter
150 end program dballe_test3
Class for expressing an absolute time value.
Classi per la gestione delle coordinate temporali.
filter to apply before ingest data
manage connection handle to a DSN
Definitions of constants and functions for working with missing values.
integer version for dbadata
class for import and export data from e to DB-All.e.
classe per la gestione del logging
Global log4fortran constructor.