Está en la página 1de 11

Aumento de programas estndar de manera rpida y fcil

Negocios a travs de Add-Ins (Badis): Una gua para los desarrolladores de SAP y Consultores Por e!an "aidi# Sie$ens Pa%ist&n Nota del editor: Algunos de los aspectos $&s atractivos de SAP ' son su $odularidad y (con)igure-capacidad(* SAP de la e$presa soluci+n per$ite una gran )le,i-ilidad en la aplicaci+n# as co$o un $ont+n de adaptaci+n a las necesidades espec)icas de la e$presa* Uno de los .lti$os de la SAP o)ertas en las !erra$ientas y tcnicas de escenario es el concepto de Business Add-Ins# o Badis* ABAP (!o$-re de la !ora( e!an "aidi utili/a este 0i-ro Blanco para e,plicar e,acta$ente en 1u negocio Add-Ins son# y c+$o se les lla$a en los progra$as de ABAP* Presenta un panora$a general de los -ene)icios a los consultores y usuarios# y descri-e los pasos necesarios para $e2orar los progra$as est&ndar de SAP 1ue utili/an esta )uncionalidad* 3al ve/ usted no Sc!4ar/enegger# pero puede ser un $undo BA5I constructor de la clase cuando su e2ercicio de nuevos conoci$ientos de Business Add-Ins de SAP* Introduccin Una de las principales )uer/as de SAP es la capacidad de adaptar su $+dulo est&ndar de los progra$as de acuerdo a los re1uisitos espec)icos del cliente* Una de las .lti$as tcnicas de personali/aci+n disponi-les es el uso de Business Add-Ins* 6sta tcnica utili/a la tecnologa $&s reciente y conceptos# y !a sido utili/ada por SAP en la $ayora de sus $+dulos* Por otra parte# de-ido a las nu$erosas venta2as 1ue proporciona# el aprendi/a2e de los )unda$entos de esta tcnica es esencial para los desarrolladores de SAP y los consultores* 6l o-2etivo de este docu$ento es proporcionar una descripci+n de las $edidas necesarias en la adaptaci+n de los progra$as 1ue utili/an BA5I* 6stas son algunas de las preguntas 1ue este docu$ento se ocupar& de: 7 8Cu&les son Business Add-Ins (BA5IS) y c+$o se lla$a en los progra$as de ABAP9 7 8Cu&les son algunos de los -ene)icios 1ue proporcionan a los consultores y los usuarios9 7 8:u pasos son necesarios para $e2orar el est&ndar de los progra$as 1ue e$plean esta )uncionalidad9 6$pe/ar con una visi+n de con2unto de Badis (Business Add-

Ins) y su relaci+n con el orientado a o-2etos conceptos* ;oy a discutir en detalle los pasos necesarios en la aplicaci+n de un tpico negocio Add-In* Por .lti$o# voy a utili/ar un e2e$plo e,trado de un )&cil para todos co$pa<a escenario para ilustrar $is puntos de vista* ;oy a incluir conse2os aprendido de $i e,periencia personal y la o-servaci+n* 6ste docu$ento est& destinado principal$ente para desarrolladores de SAP# pero ta$-in puede ser de inters para los usuarios de SAP* ;oy a asu$ir 1ue el lector est& )a$iliari/ado con conceptos -&sicos de ABAP y 1ue tiene ciertos conoci$ientos de progra$aci+n orientada a o-2etos dentro de un entorno SAP* Para o-tener $&s in)or$aci+n# consulte la docu$entaci+n de SAP !ttp:==!elp*sap*co$=* Aun1ue las capturas de pantalla !an sido to$adas de la versi+n >*?# los conse2os $encionados son pertinentes para su posterior as co$o las e$isiones* Business Add-Ins (Badis): Un panora$a general* BADIS puede ser de)inido si$ple$ente co$o un o-2eto orientado a la e,tensi+n de la $e2ora tcnica de SAP* Se trata de porciones especiales previstas por los desarrolladores de SAP para la incorporaci+n de cliente (o e$presa) la l+gica espec)ica* 6l proceso de adaptaci+n de su progra$a de acuerdo a su escenario es conocido co$o la aplicaci+n de la BA5I* Business Add-Ins !an sido utili/ados por los desarrolladores de SAP en una serie de $+dulos tales co$o @ # S5 y AA* Ade$&s de los progra$as de ABAP est&ndar# puede utili/ar ta$-in para Badis pantalla de $en. y e1uipa$iento* Aparte de SAP entregadas las solicitudes# es posi-le 1ue ta$-in desee crear su propio Badi a )in de proporcionar la opci+n de $e2orar su propio progra$as de ABAP*0as operaciones para la creaci+n y la aplicaci+n de BA5I son S6BC y S6BD# respectiva$ente* Co$o ya se !a $encionado# Badis se -asan en el concepto de orientaci+n a o-2etos* 6l progra$a 1ue incorpora la $e2ora opci+n# lla$a a un $todo de una clase generada BA5I* 5urante el procedi$iento de aplicaci+n# el cliente-c+digo espec)ico 1ue est& escrito en el $todo* 6l no$-re del $todo se especi)ica a travs de una inter)a/ BA5I* 6l no$-re de la inter)a/ es de la )or$a IF !" BADI# donde BA5I es el no$-re de la BA5I en cuesti+n* Por e2e$plo# en el caso de los recursos !u$anos Add-In @ EIN5;A0# la inter)a/ es participar IF !" #$ IND%A&* @ay dos principales atri-utos de BA5I# a sa-er# usos $.ltiples y = o dependientes del )iltro* Si usted desea per$itir 1ue $&s de una aplicaci+n para un deter$inado BA5I# el atri-uto de la correspondiente BA5I est&

esta-lecido co$o de uso $.ltiple* Asi$is$o# BA5I ta$-in puede de)inirse co$o )iltro-dependiente* 6sto le per$ite de)inir su-tipos de un deter$inado negocio Add-In* 6n este caso# un $todo di)erente de c+digo se !a creado y e2ecutado por cada )iltro se especi)ica en la de)inici+n BA5I* Badis proporciona una serie de venta2as a los desarrolladores y consultores: 7 Se le per$iten de $anera r&pida y )&cil adaptar SAP de acuerdo a sus necesidades de los usuarios# sin necesidad de $odi)icar el c+digo est&ndar* 7 5ado 1ue la $e2ora no es )i2o para todos los escenarios# Badis le per$iten e2ecutar una aplicaci+n di)erente l+gica para una variedad de versiones pas y la e$presa los re1uisitos* 7 Para los desarrolladores 1ue tengan una a)inidad para Conceptos orientados a o-2etos# esta )uncionalidad proporciona un $edio e)ica/ de $e2ora del progra$a SAP* 'ransaccin S!() Usted puede utili/ar la transacci+n S!() para $ostrar una lista de las Badis# as co$o para ver los atri-utos y la estructura de una BA5I* Con el )in de -uscar una BA5I en su &rea )uncional# lla$e a la transacci+n S6BC* 0a pantalla principal para la transacci+n S6BC aparece co$o se $uestra en la Figura B* Figura B:

Aanteniendo el cursor so-re la de)inici+n del ca$po de no$-re# B* pulse la tecla F>* G* Un pop-up aparece la pantalla* H* 6li2a la opci+n de solicitud Ierar1ua* 6l siste$a $uestra una estructura de &r-ol 1ue $uestra las diversas &reas )uncionales (en SAP) a los $+dulos pertinentes# tales co$o AA# S5 y @ * Navegar a travs de este &r-ol con el )in de encontrar la /ona (y# por tanto# la BA5I)# en la 1ue usted est&

interesado* Usted ta$-in puede crear nuevas (o la pantalla actual) BA5I de)iniciones a travs de esta transacci+n* Con el )in de $ostrar los atri-utos y la estructura de un SAP-sie$pre BA5I# introdu/ca el no$-re BA5I en el ca$po correspondiente en la pantalla principal de la transacci+n S6BC# y !aga clic en Aostrar* 0a pantalla aparece# co$o se $uestra en la Figura G*

Atri-utos de la )ic!a $uestra los datos generales y el tipo de BA5I en cuesti+n* 0os datos generales $uestran los Negocios Add-In de clase# $ientras 1ue el 3ipo especi)ica si el Add-In es de uso $.ltiple y = o dependientes de )iltros* 6n caso de 1ue el )iltro-dependientes es el indicador# un 3ipo de )iltro se $uestra en el ca$po correspondiente* Puede 1ue a continuaci+n# !aga clic en la pesta<a Inter)a/* 6l no$-re de la inter)a/ y el $todo BA5I se $uestra (ver Figura H)*

Figura H: Inter)a/ BA5I y Atodo No$-re @aga do-le clic en el no$-re del $todo a )in de ver los detalles acerca de la i$portaci+n# e,portaci+n# y el ca$-io de par&$etros de la BA5I $todo en cuesti+n (vase el gr&)ico >)*

Figura >: Par&$etros de un deter$inado $todo BA5I En el caso de filtros dependientes Badis# un i$portante par&$etro 1ue se pasa en el $todo de )iltro es el valor* 6l no$-re de este par&$etro# en la $ayora de los casos# es F&' %A&* !structura de los programas *ue emplean la funcionalidad BADI 6s una -uena idea para 1ue usted se )a$iliarice con la estructura de los progra$as BA5I* 0os progra$as (ya sea est&ndar o personali/ado construido) 1ue incorporan la )uncionalidad BA5I incluir algo co$.n un -lo1ue de c+digo* Un e2e$plo se $uestra en Figure*J

Figura J: Atodo de lla$adas BA5I 6l -lo1ue de c+digo declara la pri$era clase +& !"I'#AND&!$ y# a continuaci+n# declara una varia-le de re)erencia (en este caso# ,-!"I') a la inter)a/ de la BA5I en cuesti+n* A continuaci+n# el progra$a lla$a al $todo .!' INS'AN+! de la +& !"I'#AND&!$ clase* 6ste $todo se utili/a para acceder a un e2e$plo activo de la BA5I de clase# 1ue se coloca en la varia-le declarada ,-!"I'* Sugerencia: Una de las $aneras de averiguar si se apoya de un progra$a BA5I# es -uscar el te,to (!"I'#AND&!$( en el progra$a de c+digo )uente* 0a instancia de la clase BA5I puede entonces ser usado para lla$ar al $todo aplicado BA5I* Por .lti$o# la BA5I $todo se lla$a* 6ste $todo contiene la l+gica $e2ora pertinentes para el cliente o el pas en cuesti+n (va$os a discutir esto en detalle en la pr+,i$a

secci+n)* /asos en la Implementacin de una BADI Co$o ya se !a $encionado# puede crear nuevas (o $odi)icar el e,istente) BA5IKs a travs de la transacci+n S!(0* @ay unos pocos pasos necesarios para poner en pr&ctica una BA5I* ;aya$os a travs de ellos uno por uno* /aso (: +reacin de una aplicacin 6l pri$er paso i$plica la creaci+n de una BA5I aplicaci+n* B* 0la$e a la transacci+n S6BD* 6l BA5I aplicaci+n aparece en pantalla# co$o se $uestra en la Figura ?*

Figura ?: 3ransacci+n S6BD - BA5I Aplicaci+n de Pantalla* 2. Introdu/ca un no$-re adecuado para su aplicaci+n en el ca$po correspondiente y !aga clic en el -ot+n Crear* Un pop-up aparece la pantalla# co$o se $uestra en la Figura L* 3. Introdu/ca el no$-re de la BA5I 1ue participan y pulse el -ot+n Intro*

Figura L: introducir el no$-re de la BA5I 1ue se aplicar&*

6sto lleva a la pantalla $ostrada en la Figura C*

Figura C: Aplicaci+n de $anteni$iento BA5I* >* Introdu/ca un -reve te,to en el ca$po correspondiente* 5. A continuaci+n# !aga clic en la pesta<a Inter)a/* 6sto $uestra el no$-re de la clase 1ue se generar&n co$o resultado de la aplicaci+n* Usted puede ca$-iar la clase si lo desea* 0a inter)a/ ta$-in contiene el no$-re de la BA5I $todo* Nota: 6n caso de 1ue se est&n llevando a ca-o un )iltro BA5I-dependientes# es necesario introducir un )iltro adecuado valor en el cuadro de control previstas en el tipo de la )ic!a Atri-utos* 6l valor del )iltro (s) ca$po (en este caso) est& disponi-le para la entrada# co$o se $uestra en la Figura D*

Figura D: Introducci+n de un )iltro de valor para el )iltro dependientes Badis 6. A continuaci+n# !aga do-le clic so-re el no$-re del $todo (en nuestro caso I'!, ,1DIF-)* 6sto le llevar& a la clase Builder editor m2todo de la pantalla3 6ste es el &rea donde usted puede escri-ir el c+digo 1ue le gustara 1ue se e2ecutar& cuando la BA5I $todo se lla$a (vase Figura BM)*

Figura BM: Codi)icaci+n de la BA5I Atodo* /aso 4: !scri5ir el +digo para la BADI ,2todo 6l siguiente paso es escri-ir la codi)icaci+n de la BA5I $todo* 6ste c+digo incorpora la $e2ora l+gica y es e2ecutado por el progra$a de aplicaci+n a la BA5I $todo de lla$ada*

0a $ayora de las sentencias ABAP son aplica-les en este caso* Sin e$-argo# desde la BA5I tecnologa se -asa en ABAP N-2ects# 6n ABAP algunas desarrollos no est&n per$itidas* Por e2e$plo: 0a siguiente declaraci+n para la ta-la interna dar& un error:

Co$o ya se !a $encionado# el $todo tiene I,/1$'A+I1N# !"/1$'A+I1N# y +#AN.IN. /A$A,!'!$S* 0a $e2ora se puede lograr escri-iendo c+digo 1ue asigna valores adecuados a la evoluci+n de los par&$etros y la e,portaci+n del $todo* 6l progra$a principal de aplicaci+n utili/a estos valores para su posterior procesa$iento# y de esta $anera el e)ecto deseado es el $e2ora$iento logrado* 7. Cuando !aya ter$inado con la codi)icaci+n# acti6ar el $todo BA5I* Sugerencia: 0a aplicaci+n e)ectiva de la BA5I# radica en la utili/aci+n de los par&$etros de la $e2or $anera posi-le* 3+$ese su tie$po para e,plorar los distintos par&$etros proporcionados y utili/arlos de la $e2or $anera en el cu$pli$iento de los re1uisitos de su escenario* 5espus de llevar a ca-o las dos $edidas necesarias# BA5I activar su aplicaci+n* /oniendo todo 7unto 6n esta secci+n# !ar uso de los conceptos descritos en este docu$ento para $ostrar c+$o la )uncionalidad BA5I* Se puede aplicar para valorar indirecta$ente @ su-sidios* 0a )+r$ula o criterios indirectos de valoraci+n# conocido co$o A+dulo# se especi)ica a travs de a2ustes de con)iguraci+n* Sin e$-argo# el c+digo para escri-ir la )+r$ula $ate$&tica 1ue se reali/a en una BA5I $todo* 0a Business Add-In aplica-le en este caso es @ EIN5;A0# y la inter)a/ 1ue se trata es de IFE6OE@ EIN5;A0* Co$o ya se !a $encionado# el pri$er paso es crear la aplicaci+n* Una aplicaci+n con el no$-re "AC@A )ue creado# co$o se $uestra en la Figura BB*

Figura BB: Creaci+n de una aplicaci+n de negocios para AddIn 8,B ,I.1 I'!, BADI

También podría gustarte