Šajā rakstā ir ekrāna **Pārsaiste** datu puse: kā tiek uzrakstīta avota adrese, ar ko trūkstošs elements atšķiras no tukša un no kurienes nāk tas, ko piedāvā izvēlnes **Avota elements**.
Kas šis ekrāns vispār ir, kam tas pieejams un kā tas izskatās — [Lauku pārsaiste (remap) — kas tas ir un ekrāna uzbūve](/hc/help2/articles/ecomlink-lauku-parsaiste). Kā lauku pārsaistīt, pārbaudīt rezultātu un palaist sauso palaišanu — [Lauku pārsaiste — pārsaistīšana un sausā palaišana](/hc/help2/articles/ecomlink-lauku-parsaiste-parsaistisana).

## Kā uzrakstīta avota adrese

Izvēlnē nokļūst tikai tas, ko atrada atklāšana, taču **saglabātā vērtība ir adrese**, un adreses vārdnīca ir tīši maza: tā pasaka, **kur** skalārā vērtība atrodas, nekad — **kuru** no vairākām paņemt.

| Adrese | Ko tā adresē |
|---|---|
| `price` | tiešs ieraksta elementa bērns — tā ir visu 23 īpašību noklusējuma forma |
| `Dimensions.Height` | ligzdots bērns; katrs punkta segments ir viens solis lejup |
| `@Stock` | paša **ieraksta elementa** atribūts |
| `Dimensions@Height` | atribūts elementam, kas atrodas norādītajā ceļā |
| `g:price` | nosaukumtelpas bērns; prefikss tiek atšifrēts pret paša ieraksta deklarācijām, tāpēc nekas nav jākonfigurē |

Četri likumi, kas no ekrāna nav redzami:

- **Burtiskais nosaukums tiek mēģināts pirms punktotās lasīšanas.** Tāpēc plūsma, kuras elementa nosaukumā pašā ir punkts (`item.price`), paliek adresējama — vispirms tiek meklēts tieši tāds bērns un tikai tad ceļš.
- **Kols vienmēr nozīmē nosaukumtelpas prefiksu.** Elementa nosaukumā kols nav iespējams, tāpēc šeit pārpratuma nav. Prefikss drīkst būt **tikai pie elementa**, nevis pie atribūta: `g:price` ir derīga adrese, `@g:stock` — nav.
- **Adrese, kas beidzas ar tukšu `@`** (piemēram, `Dimensions@`), neadresē neko un tiek uzskatīta par neatrisināmu. Tā ar nolūku **nenokrīt atpakaļ uz elementu** — citādi tiktu nolasīta pavisam cita vērtība, nekā gribēts.
- **Ja elements atkārtojas, tiek paņemts pirmais dokumenta secībā.** Izvēlēties starp vairākiem vienāda nosaukuma elementiem (piemēram, pa noliktavām) šeit **nav iespējams** — tā jau ir politika, un tā dzīvo konkrētā vairumtirgotāja parsētājā, nevis pārsaistē. Tieši tāpēc dažam piegādātājam pārsaiste problēmu neatrisina un vajag savu parsētāju; sk. [Vairumtirgotāju parsētāji un pieejas dati](/hc/help2/articles/ecomlink-vairumtirgotaju-parsetaji-un-pieejas-dati).

### Trūkstošs elements un tukšs elements nav viens un tas pats

Šī ir svarīgākā nianse visā ekrānā, jo tā izšķir, vai nepareiza adrese **sabojā datus** vai **neizdara neko**:

| Ko adrese atrod | Kā to saprot imports | Kas notiek ar vērtību |
|---|---|---|
| elementa (vai kāda ceļa posma) **nav vispār**; atribūta nav | **nav atsūtīts** | vecā sagatavotā vērtība **paliek neskarta** |
| elements vai atribūts **ir, bet tukšs** | **atsūtīts tukšs** | vērtība tiek **notīrīta** |

Praktiskā secība: **pārrakstīta adrese ar drukas kļūdu neko nenodzēš** — tā vienkārši neatrod neko, un prece paliek ar iepriekšējo vērtību. Toties adrese, kas trāpa uz reāli tukšu elementu, katrā importā **izdzēs** attiecīgo lauku. Tāpēc pēc pārsaistīšanas «nekas nemainījās» un «vērtība pazuda» ir divi pavisam dažādi simptomi ar diviem dažādiem cēloņiem.

## No kurienes nāk izvēlnes saturs

Elementi tiek nolasīti no **faila, kas jau ir uz diska** (pēdējās lejupielādes kešs), katram formātam savādāk:

| Formāts | Ko atklāj |
|---|---|
| **XML** | ieraksta elementa bērnus, ligzdotos ceļus (`Dimensions.Height`, līdz 3 līmeņiem), atribūtus (`@Stock`, `Dimensions@Height`) un nosaukumtelpu bērnus (`g:price`) — pirmajos **50 ierakstos** |
| **CSV** | galvenes rindas kolonnu nosaukumus |
| **JSON** | ierakstu locekļu nosaukumus un punktētos ceļus (`stock.qty`) — pirmajos **50 ierakstos** |
| **XLSX** | konfigurētās darblapas galvenes rindu |

Formātu nosaka piegādātājam piespraustais parsētājs; ja tas ir **Automātiskā noteikšana**, formāts tiek nolasīts no paša faila.

Atklāšana lasa **tieši to pašu**, ko lasīs imports: XML gadījumā piegādātāja `record_element`, JSON gadījumā tā `records_key`, XLSX gadījumā tā konfigurēto darblapu (`sheet`). Visas trīs vērtības ir piegādātāja formas cilnē **Datu plūsmas konfigurācija**. Tāpēc izvēlnes saturs ir arī **pārbaude šiem trim iestatījumiem**: ja izvēlnēs ir svešas lietas, kļūda ir tur, nevis pārsaistē.

Divas sekas: **elements, kas parādās tikai vēlāk failā, sarakstā var nebūt** (paraugs ir pirmie 50 ieraksti), un **ar roku ierakstīt neko nevar** — izvēlēties var tikai to, ko izvēlne piedāvā.

### Kad izvēlnēs ir tikai noklusējumi

Tad virs tabulas ir **viena no trim** brīdinājuma kastēm — jo katrā gadījumā jādara pretējas lietas. Latviešu panelī šie teksti parādās angliski.

| Ko redz | Ko tas nozīmē | Ko darīt |
|---|---|---|
| Dzeltena: *«Nothing has been downloaded for this vendor yet…»* | piegādātājam vēl nekas nav lejupielādēts | palaist importu vai atjaunot avotu |
| **Sarkana:** *«This vendor's feed is on disk and readable, but it contains no `<…>` elements…»* | fails ir uz diska un lasās, bet **konfigurētais ieraksta elements tajā neatbilst nekam** | nomainīt `record_element` piegādātāja formas cilnē **Datu plūsmas konfigurācija** |
| Dzeltena: *«This vendor's feed was read, but no addressable fields were found in its records…»* | ieraksti atrasti, bet tajos nav adresējamu lauku | jāskatās pati datu plūsma |

Trīs lietas, kas izšķir, **kura** kaste parādīsies:

- **Sarkanā kaste rādās tikai XML plūsmām** (un tām, kurām formātu vispār neizdevās noteikt). CSV līdz tai nemaz netiek — galvenes rinda *ir* ieraksta forma, tāpēc tukšs rezultāts tur vienmēr nozīmē dzelteno «nav adresējamu lauku». Tas pats attiecas uz XLSX.
- **Ja konfigurētais ieraksta elements ir starp tiem, ko dokuments tiešām atkārto, sarkanā kaste netiek rādīta** — tad parādās dzeltenā. Tas ir apzināti: ieraksti **tiek** lasīti, tie vienkārši ir tukši (piemēram, `<item/>` bez bērniem), un sūtīt operatoru labot vienīgo iestatījumu, kas ir pareizs, būtu tā pati kļūda, ko šīs trīs kastes novērš.
- **JSON kļūdās klusāk par abiem.** Tukšs `records_key` nozīmē automātisko noteikšanu, un tā atpazīst tikai septiņus vārdus: `products`, `items`, `records`, `data`, `rows`, `list`, `offers`. Ja piegādātājs sarakstu sauc citādi (`result`, `payload`, `Produkti`), lasītājs apvalka objektu uzskata par **vienu ierakstu**, un izvēlnēs parādās **paša apvalka locekļi** (`status`, `total`, `result`…) — saraksts, kas izskatās pilnīgi ticams, bet nav plūsmas preču lauki. Pazīme ir tā, ka piedāvātie nosaukumi izklausās pēc atbildes apvalka, nevis pēc preces.

Sarkanajā gadījumā zem ziņojuma tiek uzskaitīts, **ko dokuments tiešām atkārto** — līdz pieciem kandidātiem, katram blakus sastopamība (*«N occurrences»*). Virs saraksta ir *«This document repeats:»* vai — ja dokumentā nekas neatkārtojas — *«Nothing in this document repeats, so it may carry a single record. Present at the top level:»*. Šis saraksts ir vienīgais veids, kā uzzināt pareizo ieraksta elementu, neatverot pašu failu. Garam failam skaitļi rādās kā *«N occurrences in the part scanned»* — tas ir normāli: skenēšanai ir mezglu budžets (200 000), jo šīs plūsmas mēdz būt gigabaitu lielas. Apgriezts skenējums ieraksta elementu nosaka **tikpat pareizi** (plūsmas ir viendabīgas) — tas tikai nevar pateikt kopskaitu. Kandidāti tiek rādīti **līdz pieciem**, sākot ar iespējamāko.

#### Kā atrast pareizo ieraksta elementu

1. Izvēlieties piegādātāju un pārliecinieties, ka virs tabulas ir tieši **sarkanā** kaste — dzeltenā nozīmē citu problēmu.
2. Izlasiet kastes tekstā nosaukto pašreizējo elementu — tas ir tas, kas neatbilst nekam.
3. Zem ziņojuma paņemiet **pirmo** kandidātu no saraksta: tas ir tas, kas dokumentā atkārtojas visbiežāk seklākajā līmenī, un gandrīz vienmēr tas arī ir preces ieraksts.
4. Ja virs saraksta rakstīts *«Nothing in this document repeats…»*, apstājieties: dokumentā nav atkārtojumu, tātad tajā, visticamāk, ir **viena** prece vai arī lejupielādēta ir kļūdas lapa. Tad jārisina lejupielāde, nevis ieraksta elements.
5. Atveriet piegādātāja formas cilni **Datu plūsmas konfigurācija**, ierakstiet šo nosaukumu atslēgā `record_element` un saglabājiet; sk. [Datu plūsmas konfigurācija](/hc/help2/articles/ecomlink-datu-plusmas-konfiguracija).
6. Atgriezieties **Uzstādījumi → Pārsaiste**, izvēlieties to pašu piegādātāju vēlreiz un pārbaudiet, ka sarkanās kastes vietā tagad ir pelēkā rinda «…atrasti N atšķirīgi elementi». Failu **no jauna lejupielādēt nevajag** — atklāšana lasa to pašu failu, kas jau ir uz diska.

> 📷 **Ekrānattēls:** ecomlink/remap — sarkanā brīdinājuma kaste par neatbilstošu ieraksta elementu ar kandidātu sarakstu un sastopamības skaitļiem

## Ja kaut kas nestrādā

**Izvēlnēs ir tikai noklusējumi, lai gan imports ir palaists.** Skatieties, kura no trim kastēm ir virs tabulas. Sarkanā nozīmē, ka fails ir kārtībā, bet **ieraksta elements** neatbilst nekam — labojiet `record_element` cilnē **Datu plūsmas konfigurācija** (skat. [Datu plūsmas konfigurācija](/hc/help2/articles/ecomlink-datu-plusmas-konfiguracija)), nevis lejupielādējiet failu no jauna.

**Izvēlnēs ir elementi, bet tie izskatās pēc atbildes apvalka (`status`, `total`, `result`), nevis pēc preces.** Tā ir JSON plūsma, kuras preču saraksta nosaukums nav starp septiņiem automātiski atpazīstamajiem (`products`, `items`, `records`, `data`, `rows`, `list`, `offers`): lasītājs apvalka objektu uzskata par vienu ierakstu un piedāvā tā locekļus. Norādiet īsto nosaukumu atslēgā `records_key` cilnē **Datu plūsmas konfigurācija** un atveriet ekrānu vēlreiz.

**Saraksta izvēlnē nav elementa, kuru failā redzu ar acīm.** Divi iespējamie iemesli. Vai nu elements parādās tikai vēlāk failā — paraugs ir **pirmie 50 ieraksti**, un pēc tiem sarakstu nepapildina nekas. Vai arī tas ir dziļāk par trim līmeņiem — dziļāki ceļi netiek atklāti. Ar roku ierakstīt adresi šajā ekrānā nevar.

**Izvēlējos elementu, kas plūsmā ir vairākas reizes, bet vērtība ir nepareiza.** Adrese atrod **pirmo** tāda nosaukuma elementu dokumenta secībā, un izvēlēties starp tiem šeit nav iespējams. Ja pareizais elements nav pirmais (biežākais gadījums — vairākas noliktavas), vajadzīgs šī vairumtirgotāja parsētājs; piesakiet to atbalstam, pievienojot parauga failu.

Kļūmes, kas parādās saglabājot, importējot vai sausajā palaišanā, ir aprakstītas rakstā [Lauku pārsaiste — pārsaistīšana un sausā palaišana](/hc/help2/articles/ecomlink-lauku-parsaiste-parsaistisana).
