11 type(dbasession) :: session, sessionto
12 type(dbaconnection) :: connection
13 TYPE(l4f_handle) :: category
15 CHARACTER(len=512) :: a_name
18 call l4f_launcher(a_name,a_name_force=
"dballe_test")
22 category=l4f_category_get_handle(trim(a_name)//
".main")
26 session=
dbasession(connection,wipe=.true.,write=.true.)
30 sessionto=
dbasession(filename=
"dballe_test3.bufr",wipe=.true.,write=.true.,memdb=.false.,template=
"generic")
31 call export2bufrwithfilter()
33 # ifndef F2003_FULL_FEATURES 35 call sessionto%delete()
37 call connection%delete()
42 CALL l4f_category_delete(category)
49 type(dbametaanddata),
allocatable :: metaanddata(:)
53 print *,
"----------------------------------------------" 54 print *,
"--------------- write ------------------------" 56 allocate(metaanddata(1))
59 level=
dbalevel(level1=105, l1=2000) &
61 ,ana=
dbaana(lon=10.d0,lat=45.d0) &
67 allocate (metaanddata(1)%dataattrv%dataattr(2))
70 allocate (metaanddata(1)%dataattrv%dataattr(1)%dat,source=
dbadatai(
"B13003",85))
72 allocate (metaanddata(1)%dataattrv%dataattr(2)%dat,source=
dbadatai(
"B12101",27315))
75 allocate (attrv%dcv(3))
76 allocate (attrv%dcv(1)%dat,source=
dbadatar(
"*B33192",30.))
77 allocate (attrv%dcv(2)%dat,source=
dbadatai(
"*B33193",50))
78 allocate (attrv%dcv(3)%dat,source=
dbadatar(
"*B33194",70.))
80 metaanddata(1)%dataattrv%dataattr(1)%attrv=attrv
81 metaanddata(1)%dataattrv%dataattr(2)%attrv=attrv
87 do i=1,
size(metaanddata)
88 call metaanddata(i)%display()
90 call metaanddata(i)%extrude(session)
97 subroutine export2bufrwithfilter
98 type(dbametaanddata),
allocatable:: metaanddatav(:)
99 type(dbadcv) :: vars,starvars
100 type(dbafilter) filter
104 print *,
"----------------------------------------------" 105 print *,
"--------------- export2bufr ------------------------" 107 allocate (vars%dcv(1))
108 allocate (vars%dcv(1)%dat,source=
dbadatai(
"B12101"))
110 allocate (starvars%dcv(2))
111 allocate (starvars%dcv(1)%dat,source=
dbadatab(
"*B33193"))
112 allocate (starvars%dcv(2)%dat,source=
dbadatab(
"*B33194"))
115 call filter%display()
116 call session%ingest(metaanddatav,filter=filter)
117 do i=1,
size(metaanddatav)
118 call metaanddatav(i)%display()
119 call metaanddatav(i)%extrude(sessionto)
124 call filter%display()
125 call session%ingest(metaanddatav,filter=filter)
126 do i=1,
size(metaanddatav)
127 call metaanddatav(i)%display()
128 call metaanddatav(i)%extrude(sessionto)
132 filter=
dbafilter(vars=vars,starvars=starvars)
133 call filter%display()
134 call session%ingest(metaanddatav,filter=filter)
135 do i=1,
size(metaanddatav)
136 call metaanddatav(i)%display()
137 call metaanddatav(i)%extrude(sessionto)
142 call filter%display()
143 call session%ingest(metaanddatav,filter=filter)
144 do i=1,
size(metaanddatav)
145 call metaanddatav(i)%display()
146 call metaanddatav(i)%extrude(sessionto)
149 end subroutine export2bufrwithfilter
151 end program dballe_test3
Class for expressing an absolute time value.
Classi per la gestione delle coordinate temporali.
filter to apply before ingest data
Global log4fortran destructor.
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.