libsim  Versione6.3.0

◆ dbasession_init()

recursive type(dbasession) function dballe_class::dbasession_init ( type(dbaconnection), intent(in), optional  connection,
character (len=*), intent(in), optional  anaflag,
character (len=*), intent(in), optional  dataflag,
character (len=*), intent(in), optional  attrflag,
character (len=*), intent(in), optional  filename,
character (len=*), intent(in), optional  mode,
character(len=*), intent(in), optional  format,
character (len=*), intent(in), optional  template,
logical, intent(in), optional  write,
logical, intent(in), optional  wipe,
character(len=*), intent(in), optional  repinfo,
logical, intent(in), optional  simplified,
logical, intent(in), optional  memdb,
logical, intent(in), optional  loadfile,
character(len=*), intent(in), optional  categoryappend 
)
private

Constructor Without parameter it is initialized to missing.

Parametri
[in]connectiondballe connection
[in]anaflagcontrols access to pseudoana records and can have these values "read": pseudoana records cannot be modified; "write": pseudoana records can be added and removed.
[in]dataflagcontrol access to observed data and can have these values "read": data cannot be modified in any way; "add": data can be added to the database, but existing data cannot be modified. Deletions are disabled. This is used to insert new data in the database while preserving the data that was already present in it; "write": data can freely be added, overwritten and deleted.
[in]attrflagcontrols access to data attributes and can have these values "read": attributes cannot be modified in any way; "write": attributes can freely be added, overwritten and deleted. Note that some combinations are illegal, such as pseudoana=read and data=add (when adding a new data, it's sometimes necessary to insert new pseudoana records), or data=rewrite and attr=read (when deleting data, their attributes are deleted as well).
[in]filenameoptional file name to use
[in]mode"r"/"w"/"a" the open mode ("r" for read, "w" for write or create, "a" for append)
[in]templatetemplate to use for write on file
[in]writeenable write on DSN/file ( default=.false. )
[in]wipeclean DSN/file and initialize it ( default=.false. )
[in]repinfooptional file repinfo.csv to use with wipe ( default="" )
[in]formatthe file format. It can be "BUFR" or "CREX". (default="BUFR")
[in]simplifiedrappresentation for interpreted message (simplified/precise)
[in]memdbif true set a memdb ready for import data from file (default=true if filename present else false)
[in]loadfileif true import from file to memdb (default=true if filename present else false)
[in]categoryappendname to append to namespace category of log4fortran

Definizione alla linea 4042 del file dballe_class.F03.

4042  end if
4043 
4044  else
4045 
4046  ier = idba_messaggi(dbasession_init%sehandle,filename, lmode, lformat)
4047 
4048  end if
4049 
4050 else
4051 
4052  ier = idba_preparati(connection%dbhandle,dbasession_init%sehandle, lanaflag, ldataflag, lattrflag)
4053  if (lwipe)ier=idba_scopa(dbasession_init%sehandle,lrepinfo)
4054 
4055 end if
4056 
4057 dbasession_init%file=lfile
4058 if (dbasession_init%file) dbasession_init%filename=filename
4059 dbasession_init%mode=lmode
4060 dbasession_init%format=lformat
4061 dbasession_init%simplified=lsimplified
4062 dbasession_init%memdb=lmemdb
4063 dbasession_init%loadfile=lloadfile
4064 dbasession_init%template=ltemplate
4065 
4066 !!$print*,"--------------- at end ---------------------------------"
4067 !!$print *,'file',dbasession_init%file
4068 !!$print *,'filename',trim(dbasession_init%filename)
4069 !!$print *,'mode',dbasession_init%mode
4070 !!$print *,'format',dbasession_init%format
4071 !!$print *,'simplified',dbasession_init%simplified
4072 !!$print *,'memdb',dbasession_init%memdb
4073 !!$print *,'loadfile',dbasession_init%loadfile
4074 !!$print *,'template',dbasession_init%template
4075 !!$print*,"------------------------------------------------"
4076 
4077 end function dbasession_init
4078 
4079 
4081 subroutine dbasession_unsetall(session)
4082 class(dbasession), intent(in) :: session
4083 integer :: ier
4084 
4085 if (c_e(session%sehandle)) then
4086  ier = idba_unsetall(session%sehandle)
4087 end if
4088 
4089 end subroutine dbasession_unsetall
4090 
4091 
4093 subroutine dbasession_remove_all(session)
4094 class(dbasession), intent(in) :: session
4095 integer :: ier
4096 
4097 if (c_e(session%sehandle)) then
4098  ier = idba_remove_all(session%sehandle)
4099 end if
4100 
4101 end subroutine dbasession_remove_all
4102 
4103 
4105 subroutine dbasession_prendilo(session)
4106 class(dbasession), intent(in) :: session
4107 integer :: ier
4108 
4109 if (c_e(session%sehandle)) then
4110  ier = idba_prendilo(session%sehandle)
4111 end if
4112 
4113 end subroutine dbasession_prendilo
4114 
4116 subroutine dbasession_var_related(session,btable)
4117 class(dbasession), intent(in) :: session
4118 character(len=*),INTENT(IN) :: btable
4119 integer :: ier
4120 
4121 if (c_e(session%sehandle)) then
4122  ier = idba_set(session%sehandle,"*var_related",btable)
4123 end if
4124 
4125 end subroutine dbasession_var_related
4126 
4128 subroutine dbasession_setcontextana(session)
4129 class(dbasession), intent(in) :: session
4130 integer :: ier
4131 
4132 if (c_e(session%sehandle)) then
4133  ier = idba_setcontextana(session%sehandle)
4134 end if
4135 
4136 end subroutine dbasession_setcontextana
4137 
4139 subroutine dbasession_dimenticami(session)
4140 class(dbasession), intent(in) :: session
4141 integer :: ier
4142 
4143 if (c_e(session%sehandle)) then
4144  ier = idba_dimenticami(session%sehandle)
4145 end if
4146 
4147 end subroutine dbasession_dimenticami
4148 
4150 subroutine dbasession_critica(session)
4151 class(dbasession), intent(in) :: session
4152 integer :: ier
4153 
4154 if (c_e(session%sehandle)) then
4155  ier = idba_critica(session%sehandle)
4156 end if
4157 
4158 end subroutine dbasession_critica
4159 
4161 subroutine dbasession_scusa(session)
4162 class(dbasession), intent(in) :: session
4163 integer :: ier
4164 
4165 if (c_e(session%sehandle)) then
4166  ier = idba_scusa(session%sehandle)
4167 end if
4168 
4169 end subroutine dbasession_scusa
4170 
4172 subroutine dbasession_set(session,metadata,datav,data,datetime,ana,network,level,timerange,filter)
4173 class(dbasession), intent(in) :: session
4174 type(dbametadata),optional :: metadata
4175 class(dbadcv),optional :: datav
4176 class(dbadata),optional :: data
4177 type(dbadatetime),optional :: datetime
4178 type(dbaana),optional :: ana
4179 type(dbanetwork),optional :: network
4180 type(dbalevel),optional :: level
4181 type(dbatimerange),optional :: timerange
4182 type(dbafilter),optional :: filter
4183 
4184 if (present(metadata)) then
4185  call metadata%dbaset(session)
4186 endif
4187 
4188 if (present(datetime)) then
4189  call datetime%dbaset(session)
4190 endif
4191 
4192 if (present(ana)) then
4193  call ana%dbaset(session)
4194 endif
4195 
4196 if (present(network)) then
4197  call network%dbaset(session)
4198 endif
4199 
4200 if (present(level)) then
4201  call level%dbaset(session)
4202 endif
4203 
4204 if (present(timerange)) then
4205  call timerange%dbaset(session)
4206 endif
4207 
4208 if (present(datav)) then
4209  call datav%dbaset(session)
4210 end if
4211 
4212 if (present(data)) then
4213  call data%dbaset(session)
4214 end if
4215 
4216 if (present(filter)) then
4217  call filter%dbaset(session)
4218 end if
4219 
4220 end subroutine dbasession_set
4221 
4222 
4223 !!! Those are for reverse order call session%extrude(object)
4224 
4225 !!$!> put data on DSN
4226 !!$subroutine dbasession_extrude_ana(session,ana)
4227 !!$class(dbasession), intent(in) :: session
4228 !!$class(dbaana) :: ana !< ana
4229 !!$call ana%extrude(session)
4230 !!$end subroutine dbasession_extrude_ana
4231 !!$
4232 !!$!> put data on DSN
4233 !!$subroutine dbasession_extrude_dataattr(session,dataattr)
4234 !!$class(dbasession), intent(in) :: session
4235 !!$class(dbadataattr) :: dataattr !< dataattr
4236 !!$call dataattr%extrude(session)
4237 !!$end subroutine dbasession_extrude_dataattr
4238 !!$
4239 !!$!> put data on DSN
4240 !!$subroutine dbasession_extrude_dataattrv(session,dataattrv,noattr,filter)
4241 !!$class(dbasession), intent(in) :: session
4242 !!$class(dbadataattrv) :: dataattrv !< array datatattr
4243 !!$logical, intent(in),optional :: noattr !< set to .true. to get data only (no attribute)
4244 !!$type(dbafilter),intent(in),optional :: filter !< use this to filter wanted data
4245 !!$
4246 !!$call dataattrv%extrude(session,noattr,filter)
4247 !!$end subroutine dbasession_extrude_dataattrv
4248 !!$
4249 !!$!> put data on DSN
4250 !!$subroutine dbasession_extrude_metaanddata(session,metaanddata,noattr,filter)
4251 !!$class(dbasession), intent(in) :: session
4252 !!$class(dbametaanddata) :: metaanddata !< metaanddata
4253 !!$logical, intent(in),optional :: noattr !< set to .true. to get data only (no attribute)
4254 !!$type(dbafilter),intent(in),optional :: filter !< use this to filter wanted data
4255 !!$
4256 !!$call metaanddata%extrude(session,noattr,filter)
4257 !!$end subroutine dbasession_extrude_metaanddata
4258 !!$
4259 !!$!> put data on DSN
4260 !!$subroutine dbasession_extrude_metaanddatai(session,metaanddatai)
4261 !!$class(dbasession), intent(in) :: session
4262 !!$class(dbametaanddatai) :: metaanddatai !< metaanddatai
4263 !!$call metaanddatai%extrude(session)
4264 !!$end subroutine dbasession_extrude_metaanddatai
4265 !!$
4266 !!$!> put data on DSN
4267 !!$subroutine dbasession_extrude_metaanddatab(session,metaanddatab)
4268 !!$class(dbasession), intent(in) :: session
4269 !!$class(dbametaanddatab) :: metaanddatab !< metaanddatab
4270 !!$call metaanddatab%extrude(session)
4271 !!$end subroutine dbasession_extrude_metaanddatab
4272 !!$
4273 !!$!> put data on DSN
4274 !!$subroutine dbasession_extrude_metaanddatad(session,metaanddatad)
4275 !!$class(dbasession), intent(in) :: session
4276 !!$class(dbametaanddatad) :: metaanddatad !< metaanddatad
4277 !!$call metaanddatad%extrude(session)
4278 !!$end subroutine dbasession_extrude_metaanddatad
4279 !!$
4280 !!$!> put data on DSN
4281 !!$subroutine dbasession_extrude_metaanddatac(session,metaanddatac)
4282 !!$class(dbasession), intent(in) :: session
4283 !!$class(dbametaanddatac) :: metaanddatac !< metaanddatac
4284 !!$call metaanddatac%extrude(session)
4285 !!$end subroutine dbasession_extrude_metaanddatac
4286 !!$
4287 !!$!> put data on DSN
4288 !!$subroutine dbasession_extrude_metaanddatar(session,metaanddatar)
4289 !!$class(dbasession), intent(in) :: session
Class for expressing an absolute time value.

Generated with Doxygen.