Miralo que funciona!
Hola! yo tambien soy muy novato en esto, de hecho estaba buscando ejemplos pero al ver tu inquietud quise ver si podia colaborar con vos. Copialo y pegalo tal cual esta allí. Lo unico que tendrias que variar seria el nombre de report (que lo pones vos obviamente) cualquier cosa agregame y cambiamos info Suerte!
*REPORT zinnerj.
TABLES: sflight, saplane.
* Creo un registro 'reg' con dos tablas transparentes.
DATA: BEGIN OF reg ,
* Para vinvular las dos tablas voy a usar el mandante
* de cada una de ellas:
*-----------------------------------------------------
mdta TYPE sflight-mandt ,
mdtb TYPE saplane-mandt ,
*-----------------------------------------------------
*Desde sflight traemos los sigtes campos:
carr TYPE sflight-carrid ,
fech TYPE sflight-fldate ,
prec TYPE sflight-price ,
plan TYPE sflight-planetype ,
*y desde saplane:
seam TYPE saplane-seatsmax ,
weit TYPE saplane-weight,
END OF reg.
*Ahora creamos la tabla interna 'ti':
DATA: BEGIN OF ti OCCURS 0 .
INCLUDE STRUCTURE reg .
DATA END OF ti .
*Y finalmente llenamos con un INNER JOIN nuestra tabla conbinada:
* 1. Seleccionamos las dos tablas y desde donde las vinculamos.
* el chirimbolito ~ es como decir tabla - campo, o sea .. eso
* y se usan alias = f : sflight p : saplane, que se declaran debajo.
SELECT f~mandt p~mandt
* 2. Se volvaran a la tabla interna:
INTO CORRESPONDING FIELDS OF TABLE ti
* 3. Y aqui se muestran los famosos INNER JOIN, y los alias.
FROM ( sflight AS f INNER JOIN saplane AS p ON
f~mandt = p~mandt ).
* una vez que hayas que hayas visto el programita "juga" con la
* sentencia WHERE para ver formas de comportamiento de la tabla.
* WHERE tabla-campo operador valor_campo ... .
* Loopeamos la tabla interna para listar los datos:
LOOP AT ti.
WRITE: ti-mdta ,
ti-carr ,
ti-fech ,
ti-prec ,
ti-plan ,
ti-seam ,
ti-weit .
ENDLOOP.
|