Campo unknown

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • sapbcvl
    Junior Member
    • mar
    • 9

    #1

    Campo unknown

    Hola a todos,

    Tengo un problema y es que esta parte del codigo no me compila.
    Lo que quiero hacer es meter en la tabla gt_ots_pts todo lo qu eme venga de la tabla it_pts pero que su columna tplnr (de it_pts) tenga uno de estos dos requisitos: que se llame "%D%-PDL%" o "%D%-ROB%".

    Me da fallo de compilación en la linea
    [ AND ( ( it_pts-tplnr like '%D%-PDL%' ) OR ]. Me dice it_pts-tplnr unknown.
    Muchas gracias.

    Aquí el código:

    IF NOT it_pts[] is initial.

    SELECT aufnr equnr auart autyp erdat ktext
    objnr tplnr plnnr plnal ilart
    FROM viaufks
    INTO TABLE gt_ots_pts
    FOR ALL ENTRIES IN it_pts
    WHERE ( aufnr IN so_ots )
    AND ( ( it_pts-tplnr like '%D%-PDL%' ) OR
    ( it_pts-tplnr LIKE '%D%-ROB%' ) ).
    ENDIF.
  • goyleo
    Senior Member
    • sep
    • 102

    #2
    Hola!

    La condición del WHERE no está correcta. Tenes que igual los campos de la tabla a lo que queres obtener.

    SELECT *
    FROM viaufks
    INTO TABLE gt_ots_pts
    FOR ALL ENTRIES IN it_pts
    WHERE aufnr IN so_ots
    AND ( tplnr EQ condicion
    OR tplnr EQ condicion ).

    Comentario

    • omegaotaku
      Member
      • nov
      • 43

      #3
      Originalmente publicado por sapbcvl
      Hola a todos,

      Tengo un problema y es que esta parte del codigo no me compila.
      Lo que quiero hacer es meter en la tabla gt_ots_pts todo lo qu eme venga de la tabla it_pts pero que su columna tplnr (de it_pts) tenga uno de estos dos requisitos: que se llame "%D%-PDL%" o "%D%-ROB%".

      Me da fallo de compilación en la linea
      [ AND ( ( it_pts-tplnr like '%D%-PDL%' ) OR ]. Me dice it_pts-tplnr unknown.
      Muchas gracias.

      Aquí el código:

      IF NOT it_pts[] is initial.

      SELECT aufnr equnr auart autyp erdat ktext
      objnr tplnr plnnr plnal ilart
      FROM viaufks
      INTO TABLE gt_ots_pts
      FOR ALL ENTRIES IN it_pts
      WHERE ( aufnr IN so_ots )
      AND ( ( it_pts-tplnr like '%D%-PDL%' ) OR
      ( it_pts-tplnr LIKE '%D%-ROB%' ) ).
      ENDIF.
      Lo que dice goyleo es correcto pero estaría de mas el FAE y habría que re diseñar la consulta si queres utilizar el FAE

      Comentario

      • sapbcvl
        Junior Member
        • mar
        • 9

        #4
        Originalmente publicado por goyleo
        Hola!

        La condición del WHERE no está correcta. Tenes que igual los campos de la tabla a lo que queres obtener.

        SELECT *
        FROM viaufks
        INTO TABLE gt_ots_pts
        FOR ALL ENTRIES IN it_pts
        WHERE aufnr IN so_ots
        AND ( tplnr EQ condicion
        OR tplnr EQ condicion ).
        Muchas gracias! ha funcionado

        Comentario

        Trabajando...