Page Down Call Tansaction FB60

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • vsuarezo
    Member
    • abr
    • 47

    #1

    Page Down Call Tansaction FB60

    Buenas tardes,

    Al ejecutar Call Transaction de la FB60 e ingresar a la vista de Retención de impuestos, en esta se visualiza en ventas separadas tanto los indicadores de impuestos como las posiciones del documento a crear. Estoy necesitando hacer un desplazamiento vertical en la ventana de los indicadores de impuestos utilizando el siguiente código:

    * Pasar a datos de Retención de Impuestos
    PERFORM llena_bdc USING: 'X' 'SAPMF05A' '1100',
    ' ' 'BDC_OKCODE' '=WT'.
    * Vista de Retencion de Impuestos
    PERFORM llena_bdc USING: 'X' 'SAPMF05A' '1100',
    ' ' 'BDC_OKCODE' '/00'.
    * Posición del reteica
    vl_pos = 0.

    LOOP AT ti_lfbw WHERE lifnr = ti_gastos-tdlnr AND witht <> 'S@'.
    vl_pos = vl_pos + 1.
    IF vl_pos > 6.
    vl_pos = 1.
    * Avanzar pagina
    PERFORM llena_bdc USING: 'X' 'SAPMF05A' '1100',
    ' ' 'BDC_OKCODE' '=P+'.
    ENDIF.

    CONCATENATE 'ACWT_ITEM-WT_WITHCD(' vl_pos ')' INTO vl_campo.
    PERFORM llena_bdc USING ' ' vl_campo ti_lfbw-wt_withcd.
    ENDLOOP.

    Pero en vez de lograr el desplazamiento en la ventana de indicadores lo hace en la de las posiciones. ¿Qué me falta agregar para que el desplazamiento lo haga en la ventana de indicadores?

    Muchas gracias.
  • calanis
    Senior Member
    • oct
    • 147

    #2
    Hola

    Considero que debes darle el Foco para la ventana indicadores, para que después puedas realizar el avance de página (=P+ o =P++).
    Para lo cual deberás realizar otra grabación de BI.

    Código:
    * Pasar a datos de Retención de Impuestos
    PERFORM llena_bdc USING: 
    'X' 'SAPMF05A' '1100',
    ' ' 'BDC_OKCODE' '=WT',"Vista de Retención de Impuestos
    'X' 'SAPMF05A' '1100',
    ' ' 'BDC_OKCODE' '/00'.
    *------------------------------------
    * Aquí debería ir otro evento para que te de el foco en la grilla
    *------------------------------------
    * Posición del retenida
    vl_pos = 0.
    
    LOOP AT ti_lfbw 
    WHERE lifnr = ti_gastos-tdlnr 
       AND witht <> 'S@'.
    vl_pos = vl_pos + 1.
    IF vl_pos > 6.
        vl_pos = 1.
    * Avanzar pagina
        PERFORM llena_bdc USING: 
        'X' 'SAPMF05A' '1100',
        ' ' 'BDC_OKCODE' '=P+'.
    ENDIF.
    
    CONCATENATE 'ACWT_ITEM-WT_WITHCD(' vl_pos ')' INTO vl_campo.
    PERFORM llena_bdc USING ' ' vl_campo ti_lfbw-wt_withcd.
    ENDLOOP.
    Espero que la data te sea de utilidad.
    Saludos
    Carlos D. Alanis
    Carlos D. Alanis
    <=<< Compartir conocimiento es una manera de innovar >>=>

    Comentario

    • vsuarezo
      Member
      • abr
      • 47

      #3
      Page Down Call Transaction FB60

      Hola Carlos,

      Muchas gracias por su información. Es ahí donde realmente tengo la duda de que deba ir. En la grabación hay lo siguiente:

      SAPMF05A 1100 X
      BDC_OKCODE =P+
      BDC_SUBSCR SAPLFDCB 0080PAGE
      BDC_SUBSCR SAPLFWTD 0120SUB_WT
      BDC_CURSOR ACWT_ITEM-WT_QSSHB(02)
      ACWT_ITEM-WT_WITHCD(02)
      BDC_SUBSCR SAPLFDCB 0070ADR
      BDC_SUBSCR SAPLFSKB 0100ITEMS

      Posiblemente sea alguno de los BDC_SUBSCR pero no se como interpretar esas líneas para codificarlas en el programa. Ya probe con el BDC_CURSOR y no me funcionó.

      Muchas gracias.

      Comentario

      Trabajando...