Pedidos de Ventas

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Yanett Ponce Seares
    Member
    • abr
    • 61

    #1

    Pedidos de Ventas

    Necesito generar un indicador para medir el tiempo que tenemos en responder los pedidos.
    Desde que se genera el pedido- Facturación y su entrega.
    Si alguien sabe cuales serian las tablas adecuadas para el reporte .
    Muchas graciasc
    YPonce
  • DavidXD_XD
    Moderator
    • ago
    • 1255

    #2
    Hola puedes sacarlas de las siguientes tablas

    Pedido: VBAK
    Facturacion: VBRK
    Entrega: LIKP

    Dentro de ellas existen campo de fecha y hora de creación
    David Carballido Córdova

    Comentario

    • Yanett Ponce Seares
      Member
      • abr
      • 61

      #3
      Originalmente publicado por DavidXD_XD
      Hola puedes sacarlas de las siguientes tablas

      Pedido: VBAK
      Facturacion: VBRK
      Entrega: LIKP

      Dentro de ellas existen campo de fecha y hora de creación
      Te pasaste muchas gracias !!!
      YPonce

      Comentario

      • Yanett Ponce Seares
        Member
        • abr
        • 61

        #4
        Originalmente publicado por Yanett Ponce Seares
        Te pasaste muchas gracias !!!
        Estuve viendo las tablas y tengo duda en la
        LIKP de entrega es cabecera, existe el detalle de esta?
        gracias
        YPonce

        Comentario

        • DavidXD_XD
          Moderator
          • ago
          • 1255

          #5
          Si, esas tablas son las cabeceras, los detalles son estos:

          VBAK-VBAP
          VBRK-VBRP
          LIKP-LIPS
          David Carballido Córdova

          Comentario

          • Yanett Ponce Seares
            Member
            • abr
            • 61

            #6
            Originalmente publicado por DavidXD_XD
            Si, esas tablas son las cabeceras, los detalles son estos:

            VBAK-VBAP
            VBRK-VBRP
            LIKP-LIPS
            Muchas gracias , ,,,
            YPonce

            Comentario

            • Yanett Ponce Seares
              Member
              • abr
              • 61

              #7
              Originalmente publicado por DavidXD_XD
              Si, esas tablas son las cabeceras, los detalles son estos:

              VBAK-VBAP
              VBRK-VBRP
              LIKP-LIPS
              Hola, Sabes he estado tratando de encontrar los campos por donde estan enlazados estas tablas VBAK con VBRK y LIKP , la verdad que no encuentro como ... me puedes ayudar en como deberia enlazar un pedido relacionado con su entrega y factura ... Muchas gracias
              YPonce

              Comentario

              • DavidXD_XD
                Moderator
                • ago
                • 1255

                #8
                Holas, esas se integran en la tabla de flujos VBFA, para que lo veas mejor puedes usar una funcion: RV_ORDER_FLOW_INFORMATION donde solo colocas como parametro el numero de la entrega en COMWA-VBELN, ahi te saldra el inicio y fin del flujo de documentos, espero te ayude
                David Carballido Córdova

                Comentario

                • Yanett Ponce Seares
                  Member
                  • abr
                  • 61

                  #9
                  Originalmente publicado por DavidXD_XD
                  Holas, esas se integran en la tabla de flujos VBFA, para que lo veas mejor puedes usar una funcion: RV_ORDER_FLOW_INFORMATION donde solo colocas como parametro el numero de la entrega en COMWA-VBELN, ahi te saldra el inicio y fin del flujo de documentos, espero te ayude
                  Hola sigo con el tema, y gracias la información que me has dado pude realizar mi requerimiento, pero me pasa que se demora demasiado al realizar la consulta de un mes, a partir del pedido traer la Factura y Entrega que tiene relacionado.
                  Alomejor existe una forma de acelerar mis instrucciones u otra forma de plantearlo ... Muchas Gracias ...
                  YPonce

                  Comentario

                  • DavidXD_XD
                    Moderator
                    • ago
                    • 1255

                    #10
                    Hola Yanett como lo estas consultando??? por lo que tengo entendido tu parametro de entrada es el pedido de ventas, como t comente yo normalmente uso la funcion y ahi tbm funciona colocandole el pedido

                    ls_conwa-vbeln = (pedido_venta).

                    CALL FUNTION 'RV_ORDER_FLOW_INFORMATION'
                    EXPORTING
                    conwa = ls_conwa
                    TABLES
                    vbfa_tab = lt_vbfa.

                    En la tabla lt_vbfa te botara todo el flujo que necesitas muy rapido ... pero supongo q el problema es obtener los datos del flujo y luego tener el detalle de esos datos como fecha y hora para poder controlar lo que quieres cierto?
                    David Carballido Córdova

                    Comentario

                    • Yanett Ponce Seares
                      Member
                      • abr
                      • 61

                      #11
                      Originalmente publicado por DavidXD_XD
                      Hola Yanett como lo estas consultando??? por lo que tengo entendido tu parametro de entrada es el pedido de ventas, como t comente yo normalmente uso la funcion y ahi tbm funciona colocandole el pedido

                      ls_conwa-vbeln = (pedido_venta).

                      CALL FUNTION 'RV_ORDER_FLOW_INFORMATION'
                      EXPORTING
                      conwa = ls_conwa
                      TABLES
                      vbfa_tab = lt_vbfa.

                      En la tabla lt_vbfa te botara todo el flujo que necesitas muy rapido ... pero supongo q el problema es obtener los datos del flujo y luego tener el detalle de esos datos como fecha y hora para poder controlar lo que quieres cierto?
                      Hola, exactamente, lo que hago es rescatar todos los pedidos que se hacen en undeterminado periodo, despues en un loop la recorro accediendo a la function que me indicas mas arriba, y rescato la informaciòn de los documentos asociado al pedido, en esta instancia es donde se demora una eternidad ...
                      De hecho ahora estaba probando de hacer un select join de la tablas VBAK-VBFA haber si me acelera mi consulta ... Ojala lo entiendas y gracias nuevamente ...
                      YPonce

                      Comentario

                      • DavidXD_XD
                        Moderator
                        • ago
                        • 1255

                        #12
                        Pues si ... la unica forma de sacar el flujo es por la funcion o por el enlace de tablas VBAK, VBRK, LIKP ... aunq puede ser aconsejable sacarla por el JOIN de las 3 tablas con un FOR ALL ENTRIES y de paso que sacas los datos de fecha y hora de creacion en un solo paso para evitar esos 2 pasos (rescatar flujo, recuperar detalle de cada documento), nos cuentas como te fue
                        David Carballido Córdova

                        Comentario

                        • Yanett Ponce Seares
                          Member
                          • abr
                          • 61

                          #13
                          Originalmente publicado por DavidXD_XD
                          Pues si ... la unica forma de sacar el flujo es por la funcion o por el enlace de tablas VBAK, VBRK, LIKP ... aunq puede ser aconsejable sacarla por el JOIN de las 3 tablas con un FOR ALL ENTRIES y de paso que sacas los datos de fecha y hora de creacion en un solo paso para evitar esos 2 pasos (rescatar flujo, recuperar detalle de cada documento), nos cuentas como te fue
                          mmmm ahí estoy super mal ya que los for all entries no lo se usar si los he escuchado ... y con 3 tablas igual voy a buscar . pero lo que tengo en este m,inuto es
                          SELECT vbfa~vbeln as factura vbfa~erdat as erdatf vbfa~erzet as erzetf
                          vbfa~vbelv as pedido vbfa~erdat as erdatp vbfa~erzet as erzetp vbak~auart vbak~kunnr vbfa~vbtyp_v vbfa~vbtyp_N
                          INTO TABLE TI_PEDIDO
                          FROM vbfa JOIN vbak ON vbfa~vbelv = vbak~vbeln
                          WHERE vbfa~vbtyp_v = 'C' and ( vbfa~vbtyp_n = 'M' OR vbfa~vbtyp_n = 'J' )
                          AND VBFA~rfmng <> 0
                          AND VBFA~POSNN = 10
                          AND vbak~vtweg <> 'EX'
                          and vbak~erdat >= w_fecini
                          and vbak~erdat <= w_fecfin .

                          Me podrias dar un ej. de For all Entries
                          gracias
                          YPonce

                          Comentario

                          • DavidXD_XD
                            Moderator
                            • ago
                            • 1255

                            #14
                            Los FOR ALL ENTRIES son como un SELECT anidado pero con mejor tiempo de busqueda, es como realizar lo siguiente

                            Código:
                            LOOP AT it_bkpf.
                              SELECT *
                                APPENDING TABLE lt_bseg
                                  FROM bseg
                                    WHERE bukrs = it_bkpf-bukrs
                                      AND belnr = it_bkpf-belnr
                                      AND gjahr = it_bkpf-gjahr.
                            ENDLOOP.
                            Este codigo equivale a:

                            Código:
                            SELECT *
                              INTO TABLE lt_bseg
                                FROM bseg
                                  FOR ALL ENTRIES IN lt_bkpf
                                    WHERE bukrs = it_bkpf-bukrs
                                      AND belnr = it_bkpf-belnr
                                      AND gjahr = it_bkpf-gjahr.
                            Como te puedes dar cuenta para hacer el FOR ALL ENTRIES necesitarias los datos del pedido, pero veo en tu SELECT que estas recuperando todos los pedidos de una condicion muy general, tal vez seria mejor no trabajar con la VBFA a menos que estes sacando informacion que no se encuentren en las tablas normales (VBAK, VBRK, LIKP) y hacer un JOIN con solo esas 3 tablas
                            David Carballido Córdova

                            Comentario

                            • Yanett Ponce Seares
                              Member
                              • abr
                              • 61

                              #15
                              [QUOTE=DavidXD_XD]Los FOR ALL ENTRIES son como un SELECT anidado pero con mejor tiempo de busqueda, es como realizar lo siguiente

                              Código:
                              LOOP AT it_bkpf.
                                SELECT *
                                  APPENDING TABLE lt_bseg
                                    FROM bseg
                                      WHERE bukrs = it_bkpf-bukrs
                                        AND belnr = it_bkpf-belnr
                                        AND gjahr = it_bkpf-gjahr.
                              ENDLOOP.
                              Este codigo equivale a:

                              Código:
                              SELECT *
                                INTO TABLE lt_bseg
                                  FROM bseg
                                    FOR ALL ENTRIES IN lt_bkpf
                                      WHERE bukrs = it_bkpf-bukrs
                                        AND belnr = it_bkpf-belnr
                                        AND gjahr = it_bkpf-gjahr.
                              Como te puedes dar cuenta para hacer el FOR ALL ENTRIES necesitarias los datos del pedido, pero veo en tu SELECT que estas recuperando todos los pedidos de una condicion muy general, tal vez seria mejor no trabajar con la VBFA a menos que estes sacando informacion que no se encuentren en las tablas normales (VBAK, VBRK, LIKP) y hacer un JOIN con solo esas 3 tablas[/QUOT
                              Ya entiendo lo que me quieres decir, pero sabes cual es mi problema que no conozco bien las tablas y por mas que busco como unir las 3 tablas . Me entiendes porque campos deberia realizar el join para decir que el pedido x tiene una factura j y una entrega l de un period determinado.
                              YPonce

                              Comentario

                              Trabajando...