‎2006 Dec 06 1:05 PM
Hello gurus,
I want to implement user exit RV60AFZZ, FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN
does anybody have got some sample code for me proceed
thanx in advance
senthil
‎2006 Dec 06 1:10 PM
Hi,
use below code
FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN.
TABLES OIA10E.
IF NOT VBRK-SFAKN IS INITIAL.
SELECT SINGLE *
FROM OIA10E
WHERE EXGNUM = VBRK-OIEXGNUM
AND FIDOC = VBRK-SFAKN.
IF SY-SUBRC = 0.
MESSAGE E000(ZZ) WITH 'Unable to cancel as document included'
'on netting document'
OIA10E-NETNUM.
ENDIF.
ENDIF.
Regards
amole
‎2006 Dec 06 1:10 PM
Hi,
use below code
FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN.
TABLES OIA10E.
IF NOT VBRK-SFAKN IS INITIAL.
SELECT SINGLE *
FROM OIA10E
WHERE EXGNUM = VBRK-OIEXGNUM
AND FIDOC = VBRK-SFAKN.
IF SY-SUBRC = 0.
MESSAGE E000(ZZ) WITH 'Unable to cancel as document included'
'on netting document'
OIA10E-NETNUM.
ENDIF.
ENDIF.
Regards
amole
‎2006 Dec 06 1:16 PM
Hi Senthil,
Here is sample code, u can alter it according to ur requirement
----
FORM USEREXIT_NUMBER_RANGE *
----
This userexit can be used to determine the numberranges for *
the internal document number. *
US_RANGE_INTERN - internal number range *
This form is called from form LV60AU02 *
----
this is the code we had written here
FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN.
FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN.
data : l_fkart like vbrk-fkart.
Example: Number range from TVFK like in standard
US_RANGE_INTERN = TVFK-NUMKI.
clear US_RANGE_INTERN.
condense vbrk-fkart.
case vbrk-fkart.
when 'ZAMC'.
l_fkart = 'AMCI'.
when 'ZASU'.
l_fkart = 'ASUI'.
when 'ZCS'.
l_fkart = 'ZCSI'.
when 'ZDEM'.
l_fkart = 'DEMI'.
when 'ZVEN'.
l_fkart = 'VENI'.
when others.
l_fkart = vbrk-fkart.
endcase.
select single NRRANGENR into US_RANGE_INTERN
from ZNRIV_P where werks = vbrp-werks and doctyp = l_fkart.
if sy-subrc ne 0.
message e001(ZTTIL1) with vbrp-werks l_fkart.
endif.
ENDFORM.
Hope it helps,
Regards,
Kumar
‎2006 Dec 06 1:22 PM
if found good please award some points.
form userexit_number_range using us_range_intern.
data: lv_objtype like nast-objtype.
data: lv_simulation type c.
data: begin of lt_xvbrp occurs 0.
include structure vbrpvb.
data: end of lt_xvbrp.
data: begin of lt_xvbpa occurs 0.
include structure vbpavb.
data: end of lt_xvbpa.
data: begin of lt_yvbrp occurs 0.
include structure vbrpvb.
data: end of lt_yvbrp.
data: begin of lt_yvbpa occurs 0.
include structure vbpavb.
data: end of lt_yvbpa.
data: ls_vbrp like vbrpvb,
ls_vbpa like vbpavb.
data: ls_xvbrp like vbrpvb.
data: lv_func_pref_sd0c_r3
like rs38l-name value '/SAPSLL/PREF_SD0C_R3'.
call function 'FUNCTION_EXISTS'
exporting
funcname = lv_func_pref_sd0c_r3
exceptions
function_not_exist = 1
others = 2.
if sy-subrc <> 0.
exit.
endif.
call function 'SD_OBJECT_TYPE_DETERMINE'
exporting
i_document_type = vbrk-vbtyp
importing
e_business_object = lv_objtype
exceptions
others = 0.
lv_simulation = 'X'.
refresh: lt_xvbrp, lt_xvbpa, lt_yvbrp, lt_yvbpa.
clear: lt_xvbrp, lt_xvbpa, lt_yvbrp, lt_yvbpa.
loop at xvbpa into ls_vbpa where vbeln = vbrk-vbeln.
append ls_vbpa to lt_xvbpa.
endloop.
loop at yvbpa into ls_vbpa where vbeln = vbrk-vbeln.
append ls_vbpa to lt_yvbpa.
endloop.
loop at xvbrp into ls_vbrp where vbeln = vbrk-vbeln.
append ls_vbrp to lt_xvbrp.
endloop.
loop at yvbrp into ls_vbrp where vbeln = vbrk-vbeln.
append ls_vbrp to lt_yvbrp.
endloop.
call function '/SAPSLL/PREF_SD0C_R3'
exporting
is_header = vbrk
iv_business_object = lv_objtype
iv_simulation = lv_simulation
iv_deletion_indicator = ' '
tables
it_partner_new = lt_xvbpa
it_partner_old = lt_yvbpa
ct_item_new = lt_xvbrp
it_item_old = lt_yvbrp
it_partner_address = xvbadr
exceptions
others = 1. "#EC EXISTS
loop at xvbrp into ls_xvbrp
where ( vbeln eq vbrk-vbeln ).
read table lt_xvbrp into ls_vbrp
with key vbeln = ls_xvbrp-vbeln
posnr = ls_xvbrp-posnr.
if ( sy-subrc = 0 ).
move ls_vbrp-prefe to ls_xvbrp-prefe.
endif.
*------ Änderung übernehmen
modify xvbrp from ls_xvbrp transporting prefe.
endloop.
Example: Number range from TVFK like in standard
US_RANGE_INTERN = TVFK-NUMKI.
endform.
*eject
regards,
Vishwas