Sari la conținut
← Înapoi la Journal
Ghiduri
7 min citire

Validează-ți catalogul CSV înainte de a importa zece mii de rânduri

Verifică zece rânduri de catalog: SKU-uri duplicate, variante incomplete, prețuri în format greșit și text corupt. Exemplu cu rezultate verificabile.

De Echipa Frihet
Validează-ți catalogul CSV înainte de a importa zece mii de rânduri

TL;DR: Pentru a valida un CSV de catalog, verifică mai întâi cum îl interpretează destinația; apoi revizuiește coloanele, identificatorii, variantele și valorile. Încearcă o mostră cu erori cunoscute și validează întregul fișier înainte de a-l încărca. Faptul că zece rânduri trec nu demonstrează că celelalte sunt corecte și nici că o actualizare va păstra toate datele.

Conținut

Validarea unui CSV de catalog începe prin a ști ce se va schimba la import. Apoi urmează coloanele, identificatorii și valorile. O foaie care se deschide fără avertismente poate conține două produse cu același SKU sau o mărime fără valoare. Un fișier acceptat poate, de asemenea, să actualizeze produsul greșit.

Următorul test servește pentru a învăța să distingi aceste erori. Sunt zece rânduri inventate, cu rezultate verificabile. Nu este o mostră dintr-un magazin real și nici un fișier pregătit pentru Shopify sau Frihet: este o schemă didactică proprie pe care va trebui să o înlocuiești cu cea a destinației.

Începe cu destinația, nu cu fișierul furnizorului

Descarcă un șablon curent sau exportă un produs reprezentativ din instrumentul care va primi datele. Notează dacă vei crea, actualiza sau combina ambele operațiuni; ce identifică o înregistrare; ce câmpuri solicită; și ce înseamnă să lași o celulă goală. Păstrează această definiție alături de fișierul de lucru.

În Shopify, de exemplu, suprascrierea se bazează pe identificatorul URL, numit handle. Documentația sa cere, de asemenea, revizuirea dependențelor dintre câmpurile de variantă și opțiuni. Regula noastră de SKU nu descrie cum identifică produse acel importator. Formatul produselor Shopify.

Dacă muți date între sisteme, separă această revizuire de conexiunea dintre magazin și gestiune (în engleză). Un conector disponibil nu demonstrează că acceptă coloanele furnizorului tău.

Definește reguli pe care le poți verifica

În exercițiu, fiecare rând reprezintă un articol care poate fi vândut. product_key grupează variantele sale; sku trebuie să fie prezent și unic. name este obligatoriu. O variantă necesită option_name și option_value; ambele goale înseamnă că nu declarăm o opțiune. Dacă sunt complete, combinația lor cu product_key nu se poate repeta.

Fișierul utilizează UTF-8, virgule între câmpuri și opt coloane în ordinea arătată. price acceptă numere nenegative cu punct și două zecimale, fără separator de mii. În currency solicităm EUR pentru acest test. Sunt condiții alese pentru acest test, nu reguli universale sau prețuri comerciale. Nu există conversie valutară sau calcul fiscal.

SKU-urile se păstrează ca text: 001 nu se convertește în 1. Microsoft explică cum să eviți conversiile automate la încărcarea identificatorilor în Excel. Definește tipul coloanei înainte de a transforma datele; schimbarea aspectului său ulterior nu reface originalul. Păstrarea zerourilor inițiale în Excel.

Zece rânduri, inclusiv unul care pare corect

Copiază blocul ca text pentru a-l examina. Ultimul rând are o coloană mai puțin, în mod deliberat. row_id este identificatorul testului; R01 se află pe a doua linie a fișierului, deoarece prima conține antetele. Numele produselor în spaniolă sunt valori fixe, identice în toate edițiile, pentru ca rezultatele să poată fi reproduse.

row_id,product_key,sku,name,option_name,option_value,price,currency
R01,P01,001,Taza,Color,Natural,19.90,EUR
R02,P01,002,Taza,Color,Ink,19.90,EUR
R03,P02,001,Bolsa,,,29.00,EUR
R04,P03,,Cuaderno,,,8.50,EUR
R05,P04,005,Café,,,6.00,EUR
R06,P05,006,Vaso,,,"12,50",EUR
R07,P06,007,Camiseta,Size,,24.00,EUR
R08,P01,008,Taza,Color,Natural,19.90,EUR
R09,P07,009,,,,15.00,EUR
R10,P08,010,Bandeja,,,25.00
RândRezultat așteptatCe să investighezi
R01Blocare: SKU și variantă duplicateCompară cu R03 și R08; acest rând, de asemenea, nu este aprobat.
R02Respectă regulile exercițiuluiPăstrează ca control; nu demonstrează compatibilitate cu destinația.
R03Blocare: SKU duplicat001 identifică și cana din R01.
R04Blocare: lipsește SKUSolicită referința; nu o inventa din nume.
R05Revizuiește textulCompară Café cu originalul furnizorului.
R06Blocare: format prețVirgula zecimală contrazice regula aleasă.
R07Blocare: variantă incompletăExistă Size fără valoare.
R08Blocare: variantă duplicatăP01 + Color + Natural apare deja în R01, chiar dacă se schimbă SKU-ul.
R09Blocare: lipsește numeleIdentifică produsul înainte de a continua.
R10Blocare: structură incompletăSunt șapte câmpuri; se aștepta și coloana pentru monedă.

Rezultatul este opt rânduri blocate, unul în așteptarea revizuirii și unul care trece. Sunt stări de rânduri, nu opt erori independente: R01 are două conflicte. Poți verifica fiecare rezultat comparând cheile între rânduri și câmpurile cu regulile anterioare.

Un duplicat nu se rezolvă alegând primul rând

Rândul R01 pare complet când este citit separat. Conflictul apare la parcurgerea întregului set: are același SKU ca o geantă și aceeași combinație de variantă ca o altă cană. De aceea, verificarea trebuie să marcheze toți membrii grupului, nu să aprobe primul și să respingă ultimul.

Cere persoanei care administrează catalogul să confirme dacă există o referință greșită, un produs repetat sau o variantă descrisă incorect. Salvează decizia cu valoarea anterioară, cea nouă și motivul acesteia. Nu șterge R08 doar pentru că numele său coincide; un catalog real poate distinge materialul, dimensiunea sau alte opțiuni pe care această foaie simplificată nu le include.

Pentru lotul tău real, compară și cu referințele care există deja în destinație. Un SKU unic în cadrul CSV-ului poate încă să coincidă cu un alt produs în afara fișierului. Definește, de asemenea, cum să tratezi spațiile și diferențele de majuscule înainte de a normaliza: curățarea unui identificator poate uni referințe care ar fi trebuit să rămână separate.

Separă formatul, textul și semnificația

R06 conține "12,50": ghilimelele mențin prețul într-o singură celulă. Numărarea virgulelor manual ar da un diagnostic incorect; utilizează un cititor CSV. RFC 4180 descrie această convenție a ghilimelelor, dar nu definește ce coloane necesită un catalog și nici cum să interpretezi un preț. Sintaxa CSV din R06 este validă; valoarea prețului nu respectă însă regula câmpului.

Nu face o substituție globală a virgulelor cu puncte: ai schimba atât separatoarele, cât și conținutul. Identifică mai întâi câmpul, confirmă formatul sursă și convertește valoarea sa într-un mod controlat. Un câmp gol nu echivalează cu zero; înregistrarea prețului zero ar fi o decizie comercială pe care nimeni nu a confirmat-o.

R05 necesită o altă verificare. Textul Café este salvat cu octeți UTF-8 valizi; asta nu demonstrează că numele este corect. Avertismentul din acest exercițiu este pregătit pentru acea valoare specifică, nu este un detector universal de codificare. Compară numele cu sursa și revizuiește în ce pas s-a deformat. Salvarea din nou a textului deja deteriorat ca UTF-8 nu îi recuperează automat caracterele.

Înainte de actualizare, verifică ce se păstrează

O coloană absentă și o celulă goală pot produce modificări diferite. Shopify documentează că, la suprascriere, un câmp opțional prezent, dar gol, poate șterge valoarea existentă; omiterea coloanei poate păstra acea valoare. De asemenea, avertizează că o importare începută nu poate fi anulată și recomandă o copie prealabilă. Condiții de import Shopify.

Identitatea unei variante se poate schimba, de asemenea: Shopify avertizează că modificarea valorilor opțiunilor elimină identificatorii anteriori și creează alții noi. Verifică legăturile care depind de acești identificatori înainte de a corecta o opțiune prin CSV. Opțiuni și identificatori de variante.

Pregătește o comparație între starea anterioară, modificarea prevăzută și rezultatul observat. Include câmpurile care trebuie să rămână la fel. Testează într-un mediu de testare disponibil și păstrează împreună rândurile aferente unui produs; zece linii consecutive nu reprezintă întotdeauna zece produse complete.

Într-o operațiune reală, ai alege cazuri diferite: produs simplu, mai multe opțiuni, caractere accentuate, preț gol și actualizarea unei referințe existente. Această mostră testează parcursul. Apoi aplică regulile întregului fișier: duplicatele pot fi separate de mii de rânduri. Consultă integrările pentru a identifica instrumentele fluxului tău și verifică regulile de date ale fiecăruia.

Consemnează o decizie pe care altcineva o poate verifica

Înainte de a încărca, notează versiunea fișierului, destinația, responsabilul, regulile aplicate, problemele rezolvate și comparația testului. Dacă lipsește o confirmare, păstrează lotul în așteptare; un mesaj „importat” nu înlocuiește această revizuire.

Frihet permite importul CSV de produse, în cadrul funcționalităților sale de gestionare. Schema și verificările manuale din acest articol sunt independente: nu demonstrează ce câmpuri acceptă Frihet sau ce validări automate efectuează. Utilizează șablonul importatorului tău și clarifică mai întâi rândurile al căror rezultat nu îl poți explica încă.

Distribuie

Acest articol a fost util?

Întrebări frecvente

Aceste verificări înlocuiesc regulile instrumentului de import?

Nu: schema și verificările manuale sunt un exercițiu independent. Folosește șablonul actual al sistemului de destinație și verifică regulile pentru creare, actualizare și câmpuri goale.

Validarea a zece rânduri garantează corectitudinea restului catalogului?

Nu. Eșantionul servește la testarea fluxului; apoi aplică regulile întregului fișier și compară cu referințele existente la destinație, deoarece pot exista duplicate în afara eșantionului.

Frihet — Gestiune fără dramă

Începe Gratuit