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.
Inwentaryzacja
-
- Posty: 8355
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1477 times
- Kontakt:
Re: Inwentaryzacja
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.
Re: Inwentaryzacja
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?
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?
-
- Posty: 8355
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1477 times
- Kontakt:
Re: Inwentaryzacja
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.
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.
Re: Inwentaryzacja
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?
jeśli lokalizacja jest pusta, to powinienem ustawić parametr kznul = 'X' ?
Lokalizacja, to chodzi o miejsce składowania?
-
- Posty: 8355
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1477 times
- Kontakt:
Re: Inwentaryzacja
Program, który błędnie wywołuje funkcję L_INV_COUNT to Twój program, sam go próbujesz napisać?
-
- Posty: 8355
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1477 times
- Kontakt:
Re: Inwentaryzacja
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 ?
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 19 razy
Re: Inwentaryzacja
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 ?
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 ?
Re: Inwentaryzacja
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.
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.
Re: Inwentaryzacja
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.
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.
-
- Posty: 8355
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1477 times
- Kontakt: