Inwentaryzacja

A tu dla odmiany podyskutować możesz na tematy logistyczne SAP. Jeśli pojawią się jakieś pytania, nie zwlekaj, zadaj je natychmiast.
ODPOWIEDZ
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Inwentaryzacja

Post autor: pabliq »

Witam,

mam problem podczas dokonywania inwentaryzacji. Uruchamiany jest program z-towy, który wykonuje funkcję CALL FUNCTION 'L_INV_COUNT'. Niemniej funkcja ta kończy się błędem - either_quantity_or_empty_bin = 12.

Błąd pojawia się w sytuacji, gdy próbuję rozliczyć miejsce składowania podając indeksy w różnych jednostkach, np: jeden indeks w SZT, a drugi indeks w STS.

Co może być przyczyną takiego zachowania systemu?

Z góry dziękuję za podpowiedzi.
dominik.tylczynski
Posty: 8326
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1915 times
Been thanked: 1474 times
Kontakt:

Re: Inwentaryzacja

Post autor: dominik.tylczynski »

pabliq pisze: pn gru 10, 2018 11:44 am Co może być przyczyną takiego zachowania systemu?
Tutaj właściwszym byłoby pytanie co jest przyczyną takiego zachowania Z-reportu. Przypuszczam, że raport nie radzi sobie z przeliczaniem jednostek miary i przekazuje nieprawidłowe dane do funkcji L_INV_COUNT. Wyjątek mówi, że nie została przekazana ilość zliczona w trakcie inwentaryzacji oraz że inwentaryzowana lokalizacja nie została oznaczona jako pusta w wywołaniu funkcji.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Zauważyłem następującą zależność:

jak podaję ilość do rozliczenia w postaci 0,065 TSS, to pojawia się opisany powyżej błąd.
Natomiast gdy podam ilość 0,650 TSS tego samego indeksu, to błędu już nie ma.

Indeks w specyfikacji ma jedn. TSS, min. ilość zlecenia 0,000, ilość podstawowa 0,000

Co może być przyczyną takiego zachowania?
dominik.tylczynski
Posty: 8326
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1915 times
Been thanked: 1474 times
Kontakt:

Re: Inwentaryzacja

Post autor: dominik.tylczynski »

Tak jak napisałem wcześniej - przyczyną jest błąd w z-raporcie.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Nie za bardzo rozumiem czego miałby dotyczyć błąd, czy formatu danych? skoro podaję ilości dopuszczone w specyfikacji.
Podawana ilość nie jest modyfikowana przed przekazaniem do funkcji, zarówno liczba 0,065 jak i 0,650 przekazywana jest do zmiennej, z tym, że przecinek przyjmuje postać kropki, a zmienna funkcji jest polem char-owym, więc przyjmuje wartość tak jak zostanie podana przez użytkownika.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Tak jakby problem dotyczył zaokrąglania, tzn. gdy podaję 0,350 to jest błąd (nr 12), gdy podaję 0,650 to jest ok.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Odnośnie uwagi "inwentaryzowana lokalizacja nie została oznaczona jako pusta w wywołaniu funkcji"

jeśli lokalizacja jest pusta, to powinienem ustawić parametr kznul = 'X' ?
Lokalizacja, to chodzi o miejsce składowania?
dominik.tylczynski
Posty: 8326
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1915 times
Been thanked: 1474 times
Kontakt:

Re: Inwentaryzacja

Post autor: dominik.tylczynski »

Program, który błędnie wywołuje funkcję L_INV_COUNT to Twój program, sam go próbujesz napisać?
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Nie jestem jego autorem. Próbuję teraz poprawić jego działanie.
dominik.tylczynski
Posty: 8326
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1915 times
Been thanked: 1474 times
Kontakt:

Re: Inwentaryzacja

Post autor: dominik.tylczynski »

Lokalizacja to tutaj miejsce składowania.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Załączyłem kawałek kodu funkcji sap-owej. Jest to miejsce, w którym sprawdzany jest warunek. W tym miejscu zmienna S_LINV-MENGA jest zainicjowana i ma przypisaną wartość różną od zera, a mimo to pojawia się opisany komunikat.

IF ( S_LINV-MENGA IS INITIAL AND S_LINV-KZNUL IS INITIAL ) OR
( S_LINV-MENGA = 0 AND S_LINV-KZNUL IS INITIAL ).
MESSAGE E038 RAISING EITHER_QUANTITY_OR_EMPTY_BIN.
ENDIF.

Dlaczego sap traktuje wartość 0,350 jako równą zero?
Czy dla takich sytuacji powinienem ustawiać KZNUL = X ?
Załączniki
Dok2.docx
(83.44 KiB) Pobrany 17 razy
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Znalazłem funkcję BAPI_MATPHYSINV_COUNT, niemniej jest to funkcja, która dotyczy inwentaryzacji przeprowadzanej w transakcjach MI01-04, tj. gdy nie ma zarządzania magazynem.

Wracając do funkcji L_INV_COUNT, w przypadku ułamków setek czy tysięcy sztuk, to radzę sobie w ten sposób, że zamieniam na sztuki.
Czy to jest właściwe podejście do tematu? Czy nie ma innej funkcji, w której zmienna dla "ilości" będzie typu dec ?
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Jeszcze jedno pytanie:
Jak przeprowadzana jest inwentaryzacja bez użycia standardowych transakcji li01n....? Chodzi o inwentaryzację przy użyciu terminali? Czy może używane są inne urządzenia mobilne i wtedy wykorzystuje się transakcji li11n??

Wiadomo, że na większych przestrzeniach chodzi o to, żeby użytkownik był mobilny i w każdej lokalizacji mógł dokonać spisu.

Będę wdzięczny za wskazówki.
pabliq
Posty: 390
Rejestracja: pn cze 08, 2009 9:32 am
Has thanked: 67 times
Been thanked: 11 times

Re: Inwentaryzacja

Post autor: pabliq »

Witam,

podczas tworzenia dokumentu inwentaryzacyjnego w li01n dla wskazanego miejsca składowania pojawia się następujący komunikat:

Nr komunikatu L3837
Jedn. obsługi 100XXXXXXX nie znajduje się w składzie zarządzanym wg jedn. obsł.

Z czym ten komunikat jest związany?

Z góry dziękuję za podpowiedzi.
ODPOWIEDZ