2009 Mar 25 2:25 PM
Hi Friends
Pls help me write this code properly i have to check for rest all select options with s_pernr and without s_pernr. but this code is not checking properly
Its like user can or can't enter value in either of the field but at last with all the combination of data the information shd correct .
my prob is i dont want to make any field mandatory so we cant use AND and if i use OR it give me so many unwanted entrires too
This is with s_pernr
if ( ( PNPSTAT2[] is not initial ) or ( PNPWERKS[] is not initial ) or ( PNPBTRTL[] is not initial )
or ( PNPPERSG[] is not initial ) or ( PNPPERSK[] is not initial ) or ( PCHOBJID[] is not initial )
and ( s_pernr[] is not initial ) ).
if sy-subrc = 0.
select pernr werks persg persk btrtl orgeh
from pa0001 into corresponding fields of table ito1
where pernr in s_pernr
and endda ge sy-datum
and begda le sy-datum
and ( werks in pnpwerks ) or ( werks EQ space )
and ( persg in pnppersg ) or ( persg EQ space )
and ( persk in pnppersk ) or ( persk EQ space )
and ( btrtl in pnpbtrtl ) or ( btrtl EQ space )
and ( orgeh in pchobjid ) or ( orgeh EQ space ).
if sy-subrc = 0.
Do some thing
elseif sy-subrc NE 0.
Message i000(zmess) .
endif.
endif.
this is without s_pernr
elseif ( ( PNPSTAT2[] is not initial ) or ( PNPWERKS[] is not initial )
or ( PNPBTRTL[] is not initial ) or ( PNPPERSG[] is not initial )
or ( PNPPERSK[] is not initial ) or ( PCHOBJID[] is not initial )
and ( s_pernr[] is initial ) ).
select pernr werks persg persk btrtl orgeh
from pa0001 into corresponding fields of table ito2
where ( werks in pnpwerks ) or ( werks EQ space )
and ( persg in pnppersg ) or ( persg EQ space )
and ( persk in pnppersk ) or ( persk EQ space )
and ( btrtl in pnpbtrtl ) or ( btrtl EQ space )
and ( orgeh in pchobjid ) or ( orgeh EQ space ).
do some thing.
Regards
Meeta
2009 Mar 25 2:36 PM
HI,
Check this
if ( ( PNPSTAT2[] is not initial or PNPWERKS[] is not initial or PNPBTRTL[] is not initial
or PNPPERSG[] is not initial or PNPPERSK[] is not initial or PCHOBJID[] is not initial )
and s_pernr[] is not initial ).
select pernr werks persg persk btrtl orgeh
from pa0001 into corresponding fields of table ito1
where pernr in s_pernr
and endda ge sy-datum
and begda le sy-datum
and ( werks in pnpwerks or werks EQ space )
and ( persg in pnppersg or persg EQ space )
and ( persk in pnppersk or persk EQ space )
and ( btrtl in pnpbtrtl or btrtl EQ space )
and ( orgeh in pchobjid or orgeh EQ space ).
if sy-subrc = 0.
Do some thing
elseif sy-subrc NE 0.
Message i000(zmess) .
endif.
this is without s_pernr
elseif ( ( PNPSTAT2[] is not initial or PNPWERKS[] is not initial
or PNPBTRTL[] is not initial or PNPPERSG[] is not initial
or PNPPERSK[] is not initial or PCHOBJID[] is not initial )
and ( s_pernr[] is initial ) ).
select pernr werks persg persk btrtl orgeh
from pa0001 into corresponding fields of table ito2
where ( werks in pnpwerks or werks EQ space )
and ( persg in pnppersg or persg EQ space )
and ( persk in pnppersk or persk EQ space )
and ( btrtl in pnpbtrtl or btrtl EQ space )
and ( orgeh in pchobjid or orgeh EQ space ).
do some thing.
2009 Mar 26 2:27 PM