Ayuda Con Select

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Irua
    Member
    • jun
    • 83

    #1

    Ayuda Con Select

    Hola tengo el suiguiente codigo:

    TABLES: ZTHR_USUA_EMPL,PA0001,PA0002,PA0032.

    DATA: BEGIN OF T_DATA1 OCCURS 0,
    BUKRS LIKE ZTHR_USUA_EMPL-BUKRS,
    Z_PERNR LIKE ZTHR_USUA_EMPL-PERNR,
    USUARIO LIKE ZTHR_USUA_EMPL-USUARIO,
    FEC_ING LIKE ZTHR_USUA_EMPL-FEC_ING,
    TIP_CTA LIKE ZTHR_USUA_EMPL-TIP_CTA,
    FECHA LIKE ZTHR_USUA_EMPL-FECHA,
    HORA LIKE ZTHR_USUA_EMPL-HORA,
    P_ORGEH LIKE PA0001-ORGEH,
    T_NACHN LIKE PA0002-NACHN,
    T_VORNA LIKE PA0002-VORNA,
    T_INICIAL TYPE C,
    T_APELLIDO TYPE STRING,
    T_CODIGO TYPE STRING,

    END OF T_DATA1.

    FORM OBTENER_DATOS.

    SELECT BUKRS PERNR TIP_CTA
    INTO T_DATA1
    FROM ZTHR_USUA_EMPL
    WHERE BUKRS IN S_TSOC
    AND PERNR IN S_TEMPL.
    APPEND T_DATA1.
    ENDSELECT.


    LOOP AT T_DATA1.
    SELECT ORGEH PERNR
    INTO T_DATA1
    FROM PA0001
    WHERE PERNR = S_TEMPL
    and endda ='99991231'.
    APPEND T_DATA1.
    ENDSELECT.



    SELECT NACHN PERNR VORNA
    INTO T_DATA1
    FROM PA0002
    WHERE PERNR = T_DATA1-PERNR
    and endda ='99991231'.
    APPEND T_DATA1.
    ENDSELECT.

    SELECT PERNR GEBNR ZIMNR
    INTO T_DATA1
    FROM PA0032
    WHERE PERNR = T_DATA1-Z_PERNR
    and endda ='99991231'.
    APPEND T_DATA1
    ENDSELECT.
    ENDLOOP.

    ENDFORM.

    COMO SERIAN LOS SELECT PARA BUSCAR LA BUSQUEDA DE VARIAS TABLAS CON UNA SOLA TABLA INTERNA Y CUAL SERIA LA ESTRUCTURA DEL LOOP PARAFORMAR EL SIGUIENTE REPORTE


    WRITE:/1 T_DATA1-BUKRS,7 T_DATA1-Z_PERNR, 25 T_DATA1-T_NACHN ,33 T_DATA1-T_VORNA,50 T_PA0032-C_GEBNR, 65 T_DATA1-P_ORGEH.

    MIL GRACIAS
  • tomasm
    Member
    • jun
    • 87

    #2
    Una alternativa, que funciona relativamente bien en consonancia con el esfuerzo realizado para conseguirla.

    Usar las transacciones SQ01 y SQ02 (Generador de querys de SAP)

    Crear la query deseada y fisgar en el código generado.

    Que trabaje SAP !!!!

    Saludos !!!

    Comentario

    • Irua
      Member
      • jun
      • 83

      #3
      Tengo el siguiente select pero no me trae los datos solo los de la tabla ZTHR_USUA_EMPL


      select ZTHR_USUA_EMPL~BUKRS
      ZTHR_USUA_EMPL~PERNR
      ZTHR_USUA_EMPL~USUARIO
      ZTHR_USUA_EMPL~FEC_ING
      ZTHR_USUA_EMPL~TIP_CTA
      ZTHR_USUA_EMPL~FECHA
      ZTHR_USUA_EMPL~HORA
      PA0001~ORGEH
      PA0002~NACHN
      PA0002~VORNA
      into table t_data1
      from ZTHR_USUA_EMPL inner join PA0001 ON
      ZTHR_USUA_EMPL~PERNR = PA0001~PERNR
      and PA0001~endda ='99991231'
      INNER JOIN PA0002 ON
      ZTHR_USUA_EMPL~PERNR = PA0002~PERNR
      and PA0002~endda ='99991231'.


      Cual seria el error de sintaxis

      gracias

      Comentario

      • Sereniv
        Junior Member
        • mar
        • 15

        #4
        Buenas, no sé si te llegará tarde, pero creo que podría ser, en vez de hacer and PA0001~endda ='99991231' y and PA0002~endda ='99991231' en donde los haces, ponerle un where al final del todo que tenga esas dos condiciones:
        ...
        where PA0001~endda ='99991231'
        and and PA0002~endda ='99991231'.

        Comentario

        Trabajando...