Ks. Robak 314 Napisano 6 Stycznia 2015 Udostępnij Napisano 6 Stycznia 2015 w SQL: Towary brakujące, a wystawione na aukcji Jeżeli ktoś chciałby zobaczyć, czy nie ma na aukcjach wystawionych więcej sztuk towaru niż jest w magazynie (bo np. sprzedał w sklepie i zapomniał zdjąć ze stanu aukcji), to może to zrobić tym skryptem. Przy okazji można sprawdzić czy aby nie mamy na aukcjach wystawionego towaru mniej niż mamy w magazynie. Spoiler SELECT COUNT(auk.au_Title) as [ilość aukcji danego towaru], SUM(auk.au_Quantity)-SUM(auk.au_Sold) as [Dostępne na aukcjach], tw.it_Stock-tw.it_Reserved as [Dostępne w magazynie z uwzg. rezerw.], CASE WHEN SUM(auk.au_Quantity)-SUM(auk.au_Sold)>tw.it_Stock-tw.it_Reserved THEN (tw.it_Stock-tw.it_Reserved)- (SUM(auk.au_Quantity)-SUM(auk.au_Sold)) ELSE 0 END as [brakujące w magazynie], CASE WHEN SUM(auk.au_Quantity)-SUM(auk.au_Sold)<tw.it_Stock-tw.it_Reserved THEN (tw.it_Stock-tw.it_Reserved)-(SUM(auk.au_Quantity)-SUM(auk.au_Sold)) ELSE 0 END as [Nadwyżka w magazynie], CASE WHEN auk.au_BINPrice<>tw.it_Price THEN 'Tak' ELSE 'Nie' END as [Różnica w cenie], auk.au_BINPrice as [Cena na aukcjach], tw.it_Price as [Cena w magazynie], SUM(auk.au_Quantity) as [ilość na aukcjach], SUM(auk.au_Sold) [sprzedane na aukcjach], tw.it_Name as [Nazwa towaru], tw.it_Symbol as Symbol, tw.it_Stock as [ilość w magazynie], tw.it_Reserved as Zarezerwowane FROM au__Auction as auk LEFT JOIN it__Item as tw ON auk.au_ProductId=tw.it_Id WHERE auk.au_State=3 GROUP BY tw.it_Symbol, tw.it_Stock, tw.it_Reserved, tw.it_Name, auk.au_BINPrice,tw.it_Price HAVING (SUM(auk.au_Quantity)-SUM(auk.au_Sold))>(tw.it_Stock-tw.it_Reserved) OR (SUM(auk.au_Quantity)-SUM(auk.au_Sold))<(tw.it_Stock-tw.it_Reserved) ORDER BY [brakujące w magazynie] ASC, [Różnica w cenie], [Nadwyżka w magazynie] DESC,symbol ASC Opis wersji Deluxe znajduje się tutaj https://forum.sello.pl/index.php?topic=7715.msg52671#msg52671 Skrypt należy uruchomić w programie serwisowym do Sello lub innym programie do wykonywania zapytań SQL, np. PragmaSQL (darmowy). Spoiler SELECT auk.au_Title as [Tytuł aukcji], auk.au_Quantity-auk.au_Sold as [Dostępne na aukcji], tw.it_Stock-tw.it_Reserved as [Dostępne w magazynie], auk.au_Quantity as [ilość na aukcji], auk.au_Sold [sprzedane na aukcji], tw.it_Name as [Nazwa towaru], tw.it_Stock as Ilość, tw.it_Reserved as Zarezerwowane FROM au__Auction as auk LEFT JOIN it__Item as tw ON auk.au_ProductId=tw.it_Id WHERE auk.au_State=3 AND (auk.au_Quantity-auk.au_Sold)>(tw.it_Stock-tw.it_Reserved) Skrypt jest prosty i bada tylko pojedyncze aukcje czy nie przekraczają stanów magazynowych. Jeżeli ktoś wystawia jeden towar w wielu aukcjach to będzie potrzebował skryptu poniższego. Zmieniając znak większości w ostatniej linijce na znak mniejszości można sprawdzić jakich towarów mamy więcej w magazynie niż wystawionych. Skrypt do sprawdzenia czy mamy za dużo wystawionych towarów przy uwzględnieniu aukcji pojedynczych i wielokrotnych danego towaru: SELECT COUNT(auk.au_Title) as [ilość aukcji danego towaru], SUM(auk.au_Quantity)-SUM(auk.au_Sold) as [Dostępne na aukcjach], tw.it_Stock-tw.it_Reserved as [Dostępne w magazynie], SUM(auk.au_Quantity) as [ilość na aukcjach], SUM(auk.au_Sold) [sprzedane na aukcjach], tw.it_Name as [Nazwa towaru], tw.it_Symbol as Symbol, tw.it_Stock as Ilość, tw.it_Reserved as Zarezerwowane FROM au__Auction as auk LEFT JOIN it__Item as tw ON auk.au_ProductId=tw.it_Id WHERE auk.au_State=3 GROUP BY tw.it_Symbol, tw.it_Stock, tw.it_Reserved, tw.it_Name HAVING (SUM(auk.au_Quantity)-SUM(auk.au_Sold))>(tw.it_Stock-tw.it_Reserved) Cytuj Link to postu
smiki 0 Napisano 27 Stycznia 2015 Udostępnij Napisano 27 Stycznia 2015 w SQL: Towary brakujące, a wystawione na aukcji Witam, mam pytanie donośnie tego skryptu. Jak go przypisać do sello? Przez program serwisowy sello/zaawansowane itd?? Gdzie jest później widoczna ta funkcja w sello?? Pozdrawiam Cytuj Link to postu
Ks. Robak 314 Napisano 27 Stycznia 2015 Autor Udostępnij Napisano 27 Stycznia 2015 w SQL: Towary brakujące, a wystawione na aukcji Cała rzecz polega na tym, że tego nie będzie w Sello. Trzeba za każdym razem uruchamiać ten skrypt przez program serwisowy lub inny program do obsługi baz danych np. PragmaSQL, który jest o tyle lepszy, że zapamiętuje skrypty ostatnio używane i otwiera je ponownie. Można łatwo potem wszystkie skrypty uruchamiać. Cytuj Link to postu
Ks. Robak 314 Napisano 27 Marca 2015 Autor Udostępnij Napisano 27 Marca 2015 w SQL: Towary brakujące, a wystawione na aukcji Nowy skrypt w pierwszym poście. Cytuj Link to postu
Ks. Robak 314 Napisano 16 Lipca 2015 Autor Udostępnij Napisano 16 Lipca 2015 w SQL: Towary brakujące, a wystawione na aukcji Wraz z upływem czasu nadchodzi chęć na posiadanie lepszych skryptów. Oto kolejna wersja. Podczas pracy napotkać możemy następujące sytuacje: -mamy za mało towaru w magazynie w porównaniu do wystawionego na aukcji (trzeba zmniejszyć na aukcji) -mamy za dużo towaru w magazynie w porównaniu do wystawionego na aukcji (trzeba dodać do aukcji) -mamy za dużo towaru w magazynie w porównaniu do wystawionego na aukcji, ale nie chcemy go wystawiać teraz, bo cena poszła w górę i wystawimy gdy stare "tanie" sztuki się sprzedadzą. Do tego potrzebujemy skryptu Deluxe, który pokazałby nie tylko brakujące i nadmiarowe sztuki towaru w magazynie za jednym razem, ale także pokazał cenę na aukcji i w magazynie, abyśmy mogli podjąć decyzję czy mamy zwiększać, czy też mamy czekać aż się sprzeda. Oto on: Skrypt uwzględnia wiele aukcji tego samego towaru. Jednak w jakiś sposób aukcje muszą być grupowane. Grupowanie następuje według: Symbolu towaru, Nazwy towaru i Ceny na aukcji. Więc jeżeli mamy kilka aukcji tego samego towaru i każdy ma inną cenę - pokażą się w osobnych wierszach. Inaczej mówiąc jeśli mamy towaru 10 sztuk, i wystawimy 5 aukcji po 50 zł i 5 aukcji po 51 zł, to pomimo tego, że towar faktycznie nam się zgadza, skrypt pokaże, że mamy w 2 pozycjach za mało towaru wystawionego (5 zamiast 10). W obecnej konstrukcji skryptu nie da się tego zmienić. Aby zsumować takie aukcje, trzebaby zrezygnować z pokazywania cen, lub wybrać jedną cenę z wszystkich aukcji danego towaru, np. maksymalną lub minimalną. Jeżeli ktoś będzie potrzebował takiej przeróbki - proszę pisać. Kolejność sortowania wyników jest taka: -najpierw widzimy towary brakujące w magazynie, -następnie widzimy towary z nadwyżką w magazynie, ale bez róznicy w cenie (czyli do zwiększenia na aukcji), -na końcu widzimy towary z nadwyżką w magazynie, z różnicą w cenie (czyli mogą czekać). Skrypt Deluxe znajduje się w pierwszym poście. Cytuj Link to postu
Ks. Robak 314 Napisano 16 Sierpnia 2015 Autor Udostępnij Napisano 16 Sierpnia 2015 w SQL: Towary brakujące, a wystawione na aukcji W pierwszym poście znajduje się poprawiona wersja skryptu, likwidująca błędnie uwzględniane rezerwacje towarów brakujących. Obecna wersja powinna działać poprawnie. Cytuj Link to postu
sello_user 1 Napisano 25 Sierpnia 2015 Udostępnij Napisano 25 Sierpnia 2015 w SQL: Towary brakujące, a wystawione na aukcji Skrypt jest super! Łap ode mnie "+"! Sello Team powinien wstawić ten skrypt do programu. @Ks. Robak: Czy planujesz wersję wyświetlającą stany z kilku magazynów? Pozdr. Cytuj Link to postu
Ks. Robak 314 Napisano 25 Sierpnia 2015 Autor Udostępnij Napisano 25 Sierpnia 2015 w SQL: Towary brakujące, a wystawione na aukcji Cieszę się Co do kilku magazynów - skrypt jest pod Sello, a tam póki co można wykorzystać tylko jeden magazyn naraz. Jeśli się pojawi możliwość w Sello, wówczas skrypt zostanie dostosowany. A wiele osób czeka na możliwość korzystania z kilku magazynów (np. po jednym dla każdego konta Allegro). Cytuj Link to postu
Paweł Sławiński 1 Napisano 19 Listopada 2015 Udostępnij Napisano 19 Listopada 2015 w SQL: Towary brakujące, a wystawione na aukcji ja to ubrałem w zewnętrzną aplikację połączona z subiektem i sello (działa wygodniej bo uruchamiasz jako zewnętrzny program i nie ma bujanki z odpalaniem skryptów) jak działa można luknąć tutaj Cytuj Link to postu
Paweł Sławiński 1 Napisano 10 Grudnia 2015 Udostępnij Napisano 10 Grudnia 2015 w SQL: Towary brakujące, a wystawione na aukcji Cieszę się Co do kilku magazynów - skrypt jest pod Sello, a tam póki co można wykorzystać tylko jeden magazyn naraz. Jeśli się pojawi możliwość w Sello, wówczas skrypt zostanie dostosowany. A wiele osób czeka na możliwość korzystania z kilku magazynów (np. po jednym dla każdego konta Allegro). hej mam do ciebie pytanie bo widze że znasz trochę lepiej bazę sello a wydaje mi się że brakuje w tym skrypcie jednej zasadniczej informacji przykładowo na stanie mam 100 szt towaru w rezerwacjach 20 czyli realnie 80 na aukcjach wystawione jest 100 szt więc powiedzmy wiem że muszę zmniejszyć do 80 ALE w transakcjach które jeszcze nie doszły do przetworzenia na dokumenty handlowe bo nie robimy z automatu zamówienie do klientów jest 60 szt więc realnie mój stan to tylko 20 a nie 80. i teraz pytanie z której tabeli pobrać informację o łącznej ilości transakcji danego towaru oczekujących na przetworzenie w dokumenty Cytuj Link to postu
Ks. Robak 314 Napisano 10 Grudnia 2015 Autor Udostępnij Napisano 10 Grudnia 2015 w SQL: Towary brakujące, a wystawione na aukcji Towary w transakcji znajdują się w tabeli tr_Item. Cytuj Link to postu
Paweł Sławiński 1 Napisano 13 Grudnia 2015 Udostępnij Napisano 13 Grudnia 2015 w SQL: Towary brakujące, a wystawione na aukcji thx Cytuj Link to postu
Polecane posty
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.