‎2010 Aug 18 1:41 PM
Hi all,
I have a created a module pool program and scheduled it in the background for every 3 minutes. For few days it worked fine. But now expected result is not coming. I am explaining the process below:
A csv file will come from external source to sap application folder for every 1 hour. My program will run for every 3 minutes in background (sm37) and fetch the csv file from SAP application folder and then upload to the u201CZu201D table created by me.
From there in the loop of the above table (internal table) I have written a BDC program to upload the data to FF68 transaction. Here, if there are 10 line items in the csv file, sometimes one or two line items will be skipped and wonu2019t upload to the FF68 transaction.
I even debug the program and checked. All the data from the csv file are properly updating into the internal table after which the BDC all transaction is used.
I am not able to figure out the exact problem. Kindly suggest on this or is there any standard program to upload the data to FF68 transaction.
Regards,
Praveen
‎2010 Aug 18 1:49 PM
I trust that your program is writing error messages to the log or to the spool output? If not, you're flying blind.... Why so frequently? Are you sure you're managing the input tables correctly (e.g., after you read it in, you immediately archive or delete it?)... I would suspect that the frequency of execution is grabbing the same table as prior execution, if the input file is not being immediately handled.
SAP doesn't arbitrarily throw away data...you need to see job log and spool file (which I hope you're creating) to see what is happening to the data rows that "disappear". Perhaps the data values are invalid...does your program identify those and deal with that.
When processing an input file in background jobs, our programs should account for every row read, and output some statement as to the disposition of every row, IMHO.
‎2010 Aug 20 7:11 AM
I have implemented all the related checks like valid customer and their bank code and account key etc. If the customer is not present, an error message will be updated to the "Z" table created by me. Similarly if the Bank details are not maintained for the customer in the master tables, an error message indicatind the same is updated to the "Z" table.
‎2010 Aug 18 1:52 PM
Hi ,
Please debugg the background job using the command JDBG . the process is :
1. go to sm37 and select the job
2. enter the command JDBG in the command bar
3. it will show some standard code , press f7 till the code comes to your program
4. You are already in the program, just debugg it and find the problem in All screen mode.
Regards,
Venkat Appikonda
‎2010 Aug 19 12:13 PM
Hi Venkat,
Thanks for quick response. I tried that option before posting it to the forum. I think I have entered debug mode at wrong time. Not sure about it. Soon after the job time starts (for example - 04:30:37), Im entering the debug mode after a delay of 2 or 3 seconds (as the job's status will show the finished status after 5 or 6 seconds from the starting time). By doing so, the data is not fetching. So i didnt worried much about this option. I kept trying all other methods with no result.
Is it the correct procedure and correct time interval to enter into the debug mode. Please suggest.
Also I tried to post the code using code tags. But it is displaying like a sentence only. is there any option something like attachment, so that i can attach my code which may help anyone to give suggestions.
Regards,
Praveen