Rozwój · Średnio zaawansowane

Dane produktów z Excela na stronę internetową: jedno źródło, bez przepisywania

W wielu firmach prawdziwą bazą produktów jest arkusz kalkulacyjny, a strona internetowa to druga kopia, którą ktoś wpisuje ręcznie. Kopia zawsze jest trochę w tyle. Import usuwa kopię.

5 min czytania

Biurko z laptopem i drugim monitorem.

Zdjęcie: Ibrahim Sharif, domena publiczna (CC0)

W tym poradniku

W skrócie

Trzymajcie dane produktów w jednej tabeli i pozwólcie stronie ją czytać. Nikt nie wpisuje produktu dwa razy. Arkusz potrzebuje jednego wiersza na każdy wariant, jednej kolumny na każdą cechę i numeru katalogowego, który nigdy się nie zmienia; import dopasowuje po tym numerze, więc drugi import aktualizuje produkty, a nie tworzy ich duplikatów.

1wiersz na każdy wariant, który można zamówić
1kolumna na każdą cechę, z jednostką we własnej kolumnie
15cyfr to wszystko, co Excel zachowuje z liczby, więc dłuższe kody trzeba zapisywać jako tekst

Jak wygląda arkusz produktów, z którego da się korzystać?

Arkusz, z którego da się korzystać, to zwykła lista: jeden wiersz nagłówka, potem jeden wiersz na każdy wariant i nic więcej. To, co sprawia, że arkusz przyjemnie czyta się człowiekowi, czyli scalone komórki, nagłówki grup między wierszami i uwagi dopisane do wartości, nie pozwala odczytać go programowi.

Co import potrafi odczytać, a czego nie
Część arkusza Czytelne Nieczytelne
Wiersze Jeden wiersz na każdy wariant Jeden wiersz na produkt, warianty wypisane w jednej komórce
Kolumny Jedna cecha w każdej kolumnie „Rozmiar / waga” razem w jednej komórce
Numer katalogowy Zapisany jako tekst, nigdy niezmieniany Przeformatowany, użyty ponownie albo przenumerowany
Wartości 2,5 w jednej kolumnie, bar w następnej „ok. 2,5 bara (maks.)”
Zdjęcia Nazwa pliku w kolumnie Zdjęcie wklejone do arkusza

Dwie zasady są najważniejsze. Po pierwsze, jeden wiersz na każdy wariant: zawór w sześciu rozmiarach ma sześć wierszy, które mają wspólną nazwę produktu, a różnią się rozmiarem i numerem katalogowym. Po drugie, liczby i jednostki osobno. Komórka, która zawiera „2,5 bara”, jest tekstem i nie da się jej filtrować ani sortować.

Jak działa import i dlaczego drugi import nie duplikuje produktów?

Import czyta arkusz wiersz po wierszu i sprawdza każdy numer katalogowy: jeśli produkt istnieje, zostaje zaktualizowany, jeśli nie, zostaje utworzony. Dlatego numer katalogowy nigdy nie może się zmieniać i dlatego dopasowywanie po nazwie produktu jest kruche: jedna poprawiona literówka tworzy drugi produkt.

  1. EksportZapiszcie arkusz w uzgodnionym formacie, zwykle CSV albo plik Excela, z niezmienionym wierszem nagłówka.
  2. KontrolaImport porównuje nagłówek z kolumnami, których oczekuje, i odrzuca plik z brakującymi albo przemianowanymi kolumnami.
  3. DopasowanieKażdy wiersz jest dopasowywany do produktu i wariantu po numerze katalogowym.
  4. Utworzenie albo aktualizacjaNowe numery katalogowe stają się nowymi produktami. Znane dostają nowe wartości. Uzgodnijcie z góry, co oznacza pusta komórka, zwykle „pozostaw bez zmian”.
  5. RaportImport wymienia, co zostało utworzone, co zaktualizowane i które wiersze pominięto, z podaniem powodu.

Ta sama droga powinna działać w drugą stronę. Eksport katalogu ze strony w tym samym układzie kolumn daje wam w każdej chwili aktualny arkusz. Tak utrzymywane są nasze własne katalogi produktów: eksport, zmiana, ponowny import.

Co idzie nie tak z danymi produktów z Excela?

Niemal każdy nieudany import ma jedną z kilku przyczyn i wszystkie są w pliku, a nie na stronie.

Częste przyczyny błędów importu
Co widzicie Przyczyna Co zrobić
Numer katalogowy 00417 przychodzi jako 417 Komórka jest liczbą, więc zera wiodące znikają Sformatujcie kolumnę jako tekst przed wpisaniem danych
Długi kod wyświetla się jako 4.01235E+12 Excel pokazuje długie liczby w notacji naukowej Zapisujcie kody jako tekst
Rozmiar taki jak 3-4 zamienia się w datę Excel rozpoznaje we wpisie datę Format tekstowy dla tej kolumny
2,5 jest odczytywane jako 25 albo jako tekst Przecinek dziesiętny w jednym miejscu, kropka dziesiętna w innym Uzgodnijcie jeden zapis i wskażcie go importowi
Wszystkie dane lądują w jednej kolumnie CSV rozdzielony średnikami, import oczekuje przecinków Ustawcie separator w imporcie albo użyjcie pliku Excela
Polskie znaki i litery z akcentami są zniekształcone Plik zapisany w starszym kodowaniu znaków Zapiszcie jako CSV UTF-8
Produkty pojawiają się dwa razy Numer katalogowy się zmienił albo ma spację na końcu Nigdy nie zmieniajcie numerów; usuńcie spacje

Przecinek dziesiętny zasługuje w Europie na uwagę. Przy ustawieniach regionalnych niemieckich, francuskich, polskich albo chorwackich Excel domyślnie zapisuje ułamki dziesiętne z przecinkiem i rozdziela kolumny CSV średnikiem. Przy ustawieniach brytyjskich używa kropki i przecinka.

Ile czasu oszczędza import?

Oszczędność rośnie z każdą zmianą. Wykres to przykład poglądowy, a nie pomiar: nowe wartości dla 300 produktów.

Wpisywane na stronie po dwie minuty na produkt, to 600 minut, czyli 10 godzin, i kolejne 2 godziny na szukanie literówek: 12 godzin. Z arkusza wartości zmienia się formułą albo wklejeniem (1 godzina), importuje (pół godziny) i sprawdza wyrywkowo (1 godzina): 2,5 godziny.

Przykład poglądowy: godziny pracy przy zmianie 300 produktów

Kiedy arkusz przestaje wystarczać?

Arkusz dochodzi do granicy, gdy zmienia go kilka osób naraz albo gdy te same dane żyją już w innym systemie. Typowe oznaki: ceny są ręcznie kopiowane z systemu ERP do arkusza albo nikt nie jest pewien, który plik jest aktualny.

Wtedy źródłem powinien być system ERP albo system zarządzania informacją o produkcie (PIM), a strona powinna dostawać dane przez zaplanowany import albo połączenie przez API. Zasady zostają te same: jedno źródło, stały numer katalogowy, jeden wiersz albo rekord na każdy wariant. Uporządkowany arkusz nie jest więc straconą pracą.

Jak to robimy: zanim cokolwiek zbudujemy, prosimy o arkusz w takim stanie, w jakim jest dziś. Czytamy go, wypisujemy, czego import by nie zrozumiał, i uzgadniamy układ kolumn z osobami, które go prowadzą. Pierwszy pełny import to test, sprawdzany wspólnie z arkuszem.

  • Jeden wiersz nagłówka, jeden wiersz na każdy wariant, bez scalonych komórek i bez pustych wierszy
  • Kolumna numeru katalogowego sformatowana jako tekst, bez duplikatów
  • Jednostki we własnych kolumnach, wszędzie ta sama jednostka dla tej samej cechy
  • Jeden zapis dziesiętny w całym pliku
  • Pliki zdjęć nazwane według numeru katalogowego
  • Jeden plik główny i wskazana z imienia osoba, która za niego odpowiada

Pytania, które słyszymy często

Oba działają. CSV jest prosty i szeroko obsługiwany, ale jego separator, znak dziesiętny i kodowanie znaków zależą od tego, jak został zapisany. Plik Excela pozwala uniknąć tych trzech problemów.

To trzeba rozstrzygnąć przed pierwszym importem. Bezpieczna zasada mówi, że brakujący wiersz niczego nie zmienia, a produkt jest usuwany albo oznaczany jako wycofany tylko przez wyraźną wartość w kolumnie statusu.

Wartości techniczne są takie same w każdym języku i powinny być w arkuszu raz. Przetłumaczone nazwy i teksty mogą być w kolejnych kolumnach dla każdego języka albo utrzymywane na stronie.

Chcecie mieć to załatwione bez robienia tego samodzielnie?

Napiszcie, nad czym pracujecie. W ciągu jednego dnia roboczego odpowie wam człowiek.