🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Las vistas de tablas bases de datos

ABAP Las vistas de tablas bases de datos

ABAP Las vistas de tablas bases de datos

Reporte usando una Vista que es un JOIN de 4 tablas

Hola Compañeros:

Os dejo aquí el código fuente de un informe basado en una Vista personalizada. Primero pondré los datos de la vista y luego el programa.

  • Vista: ZGZ57BORDERS
  • TABLAS Y CONDICIONES DE CONEXION
Tabla Tabla Campo Tabla Campo
KNA1 KNA1 MANDT = T005T MANDT
T005T KNA1 MANDT = VBAK MANDT
VBAK KNA1 MANDT = VBAP MANDT
VBAP KNA1 KUNNR = VBAK KUNNR
VBAK VBELN = VBAP VBELN
KNA1 LAND1 = T005T LAND1
  • CAMPOS
Cpo.Vista Tabla Campo
MANDT KNA1 MANDT
KUNNR KNA1 KUNNR
VBELN VBAK VBELN
POSNR VBAP POSNR
SPRAS T005T SPRAS
LAND1 T005T LAND1
NAME1 KNA1 NAME1
ORT01 KNA1 ORT01
PSTLZ KNA1 PSTLZ
LANDX T005T LANDX
AUDAT VBAK AUDAT
BNAME VBAK BNAME
NETWR VBAK NETWR
MATNR VBAP MATNR
ARKTX VBAP ARKTX
KBMENG VBAP KBMENG
NETPR VBAP NETPR
WAVWR VBAP WAVWR
NETWRLIN VBAP NETWR
  • -> Guardar -> Activar

  • Tipo de Datos: ZGX57BRECORDERS Registro / Workare de ZGX57ORDERS
  • (x) Tipo de Linea [ZGX57ORDERS]
  • -> Guardar -> Activar
Y finalmente el código fuente:
  1. *&---------------------------------------------------------------------*
  2. *& Report ZGZ57B_VIEW_REPORT
  3. *&
  4. *&---------------------------------------------------------------------*
  5. *&
  6. *&
  7. *&---------------------------------------------------------------------*
  8. REPORT zgz57b_view_report.
  9. *---------------------------------------------------------------------*
  10. * Tablas de la Base de Datos SAP
  11. *---------------------------------------------------------------------*
  12. TABLES:
  13. zgz57borders. "Vista con el Join de las tablas
  14. *---------------------------------------------------------------------*
  15. * Tipos para las Tablas de los Informes
  16. *---------------------------------------------------------------------*
  17. TYPES:
  18. ty_detalle LIKE zgz57borders.
  19. *---------------------------------------------------------------------*
  20. * Tablas Internas y Registros (Workareas)
  21. *---------------------------------------------------------------------*
  22. DATA:
  23. ti_detalle TYPE STANDARD TABLE OF ty_detalle,
  24. wa_detalle LIKE LINE OF ti_detalle,
  25. wa_detalle_aux LIKE wa_detalle, " Auxiliar para corte Detalle
  26. so_ty_city(30) TYPE c,
  27. gv_t_ini TYPE i,
  28. gv_t_fin TYPE i,
  29. gv_records TYPE i,
  30. gv_mess(60) TYPE c,
  31. gv_time(10) TYPE c,
  32. gv_items(10) TYPE c,
  33. v_selected LIKE sy-tabix.
  34. *---------------------------------------------------------------------*
  35. * Variables de Acumulados de Corte
  36. *---------------------------------------------------------------------*
  37. DATA:
  38. gv_lineas_fra TYPE i, "Lineas en Pedido
  39. gv_bruto_fra TYPE p DECIMALS 2, "Bruto Pedido (cant x precio)
  40. gv_fras_cliente TYPE i, "Pedidos por Cliente
  41. gv_total_cliente TYPE p DECIMALS 2, "Importe Pedidos Cliente
  42. gv_fras_city TYPE i, "Pedidos por Ciudad
  43. gv_cli_city TYPE i, "Clientes por Ciudad
  44. gv_total_city TYPE p DECIMALS 2, "Importe Pedidos Ciudad
  45. gv_fras_pais TYPE i, "Pedidos por Pais
  46. gv_cli_pais TYPE i, "Clientes por Pais
  47. gv_total_pais TYPE p DECIMALS 2, "Importe Pedidos Pais
  48. gv_fras_total TYPE i, "Pedidos en Total
  49. gv_cli_total TYPE i, "Clientes en Total
  50. gv_gran_total TYPE p DECIMALS 2. "Importe Total Pedidos
  51. *---------------------------------------------------------------------*
  52. * Pantalla de selección
  53. *---------------------------------------------------------------------*
  54. SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
  55. SELECT-OPTIONS so_pais FOR zgz57borders-land1. "Seleccion Pais
  56. SELECT-OPTIONS so_cli FOR zgz57borders-kunnr. "Seleccion Cod.Cliente
  57. SELECT-OPTIONS so_fecha FOR sy-datum. "Seleccion Fecha Pedido
  58. SELECT-OPTIONS so_city FOR (so_ty_city)
  59. DEFAULT 'A' TO 'ZZ'. "Seleccion Ciudad
  60. SELECTION-SCREEN END OF BLOCK b1.
  61. SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
  62. PARAMETERS:
  63. p_tpais AS CHECKBOX, "Total Pais
  64. p_tcity AS CHECKBOX, "Total Ciudad
  65. p_tcli AS CHECKBOX, "Total Cliente
  66. p_tfra AS CHECKBOX. "Total Pedido
  67. SELECTION-SCREEN END OF BLOCK b3.
  68. *-------------------------------------------------*
  69. INITIALIZATION.
  70. *-------------------------------------------------*
  71. CLEAR:
  72. gv_lineas_fra,
  73. gv_bruto_fra,
  74. gv_fras_cliente,
  75. gv_total_cliente,
  76. gv_fras_city,
  77. gv_cli_city,
  78. gv_total_city,
  79. gv_fras_pais,
  80. gv_cli_pais,
  81. gv_total_pais,
  82. gv_fras_total,
  83. gv_cli_total,
  84. gv_t_ini,
  85. gv_t_fin,
  86. gv_t_ini,
  87. gv_t_fin,
  88. gv_records,
  89. gv_mess,
  90. gv_time,
  91. gv_gran_total.
  92. *-------------------------------------------------*
  93. START-OF-SELECTION.
  94. *-------------------------------------------------*
  95. GET RUN TIME FIELD gv_t_ini.
  96. "Consulta de Lineas de Pedido
  97. "Lineas JOIN Cabeceras JOIN Clientes JOIN Paises
  98. SELECT *
  99. INTO CORRESPONDING FIELDS OF TABLE ti_detalle
  100. FROM zgz57borders
  101. WHERE spras = sy-langu "Nombre de Pais en ES
  102. AND land1 IN so_pais
  103. AND ort01 IN so_city
  104. AND kunnr IN so_cli
  105. AND audat IN so_fecha.
  106. DESCRIBE TABLE ti_detalle LINES gv_records.
  107. * Tiempo de ejecucion
  108. GET RUN TIME FIELD gv_t_fin.
  109. gv_t_ini = gv_t_fin - gv_t_ini.
  110. WRITE gv_t_ini TO gv_time.
  111. WRITE gv_records TO gv_items.
  112. CONCATENATE gv_items 'resultados en' gv_time 'microsegundos.'
  113. INTO gv_mess
  114. SEPARATED BY ' '.
  115. MESSAGE gv_mess TYPE 'S'.
  116. *-------------------------------------------------*
  117. END-OF-SELECTION.
  118. *-------------------------------------------------*
  119. PERFORM lista_detalle.
  120. *-------------------------------------------------*
  121. TOP-OF-PAGE.
  122. *-------------------------------------------------*
  123. PERFORM lista_cabecera.
  124. *-------------------------------------------------*
  125. END-OF-PAGE.
  126. *-------------------------------------------------*
  127. PERFORM lista_pie.
  128. *&---------------------------------------------------------------------*
  129. *& Form LISTA_DETALLE
  130. *&---------------------------------------------------------------------*
  131. * text
  132. *----------------------------------------------------------------------*
  133. * --> p1 text
  134. * <-- p2 text
  135. *----------------------------------------------------------------------*
  136. FORM lista_detalle .
  137. SORT ti_detalle BY land1 ort01 kunnr vbeln posnr.
  138. LOOP AT ti_detalle INTO wa_detalle.
  139. wa_detalle_aux = wa_detalle.
  140. AT NEW land1.
  141. CLEAR:
  142. gv_fras_pais,
  143. gv_cli_pais,
  144. gv_total_pais.
  145. IF p_tpais IS NOT INITIAL.
  146. FORMAT COLOR 4.
  147. WRITE: / 'Pais:',
  148. 6 wa_detalle_aux-landx,
  149. 22 wa_detalle_aux-land1.
  150. ENDIF.
  151. ENDAT.
  152. AT NEW ort01.
  153. CLEAR:
  154. gv_fras_city,
  155. gv_cli_city,
  156. gv_total_city.
  157. IF p_tcity IS NOT INITIAL.
  158. FORMAT COLOR 3.
  159. WRITE: /5 'Ciudad:',
  160. 22 wa_detalle_aux-ort01.
  161. ENDIF.
  162. ENDAT.
  163. AT NEW kunnr.
  164. CLEAR:
  165. gv_fras_cliente,
  166. gv_total_cliente.
  167. IF p_tcli IS NOT INITIAL.
  168. FORMAT COLOR 5.
  169. WRITE: /29 'Cliente:',
  170. wa_detalle_aux-kunnr,
  171. wa_detalle_aux-name1.
  172. ENDIF.
  173. ENDAT.
  174. AT NEW vbeln.
  175. CLEAR:
  176. gv_lineas_fra,
  177. gv_bruto_fra.
  178. ENDAT.
  179. FORMAT COLOR 2.
  180. WRITE: /(1) sy-vline,
  181. 2(3) wa_detalle-land1,
  182. 5(1) sy-vline,
  183. 6(15) wa_detalle-landx,
  184. 21(1) sy-vline,
  185. 22(15) wa_detalle-ort01,
  186. 37(1) sy-vline,
  187. 38(10) wa_detalle-kunnr,
  188. 48(1) sy-vline,
  189. 49(25) wa_detalle-name1,
  190. 74(1) sy-vline,
  191. 75(10) wa_detalle-vbeln,
  192. 85(1) sy-vline,
  193. 86(10) wa_detalle-audat,
  194. 96(1) sy-vline,
  195. 97(6) wa_detalle-posnr,
  196. 103(1) sy-vline,
  197. 104(12) wa_detalle-matnr,
  198. 116(1) sy-vline,
  199. 117(20) wa_detalle-arktx,
  200. 137(1) sy-vline,
  201. 138(8) wa_detalle-kbmeng,
  202. 146(1) sy-vline,
  203. 147(10) wa_detalle-netpr,
  204. 157(1) sy-vline.
  205. ADD 1 TO gv_lineas_fra.
  206. gv_bruto_fra = gv_bruto_fra + wa_detalle-kbmeng * wa_detalle-netpr.
  207. AT END OF vbeln.
  208. ADD 1 TO gv_fras_cliente.
  209. ADD 1 TO gv_fras_city.
  210. ADD 1 TO gv_fras_pais.
  211. ADD 1 TO gv_fras_total.
  212. ADD wa_detalle_aux-netwr TO gv_total_cliente.
  213. ADD wa_detalle_aux-netwr TO gv_total_city.
  214. ADD wa_detalle_aux-netwr TO gv_total_pais.
  215. ADD wa_detalle_aux-netwr TO gv_gran_total.
  216. IF p_tfra IS NOT INITIAL.
  217. FORMAT COLOR 6.
  218. WRITE: /87 'Pedido:',
  219. wa_detalle-vbeln,
  220. 'con',
  221. (3) gv_lineas_fra,
  222. 'lineas con importe bruto ',
  223. gv_bruto_fra.
  224. ENDIF.
  225. ENDAT.
  226. AT END OF kunnr.
  227. ADD 1 TO gv_cli_city.
  228. ADD 1 TO gv_cli_pais.
  229. ADD 1 TO gv_cli_total.
  230. IF p_tcli IS NOT INITIAL.
  231. FORMAT COLOR 5.
  232. WRITE: /29 'Cliente:',
  233. wa_detalle_aux-kunnr,
  234. wa_detalle_aux-name1,
  235. ' tiene',
  236. (5) gv_fras_cliente,
  237. 'pedidos por un total de',
  238. (15) gv_total_cliente.
  239. ENDIF.
  240. ENDAT.
  241. AT END OF ort01.
  242. IF p_tcity IS NOT INITIAL.
  243. FORMAT COLOR 3.
  244. WRITE:/5 'Hay',
  245. (4) gv_cli_city,
  246. 13 'Clientes',
  247. (20) wa_detalle_aux-ort01,
  248. ' con',
  249. (5) gv_fras_city,
  250. 'pedidos por importe de',
  251. (15) gv_total_city.
  252. SKIP.
  253. ENDIF.
  254. ENDAT.
  255. AT END OF land1.
  256. IF p_tpais IS NOT INITIAL.
  257. FORMAT COLOR 4.
  258. WRITE: / 'En ',
  259. (15) wa_detalle_aux-landx,
  260. 'hay',
  261. (4) gv_cli_pais,
  262. 'Clientes activos',
  263. 'con',
  264. 51(7) gv_fras_pais,
  265. 58 'facturas por',
  266. (15) gv_total_pais.
  267. ULINE.
  268. ENDIF.
  269. ENDAT.
  270. ENDLOOP.
  271. ENDFORM. " LISTA_DETALLE
  272. *&---------------------------------------------------------------------*
  273. *& Form LISTA_CABECERA
  274. *&---------------------------------------------------------------------*
  275. * text
  276. *----------------------------------------------------------------------*
  277. * --> p1 text
  278. * <-- p2 text
  279. *----------------------------------------------------------------------*
  280. FORM lista_cabecera .
  281. FORMAT COLOR 7.
  282. WRITE:/(157) sy-uline.
  283. WRITE: /(1) sy-vline,
  284. 2(19) 'Pais / Country',
  285. 21(1) sy-vline,
  286. 22(15) 'Ciudad/City',
  287. 37(1) sy-vline,
  288. 38(10) 'Codigo',
  289. 48(1) sy-vline,
  290. 49(25) 'Nombre / Name',
  291. 74(1) sy-vline,
  292. 75(10) 'Order #',
  293. 85(1) sy-vline,
  294. 86(10) 'Fecha/Date',
  295. 96(1) sy-vline,
  296. 97(6) ' lin.#',
  297. 103(1) sy-vline,
  298. 104(12) 'Referencia',
  299. 116(1) sy-vline,
  300. 117(20) 'Articulo/Articule',
  301. 137(1) sy-vline,
  302. 138(8) 'Cant/Qty',
  303. 146(1) sy-vline,
  304. 147(10) 'Net. Price',
  305. 157(1) sy-vline.
  306. WRITE:/(157) sy-uline.
  307. ENDFORM. " LISTA_CABECERA
  308. *&---------------------------------------------------------------------*
  309. *& Form LISTA_PIE
  310. *&---------------------------------------------------------------------*
  311. * text
  312. *----------------------------------------------------------------------*
  313. * --> p1 text
  314. * <-- p2 text
  315. *----------------------------------------------------------------------*
  316. FORM lista_pie .
  317. ENDFORM. " LISTA_PIE


 

 

 


Sobre el autor

Publicación académica de Carlos Piles Rosell, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Carlos Piles Rosell

Profesión: Analista de Sistemas y Programador - España - Legajo: GZ57B

✒️Autor de: 24 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: PartTime

Certificación Académica de Carlos Piles

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las vistas de tablas bases de datos" de la mano de nuestros alumnos.

SAP Senior

Vistas de tablas bases de Datos mediante las vistas podemos visualizar datos de varias tablas bases de datos en simultaneo. Tipos tablas bases de datos tablas transparentes tablas pool tablas cluster

Acceder a esta publicación

Creado y Compartido por: Luis Car

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Vistas de tablas bases de datos. El diccionario de datos permite crear vistas de tablas bases de datos. Una vista es la unión de dos o mas tablas SAP utilizando condiciones de unión y de selección que permitirán ver datos pertenecientes a varias tablas SAP en una única selección de datos. La solapa View Flds. permite ver los campos que pertenecen a la vista. Solapa table/Join conditions. Se ven las tablas que pertenecen a la vista y las condiciones de unión de ambas tablas. Solapa Selection conditions. Se ven las condiciones existentes para realizar la selección. Solapa Main Status. Si la vista es de solo lectura o escritura. Existen 3 tipos de tablas. Tablas Transparentes. Utilizadas para...

Acceder a esta publicación

Creado y Compartido por: Fabio Gallo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

VISTAS DE TABLAS BASES DE DATOS. Una vista es una tabla virtual en una base de datos relacional, tienen la misma estructura de una tabla es decir filas y columnas, la diferencia es que solo se almacena la definición más no los datos. Las vistas permiten la unión de varias tablas, en la pestaña maint.status se puede definir si la vista será de solo ñectura o de escritura.

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Vistas de tablas bases de datos Mediante las Vistas de base de datos, podemos visualizar datos de varias tablas de bases de datos en simultáneo. Utilizando distintas tablas con condiciones de selección y de unión. En SAP existen 3 tipos de tablas: Tablas Transparentes. Se utilizan para almacenar datos de las aplicaciones (datos maestros, transacciones, etc) Tablas pool. Varias tablas del diccionario de datos se corresponden con una tabla de la base de datos. La tabla en la base de datos tiene diferente nombre, distinto numero de campos y nombre de campos diferentes. SAP las utiliza para almacenar miles de pequeñas tablas de 10 a 100 filas, en pocas tablas de la base de datos, para reducir los recursos necesarios...

Acceder a esta publicación

Creado y Compartido por: Pedro Alejandro Arroyo Gutierrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

- Vistas de tablas bases de datos En el diccionario de datos (transacción SE11) también podemos crear vistas de tablas bases de datos. Una vista consiste en la unión de dos o más tablas SAP utilizado condiciones de selecciones y de unión que nos permiten visualizar datos pertenecientes a varias tablas SAP en una única colección de datos. Dentro de la ventana de VISTA tenemos: Campos Vista: Vemos los campos que componen a la vista. Tablas/Condiciones de conexión: Tablas que componen a la vista y las condiciones de unión de ambas tablas. Si hacemos doble click sobre cualquiera de las tablas que aparecen aquí veremos su contenido. Condiciones selección: Vemos...

Acceder a esta publicación

Creado y Compartido por: Sandra Erika Bernabe Abreu

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Vistas de tablas bases de datos: es la unión de 2 o mas tablas sap, utilizando condiciones de unión y condiciones de selección que nos van a permitir visualizar datos pertenecientes a varias tablas sap en una única selección de datos. 3 Tipos de tablas base de datos. 1.- TABLAS TRANSPARENTES: para almacenar datos de las aplicaciones como datos maestros. 2.- TABLAS PUL: son varias tablas del diccionario de datos que se corresponden con una tabla de la base de datos, la tabla en la base de datos tiene diferente nombre, diferentes números de campos y nombres de campos diferentes, sap las utiliza para almacenar miles de pequeñas tablas de 10 a 100 filas en pocas tablas de las bases de datos, se usan...

Acceder a esta publicación

Creado y Compartido por: Roxana Solis Ramirez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Vistas de Tablas bases de datos En el diccionario de datos podemos crear vistas de tabla bases de datos. Vista: consiste en al unión de dos o mas tablas SAP utilizando condiciones de unión y condiciones de selección que nos van a poder permitir visualizar datos pertenecientes a varias tablas SAP en una única selección de datos. Ficha View Fields: Campos de la vista. Ficha campos y condiciones de conexion. Ficha de condicion de seleccion (where). Ficha Maint Status: Se dice si solo es de lectura Boton para mostrar contenido. Existen 3 tipos de tablas bases de datos: Tablas transparentes: Se utilizan para almacenar datos de las aplicaciones como datos maestros, proveedores, clientes,...

Acceder a esta publicación

Creado y Compartido por: Jhon Deibys Cano Pineda

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Vistas de bases de datos: una vista es una tabla virtual en una base de datos relacional. Las vistas tienen la misma estructura que una tabla: filas y columnas, la única diferencia que solo se almacena de ella la definición, no los datos. Los datos que se recuperan mediante una consulta a una vista se presentarán igual que a los de una tabla. Al igual que sucede en una tabla se puede insertar, actualizar, borrar y seleccionar datos en una vista. Una vista consiste en la unión de dos o mas tablas SAP utilizando condiciones de unión y condiciones de selección que nos permiten visualizar datos pertenecientes a varias tablas SAP en una única selección de datos. En SAP existen 3 tipos de tablas...

Acceder a esta publicación

Creado y Compartido por: Jose Ignacio Rodini

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Las Vistas de Bases de Datos permiten visualizar datos de varias Tablas Bases de Datos en simultáneo, mediante Condiciones de Unión (por igualdad de campos) y Condiciones de Selección (valores de los campos). Solapa Tablas/Cond.conexión: Aquí se ven cuales son las Tablas Bases de Datos, los Campos de Unión y si se hace doble click sobre en Nombre de la Tabla se pueden ver los Campos que las Componen. Solapa Cpo.vista: Aquí se verán los Campos de la Vista, que no necesariamente serán todos los campos de las Bases de Datos intervinientes. Solapa Condiciones selección: Aquí se pueden ver cuales son las Condiciones de Selección de los registros que se podrán...

Acceder a esta publicación

Creado y Compartido por: Victor Norberto Levi

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Vista de tablas bases de datos En el Diccionario de Datos podemos crear Vistas de tablas bases de datos. Una vista consisten en la unión de dos o mas tablas SAP utilizando condiciones de unión y condiciones de selección que nos van a permitir datos pertenecientes a varias tablas en una única selección de datos. Dentro de la ventana Vista podemos observar: View Flds, campos que componen la vista. Table/Join Conditions, tablas que componen a la vista y las condiciones de unión de las mismas. Selection Conditions, condiciones existentes para realizar la selección Maint Status, si la vista es de solo lectura o si se puede modificar Boton Content, el contenido de la vista. ...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Becerra

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!