-
Notifications
You must be signed in to change notification settings - Fork 0
/
Z_EJ11_ANTO
82 lines (72 loc) · 3.16 KB
/
Z_EJ11_ANTO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
*Ejercicio 11. (2 horas)
*El cliente solicita tener un reporte donde pueda ver los todos los pedidos que tienen sus clientes y poder a
*su vez visualizar cuales están pendientes de entrega.
*Para ello se necesita crear un reporte ALV GRID cuya pantalla de selección contenga:
* Select option: S_KUNNR (obligatorio)
* Radio button: RB_ENTREGADO (cuya descripción será “Entregado” y “Pendiente de entrega”
*
** Acceder a la tabla Z_CLIENTES_APELLIDOALUMNO (donde APELLIDOALUMNO sea el apellido del
*alumno que desarrolla el ejercicio y que fue creada con anterioridad) con kunnr igual a S_KUNNR y
*recuperar:
*Kunnr (cliente)
*Razón (razón social)
** Con los resultados obtenidos(si se obtuvieron) acceder a la tabla Z_PEDIDOS_APELLIDOALUMNO
*(donde APELLIDOALUMNO sea el apellido del alumno que desarrolla el ejercicio y que fue creada con
*anterioridad) con:
*KUNNR = Z_CLIENTES_APELLIDOALUMNO-KUNNR
*ENTREGADO = (X o espacio según el radio button que se haya elegido en la pantalla de selección.)
*Y recuperar:
*Kunnr (Cliente)
*Pedido (Pedido)
*Direccion (Dirección de entrega)
*Entregado (Entregado)
*
*Ordenar ambas tablas. La tabla Z_CLIENTES_APELLIDOALUMNO por cliente (kunnr), mientras que la
*tabla Z_PEDIDOS_ APELLIDOALUMNO se debe ordenar por cliente y pedido (kunnr, pedido). Se bererá ir
*llenando una tabla interna I_ALV que contendrá los datos a mostrar. La tabla interna tendrá los
*siguientes campos:
*I_ALV :
* KUNNR (cliente)
* Razón (razón social)
* Pedido (Pedido)
* Direccion (Dirección de entrega)
* Entregado (Entregado)
*
*Recorrer la tabla Z_CLIENTES_APELLIDOALUMNO:
** Llenar los campos KUNNR y RAZON de una estructura llamada R_ALV
**Recorrer la tabla Z_PEDIDOS_APELLIDOALUMNO donde kunnr =
*Z_CLIENTES_APELLIDOALUMNO-KUNNR
*Llenar los campos PEDIDO , DIRECCION y ENTREGADO de la estructura R_ALV
**Antes de pasar a la siguiente iteración del loop se debe apendear R_ALV a la tabla interna
*I_ALV
*Mostrar la tabla I_ALV con un ALV GRID ordenado por kunnr y pedido.
*&---------------------------------------------------------------------*
*& Report Z_EJ11_ANTO
*&---------------------------------------------------------------------*
REPORT z_ej11_anto.
*&---------------------------------------------------------------------*
*& INCLUDES
*&---------------------------------------------------------------------*
INCLUDE z_ej11_anto_top.
INCLUDE z_ej11_anto_selections.
INCLUDE z_ej11_anto_forms.
*&---------------------------------------------------------------------*
*& START OF SELECTION : ES UN EVENTO
*&---------------------------------------------------------------------*
START-OF-SELECTION.
*&---------------------------------------------------------------------*
*& RADIO BUTTON - HACER QUE SELECCIONE LA X EN LA POSICION CORRECTA
*&---------------------------------------------------------------------*
IF rb1_entr EQ 'X'.
v_cruz = 'X'.
ELSE.
v_cruz = ' '.
ENDIF.
*&---------------------------------------------------------------------*
*& PERFORMS
*&---------------------------------------------------------------------*
PERFORM f_selects.
PERFORM f_completar_tablita.
PERFORM f_config_fieldcats.
PERFORM f_mostrar_alv.
END-OF-SELECTION.