Skocz do zawartości

Sello 1.18 BETA - dyskusja i zgłaszanie błędów

Polecane posty

Proszę w tym wątku o wpisywanie problemów, pytań oraz sugestii dotyczących wersji 1.18 BETA.

 

Opis wersji tutaj

 

Witam.

Posiadam Sello w wersji 1.17.2. przeprowadziłem archiwizację bazy danych, potem zainstalowałem nową wersję 1.18 beta. Wszystko zainstalowało się jak należy, Uruchamiam program wyskakuje komunikat że wersja bazy danych jest starsza od wersji obsługiwanej przez program,klikam przeprowadź aktualizację bazy danych, wyskakuje okno tworzenie kopii zapasowej podmiotu i ... program się zawiesza - brak odpowiedzi.

 

A ile miejsca na dysku zajmuje baza i czy korzystacie z darmowej wersji SQL Servera ?

 

Bo takie rzeczy zdarzają się, gdy podczas aktualizacji zabraknie limitu darmowej wersji (10GB w przypadku 2008 i późniejszych).

 

Link to postu

Domyślam się, że sprawa jest już pewnie naprawiona ale żeby potem nie było na mnie, że jakiś modyfikator nie działa bo nie pokazałem swoich testów ;) Więc tutaj podaję moje wnioski dlaczego generował się napis zielony zamiast czerwonego.

 

[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czerwony`|else=`zielony`]

generuje napis zielony bo w is lub contains jest spacja, a then nie ma spacji :)

 

Rozwiązanie 1 - do then też trzeba wstawić spację:

[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czer wony`|else=`zielony`]
[Klient::ImieNazwisko|is=`Jan Kowalski`|then=` czerwony`|else=`zielony`]
[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czerwony `|else=`zielony`]

Za każdym razem powinien wygenerować się napisz czerwony.

 

Jednak sytuacja komplikuje się bardziej gdy is lub contains zawierają więcej niż jedną spację ;) i wtedy w then trzeba wstawić spację w środku wyrazu czerwony lub na początku. Spacja na końcu wyrazu czerwony nie zadziała.

 

Rozwiązanie 2 - to zapis tego:

[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czerwony`|else=`zielony`]

w kilku wierszach ale tylko w ten sposób:

[Klient::ImieNazwisko|is=`Jan Kowalski`
|then=`czerwony`
|else=`zielony`]

Czyli kreski pionowe mają być na początku każdego wiersza i wtedy tag generuje się prawidłowo. Próbowałem dzielić tag na kilka wierszy w różnych miejscach ale tylko taki zapis działa prawidłowo. Taki zapis działa również prawidłowo w szablonach aukcji.

 

Rozwiązanie 3 - to napisanie spacji za tagiem, czyli

[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czerwony`|else=`zielony`]_

W miejscu podkreślenia jak wstawimy spację to tag wygeneruje się prawidłowo.

 

No i jest jeszcze rozwiązanie gawcia :)

Ale mam nadzieję, że udało się Wam to naprawić.

 

W każdym razie w szablonach wiadomości to wychodzą mi takie różne jaja z modyfikatorami, że już sam nie wiem gdzie jest prawda, a gdzie fałsz ;) Wpisuję te same przykłady po kilka razy, a potem przez kilkanaście/dziesiąt minut zastanawiam się czemu niby to samo raz działa, a raz nie działa. I dochodzę do wniosków, że raz wkleiłem wartość do is ze szczegółów paczki, a raz wpisałem ręcznie. Innym razem na końcu taga była spacja, a innym razem kropka. Wyrażenie w is ma jedną lub więcej spacji – nie wiem czemu ta ilość spacji ma znaczenie ;) Itd.

 

Dlatego jak będziecie używać modyfikatorów to zawsze sprawdźcie sobie czy wynik generuje się prawidłowo dla różnych przypadków. Należy przede wszystkim uważać skąd kopiuje się wartość do is lub contains – nie kopiować ze szczegółów paczki (z tego dolnego okienka) bo kopiuje się razem z formatowaniem i nie wiadomo czy ta spacja jest w tym is lub contains czy jej nie ma. Najlepiej wpisywać tekst ręcznie lub kopiować z pól czysto tekstowych! Lub przepuścić przez txt. No i za tagiem najlepiej wpisać spację...

 

Kolejne jaja ;) z wyrażeniem AND tutaj:

https://forum.sello.pl/index.php?topic=7850.msg50049#msg50049

 

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

Szukanie klienta funkcją InsTYNKT nie bierze pod uwagę znaku podkreślnik "_"

Jeśli klient ma nick "Jacek_Burczypała" to jak wpisze to polu "klient" dodając nową paczkę lub transakcję nie rozwinie się taka pozycja, musze dopiero wpisać "Jacek" i szukać dalej ręcznie. Da się coś z tym zrobić?

Link to postu
[Paczka::Dostawa|strip=``|template=`Dostawa: {value}`]

Nie usuwa spacji pomiędzy przykładowo: "List polecony ekonomiczny", wyrażenie pozostaje bez zmian.

 

W dokumentacji był błąd, Strip domyślnie usuwa tylko znaki nadmiarowe pozostawiając domyślnie spację. Zapis |strip oraz |strip=`` jest równoznaczny - oznacza, że parametr jest pusty. Nie da się zatem w ten sposób wyciąć spacji. Do wycięcia spacji powinien zadziałać

|replace=` ==`

Przed znakami == jest spacja, po nie ma nic.

 

[Klient::ImieNazwisko|is=`Jan Kowalski`|then=`czerwony`|else=`zielony`]

Problemem w tym tagu jaki zauważyłem jest nie tyle spacja, a fakt, że w momencie zapisywania w szablonie wiadomości spacji między Jan i Kowalski pojawia się zamiast spacji znak nowej linii.

Zauważyłem to dlatego, że wcześniej sprawdzałem problem z szablonem tekstowym i miałem taki tryb ustawiony - wtedy widać jak się tag łamie ;). Zasadniczo problem jest z edytorem szablonu wiadomości zatem, który robi jakieś dziwne zabiegi przy zapisywaniu.

 

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

Witam,

 

Chcę uzyskać taki efekt w szablonie taki, że jeżeli Wartość pola nie jest pusta, to w szablonie pojawia mi się wiersz w tabeli z nazwą pola i jej wartością, a jeżeli jest pusta, to cały wiersz się nie pojawia. niestety moja logika jest inna niż Sello, dlatego proszę o pomoc. Ja widziałbym to tak:

<TABLE>

<TR><TD>Producent:</TD><TH>[Towar::Producent]</TH></TR>

<TR><TD>Symbol:</TD><TH>[Towar::Symbol]</TH></TR>

[Towar::PW::Aromat|is=``|neg|then=`<TR><TD>Aromat:</TD><TH>[Towar::PW::Aromat]</TH></TR>`|else=``]

[Towar::PW::Opakowanie|is=``|neg|then=`<TR><TD>Opakowanie:</TD><TH>[Towar::PW::Opakowanie]</TH></TR>`|else=``]

</table>

 

być może jest w tym jakiś błąd w składni np. łączenie stringów ze zmienną. Proszę o pomoc.

Link to postu

Witam,

 

Chcę uzyskać taki efekt w szablonie taki, że jeżeli Wartość pola nie jest pusta, to w szablonie pojawia mi się wiersz w tabeli z nazwą pola i jej wartością, a jeżeli jest pusta, to cały wiersz się nie pojawia. niestety moja logika jest inna niż Sello, dlatego proszę o pomoc. Ja widziałbym to tak:

<TABLE>

<TR><TD>Producent:</TD><TH>[Towar::Producent]</TH></TR>

<TR><TD>Symbol:</TD><TH>[Towar::Symbol]</TH></TR>

[Towar::PW::Aromat|is=``|neg|then=`<TR><TD>Aromat:</TD><TH>[Towar::PW::Aromat]</TH></TR>`|else=``]

[Towar::PW::Opakowanie|is=``|neg|then=`<TR><TD>Opakowanie:</TD><TH>[Towar::PW::Opakowanie]</TH></TR>`|else=``]

</table>

 

być może jest w tym jakiś błąd w składni np. łączenie stringów ze zmienną. Proszę o pomoc.

Taka szybka podpowiedź to dla aromatu i opakowania spróbuj zastosować "value".

Na dokładniejsze sprawdzenie niestety nie mam teraz czasu...

 

Link to postu

Domyślnie jeśli wartość tagu jest pusta to nie jest on wypisywany, zatem w tym przypadku najlepiej skorzystać z modyfikatora template.

 

Po pierwsze jednak naprawiłbym tabelkę, bo na pierwszy rzut oka TH (table header) jest użyty niepoprawnie http://www.w3schools.com/tags/tag_th.asp

 

<TABLE>
<TR><TD>Producent:</TD><TD>[Towar::Producent]</TD></TR>
<TR><TD>Symbol:</TD><TD>[Towar::Symbol]</TD></TR>
[Towar::PW::Aromat|template=`<tr><td><Aromat:</td><td>{value}</td></tr>`]
[Towar::PW::Opakowanie|template=`<tr><td><Opakowanie:</td><td>{value}</td></tr>`]
</table>

 

template nadpisuje domyślny szablon tagu, który dla większości tagów jest równy `{value}` - czyli w miejscu {value} pojawia się wartość danego pola (tutaj pola własnego). Jeśli nadpiszemy go tak, aby zawierał cały wiersz tabelki to dany wiersz pojawi się lub nie, w zależności od tego czy wartość tagu jest zdefiniowana.

Link to postu

PK - Primary Key, klucz główny (występuje niemal w każdej tabeli i identyfikuje jednoznacznie wiersz)

FK - Foreign Key, klucz obcy, czyli identyfikator PK z tabeli powiązanej, do której link pojawia się w opisie danego wiersza.

 

Poniżej są założenia, czyli jeszcze raz powtórzona nazwa każdego klucza obcego (FK) generowana już automatycznie ze struktury bazym oraz definicja tego klucza, czyli np em_AuctionId->PK_au_Auction oznacza, że w kolumnie em_AuctionId jest identyfikator (klucz główny PK) aukcji. Dzięki temu wiadomo z jakimi tabelami jest powiązana dana tabela i jakie dane są zależne od wpisów w tej tabeli.

Link to postu
Użytkownik forum
Temat jest zablokowany i nie można w nim pisać.
×
×
  • Dodaj nową pozycję...