Existen varias técnicas de inserción de código, a saber, ABAP SQL, vistas CDS y AMDP. Quizás se pregunte cuál es la mejor técnica.
Primero, aclaremos que ABAP SQL, vistas CDS y AMDP no son competidores. Todas estas técnicas están disponibles para que un desarrollador de ABAP las utilice según sea necesario, y todas estas técnicas pueden ayudar a lograr el cambio al paradigma de código a datos.
Todas estas técnicas son para la recuperación de datos de bases de datos. Surge una pregunta importante sobre cuándo utilizar una determinada técnica, en determinadas circunstancias. Analicemos varios escenarios diferentes que se adaptan mejor a cada técnica. Si la recuperación de datos es para un objeto específico y no se usará / reutilizará en otro lugar, recomendamos usar ABAP SQL.
Vistas de CDS
Los servicios de datos centrales (CDS) se utilizan en la próxima generación de definiciones de datos, capaces de definir tablas / vistas de bases de datos semánticamente ricas (entidades CDS) y proporcionar acceso para aplicaciones centradas en bases de datos. Estas vistas son técnicamente extensiones de SQL donde se pueden usar expresiones en campos, se pueden definir metadatos específicos de dominio y se pueden crear asociaciones entre tablas relacionadas. Las entidades CDS recién definidas y sus metadatos son extensibles y se integran de manera óptima en el Diccionario ABAP y el lenguaje ABAP.
Por lo tanto, cuando sea necesario obtener datos relacionados con una entidad de tablas relacionadas con relaciones de clave externa, una mejor práctica es crear una vista de CDS. Esta vista de CDS podría involucrar simplemente uniones en las tablas relacionadas. Las vistas de CDS implican la menor cantidad de codificación y se pueden reutilizar en múltiples objetos a través de desarrollos. En otras palabras, una vista de CDS es un artefacto de base de datos que se puede consumir entre objetos / aplicaciones.
Procedimientos de base de datos administrados por ABAP (AMDP)
Un AMDP es un fragmento de código ejecutado en la capa de SAP HANA . Los datos que recupera incluyen una parte de la lógica empresarial que se realizará con los datos recuperados. Por lo general, la lógica empresarial se realizará en grandes cantidades de datos.
Como se muestra en la figura siguiente, cuando se necesitan varios conjuntos de resultados y son parte de la funcionalidad, las recuperaciones en la tabla de la base de datos pueden estar relacionadas o no. En otras palabras, las sentencias SQL independientes no se utilizan a menudo en otros objetos.

Se pueden aprovechar las potentes funciones de SQL nativo, como la conversión de moneda y las funciones CE.
Y las vistas HANA como las calculadas? cuando se usan? que diferencia hay entre las vistas HANA calculadas y CDS y AMDP?