# Importálás

## Importálható adatok formátuma

A rendszerbe CSV (Comma-Separated Values) formátumú fájllal lehet mérési eredményeket importálni.

A fájlok formátumára az alábbi feltételek vonatkoznak:

* Egy feltöltendő fájl egy [szenzor](https://docs.surviot.com/tovabbi-oldalak/szojegyzek#szenzor) egy vagy több mérését tartalmazza. Minden mérés egy fájlbeli sornak felel meg.&#x20;
* Az fájlban a mezők vesszővel vagy pontosvesszővel vannak elválasztva (a SURVIOT automatikusan detektálja a mezőelválasztó karaktert).
* A szövegszerű mezők (pl. az időbélyeg) opcionálisan idézőjellel lehetnek határolva (pl. `"2023-10-18T10:57:12+0200"` ).
* A fájl első sora a fejlécsor, amely a mezőneveket tartalmazza, minden további sor pedig egy-egy mérést azonosít.
* A fájl kell, hogy rendelkezzen egy `ts` mezővel, amely az egyes mérések időbélyegét tartalmazza [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.8) formátumban. Az időbélyegek, ha rendelkeznek időzóna-eltolással, akkor ennek nem haladhatja meg a ±16 órát.
* A fejlécsor metrikaazonosítói csak az angol abc karaktereit, számokat és aláhúzásjelet ("\_") tartalmazhatnak (pl. `metric_1`).
* A fájl nem tartalmazhat két megegyező azonosítóval rendelkező metrikát (pl. `metric_1;metric_1`).
* Az egyes metrikák értékei az adatokat tartalmazó sorokban minden esetben számok. Pozitív és negatív értékek is megengedettek, valamint támogatott a normálalak (pl. `1e-10`). A decimális elválasztó a pont (`.`) karakter.
* Az adatokat tartalmazó sorokban egyetlen mező sem lehet üres.

Példa:

```
ts;metric_1;metric_2
2023-10-18T10:57:12+0200;10.9;33.4
2023-10-18T18:19:20+0200;21.8;41
```

### Importálható adatokra vonatkozó további követelmények

* a feltöltött CSV-fájl nem lehet nagyobb, mint 1024 KB

## Az importálás lépései

### 1. Szenzor kiválasztása

Navigáljon az *Importálás* oldalra, majd nyissa le a „Válasszon szenzort” legördülő menüt, majd válassza ki a szenzort:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXf88uJ2kiPGGjdbeWqUuub9XGoygswgJu5woztQ3dH9Q3TEIAUyiZ5J4A2YKETuleUdCH_InGEAYOwUZwaJIUb0aOiO4QKlFDEYfp9WPk47b6uGm-ckXdIvBnywbkRqJ4aVb7Fx?key=gUEo71wm6DO2W0qv4ycSbQ" alt=""><figcaption><p>Szenzor kiválasztása az Importálás oldalon</p></figcaption></figure>

### 2. Fájl feltöltése

A kívánt szenzor kiválasztását követően húzza a feltöltendő CSV-fájlt a megjelenő kék, szaggatott keretű dobozra, vagy kattintson a „Fájl feltöltése” gombra egy fájl kiválasztásához:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXcD_YusaX6VV0lgA_KCTXNip1R-jhxDUH0f9Ab6ccln8DKrbBxdbyLT4RdIJvo4HmL1OWX361CvydwPootameT6fT6xoIXX9B3ZweHPql6WB0THHIQy7tXzmGQIFxvXNRxcT2nxUQ?key=gUEo71wm6DO2W0qv4ycSbQ" alt=""><figcaption><p>Fájl feltöltése</p></figcaption></figure>

A fájl kiválasztását követően a SURVIOT megkezdi a fájl feltöltését:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXf5UEKGCY2oqXfT6vPI24HkAtYPD9YuNZrXfStB2ASxkE2LP9XwVmQAY6m4Ot93sGobirpZyqLMYgev5tf-YtrzPgjAt_k9Vvw2wR8_tDleIezsPk_asMbNq8l7aOHxCY5OzmYA?key=gUEo71wm6DO2W0qv4ycSbQ" alt=""><figcaption><p>Fájl feltöltésének folyamata</p></figcaption></figure>

Amennyiben az importálás sikertelen volt, a folyamat során felmerülő hibákat a SURVIOT a CSV-fájl soraihoz rendelve jeleníti meg:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXf5ufox8KIC5bpL3bmTwmUHoDzlkOCURgb4ktK9QqaNeMPY0QRCciKYUKza13J1-5lbF84DzWg6gbgDka9fViDtRZRvFUZc31LEHKyrVULEp4WQ6oMDXwdxA_ykdkvtgn4b12s5?key=gUEo71wm6DO2W0qv4ycSbQ" alt=""><figcaption></figcaption></figure>

### 3. Eredmény

Sikeres importálást követően a SURVIOT átirányít a szenzor adatlapjára, ahol megtekintheti az újonnan feltöltött adatait:

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfa8mp3ZewCmoomnwM0zSkymG8c5o2lttVSnqSCa9Snwog1opCJ6TjZXZely9thSUKMRNFBBeCwrI4Ahxfj0r3Ow2C7QaiTJFdEG9gWK2OAQnT4_kFuvlwiDyKQkoZRkNkb3dobmA?key=gUEo71wm6DO2W0qv4ycSbQ" alt=""><figcaption></figcaption></figure>

## Az importálás során felmerülő hibák és megoldásaik

**Nem található elválasztó a fájlban. Ellenőrizze, hogy a fájl CSV formátumú-e.**

Ellenőrizze, hogy a feltöltött CSV-fájl mezői vesszővel vagy pontosvesszővel vannak elválasztva, valamint hogy az adatot tartalmazó sorokban a tizedeselválasztó karakter pont (`.`).

**Nem található adat a fájlban. Ellenőrizze, hogy a fájl érvényes mérési adatokat tartalmaz-e.**

Ellenőrizze, hogy a CSV-fájl tartalmaz-e adatokat.

**Duplikált mérés található a(z) '...' időbélyeggel**

Ellenőrizze, hogy a feltöltött CSV-fájlban a minden mérést tartalmazó sor időbélyeg (`ts`) mezője eltérő legyen, valamint hogy a szenzor a fájlban szereplő időbélyegekre vonatkozóan nem rendelkezik-e már tárolt mérésekkel.

**A(z) ... oszlop(ok) hiányoznak a fájlból. Ellenőrizze, hogy minden szükséges oszlop szerepel-e.**

Ellenőrizze, hogy a feltöltött fájlban szerepel-e az adott szenzorhoz tartozó minden [metrika](https://docs.surviot.com/tovabbi-oldalak/szojegyzek#metrika).

**Az időbélyeg nem lehet üres.**

Ellenőrizze, hogy a fájl minden mérést tartalmazó sora rendelkezzen időbélyeggel.

**A(z) '...' időbélyeg formátuma érvénytelen.**

Ellenőrizze, hogy az adott sorban található időbélyeg megfelel-e az [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.8) formátumnak.

**Az időbélyeg időzóna eltolásának -16 és +16 óra között kell lennie, de a megadott érték: '...'.**

Ellenőrizze, hogy a fájlban található mérések időbélyegeinek időzóna-értéke ne haladja meg a ±16 órát.

**Érvénytelen metrika érték: '...'.**

Az adott sorban található metrika értéke nem értelmezhető lebegőpontos számként.

**A metrika komponens nem felel meg a szenzor elvárt konfigurációjának: '...'.**

Az adott szenzor vonatkozó metrikája nem rendelkezik ilyen komponenssel az adatbázisban.

**A szenzor létezik, de a típusához nem tartozik importálható metrika. Az importálás nem folytatható.**

Az adatbázisban nincs olyan metrika, amelyhez adatokat lehetne importálni a kiválasztott szenzorra vonatkozóan.&#x20;
