You are on page 1of 35

November 2000

SAP AG
Neurottstrasse 16
69190 Walldorf
Germany
Mobile Data Entry (Radio
Frequency)
Programming Guideline: Radio re!uen"y A##li"ations
Please contact Chris Roediger (e-mail c.roediger@sa.com) or
Christoh !essmoellmann (e-mail" christoh.lessmoellmann
@sa.com) #rom Product Management $uly Chain
Management #or your #eedbac%.
Programming Guideline: Radio Frequency Applications
Coyright
$o#yrig%t 2000 SAP AG& All rig%ts reserved&
No #art of t%is do"umentation may be re#rodu"ed or transmitted in any form or for any #ur#ose
'it%out t%e e(#ress #ermission of SAP AG&
)%e information "ontained %ere may be "%anged 'it%out #rior noti"e&
SAP AG ...... Version 1.0 Novemer !000 Page ! o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
C&'(E'($
1 INTRODUCTION..............................................................................................................
1.1 Audience....................................................................................................................
1.! Release %ependent %evelopment..............................................................................
1.# Furt&er %ocumentation...............................................................................................
2 INTRODUCTION INTO RADIO FREQUENCY (RF).........................................................
!.1 'ntroduction into RF....................................................................................................
!.! ()isting Functions......................................................................................................
3 DESIGNING RADIO FREQUENCY APPLICATIONS.......................................................
#.1 *ne +ransaction , %i""erent %isplays.........................................................................
3.1.1 Dynamic Screen Call............................................................................................
#.1.1.1 -ogical and P&ysical Screens..........................................................................................................................
#.1.1.! .ser ()it.........................................................................................................................................................
#.! Screen Navigation......................................................................................................
3.2.1 Screen Types.......................................................................................................
3.2.2 Screen Procedure..............................................................................................10
#.# Screen /reation: SAPGui vs. RF %evices................................................................
3.3.1 Screen Flow.......................................................................................................
3.3.2 Screen Logic.......................................................................................................
3.3.3 Message Mechanism..........................................................................................
3.3. !rror "andling....................................................................................................
3.3.# $%S&$%'..........................................................................................................
3.3.( Special )*+ec,s..................................................................................................12
#.0 %ynamic 1enu..........................................................................................................
#.$ .ser2System 'nteraction...........................................................................................
3.5.1 User Input............................................................................................................1#
*&+&1&1 $%anging t%e un"tion ,eys in t%e G-. Status....................................................................................................
*&+&1&2 /nter un"tion ,ey..........................................................................................................................................
3.5.2 System Feedback...................................................................................................1-
3.5.3 User Support: F1 Field Help and F4 Value Input Help..............................................1-
4 OVERVIEW DESIGN PRINCIPLES FOR RF APPLICATIONS.......................................
0.1 Not Supported Features on /&aracter /ell +erminals..............................................
0.! Guideline Summary..................................................................................................
5 BASIC OBJECTS RECOMMENDED FOR TE RF DEVELOPMENT..........................
! DEVELOPING RADIO FREQUENCY APPLICATIONS..................................................
3.1 Guide "or t&e RF %evelopment in Releases Prior to 034..........................................
3.! Step2y2step Guide "or t&e RF %evelopment 5Release 67 0348...............................
(.2.1 De.elopmen, Class............................................................................................2/
(.2.2 0epor,................................................................................................................2/
(.2.3 Transac,ion.........................................................................................................32
(.2. Screen................................................................................................................32
(.2.# '1& S,a,us..........................................................................................................33
SAP AG ...... Version 1.0 Novemer !000 Page # o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
1 I"#$%&'(#)%"
1.1 A'&)*"(*
)%is do"ument is intended for SAP develo#ers0 #artners0 and "ustomers '%o im#lement radio
fre!uen"y 1R2 in different a##li"ation areas andareas& .t des"ribes all t%e ste#s t%at %ave to be
#erformed to develo# R a##li"ations& )%e do"ument lists t%e s#e"ifi" re!uirements t%at must be
ta3en into "onsideration '%en develo#ing in t%e mobile environment& .t tries to giveenvironment and
gives an overvie' of t%e most im#ortant guidelines to design useful and useable a##li"ations&
4evelo#ers outside SAP "an often not use t%e tools and te"%ni!ues t%at SAP develo#ers %ave at t%eir
dis#osal& )%is #rogramming guideline s%o's t%em %o' R transa"tions s%ould loo3 li3e and '%i"%
s"reen elements "an be used&
)%is guide #rovides a list of ob5e"ts t%at "an be t%e frame'or3 for t%e R develo#ment& .t "ontains
also information on t%e en%an"ement of e(isting fun"tions by "ustomers0 t%e user e(its&
1.2 R*+*,-* D*.*"&*"# D*/*+%.0*"#
6e a'are of t%e different releases in '%i"% R a##li"ations in SAP %ave been develo#ed so far& .n
ea"% release you are "onfronted 'it% a different 'or3ing environment and #rere!uisites& 7ou "an
mainly distinguis% t%ree #%ases:
Releases #rior to 86b0 '%ere no R e(isted and in '%i"% you must start your develo#ment
from s"rat"% sin"e you "annot base on e(isting fun"tionality& )%e instru"tions mentioned in
"%a#ter + 96asi" :b5e"ts /ssential for t%e R 4evelo#ment; "an sim#lify matters sin"e t%ey
%el# you to im#lement t%e 9%eart; of t%e R develo#ment 1a #a"3age of t%e basi" fun"tions
and tables2 in your develo#ment system<release&
Release 86b #rovides you 'it% an R environment on '%i"% you base your develo#ment& No
#rere!uisites are to be fulfilled&
)%is #rogramming guideline is based on t%e "urrent release 86"& Nevert%eless0 it "ontains a
se"tion in '%i"% 'e e(#lain %o' to "reate t%e #rere!uisites to ease your 'or3 in a release
free of any R a##li"ations: $%a#ter 6&1 9Guide for t%e R 4evelo#ment in Releases #rior to
866;
1.3 F'$#1*$ D%('0*"#,#)%"
or additional do"umentation about 9=obile 4ata /ntry; refer to t%e SAP>ibrary
%tt#:<<%el#&sa#&"om : Logistics Logistics Execution Warehouse Management Guide
Mobile Data Entry
or additional do"umentation about t%e 9SAP$onsole; refer to t%e =edia $enter on t%e >/S
%ome#age& )%ere you find a user guide0 a te"%ni"al do"umentation0 and an installation guide&
SAP AG ...... Version 1.0 Novemer !000 Page 0 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
2 I"#$%&'(#)%" I"#% R,&)% F$*2'*"(3 (RF)
2.1 I"#$%&'(#)%" )"#% RF
)%e R solution #rovides fast and error?free data "ommuni"ation and mobile data "olle"tion t%roug%
t%e use of mobile R devi"es& )y#i"al R devi"es are %and%eld terminals0 bar"ode s"anners0 and
tru"3?mounted terminals 1for e(am#le0 for3lift tru"3s2& R devi"es re"eive data via radio 'aves
dire"tly from t%e SAP System and transmit t%e results ba"3 to t%e system& 7ou "an s"an t%e
information t%at needs to be re"orded0 su"% as storage unit numbers0 using a bar"ode 1for e(am#le0
based on -$$</AN12@ standards20 and also use t%e bar"ode s"an to verify information0 for
e(am#le0 !uantities0information li3e !uantities and storage bins&
)%e dis#lay of information on t%e R devi"e is #ossible 'it% a gra#%i"al user interfa"e& 7ou "an
e(e"ute t%e individual fun"tions using #us%buttons on a tou"% s"reen& .f you are using a "%ara"ter?
based devi"e0 SAP #rovides a s#e"ial0 non?gra#%i" interfa"e0 t%e SAP$onsole& )%e SAP$onsole
o#erates on a Windo's N) or Windo's 2000 #latform and intera"ts 'it% t%e R devi"es "onne"ted
to it via telnet&
2.2 E4)-#)"5 F'"(#)%"-
=obile data entry "an be used for a range of a##li"ations& 7et0 SAP su##orts t%e use of R devi"es
to "a#ture and u#date data for t%e internal and e(ternal 'are%ouse business #ro"esses:
.n release 86b0 'are%ouse internal a"tivities are su##orted by mobile data entry& )%e R fun"tion
guides t%e 'or3er t%roug% t%e 'are%ouse ste# by ste# by dis#laying information on t%e transfer
order via t%e R terminal& Put a'ay0 #i"3ing0 and #osting "%ange transfer orders "an be identified and
data "ontained in t%em "an be verified& R terminals instru"t t%e o#erator '%ere to #la"e t%e goods
or '%ere to ta3e t%em from&from '%ere to #i"3 t%em& W%en t%e #ut a'ay or #i"3ing #ro"ess is
"om#leted0 you "onfirm eit%er manually0 or by s"anning t%e bar"ode t%at t%e goods %ave been
transferred& Any dis"re#an"ies bet'een t%e !uantity re!uested and t%e !uantity transferred are
re#orted to t%e system& R #ermits real time u#dates of t%e sto"3 availability in t%e storage bins&
Wit% t%e %el# of R you "an also #erform a #a#er?free and effi"ient inventory "ounting in your
'are%ouse& )%e loading of goods onto a tru"3 "an be surveyed and instru"ted via R& .n!uiries about
t%e load status of a s#e"ifi" s%i#ment or delivery as 'ell as t%e sto"3 overvie' "an be "alled u# via
t%e R devi"es and u#dated immediately&
.n release 86" also t%e86"0 also e(ternal 'are%ouse a"tivities "an be #erformed 'it% t%e %el# of R
devi"es& 7ou "an identify in"oming goods by reading t%e bar"ode& )%e subse!uent #uta'ay #ro"ess
'or3s 'it% in"reased effi"ien"y0 sin"e interleaving 'as introdu"ed& .nterleaving alleviates dead?
%eading in radio fre!uen"y?managed 'are%ouses& -#on #uta'ay "om#letion t%e 'or3er re"eives a
ne' assignment0 for e(am#le0 a #i"3ing transfer order and t%us0 does not return em#ty& :utbound
#ro"esses benefit from t%e introdu"tion of #i"3 and #a"3 #ossibilities in one ste#& )%e loading of
goods '%i"% 'as introdu"ed in 86b is en%an"ed by t%e unloading "ontrol fun"tionality and t%e
%andling unit in!uiry&
)%e R su##orted s#e"trum of 'are%ouse a"tivities is li3ely to be en%an"ed by #otential a##li"ations
from different areas '%ere a need e(ists to move around freely and at t%e same time to be online 'it%
SAP AG ...... Version 1.0 Novemer !000 Page $ o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
t%e %ost "om#uter& Real time data "an be "a#tured "lose to material flo's ma3ing t%e use of #a#er
lists obsolete&
SAP AG ...... Version 1.0 Novemer !000 Page 3 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
3 D*-)5")"5 R,&)% F$*2'*"(3 A..+)(,#)%"-
or mobile a##li"ations it is very im#ortant t%at t%e fun"tionality develo#ed is easy to use& )%e user
%as a limited area on %is devi"e t%at "an be used for orientation and navigation& Ae s%ould re"ogniBe
%is tas3 on t%e first vie' and be able to a""om#lis% it 'it% as littlefe' 3eystro3es as #ossible& ,ee#
al'aysAl'ays 3ee# in mind: =inimiBing t%e in#ut effort ma(imiBes t%e effi"ien"y related to t%e use
of R terminals&
)%e guidelines #rovided in t%is "%a#ter refle"t t%e 'ay in '%i"% t%e e(isting R a##li"ations %ave
been "reated& $ertainly0 t%is is not t%e sim#lest and not t%e fastest met%od& .n t%e 9Ste#?by? ste#
guide; in "%a#ter 6 'e outline t%e s%ort met%od you "an "%oose to "reate a fun"tioning R
a##li"ation&
3.1 O"* T$,"-,(#)%" 6 D)77*$*"# D)-.+,3-
SAP$onsole is an SAP integrated utility t%at is aimed at non?standard #resentation environments0
su"% as "%ara"ter?"ell user interfa"es t%at are re!uired for t%e ma5ority of R terminals& Any s"reen
may be dis#layed on bot% SAPGui and "%ara"ter "ell s"reens& )%e "%ara"ter "ell standard 'ill serve
as "ommon denominator& 6elo' you see a fe' s"reens%ots0 '%i"% s%o' you t%e differen"e in t%e
dis#lay bet'een t%e SAPGui and t%e SAP$onsole and t%e different s"reen siBes&
)%e usage of t%e SAP$onsole does not re!uire any additional develo#ment effort& Any s"reen t%at
"an be dis#layed 'it% t%e SAPG-. "an also be dis#layed using t%e SAP$onsole 'it% some
restri"tions t%at are mentioned in "%a#ter 8&"%a#ter 8&
)%e R solution su##orts t%e "reation of transa"tions for different s"reen siBes& )%e standard s"reen
siBes are designed for for3lift?mounted devi"es 1@C802 and for %and%elds 116C202& .n addition0 t%e
user %as t%e o#tion to tailor t%e s"reens to t%e needs of t%e o#erator and t%e a"tivity %e is #erforming0
for e(am#le0 to omit fields0 to add fields0 or to "%ange t%e se!uen"e of t%e fields dis#layed& )%e
s"reen siBe s%ould be dynami"ally sele"ted a""ording to t%e user #rofile& Su"% fle(ibility re!uires
"ertain guidelines t%at must be "onsidered '%en "reating t%e res#e"tive s"reens&
All t%e s"reens s%ould be "onsistent regarding t%e layout as 'ell asand t%e information given& )%e
9general; #us%buttons t%at a##ear on most of t%e s"reens must al'ays be lo"ated at t%e same #la"e&
)%e user s%ould not be for"ed to loo3 for t%e 1 SAD/ button al'ays in a different #la"e& .f
verifi"ation fields are used to verify data t%ey s%ould be #la"ed on t%e rig%t side of t%e field to be
verified&
Not to overload t%e s"reens 'it% information is even more im#ortant for R a##li"ations t%an for t%e
usual a##li"ations& )%e field names s%ould be as s%ort as #ossible or in ot%er 'ords only as long as
ne"essary& Nevert%eless0Ao'ever0 it is im#ortant not to abbreviate t%e names in su"% a 'ay t%at t%e
user doesnEt understand t%em& .f t%e limited s#a"e re!uires an abbreviation use only 'ell?3no'n
abbreviations&
SAP AG ...... Version 1.0 Novemer !000 Page 9 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
Dislay $)P*ui +s. $)PConsole and di##erent screen si,es
$creen si,e -./0"
$creen si,e 12.30"
SAP AG ...... Version 1.0 Novemer !000 Page : o" #$
un"tion 3eys %ave a ma(imal lengt% of 9
digits 1bra"3ets "an be disabled to save t%e
s#a"e for t%e number<"%ara"ter2
SAP$onsole:
? 4oes not dis#lay
frame 'it% additional
information
?Su##resses em#ty
lines
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
#.1.1 %ynamic Screen /all
)%e #arallel su##ort of more t%an one s"reen siBe is solved in t'o different 'ays: logi"al s"reen
number and user e(its&
3.1.1.1 Logical and Physical Screens
/a"% R s"reen %as a uni!ue logi"al number s#e"ified in a database table& .n an additional table t%e
relation bet'een logi"al s"reens and #%ysi"al s"reens is defined& )%e userEs "urrent devi"e "om#letes
t%e logi"al?#%ysi"al data stru"ture&
W%en logging on to t%e system0 t%e userEs devi"e is derived 1as defined in t%e user #rofile2&
A""ording to t%is t%e user gets t%e res#e"tive #%ysi"al s"reen for ea"% logi"al s"reen %e is "alling&
)%erefore0 t'o users "an get different s"reen siBes for t%e same transa"tion if t%ey use different R
devi"es&
3.1.1.2 User Exit
.f t%e "ustomer 'ants to develo# s"reens different in siBe and<or "ontent from t%e su##orted standard
s"reen siBes0 %e "an use t%e user e(it& )%e sub?s"reens allo' t%e user to e(#and or modify t%e "ontent
dynami"ally at runtime& )%e user e(its0 '%i"% are #art of t%e en%an"ement "on"e#t0 use t%e sub?
s"reen te"%ni!ue&
.f t%e a##ro#riate in"lude file is defined 'it%in t%e "ustomer name s#a"e0 t%e system redire"ts t%e
s"reen "all at runtime& .nstead of t%e build?in s"reen0 t%e "ustomer obtains a dummy s"reen t%at %e
"an design in any 'ay %e 'is%es&
or more information about %o' to "reate and a"tivate user e(iste(its refer to t%e res#e"tive "%a#ter
in t%e =obile 4ata /ntry Guide&
3.2 S($**" N,/)5,#)%"
)%e navigation bet'een s"reens is based on an endless logi" loo#0 '%i"% mani#ulates a s"reen t%at
%as been sele"ted dynami"ally& -nless t%e user re!uests to e(it t%e "urrent transa"tion0 t%e system
dis#lays s"reens a""ording to t%e logi"al flo' se!uen"e&
#.!.1 Screen +ypes
our different s"reen ty#es e(ist in t%e R environment:
Source and Destination Screens: Any transfer order is #ro"essed in t'o ste#s: t%e material
is ta3en from t%e sour"e storage bin and #la"ed in t%e destination storage bin& A""ording to
t%e s#e"ifi" transfer order details0 t%e system dis#lays t%e "orre"t sour"e s"reen& After'ards
t%e system dis#lays t%e destination s"reen a""ording to t%e user in#ut and t%e transfer order
"%ara"teristi"s&
Entry Screen: -sually a transa"tion starts 'it% an initial s"reen t%at offers a sele"tion
"riterion by '%i"% t%e res#e"tive do"ument 1delivery0 transfer order0 and so on2 "an be
identified0 for e(am#le0 #uta'ay by storage unit&
Message screen: Sin"e t%e R devi"es use small s"reens0 t%e message s%ould be mas3ed to
"om#ly 'it% t%e siBe limitation& Any system message is modified to "orres#ond to t%e s#e"ifi"
userEs s"reen&
SAP AG ...... Version 1.0 Novemer !000 Page ; o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
#.!.! Screen Procedure
At ea"% loo# t%e "ontrol is given to one of t%e t%ree s"reen #ro"edures: entry0 sour"e and destination&
/a"% s"reen #ro"edure is a "ombination of t'o ste#s: $all s"reen0 '%i"% is follo'ed by "%e"3 s"reen&
)%e first gat%ers t%e data from t%e user and t%e latter analysesanalyBes it&
)%erefore0 t%ese t'o routines are al'ays one after t%e ot%er:
Call Screen: )%is subroutine "alls t%e re!uired s"reen and dis#lays t%e re!uired fields& )%en0
t%e user "an enter t%e re!uired values t%at 'ill be sent to t%e "alling #rogram toget%er 'it%
t%e additional data 1fun"tion "ode0 "urrent field0 et"&2&
Check Screen: After a"!uiring t%e information from t%e s"reen0 a series of validation "%e"3s
is e(e"uted& .n "ase t%e data fulfills t%e #redefined rules0 t%e business e(e"ution "ontinues&
)%ereu#on0 a "%e"3 s"reen subroutine e(e"utes t%e re!uired business fun"tion&
6efore returning t%e "ontrol to t%e #rogram0 "%e"3 s"reen subroutine defines t%e ne(t s"reen to
be #ro"essed& .t "an be any of t%e s"reen ty#es in"luding t%e message s"reens&
$creen Flo4
/ n t r y S " r e e n
S o u r " e s " r e e n
4 e s t i n a t i o n s " r e e n
E n t r y
$ c r e e n 5
$ o u r c e 6
D e s t i n a t i o n
Y E S
S o u r c e
D e s t i n a t i o n
P / R : R = $ A > > F S $ R / / N F 0 6 + 0 &
P / R : R = $ A / $ , F S $ R / / N F 0 6 + 0 &
P / R : R = $ A > > F S $ R / / N F C C C C &
P / R : R = $ A / $ , F S $ R / / N F S : - R $ / &
P / R : R = $ A > > F S $ R / / N F C C C C &
P / R : R = $ A / $ , F S $ R / / N F 4 / S ) &
3.3 S($**" C$*,#)%"8 SAPG') /-. RF D*/)(*-
SAP AG ...... Version 1.0 Novemer !000 Page 10 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
)%e s"reen #ainter is t%e A6APWor3ben"% tool t%at allo's you to "reate s"reens for your
transa"tions& 7ou use it to "reate t%e s"reen itself0 'it% fields and ot%er gra#%i"al elements and to
'rite t%e flo' logi" be%ind t%e s"reen&
.n general0 t%e s"reen #ainter vie' refle"ts %o' t%e des3to# a##li"ation s"reen s%ould a##ear& )%is is
not valid for R devi"es& )%e SAPGui su##orts features t%at are %ard or even im#ossible to
im#lement in a "%ara"ter "ell environment& 6e"ause of t%is limitation t%e R develo#ment must use
s#e"ial met%ods and routines0 and "ertain G-. ob5e"ts&
#.#.1 Screen Flo<
Any information dis#layed to t%e user must be filtered and ad5usted a""ording to t%e userEs devi"e
limitations& )%erefore t%e regular SAP .n#ut<:ut#ut stream "annot be used& .nstead0 t%e R module
must use its o'n s"reen sta"3 and s"reen flo' me"%anisms&
#.#.! Screen -ogic
)%e regular SAP transa"tion im#lements t%e s"reen flo' logi" me"%anism& )%e s"reen may
en"a#sulate business logi" t%at is #ro"essed before and after t%e s"reen is dis#layed& )%erefore0 t%e
#rogram "an dynami"ally flo' from one s"reen to t%e ot%er 'it%out t%e need for a su##lementary
"ode&
4ue to t%e re!uirement to su##ort multi s"reen siBes0 ea"% R s"reen "arries as little logi" as
#ossible& .nstead0 t%e "%e"3s and fun"tion e(e"ution are "om#leted outside t%e s"reen and t%erefore
areare t%ereforeare s%ared by all t%e "urrent transa"tion s"reens&
#.#.# 1essage 1ec&anism
Sin"e A6AP uses t%e tas3bar 1or #o#u# s"reens2 as t%e out#ut stream0 t%e R s"reen develo#er must
reroute t%is stream& -sing t%e R s#e"ifi" me"%anism0 any message is mas3ed to fit t%e res#e"tive
s"reen&
#.#.0 (rror =andling
)o save time0 A6AP saves #art of t%e logi" on t%e "lient "om#uter& 6asi" "%e"3s0 for e(am#le0 t%e
mas3 of t%e in#ut field or its ty#e are "om#leted #rior to t%e Pro"ess after .n#ut 1PA.2 e(e"ution& .n
"ase of a userEs erroneous in#ut0 an error message is sent to t%e out#ut s"reen& As stated before0
t%ese messages are not R "om#atible and must be avoided& )%us0 any "%e"3 of t%e userEs in#ut0
must not be %andled by t%e s"reen& )%e develo#er must disable all t%e data field restri"tions and ma3e
t%ose "%e"3s in t%e "ode itself& or an e(am#le of t%e 'arning<error message s"reen in R refer to
System eedba"3&
#.#.$ >?S'>?G
)%e te(t dis#layed on t%e userEs des3to# is a "ombination of a fe' fa"tors:
Text Fields ? )%e data for t%e s"reen te(t fields 'ill be ta3en by default from t%e data
di"tionary unless t%e develo#er overrides it&
Text ttribute ? -sing t%e te(t attributes0 t%e loo3 and feel of t%e s"reen "an be modified&
Text Length ? G-. s"reen is "a#able of dis#laying different string siBes of t%e same 'idt%
de#ending on t%e stringEs siBe and font&
As mentioned0 t%e R uses t%e SAP$onsoleSAP$onsole to translate t%e G-. s"reens into a
"%ara"ter "ell environment& Sin"e t%e SAP$onsoleSAP$onsole ta3es t%e te(t information dire"tly
from t%e database0 any te(t field %as to be a member of t%e SAP data di"tionary& :t%er'ise0 t%e te(t
'ill be invisible to t%e user&
SAP AG ...... Version 1.0 Novemer !000 Page 11 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
)%e "%ara"ter "ell s"reen0 as o##osed to G-.0 is limited to a fi(ed string siBe dis#lay0 regardless toof
t%e te(t attributes& )%us0 any field lengt% must not e("eed t%e 'idt% of t%e a""ommodating R
s"reen& .f t%e Gs"rollableE attribute is s'it"%ed on0 t%e dis#layed field may be s%orter t%an t%e field
lengt%& Nonet%eless0)%erefore0 in order to vie' t%e fieldEs full lengt% t%e user must tediously s"roll in
t%at field&
#.#.3 Special *@ects
)%e follo'ing is a s%ort list of ob5e"ts t%at are li3ely to a##ear in G-. SAP:
!cons ? )%e i"on me"%anism 1image H ti#2 allo's t%e develo#er to "reate a##li"ation
standard& )%is met%od re!uires a relatively small s"reen s#a"e and it is easy to im#lement&
"Controls ? )%e C$ontrols are i"ons t%at en"a#sulate logi"& 6y dragging C$ontrol to an
a##li"ation0 t%e develo#er im#orts a bla"3?bo( "ode0 '%i"% is "a#able of doing #redefined tas3s&
Table Control ? )able "ontrol is C$ontrol0 '%i"% is "a#able of0 mani#ulating tabular data&
)%is C$ontrol is 'ides#read 'it%in SAP s"reens& Naturally0 "%ara"ter "ell s"reens ignore t%is
C$ontrol 1not t%at t%ese s"reens su##ort any of t%e ot%er C$ontrols&2
#adio $uttons ? A fe' "%e"3 bo(es t%at are #ro"essed toget%er&
)%e "%ara"ter?"ell environment does not su##ort t%e gra#%i" data and t%e logi" be%ind it&
Alternatively0 t%e R module uses #us%buttons t%at are assigned to s#e"ially 'ritten "ode&
)%e table "ontrol0 as an e("e#tion0 o#erates using ste#?loo#s and s#e"ifi" flo' logi"& Sin"e t%e table
"ontrol evolved from t%e ste#?loo# met%od0 t%is may be "onsidered returning ba"3 to SAP origins&
3.4 D3",0)( M*"'
Starting)%e starting #oint for R transa"tions to '%i"% t%e user "an easily return is t%e logon s"reen&
.t leads to t%e main menu& )%is dynami" menu s%ould be aimed at t%e tas3s of t%e devi"e user& .t "an
be tailored to t%e needs de#ending '%at a"tivities t%e user is #erforming& .f %e is only res#onsible for
#uta'ay and #i"3ing tas3s0 for e(am#le0 t%e menu must only in"lude t%ose menu #at%s& W%et%er t%e
entire menu or only a submenu s%ould be dis#layed "an be determined user?related on t%e R logon
s"reen or in t%e "ustomiBing& Wit%in t%e a##li"ation t%e user s%ould al'ays %ave a #ossibilitybe able
to return to t%e #revious s"reen 16a"32&
.n general0 t%e menu stru"ture s%ould not be more t%an t%ree<four levels dee#0 so t%e user 'ill not
%ave t%e feeling of 9getting lost;&

SAP AG ...... Version 1.0 Novemer !000 Page 1! o" #$
)%e dynami" menu =A.N dis#lays t%e entire R menu from '%ere you "an bran"% to t%e different
submenus&
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
Dynamic Menu
Pat%: .n $ustomiBing for Mobile Data Entry "%oose De%ine Menu Management&
Customi,ing (able 78(9190)
SAP AG ...... Version 1.0 Novemer !000 Page 1# o" #$
4ynami" =enu
Se!uen"e in '%i"% t%e
entries are dis#layed
>ong =enu )e(t
4etermination if menu leads
to anot%er menu 112 or a
transa"tion 122
=enu<)ransa"tion Name
S%ort =enu )e(t
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
3.5 U-*$9S3-#*0 I"#*$,(#)%"
SAP AG ...... Version 1.0 Novemer !000 Page 10 o" #$
)%e menu P.$,01 dis#lays only t%e #i"3ing related a"tivities and t%e o#erator "annot a""ess different
menus& Ae "an only bran"% 'it%in t%e #i"3ing menu&
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
*&+&1 -ser .n#ut
4ue to t%e "%ara"ter mode of t%e R devi"es0 #us%buttons must be used for all available fun"tions& .t
is re"ommended to design t%e s"reen in su"% a 'ay t%at t%e fre!uently used fun"tion "odes0 for
e(am#le0 SAD/ and N/C) are assigned to t%e lo'er fun"tion 3ey numbers0 su"% as 10 sin"e t%ose
#us%buttons usually are easy to a""ess on all t%e devi"es& .n "ontrast0 t%e fun"tion 3eys 11 and 120
for e(am#le0 sometimes are re#resented by small #us%buttons or "an only be rea"%ed by #ressing a
"ombination of #us%buttons& )%ey s%ould only be used if t%ere is a need to introdu"e more buttons&
)%e standard layout of t%e R s"reens is designed in su"% a 'ayso t%at t%e #us%buttons for t%e 3ey
fun"tions are lo"ated in t%e u##er %alf of t%e s"reen0 '%ile additional #us%buttons are set in t%e lo'er
%alf of t%e s"reen&
Placement o# the ushbuttons
&'(')') Changing the Function *eys in the G+! Status
)o assign t%e res#e"tive fun"tionality to ea"% fun"tion 3ey0 a""ess t%e G-. status and "%ange t%e
fun"tion 3ey settings& Set t%e #ro#er fun"tion "ode for t%e res#e"tive fun"tion 3ey&
SAP AG ...... Version 1.0 Novemer !000 Page 1$ o" #$
re!uently used 9general;
#us%buttons
un"tion s#e"ifi" #us%buttons
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
&'(')', Enter Function *ey
)%e /nter fun"tion 3ey %as a s#e"ial fun"tion sin"e it "an re#la"e u# to five #us%buttons in a
se!uen"e& )%e user "an "ustomiBe t%e fun"tionality a""ording to %is #referen"es& )%e /nter fun"tion
3ey 'as "%osen to allo' t%is fle(ibility sin"e it is in t%e ma5ority of t%e "ases t%e largest #us%button
on t%e R terminal& .f t%e user assigns to it t%e "%ain of in#ut a"tions t%at are fre!uently used in t%e
res#e"tive #ro"ess0 t%e o#erator is relieved from a load and t%e e(e"ution time "an be redu"ed&
)%e /nter fun"tion 3ey "an be "ustomiBed for individual s"reens assigning a s"reen "ategoriBation to
t%e s"reens& .n t%e follo'ing e(am#le all t%e sour"e s"reens are "ategoriBed under t%e name
9S:-R$/; and t%e destination s"reens under t%e name 94/S);& W%en using t%e fun"tion 3ey on
t%e listed s"reens0 a fun"tion "ode se!uen"e 'ill be e(e"uted& 1.n addition to t%e s"reen "ategory0 also
t%e fa"t if it is t%e last ): item or t%e last verifi"ation field< in#ut field influen"es t%e sele"tion of t%e
"ode se!uen"e in t%is "ase2&
Control #or Enter on RF $creens
Pat%: .n t%e $ustomiBing for obile !ata "ntry "%oose !e#ault "nter Function $%a&i'ation (it)
*arcode Scanner+&
*&+&2 System eedba"3
)%e system must inform t%e user in t%e form of messages about t'o t%ings: Wrong format of in#ut
and t%e result of t%e o#eration t%at %e e(e"uted& )%e s%ort te(t of t%e messages must be self?
e(#lanatory0 sin"e no long te(t 'it% detailed instru"tions is dis#layed on R terminals due to t%e
limited s#a"e&
.n "ase of a 'arning or error messages t%e user must understand from t%e s%ort te(t '%at %as to be
done in order to #ro"eed& or e(am#le0 t%e error message 9atal error; does not say too mu"% and
'ill not bring t%e user "loser to t%e #roblem solution&
SAP AG ...... Version 1.0 Novemer !000 Page 13 o" #$
Assignment of s"reen "ategories to t%e
#%ysi"al s"reens&
$ode se!uen"e to be e(e"uted
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
)%e follo'ing s"reen 1s"reen number 99@2 is a s"reen used in R a##li"ations for 'arning and error
messages& Refer also to /rror =essages&
Warning and error message s"reen
*&+&* -ser Su##ort: 1 ield Ael# and 8 Dalue .n#ut Ael#
4ue to6e"ause of t%e limited number of #us%buttons and t%e small s"reen siBe0 no field %el# and no
value in#ut %el# is available& Sin"e t%e R devi"es are used for instru"tion and "onfirmation #ur#oses0
t%e number of in#ut fields is minimal& )%e user s%ould get all t%e ne"essary information 1for e(am#le0
t%e destination storage bin if %e #erforms a #uta'ay2& .n#ut is only ne"essary to u#date data0 for
e(am#le0 if differen"es bet'een t%e re#orted !uantity and t%e e(isting !uantity e(ist and to "onfirm
t%e tas3 "om#letion& =ost of t%e in#ut fields on R terminals are filled automati"ally '%en s"anning
t%e res#e"tive labels&
Sin"e t%e R module uses 1 H 8 fun"tion 3eys differently t%an t%e regular A6AP s"reens0 t%ey
s%ould be overloaded&
SAP AG ...... Version 1.0 Novemer !000 Page 19 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
4
SAP AG ...... Version 1.0 Novemer !000 Page 1: o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
5 O/*$/)*: D*-)5" P$)"().+*- 7%$ RF A..+)(,#)%"-
5.1 N%# S'..%$#*& F*,#'$*- %" C1,$,(#*$ C*++ T*$0)",+-
4ro#do'n >ist 6o(
$%e"3bo(es: Sin"e #ointing devi"es are not al'ays available0 t%e "%e"3ing of t%ese bo(es
s%ould be ta##ed by fun"tion 3eys&
Radio 6uttons
)able $ontrol
."ons
5.2 G')&*+)"* S'00,$3
)%e user intera"ts 'it% t%e system via #us%buttons0 '%i"% must be assigned a""ordingly in
t%e G-. status
Ad5ust your s"reen elements and t%e s"reen layout to t%e devi"e siBe
$reate a menu for navigation #ur#oses
4onEt forget t%at no 1 Ael#0 8 .n#ut Ael#0 and no message long te(t is available
.f you 'ant to ad5ust t%e s"reen siBe to your devi"e siBe0 you s%ould 'or3 'it% a logi"al vs&
#%ysi"al s"reen stru"ture
-se t%e user e(its to tailor an e(isting s"reen to your needs0 to dea"tivate fun"tion "odes0 or
to enable t%e #rint fun"tion
SAP AG ...... Version 1.0 Novemer !000 Page 1; o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
! B,-)( O;<*(#- R*(%00*"&*& 7%$ #1* RF D*/*+%.0*"#
)%e follo'ing tables0 t%e stru"ture and t%e vie' build t%e frame'or3 on '%i"% our R develo#ment
is based& rom release 866 u#'ards0 t%ey e(ist already in t%e develo#ment system& or releases #rior
to 8660 you must build your o'n infrastru"ture and de"ide '%i"% ob5e"ts you need for your
develo#ment& ollo' t%e instru"tions given in $%a#ter 6&1 9Guide for t%e R 4evelo#ment in
Releases #rior to 866;&
Remember: )able0 stru"tures and vie's s%ould be named in a "ustomer name s#a"e I J)*1*0A&
():!E"
Dynamic Menu (able" (9190)
)%is table "ontains t%e dynami" R menu0 '%i"% "an be grou#ed by a"tivities '%ereu#on
t%e menu se!uen"e for ea"% a"tivity is defined& /a"% menu ste# is des"ribed by a long te(t
1for 'ide s"reens2 and a s%ort te(t 1for narro' s"reens2& )%e menu "an be s#lit into sub?
menus or lead dire"tly to t%e transa"tion&
9 ield 4omain 4ata element Remar3s
1& =AN4) =AN4) =AN4) Already Available
2& >GN-= >GN-= >GN-= Already Available
*& ==/N- $AAR20 RF47N=/N ield label: 4yn&
=enu
8& S/K-/N$/ RFS/K RFS/K >abel: Se!& no&
+& PR:F)7P RFPR:)7P RFPR:)7P >abel: =enu<trns
6& =/NF)RANS RF=/N)R RF=/N)R >abel: =enu<trns
L& -S/RF=A.NF=/N- $AAR20 RF47N=/N >abel: 4yn& menu
SAP AG ...... Version 1.0 Novemer !000 Page !0 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
7ie4 o# the Dynamic Menu (able" 78(9190)
$ustomiBing table used to "%ange and u#date t%e menu& /a"% user "an tailor t%e menu
a""ording to %is needs&
SAP AG ...... Version 1.0 Novemer !000 Page !1 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
(e;t (able #or the Dynamic Menu" (9190:
)%is table "ontains t%e te(t for t%e menus in t%e different languages&
9 ield 4omain 4ata element Remar3s
1& =AN4) =AN4) =AN4) Already Available
2& SPRAS S7>ANG- S7>ANG- Already Available
*& >GN-= >GN-= >GN-= Already Available
8& ==/N- )$:4/ S7)$:4/ Already Available
+& S/K-/N$/ RFS/K RFS/K >abel: Se!& no&
6& )/C) )/C)80 =4)/C) >abel: =enu )e(t
L& S)/C) )/C)20 =4S)/C) >abel: S%ort te(t
$(R<C(<RE"
)dditional Fields in Mobile Comuting" R!M&:
)%is stru"ture "ontains t%e #us%buttons0 '%i"% are dis#layed and used on t%e s"reen itself&
W%en "reating t%e s"reen0 t%e #us%buttonsE attributes are ta3en from t%is stru"ture in t%e
data di"tionary& Refer to "%a#ter 6&2&8&
SAP AG ...... Version 1.0 Novemer !000 Page !! o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
/(am#le for #us%button data element de"laration:
9 ield 4omain 4ata element Remar3s
1& PSAD/ >DSF4:,- =:6SAD/ 1 P6 for save
2& P$>/AR >DSF4:,- =:6$>/AR 2 P6 for "lear
*& P6A$, >DSF4:,- =:66A$, * P6 for ba"3
8& PN/C) >DSF4:,- =:6N/C) 8 P6 for ne(t
)%ese are data di"tionary de"larations for t%e first four #us%buttons0 similar de"laration are
used for additional #us%buttons +0 6 et"&
SAP AG ...... Version 1.0 Novemer !000 Page !# o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
Dynamic Menu $creen"
(ransaction" se=1 Program" R!ME'< $creen" 0---
)%e follo'ing is t%e element attributesE dis#lay of t%e first and se"ond #us%button:

)%e S"reen lo' logi":
PR:$/SS 6/:R/ :-)P-)&
=:4->/ S)A)-SF=A.N=/N-&
=:4->/ 47NA=.$F=/N-F6-)):NSF)/C)&
PR:$/SS A)/R .NP-)&
./>4 :,F$:4/ =:4->/ -S/RF$:==AN4F=A.N=/N-&
MH?????????????????????????????????????????????????????????????????????M
SAP AG ...... Version 1.0 Novemer !000 Page !0 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
MH =odule 47NA=.$F=/N-F6-)):NSF)/C) :-)P-)
MH?????????????????????????????????????????????????????????????????????M
M Aandles dynami" te(t on t%e menu #us% buttons
M??????????????????????????????????????????????????????????????????????M
=:4->/ 47NA=.$F=/N-F6-)):NSF)/C) :-)P-)&
=/N-F.4 N OJJRO&
C-S/R?4/D)7 N O0@C80O&
$>/AR: )/C)10)/C)20)/C)*0)/C)80)/C)+0)/C)6&
$A)$A S7S)/=?/C$/P).:NS $:ND/RS.:NF/RR:RS N 01&
S/AR$A C-S/R?4/D)7 :R OCO&
CFP:S.).:N N S7?4P:S P 1&
=:D/ C-S/R?4/D)7PCFP:S.).:N ): 4/D.$/F$:>-=NS&
4/D.$/F$:>-=NS N 4/D.$/F$:>-=NS ? 2&
S/>/$) M R:= J)*1*0A .N): )A6>/ )F)*1*0A
WA/R/ ==/N- N =/N-F.4&
/N4$A)$A&
$AS/ S7?S-6R$&
WA/N 01&
WA/N :)A/RS&
/N4$AS/&
S/>/$) M R:= J)*1*06 WA/R/ SPRAS N S7?>ANG-
AN4 ==/N- N =/N-F.4&
M?Q $ombining t%e te(t 'it% its se!uen"e&
$:N$A)/NA)/ J)*1*06?S/K-/N$/P1112 O& O J)*1*06?)/C)
.N): =:4../4F)/C)&
)/C)F>/NG)A N S)R>/N1 =:4../4F)/C) 2&
. 4/D.$/F$:>-=NS N/ 0&
. )/C)F>/NG)A G) 4/D.$/F$:>-=NS&
=:D/ =:4../4F)/C)P014/D.$/F$:>-=NS2 ): =:4../4F)/C)&
/N4.&
R/A4 )A6>/ )F)*1*0A W.)A ,/7 >GN-= N J)*1*06?>GN-=
==/N- N J)*1*06?==/N-
SAP AG ...... Version 1.0 Novemer !000 Page !$ o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
S/K-/N$/ N J)*1*06?S/K-/N$/&
4:)FP:S.).:N N 4/D.$/F$:>-=NS ? 1&
. )F)*1*0A?PR:F)7P N O1O&
=:D/ ):F=/N-FS.GN ): =:4../4F)/C)P4:)FP:S.).:N112&
/>S/&
4: N-=F:F4:)S ).=/S&
=:D/ =:4../4F)/C)P4:)FP:S.).:N112 ): N/C)$AR&
. N:) N/C)$AR .S .N.).A>&
/C.)&
/N4.&
=:D/ ):F)RANSA$).:NFS.GN ): =:4../4F)/C)P4:)FP:S.).:N112&
4:)FP:S.).:N N 4:)FP:S.).:N ? 1&
/N44:&
/N4.&
/N4.&
$AS/ J)*1*06?S/K-/N$/&
WA/N 1&
)/C)1 N =:4../4F)/C)&
WA/N 2&
)/C)2 N =:4../4F)/C)&
WA/N *&
)/C)* N =:4../4F)/C)&
WA/N 8&
)/C)8 N =:4../4F)/C)&
WA/N +&
)/C)+ N =:4../4F)/C)&
WA/N :)A/RS&
)/C)6 N =:4../4F)/C)&
/N4$AS/&
/N4S/>/$)&
/N4=:4->/& R 47NA=.$F=/N-F6-)):NSF)/C) :-)P-)
MH?????????????????????????????????????????????????????????????????????M
SAP AG ...... Version 1.0 Novemer !000 Page !3 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
MH =odule -S/RF$:==AN4F=A.N=/N- .NP-)
MH?????????????????????????????????????????????????????????????????????M
M Navigation from main menu
M??????????????????????????????????????????????????????????????????????M
=:4->/ -S/RF$:==AN4F=A.N=/N- .NP-)&
$AS/ :,F$:4/&
WA/N $:4/F$>/AR&
>/AD/ ): )RANSA$).:N S7?)$:4/&
WA/N $:4/FN/C)&
R/A4 )A6>/ )F)*1*0A W.)A ,/7 S/K-/N$/ N :,F$:4/&
. S7?S-6R$ N/ 0&
=/SSAG/ .4 O=LO )7P/ O/O N-=6/R O01+O&
/C.)&
/N4.&
$A>> )RANSA$).:N )F)*1*0A?=/NF)RANS&
WA/N :)A/RS&
M?Q Retrieve t%e relevant trans& from )*1*0A
R/A4 )A6>/ )F)*1*0A W.)A ,/7 S/K-/N$/ N :,F$:4/
==/N- N =/N-F.4&
. S7?S-6R$ N/ 0&
/C.)&
/N4.&
$A>> )RANSA$).:N )F)*1*0A?=/NF)RANS&
/N4$AS/&
/N4=:4->/& R -S/RF$:==AN4F=A.N=/N- .NP-)
(he #ollo4ing D)() declarations should be included in the (o include:
4A)A =:4../4F)/C) >.,/ )*1*06?)/C)&
4A)A N/C)$AR112 )7P/ $&
4A)A 4/D.$/F$:>-=NS )7P/ . DA>-/ 0&
4A)A )/C)F>/NG)A )7P/ .&
SAP AG ...... Version 1.0 Novemer !000 Page !9 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
4A)A CFP:S.).:N )7P/ .&
4A)A 4:)FP:S.).:N )7P/ .&
4A)A )F)*1*0A >.,/ )*1*0A :$$-RS 20 W.)A A/A4/R >.N/&
4A)A C-S/R?4/D)71102 )7P/ $&
4A)A =/N-F.4 >.,/ )*1*0A?=/NF)RANS&
4A)A $-RS:R./>41202 )7P/ $&
M&&&&&&&&$onstants&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&M
$:NS)AN)S:
):F=/N-FS.GN112 )7P/ $ DA>-/ OQO0
):F)RANSA$).:NFS.GN112 )7P/ $ DA>-/ O&O0
N-=F:F4:)S )7P/ . DA>-/ *&
M&&&&&&&&)e(tOs for dynami" menu&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&M
4A)A: )/C)1 >.,/ )*1*06?)/C)0
)/C)2 >.,/ )*1*06?)/C)0
)/C)* >.,/ )*1*06?)/C)0
)/C)8 >.,/ )*1*06?)/C)0
)/C)+ >.,/ )*1*06?)/C)0
)/C)6 >.,/ )*1*06?)/C)&
SAP AG ...... Version 1.0 Novemer !000 Page !: o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
= D*/*+%.)"5 R,&)% F$*2'*"(3 A..+)(,#)%"-
=.1 G')&* 7%$ #1* RF D*/*+%.0*"# )" R*+*,-*- P$)%$ #% 4!B
)o start your 'or3 "o#y t%e basi" ob5e"ts t%at are essential for t%e R develo#ment into your
develo#ment system& Refer to "%a#ter +&
irst "reate t%e 44.$ ob5e"ts J)*1*0A0 JDF)*1*0A0 J)*1*06 and JR>=:6&
Note: t%e ob5e"ts J)*1*0A0 JDF)*1*0A and J)*1*06 e(ist in order to su##ort t%e dynami"
menu0 t%is feature is not essential to su##ort your R develo#ment0 but it is ni"e to %ave& )%e
JR>=:6 ob5e"t is essential to su##ort t%e #us%buttons on t%e s"reen I t%e fun"tion 3eys&
ollo' t%e ste#?by?ste# guide in "%a#ter 6&2& /(e"ute all ste#s 'it% t%e follo'ing differen"es:
Add t%e additional data de"larations to JR):P 1refer to "%a#ter +2 only if you '%is% to in"lude t%e
dynami" menu in your develo#ment&
$reate a dialog transa"tion t%at triggers s"reen JR)/S) 0@@@ '%i"% is t%e menu s"reen& Refer to
"%a#ter + for t%e layout and t%e flo' of t%e s"reen&
4o not "reate re#ort JR/PF/RR:RFAAN4>/0 t%e errors are "alled in t%e follo'ing 'ay:
=/SSAG/ .4 S7?=SG.4 )7P/ S7?=SG)7 N-=6/R S7?=SGN:
After maintaining t%e entries in t%e tables0 you s%ould be able to navigate from t%e menu to t%e
transa"tion youEve "reated&
=.2 S#*.9;39-#*. G')&* 7%$ #1* RF D*/*+%.0*"# (R*+*,-* >? 4!B)
)%e follo'ing e(am#le s%o's ste#?by?ste# t%e "reation of an R a##li"ation derived from t%e
.nventory =anagement transa"tion mb1b: )ransfer Posting& $reating an R transa"tion similar to t%e
mb1b re!uires additional #rere!uisites and "ustomiBation of t%e system not related to t%e R
"on"e#t&
Sin"e t%is a guide fo"used on t%e R develo#ment0 'e leave t%e "ustomiBing out of "onsideration&
)%e #ur#ose of t%e follo'ing e(am#le is only to des"ribe t%e ste#s one %as to ta3e in order to "reate
a transa"tion& )%e "oding is 5ust a "on"e#t illustration and does not fulfill all "onditions for an a"tual
movement in t%e system&
9.!.1 %evelopment /lass
$reate a develo#ment "lass in t%e "ustomerEs names#a"e&
9.!.! Report
Go to se*@: A6AP /ditor
$reate an e(e"utable #rogram& )%is #rogram s%ould "ontain t%e business logi" for t%e transa"tion&
)%e follo'ing e(am#le s%o's a sim#lified re#ort and "ontains detailed "omments&
)%e JR)/S) is t%e main #rogram for t%e transa"tion0
JR):P is an in"lude t%at %olds all data de"larations0
JR/PF/RR:RFAAN4>/ is a re#ort t%at is submitted from t%e main #rogram for /rror < =essages
%andling&
SAP AG ...... Version 1.0 Novemer !000 Page !; o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
R/P:R) JR)/S) &
M )%is re#ort is triggered by a re#ort transa"tion&
M A s"reen is "alled and bot% P6: H PA. modules are
M %andled in t%e re#ort
M )%e four elements for t%e R transa"tion are
M 1& Re#ort 2& Re#ort transa"tion *& S"reen 8& G-. Status
M )%is in"lude %olds re!uired data de"larations
.N$>-4/ JR):P&
M .t is #ossible to "all t%e s"reen dynami"ally via fun"tion
M as #erformed in t%e standard R&
$A>> S$R//N O0100O&
MH????????????????????????????????????????????????????????????
MH =odule S)A)-SF0100 :-)P-)
MH????????????????????????????????????????????????????????????
M G-. Status t%at su##orts t%e fun"tion 3eys
M )%is module is "alled from t%e P6: of t%e s"reen
M?????????????????????????????????????????????????????????????
=:4->/ S)A)-SF0100 :-)P-)&
S/) P?S)A)-S OJJRFS)A)-S2O&
S/) ).)>/6AR OS7?47NNRO&
/N4=:4->/& R S)A)-SF0100 :-)P-)
MH???????????????????????????????????????????????????????????
MH =odule -S/RF$:==AN4SF0100 .NP-)
MH????????????????????????????????????????????????????????????
M Aandling t%e :#eration #erformed by t%e user
M )%is module is "alled from t%e PA. of t%e s"reen
M?????????????????????????????????????????????????????????????
=:4->/ -S/RF$:==AN4SF0100 .NP-)&
M /a"% fun"tion 3ey on t%e s"reen %olds a fun"tion "ode
$AS/ :,F$:4/&
WA/N $:4/FSAD/&
M -sing .= fun"tions to build an .= R transa"tion
$A>> -N$).:N O=6F$R/A)/FG::4SF=:D/=/N)O
/CP:R).NG
.=,P N .=,P
$)$:4 N O=616O
.=P:R).NG
/=,P N /=,P
)A6>/S
/=S/G N /=S/G
.=S/G N .=S/G
/C$/P).:NS
:)A/RS N 1&
$AS/ /=,P?S-6R$&
WA/N O1O&
SAP AG ...... Version 1.0 Novemer !000 Page #0 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
$A>> -N$).:N O=6FP:S)FG::4SF=:D/=/N)O
.=P:R).NG
/=,P N /=,P
/C$/P).:NS
:)A/RS N 1&
$:==.) W:R,&
M .n order to send an /rror message t%at 'ill use t%e s"reen SAP>>=:6 0999 '%i"% serves as a #o#?u# s"reen for error message
%andling 'e s%ould "reate an additional re#ort t%at 'ill be res#onsible for #o##ing u# t%is s"reen& .t is not re!uired to "reate t%is
s"reen in your #rogram& We 'ill submit t%is re#ort at t%e #oint '%ere 'e '%is% to #resent t%e error and t%en return to our #rogram&
.t is re!uired to deliver t%e error message number to t%e submitted re#ort0 'e 'ill use t%e S/)<G/) #arameter "ommand to do so&
=/SSAG/ FN-= N G060E&
S/) PARA=/)/R .4 OR.4O ./>4 =/SSAG/FN-=&
S-6=.) JR/PF/RR:RFAAN4>/ AN4 R/)-RN&
>/AD/ ): )RANSA$).:N S7?)$:4/&
WA/N :)A/RS&
=/SSAG/ FN-= N S7?=SGN:&
S/) PARA=/)/R .4 OR.4O ./>4 =/SSAG/ FN-=&
S-6=.) JR/PF/RR:RFAAN4>/ AN4 R/)-RN&
/C.)&
/N4$AS/&
/N4$AS/&
/N4=:4->/& R -S/RF$:==AN4SF0100 .NP-)
MH????????????????????????????????????????????????????????????
MH =odule .N.).A>.J/F4A)A :-)P-)
MH????????????????????????????????????????????????????????????
M .nitialiBe t%e re!uired data on t%e s"reen and
M additional #re#aration for "alling .= fun"tion
M?????????????????????????????????????????????????????????????
=:4->/ .N.).A>.J/F4A)A :-)P-)&
=,P?6-4A) N S7?4A)-=&
=,P?6>4A) N S7?4A)-=&
R=0L=?6WAR)WA N O*11O&
$>/AR =S/G?/R=G&
G/) PARA=/)/R .4 OWR,O ./>4 R=0L=?W/R,S&
G/) PARA=/)/R .4 O>AGO ./>4 R=0L=?>G:R)&
/N4=:4->/& R .N.).A>.J/F4A)A :-)P-)
MMM.N$>-4/ JR):P &
M&&&&&4atabase tables&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
)A6>/S: R=0L=0 =,P0 =S/G0 $:6>0 =S/G,0 R>=:60 )*1*0A0 )*1*060
.=,P0 /=,P&
M &&&&&/rror %andling&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
SAP AG ...... Version 1.0 Novemer !000 Page #1 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
4A)A: =/SSAG/FN-= >.,/ )100?=SGNR&
M&&&&&&&&"odes&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&M
4A)A: :,F$:4/ >.,/ S7?-$:==0
$:4/F6A$, >.,/ S7?-$:== DA>-/ O6A$,O0
$:4/FSAD/ >.,/ S7?-$:== DA>-/ OSAD/O0
$:4/F$>/AR >.,/ S7?-$:== DA>-/ O$>RO0
$:4/FN/C) >.,/ S7?-$:== DA>-/ ON/C)O&
M&&&&&&&4ifferent #arameters&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
4A)A: =/SSAG/FN-=6/R >.,/ )100?=SGNR0
/RR:RF$:4/ >.,/ S7?S-6R$0
PS$RN >.,/ S7?47NNR&
M&&&&&&&.nternal tables&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
4A)A 6/G.N : .=S/G :$$-RS 0&
.N$>-4/ S)R-$)-R/ .=S/G&
4A)A /N4 : .=S/G&
4A)A 6/G.N : /=S/G :$$-RS 0&
.N$>-4/ S)R-$)-R/ /=S/G&
4A)A /N4 : /=S/G&
R/P:R) JR/PF/RR:RFAAN4>/&
.N$>-4/ JR):P&
M )%is re#ort uses an SAP fun"tion from t%e R module '%i"% "alls
M t%e error s"reen&
G/) PARA=/)/R .4 OR.4O ./>4 =/SSAG/FN-=&
$A>> -N$).:N O$A>>F=/SSAG/FS$R//NO
/CP:R).NG
.F=SG.4 N O>O
.F>ANG N O/O
.F=SGN: N =/SSAG/FN-=
/C$/P).:NS
.NDA>.4F=/SSAG/1 N 1
:)A/RS N 2
&
. S7?S-6R$ SQ 0&
M =/SSAG/ .4 S7?=SG.4 )7P/ S7?=SG)7 N-=6/R S7?=SGN:
M W.)A S7?=SGD1 S7?=SGD2 S7?=SGD* S7?=SGD8&
/N4.&
.n order to maintain t%e 4ynami" menu t%e follo'ing re"ord s%ould be inserted to )*1*0A or to
J)*1*0A if release SN8&66
=AN4) >GN-= ==/N- S/K-/N$/ PR:F)7P =/NF)RANS -S/RF=A.NF=/N- )/C)
1$lient2 1W%s
num2
JJR 01 2 J616 1/nrty not Re!uired 2 )ransfer
#osting
1$lient2 1W%s
num2
JJR 01 2 J616 1/ntry not Re!uired 2 )ransfer
#osting
)able )*1*06 s%ould be automati"ally filled using t%e vie' DF)*1*0A&
SAP AG ...... Version 1.0 Novemer !000 Page #! o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
9.!.# +ransaction
Go to se9*: =aintain transa"tion
$reate a re#ort transa"tion t%at triggers t%e e(e"utable #rogram t%at you "reated before&
9.!.0 Screen
se+1: S"reen Painter
/nter t%e #rogram name t%at belongs to t%is s"reen& )%e numbering of t%e s"reens is fle(ible0 only t%e
user e(it s%ould get a number starting 'it% 9T&&
.f you base your develo#ment on an e(isting standard transa"tion0 you s%ould orientate yourself on
t%e business logi" and elements t%at e(ist in t%is transa"tion and build your R s"reen a""ordingly0
"onsidering t%e limitations&
4esign a dialog "on"e#tU all intera"tion 'it% t%e end user s%ould be done via fun"tion 3eys& .n t%e R
develo#ment t%e 1 is used for Save or $onfirm0 t%e 2 is used for $lear0 * for 6a"3 and 8 for
Ne(t& )ry to be as "onsistent as #ossible 'it% t%e fun"tionality of t%e fun"tion 3eys
or every R s"reen add t%e :, ty#e in t%e s"reen element list I add :,F$:4/ &
&riginal screen o# the transaction" mb1b )d>usted RF screen
SAP AG ...... Version 1.0 Novemer !000 Page ## o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
SAP AG ...... Version 1.0 Novemer !000 Page #0 o" #$
Programming Guideline: Radio Frequency Applications
Programming Guideline: Radio Frequency Applications
)%e follo'ing is t%e element attributes dis#lay of t%e 1 I Save Pus%button:
/(am#le for a sim#le flo' logi":
PR:$/SS 6/:R/ :-)P-)&
=:4->/ S)A)-SF0100& R G-. Status
=:4->/ .N.).A>.J/F4A)A& R Pre#are data on t%e s"reen
M
PR:$/SS A)/R .NP-)&
=:4->/ -S/RF$:==AN4SF0100& R -ser "ommand<:#eration
9.!.$ G.' Status
Go to se81: =enu #ainter
)%e interestingim#ortant #art in t%e G-. status for t%e R develo#ment are t%e fun"tion 3eys& )%ere
is no need for t%e menu bar and a##li"ation toolbar& W%en "reating t%e G-. status0 "%oose as status
ty#e online status& =aintain t%e G-. status a""ording to t%e fun"tion "odes you assigned to t%e
#us%buttons&
)%is s"reens%ot s%o's an e(am#le of t%e #us%button assignment:
SAP AG ...... Version 1.0 Novemer !000 Page #$ o" #$