Ad blocker detected: Our website is made possible by displaying online advertisements to our visitors. Please consider supporting us by disabling your ad blocker on our website.
Potrzebuję aby przy wpisaniu parametru wejściowego modułu funkcji użytkownik uzyskał rezultaty tak jak przy użyciu symbolu wieloznacznego % do zastępowania jednego lub więcej znaków w ciągu.
Np. przy wpsianiu numeru materiału 9280 uzyskał wszystkie materiały z 9280 w numerze.
Jak i czy można użyć wieloznacznika w połączeniu z parametrem materialno w SELECT?
DATA:
lv_where TYPE matnr VALUE '%9280%'.
SELECT matnr, mtart FROM mara WHERE matnr LIKE @lv_where ORDER BY PRIMARY KEY INTO TABLE @DATA(lt_material_details).
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
ZETKA pisze: ↑czw wrz 15, 2022 1:32 pm
Chyba tylko przy IMPORTING VALUE da się bezpośrednio modyfikować parametr importowy? Niech ktoś mnie ewentualnie poprawi.
Z oznaczeniem importu przez wartość, a nie referencję...
ZETKA pisze: ↑czw wrz 15, 2022 1:32 pm
Chyba tylko przy IMPORTING VALUE da się bezpośrednio modyfikować parametr importowy? Niech ktoś mnie ewentualnie poprawi.
In pass by reference, the formal parameter points directly to the actual parameter, so that changes to the formal parameters have an immediate effect on the actual parameter.
In pass by value, when the function module is called, the formal parameter is created as a copy of the actual parameter (in IMPORTING and CHANGING parameters), or initial (in EXPORTING parameters) in the stack. In CHANGING and EXPORTING parameters, the formal parameter is copied to the actual parameter when returning from the function module.
Czyli prostymi słowami:
w przypadku IMPORTING VALUE w funkcji zmieniana jest tylko lokalna kopia parametru - program wywołujący funkcję nie widzi zmian
w przypadku IMPORTING bez VALUE zmieniana jest referencja do parametru - program wywołujący funkcję widzi zmiany
Przekazywanie parametrów przez wartości, IMPORTING VALUE, jest nieco mniej wydajne, gdyż wartość parametru trzeba skopiować lokalnie.
Istotnie wartości parametrów importowych, przekazywanych przez referencję, tj. bez VALUE nie można modyfikować w funkcji. Jeśliby modyfikacja była dozwolona, to w istocie takie parametr zachowywałby się ja parametr wyjściowy, bo program wywołujący funkcję widziałby zmiany parametru wykonane wewnątrz funkcji.