Mostrando las entradas con la etiqueta ABAP. Mostrar todas las entradas
// // 130 comentarios

Manual SAP ABAP en español

SAP ABAP gratis en español - Consultoria-SAP

¿Técnico? ¿Desarrollador? ¿Programador? Entonces esto te interesará muchísimo... ya que para despedir el año 2015, re-publicamos el aporte de Nelson, desde Venezuela que ha bridado a través de nuestra comunidad de ayuda SAP, nada más y nada menos que los manuales oficiales del lenguaje ABAP (lenguaje de programación para ser desarrollador SAP) totalmente en español, y actualizados al año 2014 (versión 10). ¿Pensaste que no había forma de encontrar estos manuales?

¿No sabes qué es SAP? Ni qué es, ni para qué sirve? Pues no te preocupes, aquí nadie ha nacido sabiendo, y todos han leído, te recomiendo leer este artículo: qué es, y para qué sirve SAP.
Leer más ...
// // 62 comentarios

Practicar SAP ABAP con MiniSAP

MiniSAP es un programa de SAP, una versión reducida sólo pensada para desarrolladores. No tendrá nada para consultores ni usuarios funcionales. Existe sólo para perfiles técnicos, así que no soliciten la descarga si no saben de lo que hablamos. (Si estás perdido, y quieres aprender sobre SAP, puedes publicar tu consulta en nuestro foro de ayuda en español, estamos aprendiendo entre todos).

Uno de nuestros amigos en el foro de ayuda SAP, nos ha compartido la descarga del MiniSAP para que cualquier interesado en aprender el lenguaje de programación de SAP pueda poner manos a la obra y ponerse a codificar en el ambiente.

Practicar SAP ABAP con MiniSAP


Detalles de la descarga

Nombre del archivo: ABAP_7_03_SP04_64_bit_Trial_3_9_2_GB
Tamaño: 3,64 GB
Idioma: Inglés
Formato del archivo a descargar: RAR

Leer más ...
// // 39 comentarios

Manual SAP ABAP TAW10 y TAW12 (en ingles)

Actualización importante (Enero 2017):
La descarga de éstos manuales en ingles ya no se encuentra disponible.
Si aún deseas aprender ABAP... ¿por qué no descargar los manuales ABAP en español que siguen disponibles?



Manual SAP ABAP TAW10 TAW12

Encontramos manuales oficiales SAP ABAP en ingles, los TAW10 y TAW12, y en el mismo archivo comprimido podrán encontrar una carpeta que contiene las preguntas del examen de certificación que corresponden al TAW10 parte 1, y parte 2, y al TAW12 en tres partes. Por supuesto está todo en ingles... no hemos podido encontrar ningún manual técnico en español. Si bien recuerdan, los manuales SAP Netweaver también estaban en inglés.

Leer más ...
// //

TNAPR: tabla SAP para formularios asociados

Obtener el formulario asociado a una transacción o programa

Por ejemplo, si sabemos que la transacción F_76 usa el programa RFWEKO02, ¿cómo podemos obtener el form que se usa en dicho programa?
Leer más ...
// // 6 comentarios

Conocimientos de ABAP que todo Funcional SAP debería tener

10 conocimientos de ABAP que todo Funcional SAP debería tener:
  1. Tablas de SAP
  2. LSMW / BDC
  3. Especificaciones funcionales
  4. Interfaces & EDI
  5. QUERY
  6. Debugging
  7. Smartforms
  8. Notas SAP
  9. Variantes
  10. Crear transacciones Zeta
Leer más ...
// // 2 comentarios

Control de Calidad ABAP

Control de Calidad para los programas ABAP

El "Code Inspector" (suena raro, pero sería un "inspector de código") es una herramienta para el control de codificación -estático- ABAP y objetos DDIC (en general, todos los objetos del Object Repository) en los aspectos de la corrección funcional, rendimiento, seguridad, fiabilidad, y la información estadística.

Ayuda a los desarrolladores a que se adhieran a los estándares de programación y las pautas de la creación de mensajes con el óptimo de codificación. El "Code Inspector" ofrece varias posibilidades para definir conjuntos de objetos y la combinación de múltiples verificaciones solo en las llamadas "variantes de verificación". Estas funciones, y el marco de la herramienta de procesamiento en paralelo, hacen que el "Code Inspector" sea un asistente de desarrollo flexible y eficaz.

Code Inspector

El "Code Inspector" se puede utilizar en varios escenarios con diferentes tipos de controles, proporcionando ideas sobre la calidad del código desde diversos ángulos.
SAP, en la información que brinda la transacción SCI dice:
El "Code Inspector" verifica el rendimiento, la seguridad, la posibilidad de espera, la propensión a cometer errores y la información estadística de objetos individuales o conjuntos de objetos (programas, grupos de funciones, clases, interfaces, objetos DDIC).

El "Code Inspector" puede llamarse directamente desde el editor ABAP (SE38), el Function Builder (SE37) y el generador de clases (SE24) para los objetos individuales correspondientes (Objeto->Verificar->Code Inspector). A continuación, la verificación se realiza con una variante de verificación DEFAULT.
Leer más ...
// //

Debuguear SMARTFORMS

Cuando tenemos un smartform en productivo y queremos saber qué corre por detrás y cuando, por lo general no tendremos autorización para andar poniendo breaks en ese entorno. Entonces, podemos investigar todo de la siguiente manera:

  1. Entramos a la transacción SMARTFORMS, ponemos el nombre del formulario, y le damos visualizar.
  2. Una vez dentro, presionamos sobre Entorno -- Nombre del módulo de funciones.
  3. Aparecerá una ventanita con el nombre del módulo de la función que tiene el formulario, lo copiamos.
  4. Abrimos un modo nuevo, e ingresamos a la transacción SE37
  5. Ingresamos el nombre de la función que copiamos.
  6. Buscamos las lineas del programa que tenemos relacionadas con el smartform, y veremos NODE
  7. Nos situamos sobre la linea que encontramos, y presionamos el ícono de stop.
  8. Despues ejecutamos.

De ahí, cuando lancemos la transacción correspondiente al programa, el break debería saltar correctamente en productivo, sin necesidad de haber pasado ninguna orden de transporte.

Este aporte increíble pertenece al usuario "E_Hinojosa" del foro oficial de SAP, quien compartió su conocimiento aquí.

Saludos,
SapBlogger desde Consultoría-SAP

Leer más ...
// //

Ampliaciones SAP

Ampliaciones SAP

Qué son los Enhancement de SAP ?
Para explicarlo en un idioma funcional, en español, que todos podamos entender más o menos qué es esto de las ampliaciones o "enhancement" de SAP, bastaría con decir que son métodos de personalización al sistema SAP. Son, como la palabra lo indica, ampliaciones al sistema. 

El sistema SAP, sea el módulo que sea, tiene limitaciones y no siempre tendremos la funcionalidad que el cliente necesita. Cuando el cliente requiere cosas que, por estandar no podemos entregar (o alcanzar), tenemos que recurrir a desarrollos no-estandares (los que se denominan desarrollos zetas).  

Es aquí donde intervienen éstas ampliaciones... si bien no forman parte del estándar con el que viene el módulo, son ampliaciones desarrolladas (y avaladas) por SAP para completar determinadas funcionalidades de acuerdo a ciertos procesos lógicos que los clientes pueden llegar a requerir. 

Lo importante es entender que a traves de éstas ampliaciones, estamos introduciendo código a un estándar... por lo tanto, no se debe considerar un desarrollo propio (zeta), sino que el sistema sigue siendo estándar, con ampliación.
Leer más ...
// //

ABAP External Debugging

Nota de Actualización (2017)
El artículo había sido publicado por SAP.com y ahora ha sido eliminado, por lo tanto no se veían las capturas que incluíamos. Hemos eliminado las capturas porque daban error. Mantenemos la info compartida a fines educativos. Disculpen las molestias.



ABAP External Debugging - New User Breakpoint

1. Motivation

The user breakpoint in ABAP helps you to debug the ABAP components of applications, that use RFC- and HTTP- based communications. These could be Web Dynpro applications, BSP's, ABAP-based web services, RFC-enabled function modules and so on. By setting a user breakpoint you can interrupt the processing of external HTTP or RFC requests in your ABAP backend system and debug them.
You can set a user breakpoint in the Object Navigator (transaction SE80) or the ABAP Editor (transaction SE38). Before you set a user breakpoint you may want to specify the user to whom the breakpoint applies. By default your user is set. You can enter the user in the User field of the debugging settings dialog (Utilities->Settings->Debugging). Before you start debugging, make sure that you use the New ABAP Debugger (select the checkbox New Debugger ). Now HTTP or RFC requests can be sent to your ABAP backend system - you are ready to capture them for debugging.
Leer más ...
// //

Ampliar ayuda para MatchCode

En muchas ocasiones, las ayudas de busqueda estandar de Sap (Matchcode), a las que accedemos como ayuda para completar los valores de los campos pulsando la tecla de función F4, son insuficientes para nuestras necesidades o no tienen en cuenta cosas tan obvias como no incluir registros que tienen peticiones de borrado.
Para estas ocasiones, tenemos la posibilidad de definir nuestras propias ayudas de búsqueda (Z) e incluirlas como una ayuda adicional en las ayudas estandar. Las ayudas estandar suelen ser ayudas complejas que incluyen varias ayudas simples, que podemos ir seleccionando según nuestras necesidades (en la imagen, podeís ver las ayudas de búsqueda disponibles cuando estamos dando de alta datos maestros de cliente a través de la transacción XD01).
Ayuda Busqueda Compleja SAP
Como ejemplos de ayudas de búsqueda que habitualmente se van a tener que definir en el sistema, tenemos:
  • Administración de personal: búsqueda por el segundo apellido, ya que es muy frecuente empleados con los mismos apellidos, y este tipo de búsqueda no esta incluido en el estandar.
  • Datos maestros: ayudas de búsqueda que excluyan registros con petición de borrado. Esto puede aplicar a proveedores, clientes, materiales, etc.
  • Busqueda por otros criterios: en muchas ocasiones nos puede interesar buscar por otros criterios que no son estandar, campos de cliente u otros campos estandar que andan perdidos en los datos maestros pero por los que nos interesa realizar búsquedas.
  • Ayudas personalizadas: también podremos incluir ayudas que ataquen a tablas Z o a vistas de datos estandar y tablas de cliente. Por ejemplo, en un sistema con control de imputaciones por cuentas contables, incluir una ayuda de búsqueda que nos indique, por cuenta contable, donde podemos imputar (tirando de tablas de cliente).
Leer más ...
// //

Workflow Diagnostics and SWUD

SWUD is the diagnosis transaction. This will guide you through the fault finding process. The check-list order is determined dynamically according to:

  • a) your workflow definition and
  • b) the statistics of the most common mistakes made when creating/activating a workflow.

The testbed, provides a launchpad for tests to ensure that your workflow definition is rugged enough for the production environment. It also allows you to access the tasks, subflows, object types, delegated object types and agent assignments directly, without going through the workflow builder first. (Foreground tasks with no agent assignment are marked in red from release 4.5 onwards). This list is also useful as a catalogue of the components of workflow for documentation or transport purposes.

Click on the "info" icon to read a description of the test being performed.

Any workflow accessed through this transaction is added to the last-used list. The workflow can be recalled at a later date by clicking on the reuse icon in the left-hand column of the last-used list.

The workflow can be recalled at a later date by clicking on the reuse icon in the left-hand column of the last-used list.

The next section describes the transactions called from SWUD. Experts may find it easier calling them directly.

Secondary Diagnosis Transactions -

Transaction SWU3: Verify Workflow Customizing.

In this transaction the most important basic customizing for workflow is checked. If you find any errors here, read the documentation for the error. If your system is BBP or CRM, see note 60801.

- Transaction SWEL: Event Log.

Note: Before you can use the event log, you must make sure it is activated. You check this in transaction SWELS. If you are not sure whether or not it is active, just deactivate and activate the event log once.

WARNING: An activated event log can lead to bad performance, and must not be activated constantly in a productive system.

- Transaction SWE2: Event type linkage

A workflow is usually started or triggered by an EVENT so it is important to make sure that an event occurrs. In the event log you can see the event and its business object type. If an event has been successfully created, it is important to check if there is a receiver type for this event. The receiver type is the workflow that has been triggered by the event. The coupling between an event and the receiver can be maintained in trans. SWE2.

- Transaction SWU0: Event simulation

If you have found NO receiver type in the event log, then you should check transaction SWU0, Simulate Events. In this transaction you can simulate an event. The system will check all workflows that could be triggered by the event and tells you whether or not they were triggered. Information is displayed for the workflows that were not triggered successfully.

- Transaction SWI1: Work item list

If a workflow was been correctly triggered and started at least one WORK ITEM should be created. You can view the work items in transaction SWI1, Work Item Selection. The easiest way for the selection is just to go into this transaction after you have checked the event log. By default all the work items of the last hour will be displayed. You will find in this transaction the work item number, the status of the work item and the workflow task that has created the work item. Furthermore, (in the technical workitem display) you can have a look at the container by selecting a work item and using the menu GOTO -> CONTAINER. To display the work item details double click on the item. From the details you can see the selected/ possible/excluded agents for this work item by using the menu GOTO -> AGENT -> SELECTED/POSSIBLE/EXCLUDED AGENTS.

When the status of the work item shows an error you should have a look at the workflow log using the menu EDIT -> DISPLAY WORKFLOW LOG. Here you can see errors that have occurred.

- Transaction PFTC/SWDD: Task editor/Workflow Builder

If you want to have a look at the definition of the workflow you can use transaction PFTC, Maintain Tasks. The button WORKFLOW BUILDER brings you to a graphical display of the workflow structure which is fairly easy to read and understand. On the tabstrip TRIGGERING EVENTS you can check if the triggering is activated or not and deactivate/activate it by clicking on the icon in front of the event.

- Transaction OOCU: Customizing overview

To check if the relevant tasks are activated and users are assigned, you can use transaction OOCU; Task Customizing Overview. In this transaction all the tasks are sorted by the application components and are thus easy to find. Note that if you have almost no entries in this transaction, you should execute the report RS_APPL_REFRESH in transaction SE38.

- Transaction SWUE/SWUS: Event/workflow trigger

If you have activated a user exit, e.g. for the role determination, and you have problems with that, you most probably have to debug the workflow. This can be done using the transaction SWUS or SWUE.

With SWUE you can create an event. After you entered object type and event you have to fill the event parameters and the key for a specific object. If you want to debug the workflow you have to set the flag TRIGGER RECIEVER FM SYNCHR. If you have set a break point in your user exit or in any other function module of the workflow the system will stop at this break point and you can start analyzing.

The second possibility to debug a workflow is to use the transaction SWUS, the workflow test environment. In this transaction you have to enter the workflow task and fill the input data. Please use the F4-help to fill the input data. Here again you have to set a break point in your user exit or in any other function module of the workflow and then the system will stop there.

Summary of the manual alternative to SWUD

Now that you have a better understanding of how to use these transactions, you can follow the steps below to quickly analyze your workflow problems:

1. Go to transaction SWU3 and check if everything is okay. If it is not, please fix it before you proceed.

2. Go to transaction SWEL and check if an event is created. If not, check in transaction SWELS if the event log is activated.

- If you see an event but no workflow is triggered, proceed with step 3.

- If you see an event and a workflow is triggered, but the status of the triggering shows an error, proceed with step 3.

- If you see an event and a workflow is triggered and there is no error, proceed with step 4.

- If the event log is activated and you do not get any event, open up a message using the component of the application to which the business object type belongs. From release 20C for creation of shopping carts the architecture of workflows changed and no events are visible!

3. Go to transaction SWU0 and simulate the event. Is the workflow that you expect to be triggered visible in the simulation?

- If it is not, then check the workflow definition in PFTC. The event must be defined as triggering event.

- If it is, but the event linkage is not activated, go to transaction OOCU and activated it.

- If it is visible, but it is not activated, go to transaction PFTC and activate it.

4. Go to transaction SWI1. Search for the work item that belongs to the workflow. Check the status of the work item. 

 

Reblogged from SDN.sap.com

Leer más ...
// //

Changing time zones in SAP ECC 6.0

Our security team wants to implement the GRC package into our SAP system and the pre-requisite for this is to change the system time to UTC. We are running SAP ECC 6.0, and our current system time is based on EDT. We would like tounderstand the negative impacts this implementation may have - other than the obvious need to reschedule batch jobs. Forexample, what will happen to the date and time stamps of old documents?

Time stamps for documents can be stored in two different formats:
  • Using standard ABAP date and time fields (YYYYMMDD and HHMMSS). Here the time stamp corresponds to the system time, i.e. the time on the database server as returned by the ABAP system variable SY-DATUM and SY-UZEIT. Using the system time is necessary to avoid situations where, for instance, a financial document created by a user in Berlin (CET) would be modified a few minutes later by a user in New York (EDT). If the user’s time zone were stored in the document data, then it would seem as if the document had been changed before it was created. However, many applications will take the time zone into account when processing these documents. How this is done depends on the time zone-related information that is available for the document. The details are explained in the SAP online help (help.sap.com) in the guide “Time Zones” (CA-GTF-TIM). This same guide also describes various application-specific scenarios.
  • Another format that is frequently used is the ABAP time stamp format (handled in ABAP with the “GET TIME STAMP” and “CONVERT TIME STAMP” statements). A time stamp field is always in UTC and the application will automatically convert it to/from the user’s time zone.



Reblogged from SearchSap.
Leer más ...
// // 1 comentario

Top 10 ABAP Dumps...

ABAP short dumps are something which trouble any SAP user (sometimes help the user to understand the system needs better). We normally do a search for SAP notes or contact SAP to solve these dumps. But hardly takes any chance to understand the meaning of the dumps. Here I am listing some 'famous' ABAP dumps and trying to explain what are they. Please note that the solutions provided here may different from case to case. These should be used just as a 'first aid'.

1) STORAGE_PARAMETERS_WRONG_SET
The problems with the dump STORAGE_PARAMETERS_WRONG_SET are mainly related to the general restrictions of the 32bit OS. You can address up to 4GB of virtual memory. Each process in OS is running in its own context and can address max. 4GB. The parameters which are related to ‘heap memory' ie abap/heap_area_dia, abap/heap_area_nondia, abap/heap_area_total are should be set to 2 GB. Common approaches which we can take for this dump are:
a) Please use in the 'boot.ini' file the switch '/3GB' and restart your whole computer as described in the below SAP Notes:
SAP Note 552209 - Maximum memory utilization for processes on NT/Win 2000
SAP Note 313347 - Windows NT, 2000, 2003: Editions and memory usage.
b) Another way to avoid this problem is to try to add more criteria to your report/program/transaction so that there will be fewer entries that need to be retrieved from your database or buffers. This way, the system would not need to use up much resource to complete the transaction. The query may have been quite big already and the load cannot be accommodated. So please do add more criteria or options so that there will less data to fetch.
c) To decrease the value of the parameters: rdisp/ROLL_SHM, rdisp/PG_SHM
d) Migrate to 64-bit OS (as per SAP Note 931024 and SAP Note 996600)

Leer más ...
// //

How to Send a System Message

Imagine that you’re working configuring a certain SAP module, touching several tables and configuration spots. Sometimes it might happen that someone else is maintaining the same table that you need access. This standard Function Module could be useful in these cases, since you might not know an alternative way to contact the user locking the table or other SAP object. Since the system will display who is locking the table, you will know for whom to send the message.
Here’s how it goes.

Trying to access the table

When trying to maintain a certain table, the user will receive the following warning:

Sending a system message using a standard SAP function module

Once you’ve identified the user, access SE37 – assuming you have permission! In SE37 call SAP standard function module TH_POPUP.

<!--more>
Fill in the following input parameters:
- CLIENT: the system client on which you’re working on. If you don’t know this, take a look at the lower right status bar;
- USER: the user for which you want the message to be delivered;
- MESSAGE: the text message you want to deliver to the user;
- MESSAGE_LEN: allows you to define a message length. Leave it empty;
- CUT_BLANKS: allows you to specify if you want to trim existing spaces. Leave it empty.
To submit the message just hit “Execute (F8)”

What the user receives

When you click on “Execute (F8)”, the destination user receives the following message as a pop-up:

This is just a simple system tool that can help you in a day to day basis, working with SAP.


Reblogged from Saplab.org
Leer más ...
// //

Useful ABAP Functions

To call the function in your program, you simply click on the Pattern button on your abap editor menu and type in the function name on the CALL FUNCTION text box.
function call abap

Function Modules for creating programs (Useful when you are generating programs)

RS_PROGRAM_CHECK_NAME : To check program names if you are generating them.
RS_CORR_INSERT : To insert the correction request in the repository.
REPS_OBJECT_ACTIVATE : To activate repository objects, for example – to activate a newly generated program.
RS_DELETE_PROGRAM : To delete the program.
RS_ACCESS_PERMISSION : To lock or unlock a program.

Function Modules related to Date and Time Calculations

CALCULATE_DATE : Calculates the future date based on the input .
DATE_TO_DAY : Returns the Day for the entered date.
DATE_COMPUTE_DAY : Returns weekday for a date
DATE_GET_WEEK : Returns week for a date

Function Modules related to (ALV) ADVANCED LIST VIEWER

REUSE_ALV_LIST_DISPLAY : ABAP List viewer (LIST DISPLAY)
REUSE_ALV_GRID_DISPLAY : ALV GridControl full screen
REUSE_ALV_FIELDCATALOG_MERGE : Create field catalog from dictionary structure or internal table

Function Module related to Change Tracking

CHANGEDOCUMENT_READ_HEADERS : Read and format change documents
DAY_ATTRIBUTES_GET : Returns attributes for a range of dates specified
MONTHS_BETWEEN_TWO_DATES : To get the number of months between the two dates.
END_OF_MONTH_DETERMINE_2 : Determines the End of a Month.
HR_HK_DIFF_BT_2_DATES : Find the difference between two dates in years, months and days.
FIMA_DAYS_AND_MONTHS_AND_YEARS : Find the difference between two dates in years, months and days. (Better use this one to find the difference between dates)
MONTH_NAMES_GET : Get the names of the month
WEEK_GET_FIRST_DAY : Get the first day of the week
HRGPBS_HESA_DATE_FORMAT : Format the date in dd/mm/yyyy format
SD_CALC_DURATION_FROM_DATETIME : Find the difference between two date/time and report the difference in hours
L_MC_TIME_DIFFERENCE : Find the time difference between two date/time
HR_99S_INTERVAL_BETWEEN_DATES : Difference between two dates in days, weeks, months
LAST_DAY_OF_MONTHS : Returns the last day of the month
DATE_CHECK_PLAUSIBILITY :Check for the invalid date.
DATE_2D_TO_4D_CONVERSION :Year entry: 2-character to 4-character.
DAY_IN_WEEK :Input date and will give the name of the day 1-monday,2-Tuesday….

Function Modules Related To Formatting

CLOI_PUT_SIGN_IN_FRONT : Displays the negative sign in front of the numeral
RKD_WORD_WRAP : Wrap text into several lines
CONVERSION_EXIT_ALPHA_INPUT : Pad zeros to the number at the left
CONVERSION_EXIT_ALPHA_OUTPUT : Eliminate zeros to the number at the left

Function Modules Related To Dialog Prompts

POPUP_TO_CONFIRM : Displays a popup dialog with a user defined message for confirmation
POPUP_TO_GET_VALUE : Displays a popup dialog requesting a value for a particular table-fieldname
SAPGUI_PROGRESS_INDICATOR : Displays a progress bar with text to denote the percentage of completion and status
FILENAME_GET : Displays a popup dialog to get the presentation server filename
F4_DATE : Displays a popup dialog to choose date
GUI_UPLOAD : Upload a file from the presentation server
POPUP_TO_SELECT_MONTH : Display a pop-up to select a month

Function modules related to RFC communication

RFC_CONNECTION_CLOSE : Close a RFC connection
RFC_GET_SYSTEM_INFO : Give system’s information of a remote system

Function modules related to reading/writing files

FILE_READ_AND_CONVERT_SAP_DATA: Uploads the file from either presentation or application server into an internal table
SUBST_GET_FILE_LIST: To get the list of files from Application Server.
ALSM_EXCEL_TO_INTERNAL_TABLE : Legacy Data Transfer w/ Excel

Function Modules related to sending emails

SO_NEW_DOCUMENT_ATT_SEND_API1 – Sends emails with texts and attachments
SO_NEW_DOCUMENT_SEND_API1 – Sends emails with texts.

Function Modules related to F4 Help

F4IF_INT_TABLE_VALUE_REQUEST – F4 help also returning the value to be displayed in internal table


Reblogged from Freesaptutorial.com
Leer más ...
// //

FAQ: ABAP List Viewer (ALV)

[1] What is the ABAP List Viewer (ALV)?
The ABAP List Viewer is a generic tool that can be used to output data in tabular form and is increasingly used by the applications particularly as of Release 4.6C. By using the ALV, general functions are provided (for example, exporting to Excel) and it is possible to adapt the output to customized requirements (for example, sorting, filters, totals calculation).
[2] What different types of ALV are there?
ALV list: this uses the function module >> 'REUSE_ALV_LIST_DISPLAY'
Hierarchical sequential list: function module >> 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
Fullscreen grid: this uses the function module >> 'REUSE_ALV_GRID_DISPLAY'
ALV Grid Control: Methods of the class >> CL_GUI_ALV_GRID
ALV Tree: Methods of the class >> CL_GUI_ALV_TREE
In Basis Release 6.40, an object-oriented ALV wrapper is provided.  This can be used for three different types of tables.
- for simple, two-dimensional tables using the class >> CL_SALV_TABLE
- for hierarchical sequential tables (class CL_SALV_HIERSEQ_TABLE)
- for tree structures (class CL_SALV_TREE)
[3] How can the ALV be used by customers?
The methods of the class CL_GUI_ALV_GRID, which are required for an ALV grid that cannot be edited, are released for use in customer-specific programs (see also Note 695910).  The documentation is accessed in the class documentation.
The object-oriented ALV wrapper, which is provided in Basis Release 6.40, is also released for customers.  For more information, see the corresponding class documentation, as well as the sample report SALV*.
The methods of the classes CL_GUI_ALV_TREE CL_GUI_ALV_TREE_SIMPLE, CL_ALV_TABLE_CREATE and the ALV function modules are not released for use by the customer.
The class CL_ALV_TABLE_CREATE is not released.
Leer más ...
// //

ABAP Data Dictionary Overview

ABAP Dictionary centrally describes and manages all the data definitions used in the system and the database. It is completely integrated in the ABAP Development Workbench. ABAP Dictionary supports the definition of user-defined types i.e. data elements, structures and table types. These types are used in the ABAP processors and ABAP programs. It also defines the structure of database objects i.e. tables, views and indexes.

In this document, you will get an overview of ABAP dictionary and predefined data elements.



Descarga

  1. Unirte a la lista #1 de SAP +1, sumate ahora!
  2. Dale "me gusta" a nuestra página de Consultoria-SAP en Facebook.

    Y no te olvides de seguirnos en las redes sociales para no perderte ninguna novedad:
  3. Copia la URL de éste artículo, e ingresa al foro de Ayuda SAP en español, ve a la parte de Manuales-SAP, y abre un tema nuevo explicando por qué te interesa aprender más sobre SAP, pega ahí la URL que has copiado, para que sepamos que estás cumpliendo estos tres puntos.

    Recuerda que en nuestra comunidad de Ayuda SAP no es solo "pedir" y nada más, lee las normas de solicitudes que tendrás que cumplir para descargar gratis.

    No te pierdas los beneficios de ser VIP en Consultoria-SAP
Leer más ...
// //

Secure Programming Guidelines

You know the Secure Programming Guidelines but you want to do more? Well, here are my top priority security recommendations for developing secure ABAP applications:

New database tables

  1. Assign table authorization group Usually you create 3 table authorization groups per application:
    a) for customizing tables (C)
    b) for master data and transaction data or other application data (A)
    c) for system data (S)

    You can use the report RDDPRCHK (or RDDTDDAT_BCE) to analyze the settings. Use transaction SM30 for view V_BRG_54 to maintain authorization groups respective view V_DDAT_54 to maintain authorization group assignments. Maintain authorization groups http://help.sap.com/saphelp_nw70/helpdata/en/a7/5134d2407a11d1893b0000e8323c4f/frameset.htm Maintain authorization group assignments http://help.sap.com/saphelp_nw70/helpdata/en/a7/5134df407a11d1893b0000e8323c4f/frameset.htm
  2. Set the maintenance flag, which controls SE16 am SM30, correctly Data Browser/Table View Maintenance http://help.sap.com/saphelp_nw70/helpdata/en/a6/03883acb00d768e10000000a114084/content.htm
  3. Activate table logging for customizing table or create a change document object for master data. You can use the report RDDPRCHK (or RDDTDDAT_BCE) to analyze the settings. Check the settings of profile parameter rec/client and the tp parameter RECCLIENT, too. Activate/Deactivate Table Change Logging  http://help.sap.com/saphelp_nw70/helpdata/en/7e/c81ebb52c511d182c50000e829fbfe/frameset.htm  Note 1916 Logging table changes in R/3  https://service.sap.com/sap/support/notes/1916  Note 84052 R3trans: Table logging https://service.sap.com/sap/support/notes/84052  
  4. Create specialized SM30 maintenance views instead of offering maintenance using SE16 and add additional authorization checks if required. Create a Maintenance Dialog http://help.sap.com/saphelp_nw70/helpdata/en/a1/e4521aa2f511d1a5630000e82deaaa/frameset.htm Event 25: At the Start of the Maintenance Dialog http://help.sap.com/saphelp_nw70/helpdata/en/c2/703037301f327ae10000009b38f839/frameset.htm 
Leer más ...
// //

Reference to ABAP Basics

The following ebook is for the ABAP beginners giving an overview of basic topics in ABAP.

This reference guide focuses on following topics:
  • ENTERPRISE RESOURCE PLANNING (ERP)
  • SAP ADVANTAGES
  • Role of ABAPer
  • R/3 ARCHITECTURE COMPONENTS
  • WHAT IS CLIENT IN SAP
  • Developemt Obects -  REPOSITORY OBJECTS and  DATA DICTIONARY OBJECTS
  • ABAP GUI
  • DATA DICTIONARY
  • INTERNAL TABLES
  • SUBROUTINES
  • Reports
  • MODULE POOL PROGRAMMING
  • Menu Painter
  • BATCH DATA COMMUNICATION
  • LSMW ( Legacy System Migration Workbench)
  • SAPSCRIPTS
  • SMARTFORMS

***

Nota de actualización

Este artículo se mantiene publicado a fines informativos, si usted necesita más ayuda sobre el mismo por favor use nuestro foro de ayuda.

Disculpe las molestias.

Leer más ...
// //

FAQ: Data Browser (SE16)

[1] Why does the results list of the SE16 transaction display the content of some fields differently from the detailed view?
[2] Why can I not change a table in the SE16 transaction although the table was selected as changeable in the SE11 transaction under Attributes?
[3] Why can the smallest value in the results list differ with a different value for the 'Maximum number of hits'?
[4] Which authorizations does a user require to display certain values in the SE16 transaction?
[5] How can I search for special characters?
[6] Why are texts from text tables not displayed?
[7] Why can I only create user-specific variants in the ALV list?

[1] Why does the results list of the SE16 transaction display the content of some fields differently from the detailed view?

 Examples:
Table Field Hit list display Detail view display
BSIS HKONT 0000191100 191100
MARA MEINS ST PC
T002 SPRAS b IS

Answer:Conversion exits are defined for some domains of the table fields.These are processed with each screen input or output.The default hit list is not a screen, therefore, the conversion exit is not processed.You can, however, include the exit in the processing using the 'Settings'->'List parameters' menu option.

[2] Why can I not change a table in the SE16 transaction although the table was selected as changeable in the SE11 transaction under Attributes?
Answer:
The changeability of table entries still depends on the following factors:
    - Role and changeability of the client;
    - System changeability;
    - Delivery class of the table;
    - If a maintenance view for the table exists:
    - Authorizations.
Refer to note 109083 for more information.
Leer más ...