Skocz do zawartości

Polecane posty

  • 2 tygodnie później...

Jeszcze mam dwa pytanka:

W tej transformacie pola zaciągane z Sello mają angielskie nazwy, a w edytorze wydruków są opisane po polsku.

1. Dlaczego?

2. Gdzie mogę znaleźć/pobrać listę wszystkich tych pól po angielsku?

 

EDIT:

Potrzebuję pole "nick klienta" żeby wstawiało mi się w komentarzu ale nie wiem jak się to pole nazywa?

 

Link to postu

I potrzebuję jeszcze pomocy. Chcę żeby w transformacie wstawiało się miejsce doręczenia firma (Company) jeśli jest podane lub miejsce doręczenia Imię i nazwisko (Name) jeśli pole firma jest puste. Wykombinowałem coś takiego, tylko w drugiej linijce zamiast = 1, potrzebuję określić "jeśli to pole nie jest puste". Przeszukałem na szybko poradniki xsl ale nie mogę znaleźć odpowiedniego symbolu.

 

<xsl:choose>
      <xsl:when test="s:DeliveryAddress/s:Company = 1 "><xsl:value-of select="s:DeliveryAddress/s:Company"/></xsl:when>
      <xsl:otherwise><xsl:value-of select="s:DeliveryAddress/s:Name"/></xsl:otherwise>
    </xsl:choose>
    <xsl:value-of select="$comma"/>

 

Proszę o poradę.

Pozdrawiam.

Link to postu
Jeszcze mam dwa pytanka:

W tej transformacie pola zaciągane z Sello mają angielskie nazwy, a w edytorze wydruków są opisane po polsku.

1. Dlaczego?

2. Gdzie mogę znaleźć/pobrać listę wszystkich tych pól po angielsku?

 

EDIT:

Potrzebuję pole "nick klienta" żeby wstawiało mi się w komentarzu ale nie wiem jak się to pole nazywa?

Pola na wydruku to zupełnie coś innego i nie są w żaden sposób powiązane z eksportem. Sello podczas eksportu generuje plik XML z danymi paczek i klientów, następnie przetwarza go przy pomocy wybranej transformaty. Schemat pliku XML wrzucałem w tym poście https://forum.sello.pl/index.php?topic=6309.msg39149#msg39149. Jest to dość formalny opis, ale innego na razie nie ma. Można sobie ułatwić sprawę eksportując paczki wybierając "Domyślny format (XML)". Utworzy się wtedy nieprzetworzony plik XML, który można sobie podejrzeć. Dla przykładu nick klienta znajduje się w elemencie ExportData/Customer/Nick.

 

I potrzebuję jeszcze pomocy. Chcę żeby w transformacie wstawiało się miejsce doręczenia firma (Company) jeśli jest podane lub miejsce doręczenia Imię i nazwisko (Name) jeśli pole firma jest puste. Wykombinowałem coś takiego, tylko w drugiej linijce zamiast = 1, potrzebuję określić "jeśli to pole nie jest puste". Przeszukałem na szybko poradniki xsl ale nie mogę znaleźć odpowiedniego symbolu.

 

<xsl:choose>
      <xsl:when test="s:DeliveryAddress/s:Company = 1 "><xsl:value-of select="s:DeliveryAddress/s:Company"/></xsl:when>
      <xsl:otherwise><xsl:value-of select="s:DeliveryAddress/s:Name"/></xsl:otherwise>
    </xsl:choose>
    <xsl:value-of select="$comma"/>

 

Proszę o poradę.

Pozdrawiam.

Fragment
test="s:DeliveryAddress/s:Company = 1 "

wystarczy zamienić na

test="s:DeliveryAddress/s:Company != ''"

.

Link to postu
  • 2 tygodnie później...

Wszystko pięknie poustawiałem i już miałem umieścić moją transformatę z tymi wszystkimi poprawkami ale dziś mi wyskoczył błąd przy wczytywaniu pliku do Sendita - nieprawidłowa wartość pola "Imię i nazwisko odbiorcy" - okazało się, że klient podał za długą nazwę.

 

Jak mam zlimitować tą wartość jeśli jest za długa - ma być od 3 do 32 znaków.

 

Tak samo jest z polami miasto i ulica ale jak będę miał podane jak to zrobić to już sobie poradzę z resztą pól.

 

Jakby ktoś miał chwilkę czasu i pomógł mi w tym będę wdzięczny i w końcu umieszczę tutaj pełną transformatę wraz z instrukcją obsługi.

 

Pozdrawiam.

Link to postu

Pierwsze co, to by zaczął od zgłoszenia problemu firmie SendIT, jeśli klient ma takie długie imię i nazwisko, znaczy, że 32 znaki to chyba zbyt mało jak na potrzeby klientów :).

 

Do obcinania stringów, czyli napisów, służy funkcja substring, której pierwszy argument oznacza pole z którego ma być wzięty napis, po przecinku liczba 1 oznacza miejsce rozpoczęcia, 32 oznacza liczbę znaków do pobrania z tego pola)

  <xsl:value-of select="substring(s:Name, 1, 32)" />

Link to postu
  • 3 tygodnie później...

NOWA TRANSFORMATA dla SENDIT

 

Wstęp

Potraktowałem to jako wstęp do nauki programowania ;) i wydaje mi się, że skompilowałem już kompletną transformatę do Sendita.

Uwzględnia wszystko co powinna i co dało się uwzględnić w takiej formie w jakiej dało się uwzględnić :) (nie wszystkie pola są dostępne w Sello).

Nazwałem ją Sendit.Alfa ;) Właściwie to chłopaki z Sello mi pomogli, ja tylko połączyłem wszystko w całość i napisałem swój komentarz. Najwięcej czasu zeszło na testy na rzeczywistych paczkach klientów.

Oczywiście korzystam z tej transformaty dla kuriera DPD, przetestowałem też wszystkie pola kilkukrotnie, wszystko importuje się do Sendit bezproblemowo i na listach przewozowych drukuje się poprawnie ale za ewentualne błędy nie odpowiadam :) Transformatę możecie sobie pobrać, zainstalować, przerabiać wg własnego uznania u siebie, Team Sello też może ją sobie dowolnie wykorzystać. Wszelkie uwagi i sugestie mile widziane ;)

 

Transformata do pobrania z poniższego załącznika

 

Instrukcja obsługi zawarta jest w samej transformacie ale w skrócie:

-po pobraniu należy wpisać swoje dane

-wybrać opcje dodatkowe – wszystko opisane w transformacie

-podmienić ewentualnie fragmentu kodu odpowiedzialny za wybór kategorii wagowej z tego wątku wcześniej

 

Transformata zawiera dodatkowo w stosunku do poprzedników:

-obsługę pobrań – jeśli paczka jest za pobraniem to wstawi się wartość pobrania

-obsługę powiadomień email i sms do nadawcy i odbiorcy – samemu ustalamy czy chcemy mieć je włączone i ewentualnie dla kogo

-obsługę pola zawartość – trzeba w transformacie wpisać na stałe, np. odzież, obuwie,

-w polu komentarz na liście przewozowym wstawia się nick klienta – ułatwia to naklejanie listów przewozowych na paczki

-w polu odbiorca wstawia się nazwa firmy, a jak nie podana to imię i nazwisko odbiorcy (pierwsza wersja transformat Sendit wstawiała w polu odbiorca – imię i nazwisko nawet jak paczka była nadana na firmę). Uwaga przy przesyłkach dla firm musicie wpisać w paczce w Sello osobę w polu Imię i nazwisko.

-w każdym polu gdzie ma to sens wszystkie przecinki i średniki ( ,; ) są zamieniane na kropki ( . ) bo inaczej transformata się rozwalała – moje testy wykazały, że jeśli klient umieścił np. w nazwie firmy lub ulicy znak średnik to zawartość nagłówków przesuwała się o jedno pole. Na innym komputerze to samo działo się dla znaku przecinka – dlatego dla bezpieczeństwa oba te znaki zamieniane są na znak kropki

-z numerów telefonów usuwane są znaki - ( ) , ;

-automatyczne skracanie wartości nagłówków do dopuszczalnej maksymalnej liczby znaków -maksymalne wartości wziąłem ze strony Sendita i kilka uzgodniłem z Senditem więc powinno być okej ale Sendit na bieżąco dostosowuje się ;)

-w samej transformacie obszerny komentarz – przydatne dla początkujących

 

Co zostało do zrobienia:

W sumie tylko jedno możliwe rozwiązanie – Bartek zasugerował je w tym wątku:

https://forum.sello.pl/index.php?topic=6489.msg39806#msg39806

Polegałoby ono na tym że w paczkach wstawiamy notatkę, o treści np. <zawartość>samochód</zawartość>

Zapytanie w transformacie Sendita, Poczty Polskiej, itp. oraz w dowolnych wydrukach wyszukiwałoby do danej paczki czy istnieją notatki o treści zawartość i wstawiałoby to co podalibyśmy w znacznikach, w odpowiednie miejsce w transformatach, wydrukach itp..

Rozwiązanie to załatwiłoby wszystkie pola opcjonalne oraz inne pola w transformatach oraz na wydrukach bo każdy do każdego dostawcy paczek mógłby sobie wpisywać w dowolne pola co by chciał, np.:

-dokładną zawartość paczki

-usługi dodatkowe - dostawa w sobotę, rano, itp.

-uwagi dla dostawcy - np. klient prosi o telefon, domofon u klienta nie działa itp,

-włączanie powiadomień dla wybranej paczki, itp

 

Wydaje mi się, że takie rozwiązanie byłoby bardzo proste do zrobienia i uniwersalne do wszystkich wydruków i transformat, ja niestety nie jestem informatykiem i nie potrafię zrobić czegoś takiego :(

 

PS

Jeśli korzystacie z Sendita i zamawiacie kuriera poprzez stronę www, np. wyszukując po numerze aukcji, to zachęcam Was do wykorzystania opcji importu – jest dużo szybciej i unikacie pomyłek przy sprawdzaniu/poprawianiu danych przez www.

 

paczki_sendit_csv_alfa.zip

Edytowane przez Bartosz Rosa
Podmiana załącznika
Link to postu

Dobra robota :). Spróbuję wygospodarować trochę czasu aby dodać to rozwiązanie.

Dzięki.

 

Bartek jak będziesz robić to rozwiązanie to wystarczy dla jednego przykładu np zawartość.

Jak będzie gotowe i uda mi się je rozgryźć ??? to ze swojej strony postaram się potem przerobić je na pozostałe pola.

Na początek w transformacie Sendita ale zaraz będę się brał za eksport do poczty i wydruki pocztowe więc potem tam też postaram się coś dołożyć.

Link to postu

Czy dało by się zrobić żeby razem z nazwą firmy odbiorcy drukowało się nazwisko, jak paczka trafia do duzej firmy/korporacji trudno znaleźć adresata

 

To już działa.

 

Nazwisko zawsze drukuje się jako osoba kontaktowa więc jest już uwzględnione w transformacie Sendit.Alfa.

 

Na listach przewozowych DPD osoba kontaktowa drukuje się zaraz pod nazwą firmy. Nie pamiętam jak jest w UPS ale pewnie podobnie.

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

Czy ktoś może wie jak zmodyfikować tą transformatę, aby nadania odbywały się w terminalu, a nie przez kuriera ?

 

Pobierz sobie specyfikację ze strony Sendit/Narzędzia/Hurtowe ładowanie danych i według niej jest takie pole:

A_Terminal - dostawa do terminala

 

Niestety nie pisze czy dotyczy to własnoręcznego doręczenia do terminala ale pewnie tak.

 

Wystarczy dodać to pole do transformaty (Bartek opisał w tym wątku jak to zrobić) i przetestować czy po zaimportowaniu do Sendita w danej przesyłce będzie zaznaczona opcja "sam dostarczę przesyłkę do terminalu wybranego przewoźnika".

 

Jak sobie nie poradzisz to daj znać.

 

 

 

Link to postu

Trochę się nad tym nasiedziałem, tak to jest jak się nie zna transformacji XSLT, ale udało się :)

 

Ten parametr to właśnie nadanie w terminalu.

 

Dla osób, które też zainteresuje ta opcja podaję co należy zmienić:

 

dodajemy gdzieś w transformacie, np. po ustawieniach smsów

<!-- dostawa do terminala -->

<xsl:variable name="A_Terminal">1</xsl:variable>

 

ciąg znaków

<xsl:text>S_Name;S_Address;S_Zip;S_City;S_Phone;S_Email;S_Contact_Person;P_Cat_5;P_Cat_10;P_Cat_20;P_Cat_30;P_Cat_50;P_Cat_70;R_Name;R_Address;R_Zip;R_City;R_Phone;R_Email;R_Contact_Person;P_Courier_Name;P_Content;P_Comment;P_Cod;Email_Receive_S;Email_Courier_S;Email_Awizo_S;Email_Deliver_S;Email_Refuse_S;Email_Receive_R;Email_Courier_R;Email_Awizo_R;Email_Deliver_R;Email_Refuse_R;Sms_Receive_S;Sms_Courier_S;Sms_Awizo_S;Sms_Deliver_S;Sms_Refuse_S;Sms_Receive_R;Sms_Courier_R;Sms_Awizo_R;Sms_Deliver_R;Sms_Refuse_R</xsl:text>

 

zmieniamy na

<xsl:text>S_Name;S_Address;S_Zip;S_City;S_Phone;S_Email;S_Contact_Person;P_Cat_5;P_Cat_10;P_Cat_20;P_Cat_30;P_Cat_50;P_Cat_70;R_Name;R_Address;R_Zip;R_City;R_Phone;R_Email;R_Contact_Person;P_Courier_Name;P_Content;P_Comment;P_Cod;Email_Receive_S;Email_Courier_S;Email_Awizo_S;Email_Deliver_S;Email_Refuse_S;Email_Receive_R;Email_Courier_R;Email_Awizo_R;Email_Deliver_R;Email_Refuse_R;Sms_Receive_S;Sms_Courier_S;Sms_Awizo_S;Sms_Deliver_S;Sms_Refuse_S;Sms_Receive_R;Sms_Courier_R;Sms_Awizo_R;Sms_Deliver_R;Sms_Refuse_R;A_Terminal</xsl:text>

 

oraz prawie na końcu transformaty, przed 3 linijką od końca (przed <xsl:text>& #xa;</xsl:text>)

wstawiamy

<xsl:value-of select="$A_Terminal"/>

<xsl:value-of select="$comma"/>

 

i działa :)

Link to postu

Trochę się nad tym nasiedziałem, tak to jest jak się nie zna transformacji XSLT, ale udało się :)

 

1. Ja też tak zaczynałem :) :) :) i jakie miłe uczucie jak się coś zrobi nie będąc informatykiem  ;D

Na szczęście Bartek dobrze napisał co trzeba zrobić i jak.

Pozy też pomógł i dało się zrobić.

 

2. Za wyjątkiem usług dodatkowych, których nie ma jak zdefiniować w Sello (ale mam nadzieję, że dorobią tą opcję eksportu z notatek :) ) to jest jeszcze denerwujący problem po stronie Sendita.

Jak nadajesz kilka/kilkanaście paczek dziennie to do każdej dostajesz osobnego maila z osobnym linkiem do pobrania listu przewozowego. Strasznie mnie to wkurza bo niepotrzebna robota - odbierz mail, kliknij link i pobierz list.

Na szczęście można wszystkie pliki wydrukować za jednym razem spod prawego klawisza myszy.

Numery nadań też trzeba ręcznie wklepywać i znowu niepotrzebna robota. No i Sendit przelewając środki z pobrań, po dwóch tygodniach grh >:( podaje swój numer zamówienia, a nie numer listu przewozowego i trzeba go np. zapisywać w notatkach (kolejna niepotrzebna robota).

 

O dziwo w Poczcie Polskiej pobiera się jeden plik ze wszystkimi etykietami i jest dużo szybciej. Numery nadań są z puli w Sello więc nie trzeba ich przepisywać. Pobrania są w kilka dnia zwracane i opisane nickiem klienta co znacznie przyspiesza ich księgowanie w Sello.

 

3. My też na razie zmuszeni jesteśmy korzystać z Sendita bo mają dobre ceny (na razie nikt nam nie zaproponował takich) i nie musimy się wysilać z płatnymi integracjami z innymi kurierami (a pieniądz zaoszczędzony to pieniądz zarobiony :) ).

Mają być jeszcze jacyś inni kurierzy dodani do Sello więc przynajmniej odpadnie koszt płatnej integracji. Szkoda tylko, że nie wiadomo z jakimi bo trzymają tą informację w tajemnicy :(

Link to postu
  • 3 lata później...

Chyba jakoś na dniach, teraz najtańszy jest tam EMS, znaczy się POCZTEX, ale nie każdy Klient lubi.

 

Wydaje mi się, że te ceny są już od jakiegoś czasu.

Po drodze Sendit zmniejszyło np. wysokość darmowego ubezpieczenia w DPD z 5000 do 1000, tak więc jeśli ktoś ma w transformacie ustawione po staremu, wówczas płaci dodatkowo za ubezpieczenie.

Link to postu

A wiecie że ubezpieczenie i tak to ściema jest firm przewozowych ?

Przecież odpowiedzialność za rzecz zabraną w chwili przejęcia bierze kurier ( firma kurierska) Najważniejsze w tym jest Prawo przewozowe, gdzie to jest określone.

 

 

 

No nie do końca.

Wiele zależy od regulaminu firmy transportującej.

 

Gdy się przeczyta regulaminy InPostu czy PP wychodzi na to, że w danym rodzaju przesyłki można przesyłać tylko towary o jakiejś, małej wartości.

W InPoście w Paczkomacie jest to 200 zł.

W PP w Paczce Mini 100 zł.

 

Gdy się chce więcej, trzeba wykupić ubezpieczenie, bo inaczej dostanie się tą małą wartość odszkodowania.

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