master data control.doc

Upload: jaime-rodriguez-echavarria

Post on 02-Jun-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 Master Data Control.doc

    1/21

    intern

    Carsten KhlerDevelopmentBusiness Partner

    Master Data Control

    Developer guide

    22. Oktober 2014

  • 8/10/2019 Master Data Control.doc

    2/21

    Master Data Control

    Part A: Functional Overview

    Contents

    1 Introduction2 Non-Application Object-Specific Settings

    2.1 Differentiation Types2.2 Application Objects

    Applications! Dialog

    !.1Screen Structure!.1.1 "ield #roups!.1.2 $ie%s!.1. Sections!.1.! Screens!.2 Screen Se&uence

    !. Tables

    !.!'rogra( )ogic!.*Screen Title!.*.1 Standard Title!.*.2 +,ent DTIT)

    !. CA /enu!..1 Standard "unctions!..2 Additional "unctions!.. Defining a /enu!..! +,ents DCAD and DCAC

    !.0 "ield /odification!.Assigning Screen "ields Database "ields!./atc3codes!.14 Aut3ori5ations!.11 Application Transactions

    * C3ange Docu(ent Analyses 6ole Types76ole Type #roupings0 /aintaining Data 8it3out Dialog

    0.1Direct Input0.2"unction /odules

    2

  • 8/10/2019 Master Data Control.doc

    3/21

    1 IntroductionT3e (aster data control described in t3is docu(ent %as de,eloped as part of t3e 9/ain :usiness 'artner9project. T3an;s to t3e clear separation bet%een control and data< it can be used by any (aster data objects.

    T3e follo%ing benefits result fro( t3e use of t3e control=

    Extendibility

    T3e entire (aintenance of t3e object can be e>tended without modifications. T3e e>tendible parts include Dialog ?for e>a(ple< screens< screens< screen se&uences< CA (enus< etc.@ Direct input C3ange docu(ent analyses And so on

    T3is e>tendibility is possible in se,eral layers. Creating a (aster data (aintenance structure could includet3e follo%ing de,elop(ent tiers= Application basis Standard applications Industry applications De,elop(ent partners Custo(er 3ead office

    Custo(er branc3

    Configurability

    :ot3 t3e screen se&uence and t3e structure of t3e indi,idual screens can be configured by t3e custo(er.Custo(ers can adapt t3e (aintenance %or;flo% to (eet t3eir specific re&uire(ents.

    Faster development

    T3e control ta;es care of t3e central na,igation functions< enabling application de,elop(ent to concentratefully on (anaging t3e application data.

    Uniformity

    Na,igation is identical for all (aster data objects t3at use t3e control. T3e user al%ays 3as t3e sa(e 9loo;and feel9.

    'art one of t3is te>t pro,ides an o,er,ie% of t3e a,ailable functions in t3e control.T3e (enu pat3s refer to t3e tas; le,el (enu for object 9:usiness partner9. +ac3 additional application objectre&uires its o%n tas; le,el (enu ?for (ore infor(ation< see C3apter 2.2.@.

  • 8/10/2019 Master Data Control.doc

    4/21

    2 Non!pplication "b#ect$pecific $ettings

    2%1 &ifferentiation 'ypes

    2%1%1 &efining &ifferentiation 'ypes(enu path) #eneral control Differentiation types

    &escription) Application data nor(ally depends on t3e pri(ary ;ey of t3e application object ?business partnernu(ber< for e>a(ple@. Often< 3o%e,er< t3e data 3as to be differentiated by furt3er c3aracteristics as %ell.+>a(ples include organi5ational units li;e co(pany code< sales area< etc. /oreo,er< ot3er differentiation types li;e product type and currency fro( t3e treasury area can also e>ist. To define differentiation types< pleaseperfor( t3e follo%ing steps=

    &efine differentiation types

    +,ery c3aracteristic t3at is to be used to differentiate t3e (aster data (ust be entered 3ere.

    &efine differentiation type elements

    Differentiation types consist of one or (ore ele(ents. 83ile t3e co(pany code only consists of one ele(ent itself t3e sales area consists of t3e t3ree ele(ents sales organi5ation< distribution c3annel< and di,ision.+nter all t3e ele(ents of t3e differentiation. +nter all t3e ele(ents t3at can be part of a differentiation type.

    !ssign differentiation type * &ifferentiation type element

    Define t3e dependencies bet%een differentiation types and t3eir ele(ents. An entry is re&uired e,en fordifferentiation types %it3 only one ele(ent.

    2%2 !pplication "b#ects(enu path)#eneral control -B Application objects&escription)+ac3 (aster data object t3at uses t3e control re&uires an entry in t3is table. T3e (aintenance of

    application objects is di,ided into t3e follo%ing steps

    &efine application ob#ects

    !ssign application ob#ects differentiation types

    Configure transactions

    2%2%1 &efining !pplication "b#ects+ac3 (aster data object t3at uses t3e control re&uires an entry in t3is table. +>a(ples of application objectsinclude

    +usiness partner

    +usiness partner relationships

    +an, account -+.. pro#ect/

    All ot3er control tables ?suc3 as screens< sections< etc.@ are al%ays (aintained fro( t3e ,ie% of an applicationobject. To do t3is< t3e configuration transactions ?see C3apter 2.2.@ (ust be defined.

    2%2%2 !ssigning !pplication "b#ects &ifferentiation 'ypesT3is deter(ines %3ic3 of t3e pre,iously (aintained differentiation types are rele,ant for t3e application object.If a re&uired differentiation type does not e>ist yet< it 3as to be defined first ?see C3apter 2.1@.

    2%2%0 Configuration 'ransactionsT3e configurations described in c3apters and follo%ing depend on t3e indi,idual application object. If youdefine a screen for application object 9:'A9 ?business partner@< for e>a(ple< t3at screen only e>ists %it3int3is application object.

    ou can use t3e configuration transactions to easily create transactions to define t3e control ele(ents for yourapplication object. To do t3is< t3e follo%ing steps are re&uired=

    !

  • 8/10/2019 Master Data Control.doc

    5/21

  • 8/10/2019 Master Data Control.doc

    6/21

    Create subscreen

    se t3e screen painter to create t3e screen. In t3e process< please perfor( t3e follo%ing steps= Screen attributes= Select screen type 9Subscreen9 "ullscreen= ou usually do not 3a,e to dra% a fra(e around t3e dataE t3e control %ill auto(atically

    dra% one around t3e fields in a section ?see C3apter *.@. "lo% logic=

    -

    8rite a ':O (odule t3at calls function (odule :SF':OE call t3is ':O (odule fro( t3e':O of eac3 of your subscreens- 8rite a 'AI (odule t3at calls function (odule :SF'AIE call t3is 'AI (odule fro( t3e 'AI of

    eac3 of your subscreens- Do notperfor( any field chec,s%it3in t3e (odulesE t3ese (ust be perfor(ed %it3in t3e 'AI

    function (odules- Do not add any ot3er ':O (odules< for e>a(ple< to select te>t tables for displaying c3ec;

    te>ts or perfor( field (odifications

    Create 4+C function module -before screen call/

    T3is e,ent is only re&uired for ,ie%s %it3 step loops or table control. 'lease (a;e sure t3at %3en a ne%screen is called< t3e first page of entries is displayed and none of t3e entries are selected.Example)An 9Address o,er,ie%9 ,ie% is a,ailable %it3in t3e :'E t3e dialog ,ariables are initiali5edduring t3is e,ent.

    Naming convention)applicationBFapplication objectBF':CF,ie%B?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@

    Create 4+" function module -before output/

    Allo%s you to select te>t tables for displaying c3ec; te>ts.Example)T3e 9Industry9 field e>ists %it3in t3e :'. T3e possible industries are recorded in a custo(i5ingtable. 83en an industry ID is entered in t3e input field< t3e te>t table corresponding to t3e custo(i5ingtable is selected< %3ic3 enables t3e syste( to display t3e na(e of t3e industry ne>t to t3e input field.Naming convention)applicationBFapplication objectBF':OF,ie%B

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@

    Create 4!I function module -after input/

    T3e field c3ec;s for t3e ,ie% are perfor(ed 3ere. nder no circu(stances s3ould t3ese c3ec;s be calleddirectly fro( t3e subscreen< as t3ey cannot be perfor(ed during t3e direct input. 'lease use function

    (odule :SF/+SSA#+FSTO6+ to output (essages. Do not use t3e (essage co((and to output t3e(essage< as t3is %ould cause proble(s %it3 t3e direct input.Naming convention)applicationBFapplication objectBF'AIF,ie%B

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@

    &efine view

    In addition to t3e description< t3e progra( na(e and screen nu(ber of t3e subscreen (ust be specified3ere. T3e na(es of any necessary ':O or 'AI function (odules are also recorded 3ere.Naming convention)applicationBNNN$ie%s s3ould al%ays be si> c3aracters long. T3ey s3ould begin %it3 t3e application ID< follo%ed bynu(eric c3aracters.

    !ssign view field groups

    +nter all t3e field groups t3at belong to a ,ie%.

  • 8/10/2019 Master Data Control.doc

    7/21

    %1%0 $ections(enu path)Control objectB Screen structure Sections

    &escription)/ultiple ,ie%s are grouped toget3er to for( a section. T3e control auto(atically dra%s a fra(earound eac3 section. T3e only e>ception to t3is is t3e first section of t3e screen< %3ere t3e 3eader data isdisplayed. SA' ergono(ics guidelines re&uire t3at t3is first group 3a,e no fra(e.

    To define a section< please perfor( t3e follo%ing steps=

    &efine section

    Only enter t3e description and title. T3e title appears as te>t in t3e upper left border of t3e fra(e.Naming convention)applicationBNNNSections s3ould al%ays be si> c3aracters long. T3ey s3ould start %it3 t3e application ID< follo%ed bynu(eric c3aracters.

    !ssign section view

    se t3is function to record t3e ,ie%s t3at belong to a section. T3e order of t3e ,ie%s %it3in a section isdeter(ined by t3e position nu(ber.Naming convention)T3e position nu(ber is se,en digits long. +ac3 de,elop(ent tier 3as one place. T3eplaces fro( left until t3e de,elop(ent tier place can be freely assignedE t3is is no% t3e applicationdeter(ines t3e position of t3e ,ie% %it3in t3e section in contrast to t3e ,ie%s of t3e upstrea( de,elop(enttiers. T3e digits to t3e rig3t of t3e DT place (ust all be 949.T3e follo%ing places 3a,e been defined for t3e de,elop(ent tiers= Application basis 1J2 Standard applications Industry applications ! De,elop(ent partners * Custo(er ?(ain office@ Custo(er ?branc3 office@ 0

    %1% $creens(enu path)Control objectB Screen structure Screens&escription)/ultiple sections are grouped toget3er to for( a screen. To define a screen< perfor( t3e follo%ing

    steps=

    &efining a screen

    In addition to t3e description< al%ays re(e(ber to enter t3e title as %ell. It is a co(ponent of t3e te>t t3atis output %it3in t3e titlebar< in t3e upper border of t3e %indo%. In addition< you can also deter(ine%3et3er t3e screen is to be output as 9fullscreen9 or 9popup9.After you create a screen %it3 t3e control< you still 3a,e to enter t3e nu(ber of t3e carrier screen. 'ayattention to t3e te>ts in t3e selection and select a carrier screen. In a later en3ance(ent< t3is step %ill nolonger be necessary< as t3e control %ill auto(atically find t3e nu(ber of t3e correct carrier screen.Screens t3at %ere not configured by t3e control can also be integrated in t3e %or;flo%. To do t3is< set t3e9+>ternal screen9 flag and enter t3e na(e of t3e function (odule t3at calls t3e e>ternal screen.Naming convention)applicationBNNNScreens s3ould al%ays be si> c3aracters long. T3ey s3ould start %it3 t3e application ID< follo%ed by

    nu(eric c3aracters. !ssign screen sections

    6ecord t3e sections t3at belong to a screen. T3e order of t3e sections %it3in t3e screen is deter(ined by t3eposition nu(ber.Naming convention)T3e na(ing con,ention for t3e position nu(ber corresponds to t3at of t3eassign(ent section ,ie% ?see C3apter !.1.@.

    0

  • 8/10/2019 Master Data Control.doc

    8/21

    %2 $creen $e5uences(enu path) Control objectB Screen se&uence&escription)T3e screen se&uence deter(ines t3e order in %3ic3 t3e screens appear t3roug3 t3e 9Ne>t screen9and 9're,ious screen9 functions during (aintenance. In addition to t3e data screens< t3e initial screen is alsopart of t3e screen se&uence. To deter(ine t3e screen se&uence< please perfor( t3e follo%ing steps=

    &efine screen se5uence variant

    Any nu(ber of screen se&uences ?so-called 9screen se&uence ,ariants9@ can be defined. One of t3e screense&uence ,ariants (ust be flagged as t3e standard ,ariant. T3e i(portant t3ing is t3at t3e screens of t3e,ariant< toget3er %it3 t3e additional screens ?see C3apter .@ (a;e all t3e attributes of t3e applicationobject a,ailable. If a screen se&uence ,ariant cannot be clearly deter(ined< t3e control uses t3e standard,ariant ?see 9Define usage of t3e screen se&uence ,ariants9 in t3is [email protected] (any cases< a single screen se&uence ,ariant %ill suffice. T3e control s;ips t3e screens t3at do notcontain any input fields for t3e current (aintenance process. ou %ill usually only 3a,e to createadditional ,ariants if T3e fields fro( se,eral screens are to be grouped toget3er in a single screen< as t3e (aintenance

    screens %ould ot3er%ise be nearly blan;< -or- ou %ant to c3ange t3e order of t3e screens

    Naming convention) 6application*NNNScreen se&uence ,ariants s3ould al%ays be si> c3aracters long. T3ey s3ould start %it3 t3e application ID GFH or FH@Example):'F:'AF:T444F'T

  • 8/10/2019 Master Data Control.doc

    9/21

    % 4rogram 7ogic(enu path) Control objectB +,ents&escription)"i>ed e,ents e>ist %it3in t3e control for %3ic3 t3e applications can record t3eir o%n progra(logic. To do t3is< t3e na(es of t3e function (odules are entered. An o,er,ie% of t3e (ost i(portant dialoge,ents appears belo% in c3ronological order=

    I$$'! -initiali8ation/

    &escription)"unction (odule 9:SF'A6A/+T+6SFISSTAF#+T9 can be called by t3e applications tofind out t3e rele,ant control para(eters. +>a(ples include= T3e acti,ity T3e role types7role type groups to (aintain And ot3ers

    User group) All applicationsNaming convention)applicationBFapplication objectBF+$+NTFISSTA

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example):'F:'AF+$+NTFISSTA!ctions) Call function (odule :SF'A6A/+T+6SFISSTAF#+T

    Note t3e re&uired para(eters7tables in local (e(ory I$&!' -read data/

    &escription)T3e table-o%ning applications ?not t3e participating applicationsL@ read t3eir tables andrecord t3e data in bot3 t3e old and ne% state. T3e old state (ust be noted in order to deter(ine later%3et3er anyt3ing 3as been c3anged ?see e,ent MCN#@. T3e pri(ary table of t3e application object andany differentiation types are already read during t3e 'AI function (odules for t3e ,ie%s of t3e initialscreen< 3o%e,er.User group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFISDAT

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFISDAT!ctions) 6etrie,e data fro( t3e pri(ary tables t3roug3 t3e co((unication function (odules< if it is not

    a,ailable in its o%n function group ?at least t3e pri(ary ;ey (ust be deter(ined@ 6ead tables ?first read on local (e(oryE data only 3as to be read fro( t3e D: if it is not found in local

    (e(ory@ 6ecord t3e data in local (e(ory as t3e old and ne% state of t3e current object instance Dra% a preli(inary nu(ber ?create %it3 internal nu(ber assign(ent@

    I$&$' -distribute data/

    &escription) T3e participating tables can use t3e co((unication function (odules ?see C3apter 0@ to findout t3e contents of t3e tables fro( t3e table-o%ning application. T3e contents of t3e tables are recorded inbot3 t3eir old and ne% state.User group) Table-participating applicationsNaming convention) applicationBFapplication objectBF+$+NTFISDST

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@!ctions)

    6ead data fro( t3e table-o%ning application< using t3e #+T co((unication (odule 6ecord data in local (e(ory as old and ne% state of t3e current object instance

    9C:N3 -data changed/

    &escription) If t3e user atte(pts to e>it t3e data (aintenance transaction< a confir(ation pro(pt (ustappear %3en data 3as been c3anged. :y calling t3e defined e,ent function (odules< t3ese applications tellt3e control t3at data 3as been c3anged.T3is e,ent is only processed during t3e 9C3ange9 acti,ity. T3e &uery (ust al%ays be processed during t3e9Create9 acti,ity< %3ile no data can be c3anged in t3e 9Display9 acti,ity.User group) All applicationsNaming convention) applicationBFapplication objectBF+$+NTFMCN#

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFMCN#!ctions) Co(pare t3e old and ne% ,ersions of t3e data for t3e current object instance 6eturn t3e results of t3e co(parison to t3e control

  • 8/10/2019 Master Data Control.doc

    10/21

    &$!+ -collect data/

    &escription) #i,es t3e table-participating applications an option using t3e co((unication function(odules ?see C3apter 0@ to pass t3e contents of t3e appended table fields on to t3e table-o%ningapplication.User group) Table-participating applicationsNaming convention) applicationBFapplication objectBF+$+NTFDSA$:

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@!ctions) 'ass ne% data for current object instance on to table-o%ning application

    &'!.E -copy data to local memory/

    &escription) T3e data is sa,ed in t3e control in t%o steps. T3is (a;es it possible to sa,e t3e data fro(se,eral objects at t3e sa(e ti(e ?see pic;up (ode@. In t3e first step< t3e table-o%ning application %rites t3edata of t3e current object in t3e local (e(ory of its function group ?i.e. global internal [email protected] group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFDTAK+

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFDTAK+!ctions) Note t3e data of t3e current object instance in t3e cross-instance local (e(ory for ne% data

    Note t3e data of t3e current object instance in t3e cross-instance local (e(ory for old data< if t3e datafor t3e current object instance %as first recorded in t3is )8

    &$!E -save data in the &+/

    &escription)T3e table-o%ning application %rites t3e data fro( t3e local (e(ory of t3e function group tot3e database.User group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFDSA$+

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFDSA$+!ctions) Sa,e ne% data fro( t3e cross-instance local (e(ory to D: 8rite c3ange docu(ents Issue success (essage ?only o%ner application@

    &7E1 -exit maintenance of the current ob#ect instance/

    &escription) :efore e>iting data (aintenance for t3e current object instance< all local (e(ory data isinitiali5ed for t3e current object instance.User group) All applicationsNaming convention) applicationBFapplication objectBF+$+NTFD)$+1

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example):'F:'AF+$+NTFD)$+1!ctions) Initiali5e local (e(ory data for t3e current object instance Cancel t3e bloc; for t3e current object instance ?only o%ner application@

    &7E2 -exit maintenance of the application ob#ect/

    &escription) Once t3e data 3as been sa,ed in t3e D: or (aintenance of t3e application object is co(plete GFH or FH@Example):'F:'AF+$+NTFD)$+2!ctions) Initiali5e cross-instance local (e(ory

    %; $creen 'itle

    %;%1 $tandard 'itle&escription)T3e control auto(atically for(s t3e screen title fro( t3e follo%ing t3ree parts=

    'itle of the application ob#ect

  • 8/10/2019 Master Data Control.doc

    11/21

    been (aintained< its title for(s t3e first part of t3e screen title. In ot3er cases ?(ore t3an one role type7roletype group (aintained< or t3e application object does not use t3e role types of t3e control@< t3e title enteredfor t3e application object for(s t3e first part of t3e screen title.

    !ctivity

    T3e description of t3e acti,ity for(s t3e second part of t3e screen title. Only t3e follo%ing acti,ities arecurrently possible=

    Create C3ange Display

    'itle of screen

    T3e title entered during definition of t3e screen for(s t3e first part of t3e title. In accordance %it3 t3ere&uire(ents of SA' ergono(ics< t3is part of t3e acti,ity is di,ided by a colon.

    Example) 9C3ange :usiness 'artner= Address9 or9Display :usiness 'artner= 'ay(ent Transactions9

    %;%2 Event &'I'7 -Change $creen 'itle/&escription)T3e standard title deter(ined by t3e control can also be c3anged at runti(e i(ple(ented using

    e,ent DTIT). During t3is e,ent function (odule< t3e application can

    Change any of the three parts or

    Change the entire title

    User group) All applicationsNaming convention) applicationBFapplication objectBF+$+NTFDTIT)

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example)None a,ailable< e,ent is seldo( re&uired!ctions)

    C3ange standard title

    %= CU! (enu

    %=%1 $tandard Functions(enu path)Control objectB CA functions Standard functions

    &escription)All functions t3at are defined %it3in fi>ed (enus ?see C3apter !..@ (ust be defined in t3e tableof standard functions. T3is table can also be used to deter(ine %3en a function is to be acti,e. T3e controltables can also be used to acti,ate7deacti,ate functions based on

    'he activity

    'he processing mode -save or pic,up/

    'he view of the current screen

    'he screen se5uence variant

    'hree tables are available for configuration)

    $tandard functions

    $tandard functions) active for each view

    $tandard functions) active for each view

  • 8/10/2019 Master Data Control.doc

    12/21

    "unction is only acti,e %3en a certain ,ie% is present in t3e current screen

    Example)"unction 9Delete ban; details9

    %=%2 !dditional Functions(enu path)Control objectB CA functions Additional functions

    &escription)All functions t3at are not fir(ly defined in t3e CA (enu can be added t3roug3 t3e additionalfunctions. T3ese additional functions can be reac3ed ,ia t3e 9/ore functions9 function< %3ic3 is only acti,e%3en at least one additional function is acti,e for t3e (enubar entry. T3e control tables can be used todeter(ine to acti,ate7deacti,ate a CA function. T3e tables and s%itc3ing options correspond to t3ose of t3estandard functions ?see C3apter !..1@.

    %=%0 &efining a (enu&escription)T3e o%ner application creates a CA (enu for t3e application object. T3e (enu of applicationobject :'A ?business partner@ can be used as a te(plate. T3e status of t3is (enu ?progra( SA'):D4@ 3asto be copied to t3e function group of t3e application object-o%ning application< and adapted t3ere. T3eco((and field codes for t3e control functions ?function code :S@ (ay not be c3anged. T3e follo%ing status,alues are nor(ally re&uired=

    INITDAT" Initial screen as fullscreen INITDAT' Initial screen as popup STNDDAT" Data screen ?standard@ as fullscreen STNDDAT' Data screen ?standard@ as popup +MT6DAT" Data screen ?additional@ as fullscreen +MT6DAT' Data screen ?additional@ as popup

    Important)T3e co((and field codes for t3e control functions ?function code :S@ (ay not be c3anged< ast3e control is progra((ed based on t3ese co((and field codes.

    %=% Events &CU!& and &CU!C

    Event &CU!& -set CU! menu/

    &escription) T3e CA status is deter(ined< based on t3e attributes of t3e current screen< and passed on to

    t3e control. In addition< t3e control recei,es t3e na(e of t3e function (odule t3at sets t3e CA status?co((and S+T '"STATS...@. T3is function (odule (ust be located in t3e function group of t3eapplication object-o%ning application. T3e na(ing con,ention for t3is function (odule isapplicationBFapplication objectBF'"STATSFS+T.User group) Application object-o%ning applicationNaming convention)applicationBFapplication objectBF+$+NTFDCAD

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFDCAD!ctions) Deter(ine t3e CA status for t3e screen and pass it on to t3e control 'ass t3e na(e of t3e function (odule for setting t3e CA status on to t3e control

    Event &CU!C -change CU! menu/

    &escription) T3e applications can use t3is e,ent to acti,ate or deacti,ate functions at runti(e.

    User group) All applicationsNaming convention) applicationBFapplication objectBF+$+NTFDCAC

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFDCAC!ctions) Deter(ine t3e CA status %it3 function (odule :SFCAFSTATSF#+T Add inacti,e standard functions or acti,e additional functions to t3e appropriate tables 6eturn t3e current CA status to t3e control %it3 function (odule :SFCAFSTATSFS+T

    %> Field (odification(enu path)Control objectB "ield (odification ...&escription)T3e field (odification for

    !ctivity and

    ?ole type

    12

  • 8/10/2019 Master Data Control.doc

    13/21

    are specified by t3e control. An application object can use t3ese field (odification criteria %3en transactioncodes 3a,e been defined for t3ese t%o configuration acti,ities.

    Any ot3er field (odification criteria can be defined by t3e applications. To do t3is< perfor( t3e follo%ing steps=

    Createists< it can be used and appended %it3t3e fields for t3e field status definitions.

    Create maintenance view in &&IC -optional/

    3enerate maintenance program -transaction $E;/

    !dapt maintenance program

    Define a special CA (enu for t3e (aintenance ,ie%To do t3is< copy t3e standard user interface fro( progra( SA')S$I/. T3en add t3e ne% CAfunction 9"ield status9. No% use e,ent 9ST9 to record t3e progra( na(e of t3e en3anced CA (enu.

    Call function 9"ield status9"unction (odule :SF"/ODFCSTO/IIN# (ust be called %it3in t3e 'AI (odule you add. It

    triggers t3e dialog for (aintaining t3e field (odification.

    @rite function module for reading the table

    &escription) T3is function (odule reads t3e table of t3e field (odification criterion and returns t3econtents of t3e field status definitions as a result.User group) Criterion-o%ning applicationNaming convention) applicationBFapplication objectBF+$+NTF"/OD2FcriterionB

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTF"/OD2F:'

    Create field modification criterion

    T3e criterion 3as to be stored in t3e control table of t3e field (odification criteria. Also enter t3e na(e oft3e function (odule for reading t3e table.

    %A !ssigning $creen Fields &atabase Fields(enu path)Control objectB Assign screen field -B D: field

    &escription)83en t3e field groups fields assign(ent ?C3apter !.1.1@ %as (ade< t3e field na(es of t3escreen fields %ere entered. If t3e field na(e of a screen field differs fro( t3e na(e of t3e database field< t3eassign(ent (ust be entered 3ere. T3e control re&uires t3is infor(ation< a(ong ot3er t3ings< for t3e(atc3codes ?see C3apter !.@ and field c3anges ?see 9C3ange docu(ents9< C3apter *@ functions. T3e follo%ingassign(ent options are a,ailable=

    !ssignment for a field

    +nter t3e table and field na(e for bot3 t3e screen field and t3e database field

    !ssignment for all fields in a table

    T3e table na(e (ust be specified for bot3 t3e screen field and t3e database field< enter 99 for t3e fieldna(e

    During t3e con,ersion process< t3e control first searc3es for an assign(ent to t3e target field. If none is foundists yet for your application< you %ill 3a,e to create it first. Add all t3e re&uiredfields to your (atc3code object< and insert t3e re&uired (atc3code ID.

    1

  • 8/10/2019 Master Data Control.doc

    14/21

    In bot3 cases< only t3e ne% (atc3code ID 3as to be recorded in t3e table of 9(atc3code IDs9.

    %1 !uthori8ationsAut3ori5ations are al%ays c3ec;ed=

    +etween the initial screen and the first data screen +efore saving

    %1%1 4re&efined !uthori8ation Chec,sT3e follo%ing aut3ori5ation c3ec;s are pro,ided by t3e control=

    !uthori8ation types

    T3is aut3ori5ation object can be used by t3e custo(er to define aut3ori5ations for any data field. To do t3isa(ples for using aut3ori5ation types= Di,ision of business partners by last na(e

    - ser A is responsible for t3e business partners %3ose last na(es begin %it3 A t3roug3 K- ser : is responsible for ) t3roug3

    Di,ision of business partners by I' code- ser A is responsible for t3e business partners located in I' code range 4 t3roug3 !- ser : is responsible for t3e range t3roug3

    In so(e cases< (ay (a;e sense to use application types %it3 t%o. In t3is case< t3e user needs (aintenanceaut3ori5ation for bot3 fields. One possible application case= Di,ision of business partners by co(bination of country7I' code

    - ser A is responsible for t3e business partners in t3e nited States %3ose last na(es begin %it3A t3roug3 K

    - ser : is responsible for ) t3roug3 in t3e nited States- ser C is responsible for A t3roug3 in Canada

    To use aut3ori5ation types< t3e follo%ing steps 3a,e to be perfor(ed for t3e application object= Define aut3ori5ation object %it3 t3e fields

    - Aut3ori5ation type- "ield ,alue ?field 1@- "ield ,alue ?field 2@- Acti,ity

    +nter t3e na(e of t3e aut3ori5ation object during (aintenance of t3e application objects Create t3e configuration transaction for (aintaining t3e aut3ori5ation types

    If a custo(er %ants to use t3e aut3ori5ation types< t3e follo%ing steps (ust be perfor(ed= Create t3e aut3ori5ation type in custo(i5ing< specifying t3e field na(e Create t3e aut3ori5ations< specifying t3e field ,alues< and assign t3e( to t3e users

    !uthori8ation by role typeCusto(ers can use t3is aut3ori5ation object to define %3ic3 users are aut3ori5ed to (aintain %3ic3 roletypes. To use t3is aut3ori5ation c3ec;< t3e follo%ing steps 3a,e to be perfor(ed for an application object= Define aut3ori5ation object %it3 t3e fields

    - 6ole type- Acti,ity

    +nter t3e na(e of t3e aut3ori5ation object during (aintenance of t3e application objects

    %1%2 "ther !uthori8ation Chec,sAny ot3er aut3ori5ation c3ec;s can be perfor(ed. se e,ent AT1 for t3ese c3ec;s. It is called by t3e controlbet%een t3e initial screen and t3e first data screen< as %ell as before sa,ing.

    %11 !pplication 'ransactionsT3e control offers an e>tre(ely si(ple option for calling t3e (aintenance dialog for your application object. Todo t3is< t3e follo%ing steps are re&uired=

    1!

  • 8/10/2019 Master Data Control.doc

    15/21

    8rite a report transaction for eac3 application transaction< and enter report :SSTA6T as t3e startup

    para(eter

    8rite an application transaction for eac3 call and enter t3e infor(ation for t3e follo%ing fields=

    Transaction code Acti,ity and 6ole type7role type group ?optional@

    Add t3e transaction to your application (enu

    83en t3e application is started< t3e (aintenance ,ie% for t3e control function is no% auto(atically called fort3e respecti,e application object.

    ; Change &ocumentsC3ange docu(ents are %ritten by t3e table-o%ning applications during e,ent 9DSA$+9. T3e control offers a(ore fle>ible tool for analy5ing t3e c3ange docu(ents. T3e follo%ing functions are supported=

    Function D6ob#ect* changesD in dialog

    All c3ange docu(ents for t3e current (aintenance object are displayed+>a(ple= "unction 9'artner c3anges9 for t3e business partner

    Function Dfield changesD in dialog

    All c3ange docu(ents of t3e current (aintenance object are displayed for t3e field in t3e current cursorposition. Only t3e c3anges are displayed.

    &isplay change documents for all ob#ects -report +U$C:&"C/

    T3e table-o%ning application (ust perfor( t3e follo%ing steps in order to include t3eir table in t3e c3angedocu(ent analysis=

    @rite change documents -see event &$!E in Chapter %/

    Event C:3&1

    &escription) T3is e,ent is re&uired to call t3e c3ange docu(ent display for all objects ?report:[email protected] control gi,es t3e application t3e data fro( t3e selection screen< and t3e application returns t3einfor(ation as to %3ic3 c3ange docu(ent objects %it3 %3ic3 object IDs t3e control 3as to read. If t3e userselected all object IDs for a c3ange docu(ent object ?no restriction@< t3e application gi,es t3e control anentry %it3 t3e c3ange docu(ent object and object ID S'AC+. T3e control t3en reads t3e c3ange docu(entc3ange docu(ent.User group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFC#D1

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFC#D1!ctions)

    6ead selection ,alues passed on by t3e control Note indi,idual selection ,alues for later e,ents C#D and C#D! 'ass on table %it3 rele,ant c3ange docu(ent objects7object IDs to t3e control

    Event C:3&2

    &escription) Deter(ine a description for eac3 of your tables and pass it to t3e control. T3e control re&uirest3is infor(ation to display t3e popup for t3e c3anged fields during function 9objectB c3anges9.User group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFC#D2

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example) :'F:'AF+$+NTFC#D2!ctions) Deter(ine descriptions of t3e tables ?language-specificL@ and return t3e( to t3e control

    Event C:3&0&escription) ou 3a,e anot3er opportunity to deter(ine %3et3er eac3 change document headerisrele,ant for display. T3is e,ent does not usually 3a,e to be used< since e,ent C#D1 is already used by t3eapplication to deter(ine %3ic3 c3ange docu(ents are rele,ant.

    1*

  • 8/10/2019 Master Data Control.doc

    16/21

    User group) Table-o%ning applicationsNaming convention) applicationBFapplication objectBF+$+NTFC#D

    ?Custo(er= T3e na(e of t3e function (odule gets t3e additional prefi> GFH or FH@Example)Currently none!ctions) Decide %3et3er a c3ange docu(ent 3eader is rele,ant

    Event C:3&&escription) ou can deter(ine %3et3er eac3 change document itemis rele,ant for display. In addition GFH or FH@Example) +U4+U4!EEN'C:3&!ctions) Decide %3et3er a c3ange docu(ent ite( is rele,ant Deter(ine t3e contents of ,arious output fields

    = ?ole 'ypes

  • 8/10/2019 Master Data Control.doc

    17/21

    Master Data Control

    Part B: Instructions for Enhancements

    Contents

    1 Introduction2 Ne% Table "ield T3roug3 Table-O%ning Application Ne% Table "ield T3roug3 Table-'articipating Application! Ne% Table* Ne% Screen in Screen Se&uence Ne% Additional Screen0 Ne% 6ole type Ne% "ield /odification Criterion Ne% /atc3code ID for Input "ield14 Ne% Application Object

    10

  • 8/10/2019 Master Data Control.doc

    18/21

    1 IntroductionT3is section contains instructions for perfor(ing t3e (ost fre&uently re&uired en3ance(ents. It s3ould 3elpsi(plify t3e tas;s.

    If you 3a,e not already done so< define your application. To do t3is< proceed as follo%s=

    Create application -see Chapter 0/

    (aintain assignment) role type application -see Chapter =/ if the application ob#ect uses role

    types

    2 New 'able Field 'hrough 'able"wning !pplicationT3e table-o%ning application %ants to append an additional field to its table. To do t3is< proceed as follo%s=

    Enhance the table in the &&IC

    Enhance the screen structure -see Chapter %1/

    8e differentiate bet%een t3e follo%ing cases= Add field to an e>isting field group

    - /aintain assign(ent= field groupfield

    - +n3ance subscreen Add field to a ne% field group< but in an e>isting ,ie%

    - Create field group- /aintain assign(ent= field groupfield- +n3ance subscreen- /aintain assign(ent= ,ie%field group

    Add field to a ne% field group< but in an e>isting section- Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- /aintain assign(ent= section,ie%-

    /aintain assign(ent= role type

    ,ie% ?if t3e application object uses role types@ Add t3e field to a ne% section< but in an e>isting screen- Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- /aintain assign(ent= screensection- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Add t3e field to a ne% screen- Create field group- /aintain assign(ent= field groupfield

    - Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- Create screen- /aintain assign(ent= screensection- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Enhance the screen se5uence -see Chapter %2/

    T3is is only necessary %3en you %ant to create a screen for t3e ne% field< and t3is screen is to appear%it3in t3e screen se&uence.

    &efine CU! function -see Chapter %=/

    T3is is only necessary %3en you %ant to create a screen for t3e ne% field and call t3is screen t3roug3 aseparate CA function.T3e o%ner application can add t3e function to t3e CA (enu if re&uired and define t3e function as astandard function. In ot3er cases< t3e function can be defined as an au>iliary function.

    1

  • 8/10/2019 Master Data Control.doc

    19/21

    0 New 'able Field 'hrough 'able4articipating !pplicationAn application %ants to append a data field to a table fro( anot3er application. To do t3is< perfor( t3efollo%ing steps=

    Create or enhance the !44EN&isting field group

    - /aintain assign(ent= field groupfield- +n3ance subscreen

    Add field to a ne% field group< but in an e>isting ,ie%- Create field group- /aintain assign(ent= field groupfield- +n3ance subscreen- /aintain assign(ent= ,ie%field group

    Add field to a ne% field group< but in an e>isting section- Create field group- /aintain assign(ent= field groupfield- Create subscreen

    - Create ,ie%- /aintain assign(ent= ,ie%field group- /aintain assign(ent= section,ie%- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Add t3e field to a ne% section< but in an e>isting screen- Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- /aintain assign(ent= screensection

    - /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@ Add t3e field to a ne% screen

    - Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- Create screen- /aintain assign(ent= screensection- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Enhance the program logic -see Chapter %/

    +,ent ISSTA ?initiali5ation@ +,ent ISDST ?distribute data@ +,ent MCN# ?c3anges (adeQ@ +,ent DSA$: ?collect data@ +,ent D)$+1 ?e>it (aintenance 1@ +,ent D)$+2 ?e>it (aintenance 2@

    Enhance the screen se5uence -see Chapter %2/

    T3is is only necessary %3en you %ant to create a screen for t3e ne% field< and t3is screen is to appear%it3in t3e screen se&uence.

    &efine CU! function -see Chapter %=/

    T3is is only necessary %3en you %ant to create a screen for t3e ne% field and call t3is screen t3roug3 aseparate CA function.

    T3e o%ner application can add t3e function to t3e CA (enu if re&uired and define t3e function as astandard function. In ot3er cases< t3e function can be defined as an auxiliary function%

    1

  • 8/10/2019 Master Data Control.doc

    20/21

    New 'ableAn application needs to include fields fro( a ne% table in t3e (aintenance transaction. To do t3is< perfor( t3efollo%ing steps=

    Create the table in the &&IC

    !dd the table to the table directory -see Chapter %0/ Enhance the screen structure -see Chapter %1/

    8e differentiate bet%een t3e follo%ing cases= Add field to an e>isting field group

    - /aintain assign(ent= field groupfield- +n3ance subscreen

    Add field to a ne% field group< but in an e>isting ,ie%- Create field group- /aintain assign(ent= field groupfield- +n3ance subscreen- /aintain assign(ent= ,ie%field group

    Add field to a ne% field group< but in an e>isting section- Create field group

    - /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- /aintain assign(ent= section,ie%- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Add t3e field to a ne% section< but in an e>isting screen- Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- /aintain assign(ent= screensection- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Add t3e field to a ne% screen- Create field group- /aintain assign(ent= field groupfield- Create subscreen- Create ,ie%- /aintain assign(ent= ,ie%field group- Create section- /aintain assign(ent= section,ie%- Create screen- /aintain assign(ent= screensection- /aintain assign(ent= role type,ie% ?if t3e application object uses t3e role type@

    Enhance program logic -see Chapter %/

    +,ent ISSTA ?initiali5ation@ +,ent ISDAT ?read data@ +,ent MCN# ?c3anges perfor(edQ@ +,ent DTAK+ ?copy data to local (e(ory@ +,ent DSA$+ ?sa,e data in D:@ +,ent D)$+1 ?e>it (aintenance 1@ +,ent D)$+2 ?e>it (aintenance 2@

    Enhance screen se5uence -see Chapter %2/

    T3is is only necessary %3en you %ant to create a screen for t3e ne% field< and t3is screen is to appear%it3in t3e screen se&uence.

    &efine CU! function -see Chapter %=/T3is is only necessary %3en you %ant to create a screen for t3e ne% field and call t3is screen t3roug3 aseparate CA function.

    24

  • 8/10/2019 Master Data Control.doc

    21/21

    T3e o%ner application can add t3e function to t3e CA (enu if re&uired and define t3e function as astandard function. In ot3er cases< t3e function can be defined as an au>iliary function.

    Integrate the table in change document analyses -see Chapter ;/

    ; New $creen in $creen $e5uence

    &efining the screen structure for a new screen -if not yet available/ Create field groups /aintain assign(ents= field groupfield Create subscreens Create ,ie%s /aintain assign(ents= ,ie%field group Create sections /aintain assign(ents= section,ie% Create screen /aintain assign(ents= screensection /aintain assign(ent= role types,ie% ?if t3e application object uses t3e role type@

    Enhancing a screen se5uence -see Chapter %2/

    New !dditional $creen

    &efining the screen structure for a new screen -if not yet available/

    Create field groups /aintain assign(ents= field groupfield Create subscreens Create ,ie%s /aintain assign(ents= ,ie%field group Create sections /aintain assign(ents= section,ie% Create screen /aintain assign(ents= screensection /aintain assign(ent= role types,ie% ?if t3e application object uses t3e role type@

    &efining a CU! function -see Chapter %=/

    = New ?ole type

    Create role type with assignments to applications and views -see Chapter =/

    Create application transactions for the new role type -see Chapter %11/

    New Field (odification Criterion

    &efine a field modification criterion -see Chapter %>/

    New (atchcode I& for Input Field

    &efine a matchcode I& -see Chapter %B/

    New !pplication "b#ect

    &efine an application ob#ect -see Chapter 2%2/

    &efine applications -see Chapter 0/

    Create a dialog -see Chapter /

    &efine change document analyses -see Chapter ;/