Lauku pārsaiste — avota adreses un izvēlnes saturs

Atbalsts

Atbalsts

Pēdējo reizi atjaunināts Sep 24, 2026

Š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. 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.

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.

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.
  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), 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.