Izmēri — vērtību normalizēšana un pārrēķins

Atbalsts

Atbalsts

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

Šis raksts ir par to, kas notiek ar sasaistītā atribūta vērtību: kā no teksta tiek izlasīts skaitlis, kā tiek atpazīta mērvienība, uz ko to pārrēķina un kad rezultāts nonāk veikalā. Pašu cilni Izmēri, tās ekrānu un sasaistīšanas soļus apraksta Izmēri — atribūtu sasaiste.

Divi jēdzieni, ko šeit lieto: sagatavotā prece ir importa ielasītais ieraksts, ko redz cilnē Produkti; veikala prece ir tā, ko redz pircējs un ko rediģē sadaļā Katalogs → Produkti. Veikala atjaunošana sastāv no soļiem, ko sauc par fāzēm.

Kā tiek izlasīts skaitlis

Normalizētājs no vērtības vispirms izmet visu, kas nav cipars, komats, punkts vai atstarpe — tātad ne tikai burtus, bet arī defises, slīpsvītras, reizināšanas un plusa zīmes. Atstarpes tiek uzskatītas par tūkstošu atdalītāju un izmestas. Tālāk darbojas viena kārtula:

Ja vērtībā ir gan komats, gan punkts, tiek salīdzināts pēdējais punkts ar pirmo komatu: ja pēdējais punkts ir aiz pirmā komata, decimālzīme ir punkts; pretējā gadījumā — komats. Otra zīme ir tūkstošu atdalītājs. Ja ir tikai komats — tas ir decimālzīme.

Vērtība datu plūsmā Kā tiek izlasīta
1200 1200
1 200 mm 1200 (atstarpe = tūkstošu atdalītājs, burti izmesti)
1,2 m 1,2
0.5 kg 0,5
10,987.78 10987,78
10.2324,99 102324,99
10-20 cm 1020 — defise tiek izmesta un diapazons salīmējas vienā skaitlī
1/2 m 12 — slīpsvītra tiek izmesta un daļskaitlis salīmējas vienā skaitlī
n/a, —, tukšs, teksts bez cipariem 0

Vērtība, kas izlasās kā 0, tiek klusi izmesta — tā neko neaizpilda un neko nepārraksta. Prece ar tādu atribūta vērtību vienkārši paliek bez izmēra.

Kā tiek atpazīta mērvienība

No vērtības tiek paņemti tikai latīņu alfabēta burti, pārvērsti mazajos, un salīdzināti ar divām tabulām. Tabulas ir secīgas: uzvar pirmā sakritība.

Garums (pārrēķina bāze — centimetri):

Atpazīst Piemēri
mm, milim, millim mm, milimetri, millimeter
cm, centim cm, centimetri
dm, decim dm, decimetri
m m, meter, metre, metri — tikai pēc tam, kad mm/cm/dm ir izslēgti

Svars (pārrēķina bāze — kilogrami):

Atpazīst Piemēri
kg, kilogr kg, kilogrami
mg, milligr mg, milligram
t, ton t, tonnas
g g, gr, gram — tikai pēc tam, kad kg/mg ir izslēgti

Svara tabulā ir viena asimetrija, kas maksā dārgi: latviskais vārds miligrami te netiek atpazīts, jo tajā nav ne mg, ne milligr (ar diviem «l»). Tāda vērtība izkrīt līdz g rindai un tiek nolasīta kā grami — skaitlis iznāk 1000 reižu par smagu. Garumam šādas problēmas nav, jo tur tabulā ir gan milim, gan millim.

Ja mērvienība netiek atpazīta, tiek pieņemts, ka vērtība jau ir bāzes mērvienībā — centimetros vai kilogramos (bāzes mērvienība ir tā, caur kuru notiek pārrēķins: cm garumam, kg svaram).

Divi likumi, kas izšķir rezultātu

1. Pašā vērtībā ierakstītā mērvienība vienmēr uzvar. Izvēlne Avota mērvienība — cilnes Izmēri redaktora trešā kolonna, pa vienai katrā mēra rindā — ir tikai rezerve vērtībai, kurai savas mērvienības nav. Atribūts, kura vērtības ir 12 cm, 340 mm, 1,2 m, tiks pārrēķināts pareizi neatkarīgi no tā, kas izvēlnē izvēlēts — tātad viena atribūta iekšienē drīkst būt jauktas mērvienības.

2. Pietiek ar jebkuriem burtiem, lai izvēlne vairs nestrādātu. Rezerve tiek lietota tikai tad, ja vērtībā nav neviena latīņu burta. Vērtība 12 gab. garuma rindā satur burtus, tie netiek atpazīti kā mērvienība — un tāpēc vērtība tiek uzskatīta par 12 centimetriem, nevis par 12 milimetriem, lai gan izvēlnē ir izvēlēts mm.

📷 Ekrānattēls: ecomlink/dimension — atvērta «Avota mērvienība» izvēlne svara rindā ar vērtībām g / kg / mg / t

Uz ko tas tiek pārrēķināts

Mērķa mērvienība nenāk no šī ekrāna. To nosaka pats veikals: kreisajā izvēlnē Mans veikals → Vispārīgie iestatījumi, cilne Pamats, lauki Garuma mērvienība un Svara klase. Tas ir visa veikala iestatījums — tas attiecas uz visiem piegādātājiem vienlaikus, un to mainīt drīkst tikai veikala administrators (bez tiesībām uz šo ekrānu izvēlnes punkta nav vispār). Ja veikalā ir izvēlēti centimetri un kilogrami, 1200mm kļūst par 120, bet 500 g — par 0,5.

📷 Ekrānattēls: shop4rent/wd_settings — cilne «Pamats», lauki «Garuma mērvienība» un «Svara klase»

Divas sekas, ko vērts zināt:

  • Mērķa klases apzīmējums tiek atpazīts pēc tās pašas tabulas. Klase, kuras apzīmējums šajās tabulās nav (piemēram, collas), netiek atpazīta, un skaitlis paliek bāzes mērvienībā — centimetros vai kilogramos.
  • Veikala klases maiņa neko nepārrēķina atpakaļ. Jaunā klase attieksies tikai uz turpmāk aizpildītajām vērtībām; jau ierakstītie skaitļi paliek tādi, kādi tie ir.

Kad un kā rezultāts nonāk veikalā

Sasaiste tiek piemērota veikala atjaunošanas fāzē Produktu izmēri un svars — nevis importa laikā. Ceļš ir šāds:

  1. Fāze paņem katru sasaistes rindu un normalizē visas sasaistītā atribūta atšķirīgās vērtības uz veikala klases mērvienību. Vērtības, kas izlasās kā 0, tiek izmestas.
  2. Skaitļi tiek ierakstīti sagatavotajā precē — tikai tur, kur attiecīgais mērs vēl ir tukšs. Jau esošs izmērs (no plūsmas lauka vai no augstākas prioritātes sasaistes) netiek pārrakstīts.
  3. Garums, platums un augstums tiek pārbīdīti uz veikala preci. Tas notiek tikai tiem piegādātājiem, kuriem ieslēgts slēdzis «Izmēri un svars» (piegādātāja forma, cilne Importa uzvedība) — jaunam piegādātājam tas ir izslēgts.
  4. Svars tiek pārbīdīts atsevišķā piegājienā tūlīt pēc tam, ar to pašu slēdzi.
  5. Veikala precē vērtība tiek ierakstīta, ja tur vēl ir 0 vai ja šī prece attiecīgo lauku datu plūsmā tiešām atsūtīja. Tādēļ ar roku ievadīts izmērs veikala precē netiek nosists — un tukša vērtība plūsmā nekad neaizvieto esošo ar nulli.

Ja izmēru sasaistes nav nevienam piegādātājam, fāze tiek izlaista pavisam. Ja sasaiste nav mainīta un arī piegādātāju iestatījumi nav mainīti, atjaunošana šo fāzi var izlaist kā nemainītu — vadības panelī tas parādās kā «Izpildītas … fāzes, … izlaistas kā nemainītas». Sasaistes saglabāšana un notīrīšana abas atzīmē izmaiņu, tāpēc pēc tām nākamā atjaunošana fāzi izpilda.

📷 Ekrānattēls: ecomlink/ecomlink — vadības panelis tūlīt pēc veikala atjaunošanas ar rindu «Izpildītas … fāzes, … izlaistas kā nemainītas»

Ko darīt ar nesaprastām vērtībām

Neatpazīta vērtība ir divu veidu, un tās ir ļoti nevienlīdzīgas:

Nekaitīgais gadījums — vērtība izlasās kā 0. n/a, tukša rinda, pēc pieprasījuma. Tāda vērtība tiek izmesta, prece paliek bez izmēra, neviens cits skaitlis netiek aizskarts. Darīt nekas nav jādara.

Bīstamais gadījums — vērtība izlasās nepareizi. To rada nevis pats skaitlis, bet zīmes tam blakus — gan burti, gan pieturzīmes:

  • Jebkurš t, kurā nav kg un mg, svara rindā nozīmē tonnas. Vērtība 2 st (divi gabali) tiks izlasīta kā 2 tonnas. Tas pats attiecas uz jebkuru vērtību ar burtu t.
  • Jebkurš m, kurā nav mm, cm un dm, garuma rindā nozīmē metrus.
  • g burts svara rindā nozīmē gramus — 5 gab. kļūst par 0,005 kg.
  • Latviskais «miligrami» netiek atpazīts kā miligrami un tiek nolasīts kā grami — vērtība iznāk 1000 reižu par smagu.
  • Defise un slīpsvītra tiek vienkārši izmestas, tāpēc diapazoni un daļskaitļi salīmējas vienā skaitlī: 10-20 kļūst par 1020, 1/2 — par 12. Atribūts, kura vērtības ir diapazoni, izmēram neder vispār.
  • Burti, kas neatbilst nevienai mērvienībai, atslēdz izvēlni Avota mērvienība un liek vērtību uzskatīt par centimetriem vai kilogramiem.

Ko ar to darīt:

  1. Izvēlieties citu atribūtu. Piemērots ir tāds, kura vērtībās ir tikai skaitlis (vai skaitlis ar mērvienību), bez gabaliem, iepakojumiem, diapazoniem un piezīmēm.
  2. Ja tāda atribūta nav, atstājiet mēru nesasaistītu. Nesasaistīts mērs nedara neko: atribūts paliek parasts atribūts, izmērs paliek tukšs. Tas ir labāks stāvoklis nekā nepareizi skaitļi, jo izmērus veikalā lieto piegādes cenas aprēķins.
  3. Ja nepareizie skaitļi jau ir ierakstīti — ņemiet vērā, ka sasaistes labošana tos neizlabo. Aizpildīšana notiek tikai tukšās vietās, un šajā ekrānā nav pogas, kas liktu pārrēķināt visu no jauna. Sasaistes maiņa attieksies uz precēm, kurām mērs vēl ir tukšs; pārējām vajadzīga palīdzība no atbalsta.

Ja kaut kas nestrādā

Svars veikalā ir absurds — tonnas vai tūkstoši. Skatieties, kas ir sasaistītā atribūta vērtībās. Jebkura vērtība ar burtu t (piemēram, 2 st) tiek izlasīta kā tonnas, burts g (piemēram, 5 gab.) — kā grami, bet vārds «miligrami» — arī kā grami. Tāpat rīkojas diapazoni: 10-20 kļūst par 1020. Atsaistiet šo mēru vai izvēlieties citu atribūtu; jau ierakstītos skaitļus sasaistes maiņa neizlabo.

Izvēlēju «Avota mērvienību» mm, bet iznākums ir kā centimetros. Vērtībās ir burti. Rezerves mērvienība tiek lietota tikai tad, ja vērtībā nav neviena latīņu burta; ja burti ir, bet mērvienība netiek atpazīta, skaitlis tiek uzskatīts par centimetriem (vai kilogramiem).

Veikala mērvienība ir collas, un skaitļi izskatās kā centimetros. Mērķa klase tiek atpazīta pēc tās pašas tabulas, kas vērtības. Klase, kuras apzīmējums tabulā nav, netiek atpazīta, un skaitlis paliek bāzes mērvienībā — centimetros vai kilogramos. Šādā veikalā izmēru sasaisti labāk nelietot vispār.

Daļai preču izmērs ir, daļai nav. Tas ir normāli divos gadījumos: precei nav šī atribūta vispār, vai arī tās vērtība izlasās kā 0 (tukša, n/a, teksts bez cipariem). Šādas vērtības tiek klusi izmestas.

Ekrāna un saglabāšanas problēmas — piegādātāja nav izvēlnē, pārskata tabulā mērā ir svītra «—», sagatavotajā precē izmēri ir, bet veikala precē nav — apraksta Izmēri — atribūtu sasaiste.