9 type(dbasession) :: session, sessionto
10 type(dbaconnection) :: connection
11 integer :: ier, category
12 CHARACTER(len=512) :: a_name
15 call l4f_launcher(a_name,a_name_force=
"dballe_test")
19 category=l4f_category_get(a_name//
".main")
23 session=
dbasession(connection,wipe=.true.,write=.true.)
27 sessionto=
dbasession(filename=
"dballe_test3.bufr",wipe=.true.,write=.true.,memdb=.false.,template=
"generic")
28 call export2bufrwithfilter()
30 call sessionto%delete()
33 call sessionto%delete()
35 call connection%delete()
39 CALL l4f_category_delete(category)
46 type(dbametaanddata),
allocatable :: metaanddata(:)
50 print *,
"----------------------------------------------" 51 print *,
"--------------- write ------------------------" 53 allocate(metaanddata(1))
56 level=
dbalevel(level1=105, l1=2000) &
58 ,ana=
dbaana(lon=10.d0,lat=45.d0) &
64 allocate (metaanddata(1)%dataattrv%dataattr(2))
67 allocate (metaanddata(1)%dataattrv%dataattr(1)%dat,source=
dbadatai(
"B13003",85))
69 allocate (metaanddata(1)%dataattrv%dataattr(2)%dat,source=
dbadatai(
"B12101",27315))
72 allocate (attrv%dcv(3))
73 allocate (attrv%dcv(1)%dat,source=
dbadatar(
"*B33192",30.))
74 allocate (attrv%dcv(2)%dat,source=
dbadatai(
"*B33193",50))
75 allocate (attrv%dcv(3)%dat,source=
dbadatar(
"*B33194",70.))
77 metaanddata(1)%dataattrv%dataattr(1)%attrv=attrv
78 metaanddata(1)%dataattrv%dataattr(2)%attrv=attrv
84 do i=1,
size(metaanddata)
85 call metaanddata(i)%display()
87 call metaanddata(i)%extrude(session)
94 subroutine export2bufrwithfilter
95 type(dbametaanddata),
allocatable:: metaanddatav(:)
96 type(dbadcv) :: vars,starvars
97 type(dbafilter) filter
101 print *,
"----------------------------------------------" 102 print *,
"--------------- export2bufr ------------------------" 104 allocate (vars%dcv(1))
105 allocate (vars%dcv(1)%dat,source=
dbadatai(
"B12101"))
107 allocate (starvars%dcv(2))
108 allocate (starvars%dcv(1)%dat,source=
dbadatab(
"*B33193"))
109 allocate (starvars%dcv(2)%dat,source=
dbadatab(
"*B33194"))
112 call filter%display()
113 call session%ingest(metaanddatav,filter=filter)
114 do i=1,
size(metaanddatav)
115 call metaanddatav(i)%display()
116 call metaanddatav(i)%extrude(sessionto)
121 call filter%display()
122 call session%ingest(metaanddatav,filter=filter)
123 do i=1,
size(metaanddatav)
124 call metaanddatav(i)%display()
125 call metaanddatav(i)%extrude(sessionto)
129 filter=
dbafilter(vars=vars,starvars=starvars)
130 call filter%display()
131 call session%ingest(metaanddatav,filter=filter)
132 do i=1,
size(metaanddatav)
133 call metaanddatav(i)%display()
134 call metaanddatav(i)%extrude(sessionto)
139 call filter%display()
140 call session%ingest(metaanddatav,filter=filter)
141 do i=1,
size(metaanddatav)
142 call metaanddatav(i)%display()
143 call metaanddatav(i)%extrude(sessionto)
146 end subroutine export2bufrwithfilter
148 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.