Now that I am undergoin trainin on BDC-Batch Data Communication...I came across the three update modes that are available in Call Transaction Method- Synchronous processing,
Asynchronous update and Local update.The Difference btw Synchronous and Asynchronous is often misinterpreted. So I thought I ll give a clearer picture by explainin with examples.
If the update mode is Synchronous: Till the previous record is not updated in the database, next record is not implemented.
Scenario:Lets say we do a bdc recording to create a customer and a sale order.First, a customer is created and then a Sales Order is created for him.
#1 If we give the update mode as Asynchronous update, the process of creating a customer starts and irrespective of whether the customer is created, the Sales Order creation for the particular customer starts. Therefore, there may arise a situation where a customer is not yet created, but a sales order is bein created for him.
#2 To avoid the situation cited above, we have to use Synchronous processing mode. Here, what happens is that a sales order is not created for a customer 'A' unless the customer 'A' is created. i.e., transaction creating the sales order waits for the transaction creating the particular customer to be completed first.
So when do we have to use Asynchronous mode?
Use this mode when there is no dependency between two transactions.For example, you are creatin a customer. Here, there is no harm even if the customers are not created in the
order that is given in the flat file, since each customer is a different entity.
As far as possible, try to use Asynchronous mode because it is faster.If you dont mention any mode, Asynchronous is the default mode.
The third mode is the Local update. Since I did not understand this mode, I request the visitors to throw some light on the working of this mode...through their comments. Thanks in advance..
Thursday, August 30, 2007
Wednesday, August 22, 2007
Two radio buttons on the same line
I was trying to incorporate radio buttons in my program selection screen..
The radio buttons were comin in 2 different lines..but i wanted them on the same line..
So here is my code to do it..
.....................................................
.....................................................
SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: PLANT FOR WERKS OBLIGATORY,
COMPANY FOR BUKRS NO INTERVALS,
SO_CDAT FOR ERDAT OBLIGATORY,
PO_TYPE FOR BSART OBLIGATORY.
SELECTION-SCREEN:SKIP.
SELECTION-SCREEN:BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN: BEGIN OF LINE.
PARAMETERS:CLAIMED RADIOBUTTON GROUP GRP1 USER-COMMAND FCODE1.
SELECTION-SCREEN COMMENT (25) TEXT2.
SELECTION-SCREEN POSITION 30.
PARAMETERS: DISP_ALL RADIOBUTTON GROUP GRP1 DEFAULT 'X' .
SELECTION-SCREEN COMMENT (20) TEXT3.
SELECTION-SCREEN: END OF LINE.
SELECTION-SCREEN:END OF BLOCK B2.
SELECTION-SCREEN: END OF BLOCK B1.
INITIALIZATION.
TEXT2 = 'Claim not equal to zero'.
TEXT3 = 'Display all'.
START-OF-SELECTION.
..............................................
..............................................
The radio buttons were comin in 2 different lines..but i wanted them on the same line..
So here is my code to do it..
.....................................................
.....................................................
SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: PLANT FOR WERKS OBLIGATORY,
COMPANY FOR BUKRS NO INTERVALS,
SO_CDAT FOR ERDAT OBLIGATORY,
PO_TYPE FOR BSART OBLIGATORY.
SELECTION-SCREEN:SKIP.
SELECTION-SCREEN:BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN: BEGIN OF LINE.
PARAMETERS:CLAIMED RADIOBUTTON GROUP GRP1 USER-COMMAND FCODE1.
SELECTION-SCREEN COMMENT (25) TEXT2.
SELECTION-SCREEN POSITION 30.
PARAMETERS: DISP_ALL RADIOBUTTON GROUP GRP1 DEFAULT 'X' .
SELECTION-SCREEN COMMENT (20) TEXT3.
SELECTION-SCREEN: END OF LINE.
SELECTION-SCREEN:END OF BLOCK B2.
SELECTION-SCREEN: END OF BLOCK B1.
INITIALIZATION.
TEXT2 = 'Claim not equal to zero'.
TEXT3 = 'Display all'.
START-OF-SELECTION.
..............................................
..............................................
Tuesday, August 21, 2007
Saving an ALV report as Excel File in Presentation Server
About saving alv report as excel file in presentation server…
I have struggled to accomplish this task…I did not find any solution which I could easily understand on net..So I am giving the explanation in general terms..
As you know, we use REUSE_ALV_GRID_DISPLAY / LIST_DISPLAY,
In addition to the general parameters there, use the I_CALLBACK_USER_COMMAND parameter to give the name of your form.
Then, in the form, use ‘case syucomm’ to check ‘when’ it contains the function code you have assigned for the button(for which you are assigning this functionality),then call the function GUI_DOWNLOAD(inside case).
Excerpts of a program is given below:
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
…………………………..
…………………………..
FORM SET_PF_STATUS USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'STANDARD'.
ENDFORM.
FORM USER_COMMAND using p_ucomm like sy-ucomm SELFLD TYPE SLIS_SELFIELD.
CASE p_ucomm.
WHEN 'SAVEEX'.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = ‘C:/test.xls’
FILETYPE = 'DAT'
CONFIRM_OVERWRITE = 'X'
………………………..
………………………..
and uncomment all the exceptions
ENDFORM
I have struggled to accomplish this task…I did not find any solution which I could easily understand on net..So I am giving the explanation in general terms..
As you know, we use REUSE_ALV_GRID_DISPLAY / LIST_DISPLAY,
In addition to the general parameters there, use the I_CALLBACK_USER_COMMAND parameter to give the name of your form.
Then, in the form, use ‘case syucomm’ to check ‘when’ it contains the function code you have assigned for the button(for which you are assigning this functionality),then call the function GUI_DOWNLOAD(inside case).
Excerpts of a program is given below:
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
…………………………..
…………………………..
FORM SET_PF_STATUS USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'STANDARD'.
ENDFORM.
FORM USER_COMMAND using p_ucomm like sy-ucomm SELFLD TYPE SLIS_SELFIELD.
CASE p_ucomm.
WHEN 'SAVEEX'.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = ‘C:/test.xls’
FILETYPE = 'DAT'
CONFIRM_OVERWRITE = 'X'
………………………..
………………………..
and uncomment all the exceptions
ENDFORM
SmartSAP
This is a technical Blog- as the name suggests- its everythin bout SAP that's usually not found on net.
My idea is to share my knowledge in this field with you all..As I am a new kid to this block..I request the visitors to correct me if I am wrong ...thru their comments.
I ll try my best to blog as frequently as possible.
Hope this blog fulfills the very reason of it bein created.
Any suggestions and comments are welcome.
I strongly believe in this...Dream is not what you see in sleep; is the thing which does not let you sleep.
-A.P.J.Abdul Kalam
ENJOY SAP....
My idea is to share my knowledge in this field with you all..As I am a new kid to this block..I request the visitors to correct me if I am wrong ...thru their comments.
I ll try my best to blog as frequently as possible.
Hope this blog fulfills the very reason of it bein created.
Any suggestions and comments are welcome.
I strongly believe in this...Dream is not what you see in sleep; is the thing which does not let you sleep.
-A.P.J.Abdul Kalam
ENJOY SAP....
Subscribe to:
Posts (Atom)