Amigos Abap - Consulta

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • braschilester

    #1

    Amigos Abap - Consulta

    TENGO UN Z-DESARROLLO.
    QUE ACTUALIZA UNOS ARCHIVOS, PERO EN UNO DE ELLOS NO HACE NADA
    ES DECIR DEJA VACIO EL ARCHIVO SIN DATOS..
    ENVIO EL CODIGO HABER SI ME AYUDAN POR FAVOR:

    FORM CARGA_PEDIDOS.
    DATA : NETPR TYPE P,
    NETWR TYPE P.
    DATA VALOR(13).

    *'Ojo solo prov. nacionales
    *---------- Captura de los PEDIDOS
    *-------------------------------------------------------------
    LOOP AT TABPROI.
    SELECT * FROM EKKO WHERE BUKRS IN S_BUKRS
    AND LIFNR EQ TABPROI-LIFNR
    AND BSART IN ('NB','ZI','ZM')
    AND EKORG IN S_EKORG
    AND LOEKZ = ' '
    AND AEDAT BETWEEN FEC_INI AND SY-DATUM.
    MOVE-CORRESPONDING EKKO TO TABPED.
    C_PEDIDO = C_PEDIDO + 1.
    *{ REPLACE DEVK900641 1
    *\ PERFORM FILE_TABPED.

    *} REPLACE
    *-------- Subrutina de Items para el pedido.
    SELECT * FROM EKPO WHERE EBELN = EKKO-EBELN
    AND LOEKZ = ' '.
    MOVE-CORRESPONDING EKPO TO TABITE.
    ******** Cambia Unidad de Medida (ea --> c/u ,...) *********03052000
    CLEAR SY-SUBRC.
    SELECT SINGLE * FROM T006A WHERE SPRAS = 'S'
    AND MSEHI = EKPO-LMEIN.
    IF SY-SUBRC = 0.
    MOVE T006A-MSEH3 TO TABITE-LMEIN.
    ENDIF.
    CLEAR SY-SUBRC.
    SELECT SINGLE * FROM T006A WHERE SPRAS = 'S'
    AND MSEHI = EKPO-MEINS.
    IF SY-SUBRC = 0.
    MOVE T006A-MSEH3 TO TABITE-MEINS.
    ENDIF.
    CLEAR SY-SUBRC.
    SELECT SINGLE * FROM T006A WHERE SPRAS = 'S'
    AND MSEHI = EKPO-BPRME.
    IF SY-SUBRC = 0.
    MOVE T006A-MSEH3 TO TABITE-BPRME.
    ENDIF.
    *******
    SELECT SINGLE * FROM TCURX WHERE CURRKEY EQ EKKO-WAERS.
    NETPR = EKPO-NETPR * 100.
    NETWR = EKPO-NETWR * 100.
    TABITE-IDNLF = EKPO-IDNLF(22).
    DO TCURX-CURRDEC TIMES.
    NETPR = NETPR / 10.
    NETWR = NETWR / 10.
    ENDDO.
    TABITE-NETPR = NETPR.
    TABITE-NETWR = NETWR.
    C_ITEM = C_ITEM + 1.

    MOVE TABITE-TXZ01 TO I_TEXTO_DEPURADO.
    PERFORM DEPURA_TEXTO.
    MOVE I_TEXTO_DEPURADO TO TABITE-TXZ01.

    PERFORM FILE_TABITE.
    *-------- Subrutina de Items para Historial de entregas.
    SELECT * FROM EKBE WHERE EBELN = EKPO-EBELN
    AND EBELP = EKPO-EBELP
    AND VGABE = '1'
    AND BEWTP = 'E'
    AND BWART IN ('101','102').
    MOVE-CORRESPONDING EKBE TO TABHIS.
    ** valor = ekbe-dmbtr * 100.
    * IF EKBE-SHKZG EQ 'H'.
    ** CONCATENATE '-' valor INTO tabhis-dmbtr.
    * TABHIS-DMBTR = EKBE-DMBTR * -100.
    * ELSE.
    ** tabhis-dmbtr = valor.
    * TABHIS-DMBTR = EKBE-DMBTR * 100.
    * ENDIF.
    TABHIS-DMBTR = EKBE-DMBTR * 100.
    C_HISTO = C_HISTO + 1.
    PERFORM FILE_TABHIS.
    ENDSELECT. " Fin recuperación historial de entrega
    *---------Fin Historial de entregas

    *-------- Subrutina de Items para facturas de costos indirectos .
    IF F_CI EQ 'X'.
    SELECT * FROM EKBZ WHERE EBELN = EKPO-EBELN
    AND EBELP = EKPO-EBELP
    AND VGABE = '2'.
    SELECT * FROM BSEG WHERE BUKRS EQ EKPO-BUKRS
    AND BELNR EQ EKBZ-BELNR
    AND GJAHR EQ EKBZ-GJAHR
    AND BUZID EQ 'K'.
    IF SY-SUBRC EQ 0 AND NOT BSEG-LIFNR IS INITIAL
    AND BSEG-LIFNR NE EKKO-LIFNR.
    PERFORM AGREGA_PROVEEDOR USING BSEG-LIFNR
    EKPO-BUKRS
    EKKO-EKORG.
    ENDIF.
    ENDSELECT.
    ENDSELECT.
    ENDIF.
    *---------Fin Costos indirectos
    ENDSELECT.
    ENDSELECT. " Fin recuperacion de los pedidos
    ENDLOOP.
    ENDFORM. "carga_pedidos
  • VLozano
    Senior Member
    • nov
    • 124

    #2
    Busca a quien hizo ese programa y exígele que te devuelva lo que cobró, junto con una indemnización por daños morales. Tu servidor no merece un código como ése, aunque haya tenido una infancia agresiva y le haya robado el almuerzo a los servidores de su alrededor.

    Y esto te lo digo sin acritud, y sólo habiendo leído esto:
    Código:
    ENDSELECT.
    ENDSELECT.
    ENDIF.
    *---------Fin Costos indirectos
    ENDSELECT.
    ENDSELECT. " Fin recuperacion de los pedidos
    ENDLOOP.
    El resto del mensaje no lo he querido leer porque:

    1- en el asunto del hilo no nos explicas nada, yo he entrado por curiosidad
    2- escribes en mayúsculas, con lo que mis ojos se quejan
    3- copias una sarta de código así, a lo crudo, sin molestarte en usar el botón para pegar código, que lo hace todo más legible... eso sin indentar y todo en mayúsculas sólo da dolor de cabeza
    4- y lo peor de todo, es que en realidad NO nos has explicado tu problema.

    ¿Qué archivos actualiza? ¿Cuál de ellos NO actualiza? ¿Has debugado? ¿Dónde se supone que tendría que actualizar lo que NO se actualiza?

    Tienes un montón de trabajo, seguro que con un montón de presión encima, y con un montón de prisa. Pero "vístete despacio, que tienes prisa". Si escribes los mensajes
    1- resumiendo el problema en el asunto
    2- en minúsculas para que no nos duela la cabeza
    3- poniendo el código de forma legible
    4- explicando cuál es el problema y lo que has intentado hacer para resolverlo

    A todos nos será más fácil seguir tu trabajo y darte ideas/pistas/soluciones si las tenemos.
    "Porque algunos sabemos que somos parte del problema"
    - Pequeña guía para escribir mensajes en foros técnicos -

    Comentario

    • braschilester

      #3
      Gracias-ya Solucione-el Code Nose Quien Lo Creo Soy New En La Empresa

      Form File_tabped.
      If P_unix Ne Space.
      Transfer Tabped To P_pedid Length 39.
      Endif.
      Append Tabped.
      Endform. " File_tabped

      Comentario

      • VLozano
        Senior Member
        • nov
        • 124

        #4
        Ahora intenta encontrar ese trozo de código en tu mensaje original. Luego edita el mensaje original, selecciona todo el código y dale al botón con el dibujo #

        Cuando lo guardes, el mensaje habrá cambiado un montón, será legible, y probablemente el código esté indentado, con lo que los bloques se diferenciarán mejor.

        Felicidades por la solución, y mis condolencias por la herencia. Espero que te paguen bien (aunque tal como está el mercado, sólo que te paguen ya vale la pena )
        "Porque algunos sabemos que somos parte del problema"
        - Pequeña guía para escribir mensajes en foros técnicos -

        Comentario

        • braschilester

          #5
          Amigo Vlozano

          Te puedo enviar el Codigo Completo del Desarrollo.

          Me correre el programa pero el Archivo CI_PEDID

          queda vacio no se cargan datos y en los otros si

          todo correcto.-

          ayudame pls

          Comentario

          Trabajando...