Skocz do zawartości

Adres punktu odbioru i adres wysyłki - zmiany w 1.37.

Polecane posty

Planujemy w najbliższej wersji (tj. 1.37) zmienić funkcjonowanie adresów w transakcji. Głównie chodzi o rozdzielenie adresu odbiorcy od adresu punktu odbioru - oba te adresy są w niektórych przypadkach dostaw wymagane i muszą być dostępne w transakcji.

Obecnie adres punktu odbioru nadpisuje adres dostawy w transakcji. Można tę funkcję wyłączyć w ustawieniach, wtedy w transakcji pozostaje adres odbiorcy, zaś w notatkach dodawany jest adres punktu odbioru. Planujemy usunąć ten parametr i adresy dodawać na sztywno do dedykowanych pól.

Po zmianach, w transakcji pojawi się nowe pole z adresem punktu odbioru, zaś adres wysyłkowy zmieni nazwę na dane odbiorcy i będzie na stałe zawierał dane kupującego. Domyślnie dane te są i będą nadal pobierane z danych Allegro, lub z danych zamówienia jeśli będą tam dostępne. W ten sposób w danych odbiorcy zawsze będą dane kupującego (imię, nazwisko, nr telefonu, e-mail, adres zamieszkania), zaś w nowym oknie będą dane punktu odbioru, np numer Paczkomatu, PNI Poczty Polskiej itp.

obraz.png.9aff7ef9887936c75bc05d7adb4b5dd8.png

W paczce pozostanie nadal jeden adres wysyłki i będzie on zawierał albo dane odbiorcy, albo dane punktu odbioru.

W Subiekcie jako dane dostawy możemy udostępnić parametr sterujący czy mają się tam pojawiać dane odbiorcy, czy dane punktu odbioru. Prosiłbym o głosy w tej sprawie, czy obecność adresu Paczkomatu w Subiekcie w danych kontrahenta jest potrzebna.

W notatkach na razie zostanie adres punktu odbioru.

Numer identyfikacyjny punktu odbioru będzie umieszczony w polu adresowym (adr_Name) w nawiasie. Znajduje się on w tabeli adr__Address, typ adresu punktu odbioru adr_Type to 4.

obraz.png.c4d8e3fcdfb47b19972335a02574d7f3.png

Prosiłbym także o zgłoszenie ewentualnych problemów od osób, które korzystają lub tworzą rozwiązania zewnętrzne, gdzie taki podział może być problematyczny.

Zmiany te musimy wprowadzić, ze względu na implementacje obsługi Wysyłam z Allegro, która pojawi się w najbliższej wersji.

Link to postu

Tego jeszcze w tej chwili nie wiem, bo trwa implementacja, aczkolwiek Sello również potrzebuje takiego rozróżnienia więc być może pojawi się jakiś sposób na rozróżnienie adresów w paczce. Teoretycznie można by było zamiast typu adresu "wysyłkowy" użyć typu "odbiór w punkcie", ale to pociągnie za sobą kolejne modyfikacje a wydaje się (przynajmniej w chwili obecnej), że nie ma takiej potrzeby. Dam znać jak będę wiedział więcej.

Link to postu

Jeszcze jedna rzecz, na którą warto zwrócić uwagę, to ujednolicenie nazwy punktu odbioru. Obecnie paczkomaty nie mają identyfikatora w nawiasie, po zmianach będą miały, tak aby każdy punkt odbioru zawsze miał w nawiasie na końcu identyfikator. O ile w przypadku innych punktów odbioru nazwa i identyfikator nie zawierają wspólnych fragmentów o tyle w przypadku paczkomatów identyfikator jest częścią nazwy, zatem w okienku będzie to widoczne jako:

  • Paczkomat WRO19A (WRO19A)
  • Punkt odbioru Moja_firma - Biuro (0c31c758-1fd3-11e9-aa7e-fa163ee0ce7b)
  • UP Wrocław 26 (275368)
  • Stacja PKN Orlen 0457 (926670)
  • itp

 

Link to postu

W paczce pojawi się również nowe pole, prezentujące adres punktu odbioru (nazwę i identyfikator), zaś adres wysyłkowy zostanie przekształcony w Dane odbiorcy. Oznacza to, że będą w nim zawsze dane odbiorcy pochodzące z transakcji, numery punktów odbioru będą w osobnym adresie (adr_Type = 4), podobnie jak w transakcji.

Dodatkowo na etapie konwersji bazy danych wszystkie adresy związane ze starszymi paczkami będą miały ustawiony adr_Type = 2 (wcześniej był tam NULL) i każdy nowy adres odbiorcy w paczce będzie miał adr_Type = 2 od tej pory.

Link to postu
  • 1 miesiąc temu...

W poprzedniej zdaje się wersji celowo go sprowadziliśmy do postaci bez spacji i znaków, bo to powodowało problemy przy synchronizacjach z kurierami.

Możemy ewentualnie w interfejsie przedstawiać numer telefonu w takiej postaci. Czy są jakieś miejsca w których szczególnie warto by ten numer zamienić?

Link to postu

Wystarczy zmiana w sekcji "adres dokumentowy" w module transakcje - > do paczek, bo przeważnie stamtąd bierze się numer, jeśli sekcja "danych do wysyłki" może powodować problemy przy synchronizacji, przeważnie numer telefonu nabywcy jest tożsamy z tym do wysyłki a jeśli nie to i tak najpierw kontaktujemy się z właścicielem konta

Rzeczywiście była kiedyś taka zmiana o której mówisz, chyba już trochę temu

Edytowane przez Łu kasz
Link to postu

Dla DPD z "Wysyłam z Allegro" mam takie błędy:

Pobieranie stanu wykonania zlecenia utworzenia przesyłki z Allegro dla paczki xxxx

 Przesyłka zawiera nieprawidłowe dane:

- Nazwa punktu nadania przesyłki jest wymagana (pickup.name) - dla DPD nie mam punktu odbioru, ale podjazd kuriera. W danych "punkt odbioru przesyłki przez kuriera" mam wpisane bez wszystkie TAGów, bo pokazywało wcześniej błędy o nieprawidłowych znakach i  nie chciało tworzyć paczki
- Nazwa nadawcy jest wymagana (sender.name) - to oczywiście jest podane, wpisałem bez wszystkie TAGów, bo pokazywało wcześniej błędy o nieprawidłowych znakach 
- Nazwa ulicy odbiorcy jest za długa (receiver.address.street) - rzeczywiście kupujący podał tam dodatkowe informacje o nr lokalu, ale to nie powinno być kłopotem, skoro w formularzu Allegro mu się zmieściło.

Edit: Przy innych paczkach z normalną długością ulicy odbiorcy są te same błędy.

Dla Poczty Polskiej nie  mogę utworzyć paczki, bo mam komunikat "błędne dane"

image.png.eb4bcaeac9f63cb25f47a5d78631fc3d.png

Edytowane przez Rafał B.
Link to postu
10 godzin temu, Rafał B. napisał:

Nazwa punktu nadania przesyłki jest wymagana (pickup.name)

Trzeba by skonsultować z Allegro, co należy w takim przypadku wpisać, a samo pole będzie dodane w 1.37.1.

10 godzin temu, Rafał B. napisał:

Nazwa nadawcy jest wymagana (sender.name)

Jeśli jest wpisana to trzeba sprawdzić w logach, czy ta nazwa faktycznie jest wysyłana.

Spoiler

Proszę w programie serwisowym (Admin.exe) włączyć logowanie Allegro w menu rejestr.

Wyłączyć Sello, uruchomić je jako administrator (z menu pod prawym przyciskiem myszy) i spróbować wykonać czynność powodującą problem.

W folderze instalacyjnym Sello, c:\Program Files (x86)\InsERT\Sello\Log stworzony zostanie plik Allegro-[data].json. Proszę podesłać go na sello@insert.com.pl z linkiem do wątku z forum lub jako odpowiedź do maila.

Po wszystkim proszę wyłączyć logowanie programem serwisowym lub z poziomu ostrzeżenia na stronie startowej Sello jeśli się pojawi.

 

10 godzin temu, Rafał B. napisał:

Nazwa ulicy odbiorcy jest za długa (receiver.address.street) - rzeczywiście kupujący podał tam dodatkowe informacje o nr lokalu, ale to nie powinno być kłopotem, skoro w formularzu Allegro mu się zmieściło.

Odpowiedź Allegro jest taka, że to są wymagania narzucone przez API kurierów i jeśli jakiś adres jest zbyt długi, to należy go skrócić - nie ma wyjścia. Długość danych podawanych w Allegro jest większa, to systemy kurierskie są tutaj ograniczeniem.

10 godzin temu, Rafał B. napisał:

Dla Poczty Polskiej nie  mogę utworzyć paczki, bo mam komunikat "błędne dane"

Proszę odświeżyć na stronie startowej sekcję Ważne informacje i jeśli pojawi się błąd bazy danych to go naprawić.

Link to postu
37 minut temu, Bartosz Rosa napisał:

Trzeba by skonsultować z Allegro, co należy w takim przypadku wpisać, a samo pole będzie dodane w 1.37.1.

Jeśli jest wpisana to trzeba sprawdzić w logach, czy ta nazwa faktycznie jest wysyłana.

  Instrukcja włączenia logowania (Odkryj ukrytą treść)

Proszę w programie serwisowym (Admin.exe) włączyć logowanie Allegro w menu rejestr.

Wyłączyć Sello, uruchomić je jako administrator (z menu pod prawym przyciskiem myszy) i spróbować wykonać czynność powodującą problem.

W folderze instalacyjnym Sello, c:\Program Files (x86)\InsERT\Sello\Log stworzony zostanie plik Allegro-[data].json. Proszę podesłać go na sello@insert.com.pl z linkiem do wątku z forum lub jako odpowiedź do maila.

Po wszystkim proszę wyłączyć logowanie programem serwisowym lub z poziomu ostrzeżenia na stronie startowej Sello jeśli się pojawi.

 

Odpowiedź Allegro jest taka, że to są wymagania narzucone przez API kurierów i jeśli jakiś adres jest zbyt długi, to należy go skrócić - nie ma wyjścia. Długość danych podawanych w Allegro jest większa, to systemy kurierskie są tutaj ograniczeniem.

Proszę odświeżyć na stronie startowej sekcję Ważne informacje i jeśli pojawi się błąd bazy danych to go naprawić.

Z Pocztą Polską po odświeżeniu coś się ruszyło, ale na etykiecie potrzebuje nr ZK i tak wybrałem w polu "numerze referencyjny". TAG [Transakcja::DokumWstepny]. Teraz mam błąd: "musi pasować do wzorca "[A-Za-z0-9-_]+"

Link to postu
37 minut temu, Rafał B. napisał:

Z Pocztą Polską po odświeżeniu coś się ruszyło, ale na etykiecie potrzebuje nr ZK i tak wybrałem w polu "numerze referencyjny". TAG [Transakcja::DokumWstepny]. Teraz mam błąd: "musi pasować do wzorca "[A-Za-z0-9-_]+"

Usunąłem ten TAG, ale teraz mam problem: 

- Punkt punktu nadania przesyłki jest wymagany (pickup.pointId)

Link to postu

Pole  [Transakcja::DokumWstepny] zawiera znaki niedopuszczalne przez Allegro, dopuszczalne są tylko litery, cyfry oraz - i _. Można użyć wybranego tagu ale trzeba się pozbyć innych znaków, zapewne chodzi o slash czyli ZK 1/2020 trzeba zamienić na ZK-1-2020, np tak:

 [Transakcja::DokumWstepny | replace_many=` ==-;/==-`]

Wymagany punkt nadania dodamy w poprawce.

Link to postu
1 minutę temu, Bartosz Rosa napisał:

Podeślij też log z tworzenia tej paczki (ten allegrowy). Niestety błędy zwracane z różnych fragmentów Allegro nie trzymają się spójnie jednej konwencji i w tym przypadku nie widać o której pole chodzi.

Chodziło by ten fragment? ?

 

{"errors":[{"code":"VALIDATION_ERROR","message":"musi pasować do wzorca \"[A-Za-zżźćńółęąśŻŹĆĄŚĘŁÓŃ -]*\"","details":"Invalid value: FUP SOSNOWIEC 19","path":"pickup.name","userMessage":"musi pasować do wzorca \"[A-Za-zżźćńółęąśŻŹĆĄŚĘŁÓŃ -]*\""}]}

 

Szczerze mówiąc nie wiem co wpisać w nazwę punktu, bo paczki pocztowe sami zawozimy na Urząd (są 2 do wyboru na umowie), więc najrozsądniej było wpisać nazwę tego, gdzie nadajemy... Ale gdzieś pisałeś, że nie może być tam cyfr, może w tym problem?

Link to postu

Tak. To co Allegro zwraca jako musi pasować do wzorca czyli np [A-Za-zżźćńółęąśŻŹĆĄŚĘŁÓŃ -]*

oznacza wyrażenie regularne, które zapewne wykorzystują do sprawdzania poprawności danych we wskazanym polu (tutaj "path":"pickup.name" - czyli punkt odbioru)

W nawiasie kwadratowym podane są dopuszczalne znaki, niektóre w postaci zbiorów:

  • A-Z oznacza duże znaki
  • a-z oznacza małe znaki
  • żźćńółęąśŻŹĆĄŚĘŁÓŃ - dodatkowe znaki diakrytyczne dla języka  polskiego
  • spacja - wiadomo
  • - znak minusa

+ za nawiasem oznacza, że z podanych w nawiasie zakresów i znaków musi wystąpić co najmniej 1 znak (1 lub więcej)

* za nawiasem dopuszcza wartość pustą z tego nawiasu (0 lub więcej)

 

Podobnie można rozszyfrować inne błędy zwrócone z serwisu WzA. I tak np krzaczki tego typu [A-Za-z0-9-_]+

oznaczają co najmniej 1 znak (+ na końcu) ze zbioru liter dużych (A-Z), oraz ze zbioru liter małych (a-z), ze zbioru cyfr (0-9), dodatkowo z myślnikiem (-) i podkreślnikiem (_).

Zatem w tym przypadku jeśli podany zostanie np numer dokumentu ZK 1/2020 zostanie on odrzucony, bo zawiera znak /, którego nie ma liście w wyrażeniu regularnym i trzeba posłużyć się np modyfikatorami tagów Sello aby pozbyć się tych niechcianych znaków.

To tak na szybko kurs wyrażeń regularnych zwracanych w błędach z WzA :).

Niestety w dokumentacji nie są zapisane dozwolone w polach znaki więc nie możemy ich odgórnie narzucić. Nawet nie chcielibyśmy, bo mogą się one zmieniać w serwisie Allegro, a być może są nawet zmienne w zależności od wybranego dostawcy.

Od wersji Sello 1.38

W raporcie znajdują się dodatkowe informacje dotyczące błędów zwracanych z Allegro, np:

Cytat

Tworzenie przesyłki w serwisie Wysyłam z Allegro dla paczki "110/2020" na koncie "Sello1" (43955815): musi pasować do wzorca "[A-Za-zżźćńółęąśŻŹĆĄŚĘŁÓŃ -]*"

Kod błędu: 400 Bad Request

[VALIDATION_ERROR]: musi pasować do wzorca "[A-Za-zżźćńółęąśŻŹĆĄŚĘŁÓŃ -]*"
ścieżka: label.sender.name
detale: Invalid value: jakaś błędna wartość niespełniająca wzorca Allegro 1234

W parametrze ścieżka pojawi się np: label.sender.name - również dość techniczny opis ale z pewną znajomością języka angielskiego można rozstrzygnąć że chodzi o pole nazwa (name) nadawcy (sender) umieszczane w danych etykiety (label), oraz dodatkowo w sekcji detale pojawia się Invalid value (nieprawidłowa wartość) wraz z podaniem tej wartości. Trzeba zatem w tym konkretnym przypadku zajrzeć do konfiguracji dostawy WzA i poprawić to co znajduje się w polu generującym problem.

Niestety błędy zwracane z serwisu Allegro nie trzymają się jednej konwencji zapisu, czasami są w języku polskim, czasami angielskim, raz informacje czytelne dla człowieka są w polu X, raz w polu Y - do tego dość często się zmieniają więc Sello nie ingeruje w ich treść i przedstawia je zazwyczaj tak jak zwraca to serwis Allegro.

 

  • Dziękuję 1
Link to postu

A co zrobić z błędem ? "Wybrana usługa dodatkowa jest nie obsługiwana."

a w logu

"Invalid value: %NAZWA FIRMEY% HTTP Status: Bad Request (400)

O jaką usługę chodzi. Próbowałem wyłączać ubezpieczenie, ustawienie przesyłki wartościowej, ale nic z tego.

Dzieje się tak przy Allegro Pocztex kurier 48 pobranie. Mam skonfigurowaną umowę własną.

 

Edytowane przez Leszek Oleszczuk
Styl
Link to postu

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.

Użytkownik forum
Odpowiedz...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...