Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. The file-type you want to import should be readable by one of the imports available in Delft-Fews
  2. You must configure an instance of this import module
  3. You must add the moduleInstance to an workflow (usually tne ImportExternal Workflow)
  4. In case the locationId's and parameterId's in your Delft-Fews configuration are not identical to those in the files you need to import a IdMap file should be set up and referred to in the import module
  5. You will probably need to adjust one or more locationsets, the filters.xml file and the DisplayGroups.xml file if you need to display or process the newly imported data types.
    Info

    Please note that Delft-Fews DELETES all files after importing them. As such, you should ALWAYS copy files from another directory to the location from which Delft-Fews imports files. If you do not do this you might loose you files.

Setting up the import module

...

No Format
<?xml version="1.0" encoding="UTF-8"?>
<TimeSeries xmlns="http://www.wldelft.nl/fews/PI" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.wldelft.nl/fews/PI 
http://fews.wldelft.nl/schemas/version1.0/pi-schemas/pi_timeseries.xsd" 
version="1.2">
	<series>
		<header>
			<type>instantaneous</type>
			<locationId>locA</locationId>
			<parameterId>WaterLevel</parameterId>
			<timeStep unit="second" multiplier="3600"/>
			<startDate date="2006-08-23" time="17:00:00"/>
			<endDate date="2006-08-24" time="00:00:00"/>
			<missVal>-8888.0</missVal>
			<longName>locA</longName>
			<units>m</units>
		</header>
		<event date="2006-08-23" time="17:00:00" value="8.66"/>
		<event date="2006-08-23" time="18:00:00" value="9.66"/>
		<event date="2006-08-23" time="19:00:00" value="8.66"/>
		<event date="2006-08-23" time="20:00:00" value="-8888.0"/>
		<event date="2006-08-23" time="21:00:00" value="3"/>
		<event date="2006-08-23" time="22:00:00" value="3"/>
		<event date="2006-08-23" time="23:00:00" value="3"/>
		<event date="2006-08-24" time="00:00:00" value="-8888.0"/>
	</series>
	<series>
		<header>
			<type>instantaneous</type>
			<locationId>locB</locationId>
			<parameterId>WaterLevel</parameterId>
			<timeStep unit="second" multiplier="3600"/>
			<startDate date="2006-08-23" time="13:00:00"/>
			<endDate date="2006-08-24" time="00:00:00"/>
			<missVal>-999.0</missVal>
			<longName>locB</longName>
			<units>m</units>
		</header>
		<event date="2006-08-23" time="13:00:00" value="0.63"/>
		<event date="2006-08-23" time="14:00:00" value="0.61"/>
		<event date="2006-08-23" time="15:00:00" value="0.59"/>
		<event date="2006-08-23" time="16:00:00" value="0.59"/>
		<event date="2006-08-23" time="17:00:00" value="0.59"/>
		<event date="2006-08-23" time="18:00:00" value="0.59"/>
		<event date="2006-08-23" time="19:00:00" value="0.60"/>
		<event date="2006-08-23" time="20:00:00" value="0.57"/>
		<event date="2006-08-23" time="21:00:00" value="0.59"/>
		<event date="2006-08-23" time="22:00:00" value="0.59"/>
		<event date="2006-08-23" time="23:00:00" value="-999.0"/>
		<event date="2006-08-24" time="00:00:00" value="-999.0"/>
	</series>
	<series>
		<header>
			<type>instantaneous</type>
			<locationId>LocC</locationId>
			<parameterId>WaterLevel</parameterId>
			<timeStep unit="second" multiplier="3600"/>
			<startDate date="2006-08-23" time="13:00:00"/>
			<endDate date="2006-08-24" time="00:00:00"/>
			<missVal>-999.0</missVal>
			<longName>LocC</longName>
			<units>m</units>
		</header>
		<event date="2006-08-23" time="13:00:00" value="-1.42"/>
		<event date="2006-08-23" time="14:00:00" value="-1.42"/>
		<event date="2006-08-23" time="15:00:00" value="-1.44"/>
		<event date="2006-08-23" time="16:00:00" value="-1.46"/>
		<event date="2006-08-23" time="17:00:00" value="-1.46"/>
		<event date="2006-08-23" time="18:00:00" value="-1.46"/>
		<event date="2006-08-23" time="19:00:00" value="-1.48"/>
		<event date="2006-08-23" time="20:00:00" value="-1.48"/>
		<event date="2006-08-23" time="21:00:00" value="-1.48"/>
		<event date="2006-08-23" time="22:00:00" value="-1.49"/>
		<event date="2006-08-23" time="23:00:00" value="-999.0"/>
		<event date="2006-08-24" time="00:00:00" value="-999.0"/>
	</series>
	<series>
		<header>
			<type>instantaneous</type>
			<locationId>LocD</locationId>
			<parameterId>WaterLevel</parameterId>
			<timeStep unit="second" multiplier="3600"/>
			<startDate date="2006-08-23" time="13:00:00"/>
			<endDate date="2006-08-24" time="00:00:00"/>
			<missVal>-999.0</missVal>
			<longName>LocD</longName>
			<units>m</units>
		</header>
		<event date="2006-08-23" time="13:00:00" value="-1.42"/>
		<event date="2006-08-23" time="14:00:00" value="-1.42"/>
		<event date="2006-08-23" time="15:00:00" value="-1.44"/>
		<event date="2006-08-23" time="16:00:00" value="-1.46"/>
		<event date="2006-08-23" time="17:00:00" value="-1.46"/>
		<event date="2006-08-23" time="18:00:00" value="-1.46"/>
		<event date="2006-08-23" time="19:00:00" value="-1.48"/>
		<event date="2006-08-23" time="20:00:00" value="-1.48"/>
		<event date="2006-08-23" time="21:00:00" value="-1.48"/>
		<event date="2006-08-23" time="22:00:00" value="-1.49"/>
		<event date="2006-08-23" time="23:00:00" value="-999.0"/>
		<event date="2006-08-24" time="00:00:00" value="-999.0"/>
	</series>
</TimeSeries>

...

Another type of information that we will need is the location at which Delft-Fews can find to files to be imported. For this example we assume the files will be located in c:/Import/PI .

Below the The configuration XML file for the import module that will read the files is shown below:

No Format
<?xml version="1.0" encoding="UTF-8"?>
<timeSeriesImportRun xmlns="http://www.wldelft.nl/fews" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.wldelft.nl/fews
http://fews.wldelft.nl/schemas/version1.0/timeSeriesImportRun.xsd">
	<import>
		<general>
			<importType>PI</importType> <!-- Indicated we will read PI Files -->
			<folder>c:/Import/PI</folder> <!-- read the files from here -->
                                                      <!-- Files WILL BE DELETED after import -->
			<failedFolder>c:/Backup/PI</failedFolder> 
                                <!-- If specified the imported files will be copied to this location -->
			<idMapId>IdImport</idMapId> <!-- The IdMap for this import -->
			<importTimeZone>
				<timeZoneOffset>+00:00</timeZoneOffset>
			</importTimeZone>
		</general>
		<timeSeriesSet>
			<moduleInstanceId>Import/moduleInstanceId> <!-- The name of this moduleinstance -->
			<valueType>scalar</valueType>
			<parameterId>H.obs</parameterId> <!-- The parameter as it will be stored in Delft-Fews,
                                                          different from the parameter in the XML. Therefore,
                                                          IdMapping has to be set up-->
			<locationSetId>LevelGauges</locationSetId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="hour" multiplier="1"/>
			<readWriteMode>add originals</readWriteMode>
			<synchLevel>1</synchLevel>
		</timeSeriesSet>
	</import>
</timeSeriesImportRun>

In the general section of the configuration the location at which the file(s) are to be found is give in addition to an optional backup location. Imported data will be copied to the backup location if it is defined and accessible. All imported files in the folder location will be deleted. The contents of the idMapId element refers to the IdMapping table that converts the external locations/parameters to those used in your Delft-Fews application. If the mapping is one-to-one the idmap is not needed.

The timeSeriesSet element defines how the data will be sored in delft-Fews. If you later want to views, use or export the data you will need the same timeseriesset to retrieve or view the data.

Set up Id Mapping

Adding the new import to a workflow

...