Executing Excel Session in Background
All,
In SAP BW 3.5 we created a recording (through transaction SHDB) of accessing transaction UPSPL (is a SAP transaction with an Excel session embedded in it, data in the excel is written to the SAP database). Then generated an ABAP report of the recording. When running the ABAP report through se38 in the background, the excel mentioned above is not called/executed correctly i.e. the macros in the excel are not executed (probably because simulating running Excel macros in background is technically not possible?).
When running the ABAP report in the foreground (setting 'call transaction'), the report perfectly executes the macro i.e. result is the same as accessing and saving the excel manually through UPSPL.
Read somewhere that installing Excel on SAP (BW) server could be an idea? Because in the above the Excel desktop version is called?
Would you know how to solve the above? Or experiences with it? Thanks.
Regards, Meindert Postma
PS also posted the above on the SAP BW/BPS forum, from a more BPS point of view.
Running BPS planning folder in background - possible?
Hi Meinder Postma
I don't know exactly how this works but I think it is like this:
The embedded excel functionality is obtained via SAPgui objects.
The application communicate with excel via a program-to-program-to-program interface between a program in the SAP kernel on the application server, via a SAPgui object on the PC with SAPgui installed and to excel on the same PC.
Like this:
Server SAP kernel <=> PC SAPgui <=> PC excel
In this setup I see no possible way that this can run in background, because in background you have no SAPgui communication at all.
best regards
Thomas
Similar Messages
-
Data of alv report in excel file in background processing using open datas
Hi Experts,
I have developed report for purchase register . if i execute this report in background process i am not able to get the downloaded file in excel and output is also not coming properly, columns are going to overlap.
i used open dataset read dataset and close dataset but still problem is not solved. so if anyone have code with this and also which will have concatenate statement in the code send it.
Regards,
RahulHi Rahul,
Ur code shud be like below:
DATA : l_filename2 TYPE string,
v_extn.
SPLIT p_filename AT '.xls' INTO l_filename2 v_extn.
CONCATENATE l_filename2 'downloaded' INTO l_filename2 SEPARATED BY '_'.
CONCATENATE l_filename2 'txt' INTO l_filename2 SEPARATED BY '.'.
OPEN DATASET l_filename2 IN TEXT MODE FOR OUTPUT ENCODING DEFAULT.
IF sy-subrc <> 0.
MESSAGE e499(sy) WITH text-e02.
ENDIF.
LOOP AT it_order_number INTO wa_order_number.
TRANSFER wa_order_number TO l_filename2.
ENDLOOP.
CLOSE DATASET l_filename2.
Now, go to tcode AL11 and check it in the Application server itself.
Hope this helps,
Regards,
Arnab. -
URGENT - HOW TO PROCESS A BDC SESSION (IN BACKGROUND) FROM INSIDE A REPORT
Hi All,
I have a requirement wherein I need to create a BDC session for mass update(from file) of one transaction and check if at all that update has taken place and proceed with the same session for another transaction.
For this I need to know how to process the session in background in a report, so that if the processing is done, the next set of data to update a different transaction can happen.
All inputs are welcome and highly valuable to me.
If someone is unable to intrepret this, I'll detail it again.
Thanks in advance,
Vaishnavi VaradarajanHi,
1.Use RSBDCDRU is an exe pg.With this u can download the logs into local file.
2.It will create the spool request .from there u can download or print.
OtherWise:
Use the code from the link below. U need to provide the session queue id as input and it will download the log to an excel file. U can change it to ur reqmt.
Re: BDC
regards
kiran -
SM35 Re-processing of Incorrect/Error session in Background Mode
Hi all,
I am trying to reprocess a session in SM35 which is in Error status. Here I am a facing an issue, if I reprocess this session in background mode then it says that Batch input data is not available for a screen which is already processed. Ideally it should start from the screen where it threw error in the first run. If I select mode as Foreground or Display error then session is getting processed correctly.
Note:
If the session is in Ready to Process state then processing in background works perfectly fine. Has anyone came across this problem ?
Has anyone tried reprocessing Incorrect Session in background mode ??????
Regrads,
AntonyThanks Sandra,
Indeed I understood the problem. And the problem is that transaction KEBC is always executed correctly & since its processed correctly its removed from the BDC Queue
Here transaction KEBC, sets a Memory Parameter, and transaction KEU2, first checks whether the memory parameter is initial, if found intial it pops-up a screen and makes the user enter it. In my case KEBC always run successfully
As you rightly suggested when session is in error, transaction KEBC is not getting called again to set the memory parameter & its throwing the pop-up from the transaction KEU2 to be entered by the user. ( BDCDATA currently dosent handle this Pop-up).
I could have omitted the KEBC transaction, but handling this pop-up from transaction KEU2 becomes tricky since it will only pop-up if the memory parameter is initial. And unfortunately Pop-up is the first screen in the sequence for transaction for KEU2 & nothing can be done in coding level to call KEU2 with the pop-up in all scenarios(Even when Memmory varaible is set) !
So I am kind of in a dilema, how to handle this? What I am suggesting to the Functional consultant is that let the session be only run in background mode (as it will be always in a new internal session memory variable will always be inital ) & I will record this pop-up in my BDC omitting transaction KEBC.
Do you have anyother solution for this?
Or is there any option to re process even the successfull transacations ? -
Processing the session in background
Hi experts,
I have created a BDC program in session method. Once i executed the program, it creates a session name.
Then i select the corresponding session name in SM35 and process it in background.
But i dont want to goto SM35 and process the session explicitely.
How to process the session in background without going to SM35 tcode?
Regards,
ShanthiHi shanti,
check with below code... but one point keep remember. when your trying to post a question check SDN and if your not succeeded then only post the question. so it will avoid the duplicate postings on the same topic i am right ?.
Hi,
Use this sample code
DATA: RUNTIME TYPE I. "Runtime
DATA: GROUP LIKE APQI-GROUPID, " Mappenname
BDCIMMED LIKE RFIPI-BDCIMMED, " nur BDC: sof. Abspielen
BDCSTRTDT LIKE TBTCJOB-SDLSTRTDT, "nur BDC: Startdatum
BDCSTRTTM LIKE TBTCJOB-SDLSTRTTM. "nur BDC: Startzeit
form mappe_abspielen_im_batch.
GET RUN TIME FIELD RUNTIME.
JOBNAME = 'RFEBFD00-FIEB'.
JOBNAME+14 = RUNTIME.
eak-point.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
JOBNAME = JOBNAME
JOBGROUP = 'FIEB'
IMPORTING
JOBCOUNT = JOBCOUNT
EXCEPTIONS
CANT_CREATE_JOB = 01
INVALID_JOB_DATA = 02
JOBNAME_MISSING = 03.
IF SY-SUBRC NE 0.
MESSAGE E015 RAISING SESSION_NOT_PROCESSABLE.
ENDIF.
SUBMIT RSBDCSUB AND RETURN
USER SY-UNAME
VIA JOB JOBNAME NUMBER JOBCOUNT
with mappe = group
WITH MAPPE = BI-NAME
WITH VON = SY-DATUM
WITH BIS = SY-DATUM
WITH Z_VERARB = 'X'.
BDCSTRTDT = SY-DATUM.
BDCSTRTDT = SPACE.
BDCSTRTTM = SPACE.
BDCIMMED = 'X'.
bdcstrttm = runtime.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
JOBNAME = JOBNAME
JOBCOUNT = JOBCOUNT
STRTIMMED = BDCIMMED
SDLSTRTDT = BDCSTRTDT
SDLSTRTTM = BDCSTRTTM
EXCEPTIONS
CANT_START_IMMEDIATE = 01
JOBNAME_MISSING = 02
JOB_CLOSE_FAILED = 03
JOB_NOSTEPS = 04
JOB_NOTEX = 05
LOCK_FAILED = 06.
IF SY-SUBRC NE 0.
MESSAGE E015 RAISING SESSION_NOT_PROCESSABLE.
ENDIF.
CLEAR BDCIMMED.
BDCSTRTDT = SPACE.
BDCSTRTTM = SPACE.
~lingannna -
Delete a session in background form SM35
Hi experts:
I have a doubt. Is it possible to delete a Session from SM35 in background? We have executed a session with too many records, and we need to stop it. Is it possible? We have tried to delete session, to stop it from sm50, but it is not possible.
How we can do this? Any idea?
Thanku2019s in advance for your help.
Best regards.Hi,
This might be helpful for you to stop the process
http://forums.sdn.sap.com/thread.jspa?threadID=107060 -
Batch input session in background
hai guys,
Can we execute Batch input session in background scheduling thru jobs.
i tried with sm37. but there is not option i guess.
could you pls guide us.
ambichan.Hi Ambi,
As Anand and Wolfgang suggested, what you need to do in your ZFB05 program is as follows. Insert this after you create the sessions.
Add parameters to your ZFB05 program for the session background processing like date, session name etc.
Then after you create your sessions, insert the following code
*-- run in the background
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = 'YOURJOBNAME'
IMPORTING
jobcount = v_jobcount
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'E' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
EXIT.
ENDIF.
submit rsbdcsub with mappe = 'YOURSESSIONNAME'
with z_verarb = 'X'
with fehler = 'X'
USER sy-uname
VIA JOB 'YOURJOBNAME'
NUMBER v_jobcount AND RETURN.
*-- close the job
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = v_jobcount
jobname = 'YOURJOBNAME'
strtimmed = 'X'
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'W' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Hope this helps,
Srinivas -
How can we execute the session in error mode through SE38 program
Dear Experts,
How can we execute the BDC session in error mode through se38 programme....
we can execute the session in the below 2 ways
1) Through SM35 we can process the session manually in foreground/Error mode or Background also.
2) through RSBDCSUB (standared Program) we can process the session in back ground.
But i want to process the session in foreground or Error mode..Do we have any standared program for process the session in foreground or error mode.
Please suggest.
Regards,
Bussa.Hi Bussa,
Please maintain the mode as 'E' . If there is any errors it will stop else it will run.
http://wiki.sdn.sap.com/wiki/display/ABAP/BatchInput-+BDC
http://wiki.sdn.sap.com/wiki/display/ABAP/BatchInputFAQ#BatchInputFAQ-WhySHDBdidn%27trecordsomescreens%3F
Regards,
madhu. -
How to Create Excel File in Background processing with different colors
HI All
I am trying to create Excel file in background & send it to user through e-mail, this i could acheive using fucntion module SO_DOCUMENT_SEND_API1, but here my requirement is i want to put different colors to columns of excel & this should happen in Background processing,
Initially i completed above requirement by using HTML type of document with attachment type 'ALI' & formatted output using write statement & used colors, after that i took this o/p using save_list function module & then table compress...etc.
but i don't know how to achieve same if we need o/p in excel as size of object of excel file is less than that of HTML
I am thankfull to everybody who will help me.
Regards
LokeshLokesh,
Iam also trying to populate my text file with colors as an attachment . If you know this please let me know. -
Require Job name in SM37 while executing call transaction in background
Hi all,
I am executing a report program, which contains Call transaction.
I have recorded properly. The recording contains background job screen also ( means a separate popup came and i gave the job name and i gave immediately )
When i execute in this program in foreground its creating job,its showing the job in sm37.
But when i execute this program in background, it does not showing the job name in sm37.
Anyone kindly help this out?
AnandhabHi,
The job will be created by the step level user.
Try searching again with jobname and * for username.
Regards,
Jovito -
BDC is not working in when executing the program in background
Hi gurus,
I have a problem that in BDC is not working when i'm executing the upload program in background thru scheduling(SM36) , while it works fine when i execute directly with NO screen display modeMany transactions behave differently when executed in foreground and background. The fields on the screen may be different.
In transaction SHBD when starting a recording there is a checkbox where you can select 'Simulate Background Mode'. If you do your recording using this option you will get the code suitable for background mode. If you do not select this option you will get a code for foreground mode.
By compairing the two codes you will know the changes required for background mode.
Hope this helps you -
Leaving excel Inplace, the excel session is still active
I all,
I use the Excel Inplace method to format data in PivotTables. I use a template based on sap_MM.xls with the procedure Public Sub ALV_CUS_Exit (). It is working correctly.
My problem happens when I leave the transaction and return to the initial screen. The excel session is still active causing blockages in the Excel application itself
I looked at the OSS note 122539: it describes functions which do not yet exist in the SAP delivery for certain events. I have tried those functions with the SAP declaration like :
public sub customer_workbook_deactivate()
Me.Application.Quit
End Sub
Either I use the wrong syntax or I do not set the code in the correct place of the VBA project, I have never activated these functions while leaving the screen excel inplace.
Can you guide me to a solution ?
In advance thank you very much.Thanks, but my first problem is that I do not pass through the procedure. Once I pass through it I'll try "me.quit()".
Regards. -
Excel Add-in & Multiple excel sessions.
We all know the limitation of the add-in with multiple sessions of excel going (unpredictable results), but for an accountant it seems pretty restrictive. Especailly if there are long running retrieves. e.g. a macro that retrieves data for multiple sheets.
Anyone found a way to let someone continue working with excel (not in retrieve mode) while the long running retrieve is going?First, understand that the session limit is one of Excel instancing, not connection/workbook related itself.
You can, with a single excel session, have multiple workbooks open, running multiple calcs connected to multiple databases, and continue to do retrieves relatively unmolested.
The impact on doing the additional items is not severe, but occasionally noticeable.
The session limit itself is a pain when you have embedded spreadsheets though, because you wouldn't be able to work in a spreadsheet attached to a powerpoint presentation if excel is open, and you do tend to get limited quite significantly if excel is not your "primary" session. -
Hi All,
My program is generating a session . Now i need to process this session in background without going to the SM35
Is there any other alternative to do so using the FMs or by settings any options in the SUMBIT statement .
Thank you,
Regards.
Padmasri.Yes Option is there byusing SPOOL Generation.
Create a new program and Copy same Internal table into it.
Use SUBMIT for that program in your main program as follows:
SUBMIT (P_REPID) TO SAP-SPOOL WITHOUT
SPOOL DYNPRO
SPOOL PARAMETERS MSTR_PRINT_PARMS
AND RETURN .
Use FM as follows to sent spool for execution in background.
EXPORT T_MAIN = T_MAIN TO MEMORY ID 'T.Code'.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
AUTHORITY = SPACE
COPIES = '1'
COVER_PAGE = SPACE
DATA_SET = SPACE
DEPARTMENT = SPACE
DESTINATION = 'LOCL'
EXPIRATION = '1'
IMMEDIATELY = SPACE
IN_ARCHIVE_PARAMETERS = IN_ARC_PARAM
IN_PARAMETERS = IN_PARAM
LAYOUT = SPACE
MODE = SPACE
NEW_LIST_ID = 'X'
NO_DIALOG = 'X'
USER = SY-UNAME
IMPORTING
OUT_PARAMETERS = MSTR_PRINT_PARMS
VALID = MC_VALID
EXCEPTIONS
ARCHIVE_INFO_NOT_FOUND = 1
INVALID_PRINT_PARAMS = 2
INVALID_ARCHIVE_PARAMS = 3
OTHERS = 4.
Regds,
Anil -
Essbase with ActiveX Excel Session?
Does anybody know if there are limitations with the Add-in and an Active X excel session?
Do you mean that you created an instance of Excel using the VB CreateObject function (or a similar C++/.NET equivilent)? If so, I don't believe addin's get loaded when you create the object instance.
What you will to do is check the installed property of an addin object (Application.Addins.Item("essexcln").Installed) and install it if necessary. Note: the string "essexcln" may change from version to version of Essbase and perhaps even in the installation. In fact, I have never seen another installation (other than my laptop I am writing this on) that used that string). It is essentially the string you see in the Tools, Addins dialog and more typically is something like "Hyperion Essbase OLAP Server" or something like that.
Tim Tow
Oracle ACE
Applied OLAP, Inc
Maybe you are looking for
-
Can't get texts from one person
Does anyone know of anything I could try to help me receive texts from someone that I previously received texts from just fine? About 2 weeks ago a friend of mine and I noticed that neither of our texts were being received by the other. He uses an i
-
Thumbnails but no originals in iPhoto library
I thought I backed up my library using time machine to an external drive but all I see are thumbnails & when I click on one a big question mark comes up instead of the full size original. I tried rebuilding the library from the external drive but now
-
Cannot Start SI4 After New License
I have a test drive version of NW 4 running on Suse 9.2 Linux and db2. It ran fine for 3 months. Yesterday I installed a new license because the old one expired. I installed it as root while the db was running. This morning, I cannot start sap, be
-
FS NAS CLUSTER cannot join domain
FS 7x series trying to join a nas cluster to the domain and im getting "cluster already exist in the domain , leave the domain and join again" i see no traces for it in AD , and in group manager it doesnt say leave domain it only says configure AD
-
Could you help to send the data sheet to me, mark F21905PAG
please send the F21905PAG (a chip which convert usb to ide) datasheet to me. thanks a lot.