Problema en tipo de ejecución

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • SAPING
    Senior Member
    • may
    • 199

    #1

    Problema en tipo de ejecución

    Buenas.
    Estoy teniendo un problema muy muy particular y que ya no le encuentro sentido.
    La descripción es la siguiente:
    Tengo 2 programas, en el primero, el cual se ejecuta por un job cada X minutos, y el segundo que se ejecuta online mediante una trx cada vez que se requiera.
    El primer programa, levanta los numeros de factura sap de una tabla Z que se carga en una EXIT, con status PENDIENTE. Una vez obtenido este listado, obtengo de las tablas SAP asociadas(ya sean FI o SD) los datos del documento y genero un txt. Paso siguiente, actualizo el registro de la tabla Z a status PROCESADO. (Fin Lógica)
    En el segundo programa, se ingresa por pantalla un numero de factura para ser reprocesado. El programa, lo único que hace es actualizar el registro de la tabla Z (la misma que utiliza el primer programa) y colocarle al registro correspondiente el status de PENDIENTE nuevamente. Luego se realiza un CALL TRANSACTION al primer programa para generar el txt del mismo modo que lo hace el otro programa.(Fin Lógica)

    El rarisimo problema que se me presenta es que con el job, me esta trayendo datos erroneos o incompletos, siendo que el reproseso(el cual efectua el call transaction al programa del job) al ejecutarlo me genera correctamente el txt con todos los datos OK.

    Ya probe generando un documento y procesandolo de inmediato online, mientras debugeo pero los datos los trae ok de esta manera.(quiero suponer es algo del job pero no se que ?!)
    Sinceramente no se me ocurre que puede estar pasando.

    Si alguno me puede hechar una pista se los voy a agradecer.
    (Cualquier detalle me es util aunque sea para realizar pruebas)

    Muchas gracias!!..
  • kiboqac
    Member
    • mar
    • 55

    #2
    No entiendo bien el problema, cuando lo ejecutas online funciona correctamente y cuando lo ejecutas mediante el job trae otros datos?

    Que es lo que anda mal? los select que realiza o alguna bapi en particular?

    Lo que haria yo es poner un loop infinito y por medio de la sm50 debuguear el job para precisamente donde esta fallando el programa.
    Kibo

    Comentario

    • SAPING
      Senior Member
      • may
      • 199

      #3
      Originalmente publicado por kiboqac
      No entiendo bien el problema, cuando lo ejecutas online funciona correctamente y cuando lo ejecutas mediante el job trae otros datos?

      Que es lo que anda mal? los select que realiza o alguna bapi en particular?

      Lo que haria yo es poner un loop infinito y por medio de la sm50 debuguear el job para precisamente donde esta fallando el programa.
      Claro, cuando ejecuto online no tengo ningun inconveniente, pero en job me trae datos erroneos o incompletos.
      Me da error, por ejemplo, en un mismo txt, con las notas del documento(las cuales usa una funcion para traerlos) y para la condicion de pago(directamente de las tablas SAP).
      Debugeando online me da todo OK, voy a probar hacer lo del loop y debugear el job haber que me trae.
      En este caso, debugeando el job, suponiendo que me trae los datos OK, cual podria ser la causa que me genere mal el archivo?. Algun error en la programacion del job?..

      Gracias por la respuesta !!..
      Editado por última vez por SAPING; 16/05/2011, 20:02:17.

      Comentario

      • kiboqac
        Member
        • mar
        • 55

        #4
        Por lo que tengo entendido (a mi nunca me ha pasado) cuando se ejecuta por job algunas cosas std funcionan diferentes.

        Para saber si el error esta en la programacion del job; podrias ejecutar tu programa pulsando F9 (en lugar de F8) y programarlo Inmediatamente; si de esa manera funcion OK es que el problema esta en la configuracion del JOB; en caso que siga funcionando mal deberias de revisar el codigo.

        Si es mucho problema debuguear; podrias ir poniendo como "Transfer" al archivo para ver el resultado de algunas busquedas y luego al ver el archivo, ver donde esta fallando.

        Imagino que el archivo lo guardas en el servidor No?

        Realmente es complicado determinar este tipo de inconsistencias pero deber ser una boludes (un problema tonto) lo que te esta ocurriendo; por eso por medio los transfer podes hacer un seguimiento algo rustico de lo que pasa en tiempo de ejecucion
        Kibo

        Comentario

        • SAPING
          Senior Member
          • may
          • 199

          #5
          Originalmente publicado por kiboqac
          Por lo que tengo entendido (a mi nunca me ha pasado) cuando se ejecuta por job algunas cosas std funcionan diferentes.

          Para saber si el error esta en la programacion del job; podrias ejecutar tu programa pulsando F9 (en lugar de F8) y programarlo Inmediatamente; si de esa manera funcion OK es que el problema esta en la configuracion del JOB; en caso que siga funcionando mal deberias de revisar el codigo.

          Si es mucho problema debuguear; podrias ir poniendo como "Transfer" al archivo para ver el resultado de algunas busquedas y luego al ver el archivo, ver donde esta fallando.

          Imagino que el archivo lo guardas en el servidor No?

          Realmente es complicado determinar este tipo de inconsistencias pero deber ser una boludes (un problema tonto) lo que te esta ocurriendo; por eso por medio los transfer podes hacer un seguimiento algo rustico de lo que pasa en tiempo de ejecucion
          Nunca use TRANSFER, como seria eso?

          Si, lo estoy guardando en el servidor.

          Voy a probar con F9 como decis haber que pasa.
          Puntualmente, todos los errores que me bajo en el txt fueron para las notas del documento y las condiciones de pago.. despues el resto lo obtiene ok.

          Supongo y espero que si, que sea una boludes.

          Gracias de nuevo por tu interes en mi problema.

          Comentario

          • SAPING
            Senior Member
            • may
            • 199

            #6
            Sigo con el mismo problema
            El programa cuando lo ejecuto online, o debugeo el job me da ok.
            Caso contrario, si se ejecuta el job normalmente, me genera los archivos pero vacios.
            :S

            Puede ser problemas de permisos del usr que genero el job ???... Cabe esa posibilidad???


            (me estoy ahogando en este vaso con agua!!)

            Comentario

            • DCErick
              Moderator
              • mar
              • 1090

              #7
              Con que instrucción estas generando los archivos?.
              -------------------
              ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

              Comentario

              • SAPING
                Senior Member
                • may
                • 199

                #8
                Originalmente publicado por DCErick
                Con que instrucción estas generando los archivos?.
                OPEN, TRANSFER y CLOSE....

                Es muy raro esto..

                Comentario

                • SAPING
                  Senior Member
                  • may
                  • 199

                  #9
                  Es rarisimo... este job se ejecuta cada 5min y NO HACE NADA !!.. lo tengo que ejecutar manual para que me genere correctamente los archivos.

                  AYUDA POR FAVOR

                  Comentario

                  • SAPING
                    Senior Member
                    • may
                    • 199

                    #10
                    El problema de que me genera archivos en blanco se soluciono !! (aparentemente)
                    El problema, al parecer, era de permisos del usuario que ejecutaba el job.
                    Realmente no se bien que se modifico puntualmente, si los permisos del usr o el "Destino Ejecuc." del job.

                    Ahora me quedan 2 puntos pendientes, de los cuales ya realice unas modificaciones y me queda validar si se soluciono el problema o no.

                    Los mantengo al tanto !!

                    Saludos.

                    Comentario

                    • DCErick
                      Moderator
                      • mar
                      • 1090

                      #11
                      Suponiendo que es por permisos porqué no programas el job con tu usuario y si sale todo correcto entonces ya aseguras que es por permisos y no andas moviendole a lo que se supone corre bien OnLine .

                      O bien programa el job con el usuario que necesita que corra y despues de que se ejecute entras a la SU53 y buscas las autorizaciones fallidas de ese usuario.
                      -------------------
                      ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

                      Comentario

                      • SAPING
                        Senior Member
                        • may
                        • 199

                        #12
                        Originalmente publicado por DCErick
                        Suponiendo que es por permisos porqué no programas el job con tu usuario y si sale todo correcto entonces ya aseguras que es por permisos y no andas moviendole a lo que se supone corre bien OnLine .

                        O bien programa el job con el usuario que necesita que corra y despues de que se ejecute entras a la SU53 y buscas las autorizaciones fallidas de ese usuario.
                        El tema es que no tengo permisos... :S (practicamente para nada)..
                        Igualmente con esa modificación esta funcionando (por el momento :P )

                        Graciasss !!!!

                        Comentario

                        • SAPING
                          Senior Member
                          • may
                          • 199

                          #13
                          Bueno gente. Al parecer se corrigio el problema. Paso a contar que pasaba.

                          (empiezo con lo mas facil de explicar)
                          Para las funciones read_text y read_text_inlines, las cuales en job no me traian los textos correspondientes, el tema era el idioma. Los textos se guardaban en español y el usr del job era ingles, por lo tanto, al pasarle sy-langu como parametro, y como es logico, nunca me traia los textos.

                          Para un dato puntual, en mi caso la condicion de pago del pedido, sucedia que no me traia los datos correctamente o no me los traia directamente. El problema en este caso fui YO, jeje. Realizaba un BINARY SEARCH sin tener ordenada la tabla, por lo que si se procesaban mas de un documento no me encontraba la condicion de pago.

                          El tercer problema, el cual me genero mas inconvenientes, fue lo ultimo que me paso, en el cual el job me generaba archivos en blanco/vacios. El problema en este caso era el usuario del job, y/o el destino de ejecucion seteado en el job. Una vez modificados estos puntos los archivos comenzaron a generarse correctamente.

                          Muchas gracias por su tiempo. Espero sigan saliendo asi las cosas..jeje..

                          Saludos.

                          Comentario

                          Trabajando...