Autor Wątek: Stan minimalny rozróżniony dla konkretnego magazynu  (Przeczytany 3682 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline kristof46

  • Nowy użytkownik
  • *
  • Wiadomości: 6
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.56
Stan minimalny rozróżniony dla konkretnego magazynu
« dnia: Kwiecień 24, 2019, 16:14:07 »
Witam.
Mam problem ze stanem minimalnym. Niestety nie jest on podobnie jak zwykły stan magazynowy rozróżniany dla każdego magazynu osobno. Ustawiamy go w parametrach produktu co sprawia że w każdym magazynie widnieje identyczny stan min. Z jednej strony może i ma to sens. Z drugiej chciałbym konkretnie wiedzieć czego i ile potrzebuje w danym magazynie. Tak mam wyłącznie sumę wszystkich i żeby znać konkretny podział muszę sięgać do osobnych plików. Wpadłem na pomysł że skoro można zadaniem SQL wymusić podświetlenie produktów których stan jest poniżej minimum to można również ograniczyć to kolorowanie do jednego magazynu. W końcu magazyny też są jakąś tabelą więc podejrzewam że da radę połączyć to w jedno. Wstępnie do podświetlenia wykorzystałem zadanie z poradnika Insertu (https://www.insert.com.pl/dla_uzytkownikow/e-pomoc_techniczna/1715,jak-skonfigurowac-program-tak-aby-podswietlal-towary-ktore-sa-ponizej-stanu-minimalnego.html).
Jeśli chodzi o magazyny to udało mi się znaleźć coś takiego "sl_Magazyn.mag_Id".  Pytanie czy ta formuła jest odpowiednia by połączyć ją z wyżej wspomnianym zadaniem.
A może w ogóle da się jakoś wprowadzić stan minimalny dla kazdego magazynu osobno. Nawet gdyby było to pod zupełnie inaczej nazwaną kolumną. Kto ma wiedzieć o co chodzi będzie wiedział.

Offline birds22

  • Ekspert
  • *****
  • Wiadomości: 9209
  • Reputacja +1304/-21
  • Wersja programu: Najnowsza
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #1 dnia: Kwiecień 24, 2019, 16:25:29 »
Ale przecież to kolorowanie opisane na stronie Insertu działa w kontekście tej jednej listy towarów, więc jest dla jednego magazynu.

Jeżeli chcesz wprowadzić stan minimalny osobno dla każdego magazynu możesz skorzystać z pól własnych lub własnej tabeli do której odwołasz się w formatowaniu warunkowym.
Mam dodatek, który między innymi ma taką funkcję, ale to już na PW.
Sławek, Zduńska Wola

Offline yemet

  • Zaawansowany użytkownik
  • ****
  • Wiadomości: 1249
  • Reputacja +46/-1
  • Wersja programu: Navireo
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #2 dnia: Kwiecień 24, 2019, 16:38:44 »
Można ograniczyć formatowanie do konkretnego lub konkretnych magazynów. Do wyrażenia CASE trzeba dopisać

AND tw.st_MagId in (tutaj lista identyfikatorów magazynów po przecinku)

np.

CASE WHEN (Tw.Stan < Tw.tw_StanMin AND Tw.tw_Zablokowany = 0 AND tw.st_MagId in (1)) THEN 1 ELSE 0 END

i to pokoloruje towary aktywne poniżej stanu minimalnego tylko gdy pracujesz na magazynie o id=1. Możesz w ten sposób natworzyć sobie dla każdego magazynu osobne formatowania.

W tabeli stanów magazynowych Subiekta jest pole stanu minimalnego, gdzie teoretycznie powinien być przechowywany stan minimalny dla konkretnego magazynu ale chyba nie jest wykorzystywane przez program. Jest nawet opisane w dokumentacji struktury bazy w pomocy programu:

Cytuj
st_StanMin
Minimalna ilość towaru (ob_TowId) na magazynie (ob_MagId). Jej przekroczenie (ob_Stan<ob_StanMin) powinno generować specjalny zapis w innej tabeli. 
« Ostatnia zmiana: Kwiecień 24, 2019, 16:40:17 wysłana przez yemet »

Offline birds22

  • Ekspert
  • *****
  • Wiadomości: 9209
  • Reputacja +1304/-21
  • Wersja programu: Najnowsza
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #3 dnia: Kwiecień 24, 2019, 16:50:15 »
@yemet  - spójrz na podgląd zapytania listy i warunki zawarte w tym zapytaniu.
Sławek, Zduńska Wola

Offline yemet

  • Zaawansowany użytkownik
  • ****
  • Wiadomości: 1249
  • Reputacja +46/-1
  • Wersja programu: Navireo
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #4 dnia: Kwiecień 24, 2019, 17:05:24 »
@birds22
Wziąłem warunek wprost ze strony insertowskiej, do której link podał @kristof46 i przetestowałem na testowym podmiocie Insertowskim. Widok vwTowar, który jest odpytywany w gridzie towarowym zawiera w definicji pole st_MagId więc dlaczego nie dałoby się na jego podstawie formatować?

https://drive.google.com/file/d/1rSe2FB2S82rSHkIjpcQpv9p_4ZqwF9Jc/view?usp=sharing

Dziwne, ale u mnie działa ;)

Offline birds22

  • Ekspert
  • *****
  • Wiadomości: 9209
  • Reputacja +1304/-21
  • Wersja programu: Najnowsza
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #5 dnia: Kwiecień 24, 2019, 17:13:55 »
Działa, bez dopisywania dodatkowych warunków w CASE bo cały grid jest filtrowany wg magazynu i

CASE WHEN (Tw.Stan < Tw.tw_StanMin AND Tw.tw_Zablokowany = 0 AND tw.st_MagId in (1)) THEN 1 ELSE 0 END działa dokładnie tak samo na magazynie o Id=1 jak
CASE WHEN (Tw.Stan < Tw.tw_StanMin AND Tw.tw_Zablokowany = 0 ) THEN 1 ELSE 0 END
Cały ten dopisek i tak nie ma sensu, bo zapytanie grida ma warunek
WHERE
(  st_MagId = 1  )


Chyba, że chcecie uzyskać coś czego nie rozumiem...



EDIT

Nie wiem co wg Ciebie działa. Jeżeli dodałeś formatowanie z dopisanym AND tw.st_MagId in (1) to masz tak, że na magazynie o ID=1 formatowanie będzie działało a na żadnym innym nie będzie działało, bo to co jest w CASE  nigdy nie będzie spełnione.


« Ostatnia zmiana: Kwiecień 24, 2019, 17:18:24 wysłana przez birds22 »
Sławek, Zduńska Wola

Offline yemet

  • Zaawansowany użytkownik
  • ****
  • Wiadomości: 1249
  • Reputacja +46/-1
  • Wersja programu: Navireo
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #6 dnia: Kwiecień 24, 2019, 17:22:32 »
Bez AND tw.st_MagId in (1) to na każdym magazynie sformatuje te pozycje, które są poniżej stanu minimalnego.

Z AND tw.st_MagId in (1,2,3) formatowanie zadziała tylko na konkretnych magazynach.

Ja zrozumiałem pytanie tak: chcę, żeby towary poniżej stanu minimalnego były podświetlane jakimś tam kolorem tylko na konkretnym magazynie.
Zobaczymy co nam napisze @kristof46, jeśli odpisze ;)


Nie wiem co wg Ciebie działa. Jeżeli dodałeś formatowanie z dopisanym AND tw.st_MagId in (1) to masz tak, że na magazynie o ID=1 formatowanie będzie działało a na żadnym innym nie będzie działało, bo to co jest w CASE  nigdy nie będzie spełnione.

j.w. tak zrozumiałem pytanie - "formatowanie ma działać na konkretnym magazynie".
« Ostatnia zmiana: Kwiecień 24, 2019, 17:25:46 wysłana przez yemet »

Offline kristof46

  • Nowy użytkownik
  • *
  • Wiadomości: 6
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.56
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #7 dnia: Kwiecień 25, 2019, 09:57:50 »
To co proponuje Insert nie jest ograniczone do konkretnych magazynów a to dlatego że biblioteka towarów jest jedna niezależnie od magazynu. Tym samym jesli mamy np. magazyn owoców a drugi warzyw to jeśli sobie nie włączymy filtra (grupy) czy czegoś innego aby wyświetlały się tylko dane towary to w obu mamy zarówno warzywa i owoce i w obu podświetlają się te same produkty.
Spróbowałem więc warunek z MagId ale coś nie hula. Podpowiedzcie co Subiekt uznaje jako Magazyn z ID=1? Nie ukrywam że nie jestem w tym biegły.

Natomiast tak jeszcze ogólnie. To podświetlenie to wciąż tylko połowa sukcesu bo mając w kilku magazynach te same produkty mogę użyć go tylko do jednego bo inaczej nie ma to sensu. Naprawdę nie rozumiem czemu Insert nie zrobił stanu minimalnego oddzielnie dla każdego magazynu tylko jako parametr danego produktu.
Żeby objaśnić. W 3 magazynach mam ten sam produkty X. Jednej mag jest ogólny dwa są pod konkretnych klientów. W tym ogólnym min. to 60 dla klienta #1 min to 30 a dla klienta #2 10. Subiekt uznaje że mogę sobie to traktować jako sumę 100 szt. włączyć stan minimalny i wszyscy zadowoleni. No nie do końca bo jak coś się podświetli to nie wiem wtedy w którym konkretnie magazynie mam braki bo nie wiem jaki powinien być w nim stan min bo mam tylko sumę 100 szt.. Muszę wtedy i tak szukać na jakichś osobnych zapiskach.
« Ostatnia zmiana: Kwiecień 25, 2019, 10:11:47 wysłana przez kristof46 »

Offline birds22

  • Ekspert
  • *****
  • Wiadomości: 9209
  • Reputacja +1304/-21
  • Wersja programu: Najnowsza
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #8 dnia: Kwiecień 25, 2019, 10:32:16 »
Nie zrobił bo nie - ten typ tak ma. Jest mnóstwo przykładów, że coś komuś jest potrzebne w innej konfiguracji a program ma to inaczej. Nie oczekujmy od programu za kilkaset złotych, że spełni wymagania wszystkich użytkowników. Do tego są właśnie rozwiązania własne, które rozszerzają możliwości programu.

Id magazynu to jego identyfikator w tabeli sl_magazyn

Chyba źle rozumiesz stan minimalny. Jak wcześniej napisałem jest to wartość wspólna dla każdego magazynu, czyli jeżeli w magazynie 1 masz stan 100, 2 masz 50 a stan minimalny określisz na 70 to w magazynie 1 nie osiągnąłeś stanu minimalnego a w magazynie 2 już tak.
Sławek, Zduńska Wola

Offline kristof46

  • Nowy użytkownik
  • *
  • Wiadomości: 6
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.56
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #9 dnia: Kwiecień 25, 2019, 10:48:52 »
Rozumiem ten stan minimalny choć moim zdaniem to powinno być lepiej rozwiązane kosztem innych mniej potrzebnych rzeczy. No ale nic. Tak czy inaczej dzięki za pomoc. Zaraz będę próbował co i jak.

Offline birds22

  • Ekspert
  • *****
  • Wiadomości: 9209
  • Reputacja +1304/-21
  • Wersja programu: Najnowsza
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #10 dnia: Kwiecień 25, 2019, 10:55:08 »
Rozumiem ten stan minimalny choć moim zdaniem to powinno być lepiej rozwiązane kosztem innych mniej potrzebnych rzeczy. No ale nic. Tak czy inaczej dzięki za pomoc. Zaraz będę próbował co i jak.

Rzeczy, które Tobie wydają się mniej potrzebne dla innych mogą być niezbędne.
Sławek, Zduńska Wola

Offline Chris

  • Zaawansowany użytkownik
  • ****
  • Wiadomości: 2850
  • Reputacja +275/-0
  • Wersja programu: GT, Nexo - aktualne
Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #11 dnia: Kwiecień 26, 2019, 09:10:41 »
Użytkownik kristof46 chyba przeoczył ten fragment o polach własnych. Autor programu przewidział dodatkowe pola własne dla towarów, na różne potrzeby,np. takie jak Ty tutaj.
Krzysztof, Radom

Forum Użytkownikow Subiekt GT

Odp: Stan minimalny rozróżniony dla konkretnego magazynu
« Odpowiedź #11 dnia: Kwiecień 26, 2019, 09:10:41 »