Trucos, tips.pdf

3

Click here to load reader

Transcript of Trucos, tips.pdf

  • 25/3/2015 todoABAPTrucos,tips

    http://www.todoabap.com.ar/tips.html 1/3

    En esta seccin vamos a dar algunos consejos y tips para laprogramacinenABAP.

    Reportes ALV Detectar erroresLos reportes ALV son muy prcticos porque incluyen variasfuncional idades que de hacerlos con el mtodo tradicional habra quecodif icarmanualmente.

    En SAP hay varios ejemplos de las funcional idades del ALV todos losejemplosempiezanconBCALV_TEST_*.

    Paraque losreportes funcionencorrectamentecontoda la funcional idadque prove la herramienta es necesario que el catlogo y la tabla desal ida estn correctamente cargados. Existe una forma para chequearesto ltimo para los ALV l lamados mediante la funcinREUSE_ALV_LIST* se debe ingresar el valor &SOS en la l nea decomandos.CuandosetratedeunobjetoALVounALV l lamadomedianteREUSE_ALV_GRID*, basta con posicionar el puntero en una zona vacadelALV (sin registrosde la tablade sal ida)yhacerdoble cl ickderechomientrassepresionalateclaSHIFT.

    Cuando ingresamosenelmododechequeodeconsistenciamediante losmtodos mencionados el sistema nos indica si hay algn error en lal lamada al ALV, y tambin podemos visual izar los principalesparmetrosquese leenvanalALV.

    Modificar programas con el bloqueo de editor activadoQu hacer cuando necesitamos modif icar un programa que tiene elbloqueo de editor activado? Por lo general, le pedimos a quien lo hayaactivado, que lo l ibere. El problema es que por lo general (casisiempre) esa persona ya no est en el proyecto o en el lugar dondeestamos.

    En ese caso, existe un truco para poder quitar el bloqueo. Desde laSE16, ingresamos a la tabla PROGDIR. En el campo NAME ponemos elnombre del programa que queremos desbloquear. Al traer los registrosque cumplen con nuestra seleccin (F8) aparecer un registro con elnombre de nuestro programa. Lo seleccionamos y presionamos el lapizpara modif icar el registro. Borramos la X que hay en el campo EDTX(queindicaqueestactivadoelbloqueoldeeditor)ygrabamos.

    ABAP Trucos, tips, ...

    CursoSAPR/3ConsiguetuCertificadoOficial!CursosPresencialesyaDistancia

    EmpleoChoferenUberSTuPropioJefeconTuCoche.TrabajaCuandoQuierasconUber.

    INICIO BASICOS EXTENSIONES BAPI's TRUCOS EJEMPLOS LINKS FORO

  • 25/3/2015 todoABAPTrucos,tips

    http://www.todoabap.com.ar/tips.html 2/3

    Listo!Ahorapodemosmodif icarelprogramanormalmente.

    DebugComo todos sabemos, para real izar un debug en SAP basta con escribir"/h" en la l nea de comandos y presionar enter . Pero a veces notenemos la l nea de comandos, as que no podemos empezar adebuggear.Enesoscasossolemosempezaradebuggearantesdelpuntoque nos interesa, pero con slo uti l izar el siguiente archivo es posibledebuggearjustoenelmomentopreciso:

    debug.txt

    Arrastrarelarchivoysoltar losobre ladynproadebuggear.

    Crear una transaccin para queries de mbito globalA partir de los queries (de la transaccin SQ01) podemos real izarreportes de manera rpida. Sin embargo, para transportarloscorrectamente a otros ambientes, debemos crear una transaccinparticular. No es conveniente crear una transaccin que l lame alprograma que genera automticamente SAP cuando se crea el queryporque el nombre del mismo cambia dependiendo del ambiente. Laforma correcta de transportar queries es creando una transaccin quel lame al programa START_REPORT. La transaccin debe ser del tipo"Transaccindeparmetros"yhayquecargar los siguientes camposdeladynproconestosvalores:

    D_SREPOVARIREPORT:NombredelGrupodeUsuariosdelQueryD_SREPOVARIEXTDREPORT:NombredelqueryD_SREPOVARIREPORTTYPE=AQ(deABAPQuery)

    Dependiendo del mbito funcional (Entorno > mbitos Funcionales) elnombredelgrupodeusuariosdeber teneruna letraGal f inaonol, esdecir, en la posicin 12. Por ejemplo, si el grupo de usuarios se l lamaZPRUEBA78901, habr que ingresar ZPRUEBA78901 para mbitoestndaroZPRUEBA78901Gparambitoglobal.

    Porltimo,hayquemarcarelti lde"Omitir imageninicial".

    Cargar una tabla interna dinmicamente con FieldSymbolsEnesteejemplouti l izamosFieldSymobsparacargar loscamposdeunatabla internademaneradinmica.Estoesmuyti l cuandotenemosquetratar una tabla cuya estructura es desconocida en tiempo deprogramacin.

    FIELDSYMBOLS:TYPEANY.DATA:l_preis(13),"LIKEeipapreis,l_cont(1)TYPEn,l_campo(22).

    LOOPATti_eipa.l_cont=l_cont+1.*Precio.

  • 25/3/2015 todoABAPTrucos,tips

    http://www.todoabap.com.ar/tips.html 3/3

    CLEARl_campo.WRITEti_eipapreisTOl_preisCURRENCYti_eipabwaer.CONCATENATE'P_PREIS'l_contINTOl_campo.ASSIGN(l_campo)TO.=l_preis.ENDLOOP.

    F4 dinmico para cualquier campoSi queremos crear una ayuda (F4) para cualquier campo, basta conuti l izarelsiguientecdigo:

    DATA:carridTYPEspflicarrid,hlpTYPEstring,strucTYPEdfiestabname,compTYPEdfiesfieldname.

    DESCRIBEFIELDcarridHELPIDhlp.

    SPLIThlpAT''INTOstruccomp.CALLFUNCTION'F4IF_FIELD_VALUE_REQUEST'EXPORTINGtabname=strucfieldname=compEXCEPTIONSfield_not_found=1no_help_for_field=2inconsistent_help=3no_values_found=4OTHERS=5.

    AnunciosGoogle ModulosSAP ABAP Tabla SAPReport

    Copyright2007todoABAP.XHTML1.0Strict|CSS2.1DiseodeStamatisKritikos,adaptadaporPabloGarciaBajolicenciaCreativeCommonsAttribution2.5License.

    Anuncieaqu|Contacto|MapadelSitio|EscribaparatodoABAP