2015 Mar 30 9:31 AM
Hi,
I had done the BDC recording for the transaction code ABT1N and I had used the session method i.e BDC_OPEN,BDC_INSERT and BDC_CLOSE function module and I run this session in SM35 and for 7 records it is working fine and for 8th record and I am getting Maxinum number of session reached and BDC is not running.Could any one tell me how to handle this situation
Please find the below code
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
client = sy-mandt
group = group
user = sy-uname.
* ENDIF.
*
LOOP AT tab.
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
perform screen1 using 'SAPLAMDPS2I' '0100'.
perform field using 'BDC_OKCODE' '/ENEWC'.
*
PERFORM screen1 USING 'SAPLSPO1' '0100'.
perform field using 'BDC_OKCODE' '=YES'.
*
perform screen1 using 'SAPLSPO4' '0300'.
perform field using 'SVALD-VALUE(01)' cc.
perform field using 'BDC_OKCODE' '=FURT'.
*
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
PERFORM screen1 USING 'SAPLAMDPS2I' '0100'.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
WRITE ddat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BLDAT' dat.
WRITE pdat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BUDAT' dat.
WRITE adat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BZDAT' dat.
PERFORM field USING 'RAIFP2-SGTXT' tab-ftxt.
*
PERFORM field USING 'RAIFP2-ANLN1' tab-fcom.
*Begin of changes CSN 0001632921 2012 by C5152079 22.03.2012
IF chk_nrev IS INITIAL.
PERFORM field USING 'RAIFP2-XERBW' 'X'.
PERFORM field USING 'RAIFP2-AFABE' '01'.
ELSE.
PERFORM field USING 'RAIFP2-XNOER' 'X'.
ENDIF.
*End of changes CSN 0001632921 2012 by C5152079 22.03.2012
*
PERFORM field USING 'RAIFP3-ANLN1' tab-ass.
PERFORM field USING 'RAIFP3-BUKRS' tab-tcc.
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
* PERFORM field USING 'BDC_OKCODE' '=NEWC'.
PERFORM field USING 'BDC_OKCODE' '=TAB02'.
*
* PERFORM screen1 USING 'SAPLSPO1' '0100'.
* PERFORM field USING 'BDC_OKCODE' '=YES'.
**
* PERFORM screen1 USING 'SAPLSPO4' '0300'.
* PERFORM field USING 'SVALD-VALUE(01)' cc.
* PERFORM field USING 'BDC_OKCODE' '=FURT'.
**
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
* PERFORM field USING 'BDC_OKCODE' '=TAB02'.
*
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
PERFORM screen1 USING 'SAPLAMDPS2I' '0100'.
*END OF CHANGES C5183207/SR#7001003263/19.11.2014
PERFORM field USING 'RAIFP2-MONAT' per.
PERFORM field USING 'RAIFP1-BLART' dtyp.
PERFORM field USING 'RAIFP1-TRAVA' tnor.
PERFORM field USING 'RAIFP2-ZUONR' tab-ttxt.
PERFORM field USING 'BDC_OKCODE' '=SAVE'.
*
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
* CALL FUNCTION 'BDC_INSERT'
* EXPORTING
* tcode = 'ABT1N'
* TABLES
* dynprotab = bdcdata.
**
*BEGIN OF CHANGES C5183207/SR#7001003263/27.03.2015
SET PARAMETER ID 'AN1' field ldf_ANLN1.
*END OF CHANGES C5183207/SR#7001003263/27.03.2015
* REFRESH bdcdata.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
ENDLOOP.
*
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
CALL FUNCTION 'BDC_INSERT'
EXPORTING
tcode = 'ABT1N'
TABLES
dynprotab = bdcdata.
*
REFRESH bdcdata.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
*
IF sy-subrc = 0.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
** begin of insert ISDK980413 **
* call transaction 'SM35'.
CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
EXPORTING
tcode = 'SM35'
EXCEPTIONS
call_transaction_denied = 1
tcode_invalid = 2
OTHERS = 3.
Hi,
I had done the BDC recording for the transaction code ABT1N and I had used the session method i.e BDC_OPEN,BDC_INSERT and BDC_CLOSE function module and I run this session in SM35 and for 7 records it is working fine and for 8th record and I am getting Maxinum number of session reached and BDC is not running.Could any one tell me how to handle this situation
Please find the below code
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
client = sy-mandt
group = group
user = sy-uname.
* ENDIF.
*
LOOP AT tab.
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
perform screen1 using 'SAPLAMDPS2I' '0100'.
perform field using 'BDC_OKCODE' '/ENEWC'.
*
PERFORM screen1 USING 'SAPLSPO1' '0100'.
perform field using 'BDC_OKCODE' '=YES'.
*
perform screen1 using 'SAPLSPO4' '0300'.
perform field using 'SVALD-VALUE(01)' cc.
perform field using 'BDC_OKCODE' '=FURT'.
*
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
PERFORM screen1 USING 'SAPLAMDPS2I' '0100'.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
WRITE ddat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BLDAT' dat.
WRITE pdat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BUDAT' dat.
WRITE adat TO dat MMDDYY.
PERFORM field USING 'RAIFP1-BZDAT' dat.
PERFORM field USING 'RAIFP2-SGTXT' tab-ftxt.
*
PERFORM field USING 'RAIFP2-ANLN1' tab-fcom.
*Begin of changes CSN 0001632921 2012 by C5152079 22.03.2012
IF chk_nrev IS INITIAL.
PERFORM field USING 'RAIFP2-XERBW' 'X'.
PERFORM field USING 'RAIFP2-AFABE' '01'.
ELSE.
PERFORM field USING 'RAIFP2-XNOER' 'X'.
ENDIF.
*End of changes CSN 0001632921 2012 by C5152079 22.03.2012
*
PERFORM field USING 'RAIFP3-ANLN1' tab-ass.
PERFORM field USING 'RAIFP3-BUKRS' tab-tcc.
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
* PERFORM field USING 'BDC_OKCODE' '=NEWC'.
PERFORM field USING 'BDC_OKCODE' '=TAB02'.
*
* PERFORM screen1 USING 'SAPLSPO1' '0100'.
* PERFORM field USING 'BDC_OKCODE' '=YES'.
**
* PERFORM screen1 USING 'SAPLSPO4' '0300'.
* PERFORM field USING 'SVALD-VALUE(01)' cc.
* PERFORM field USING 'BDC_OKCODE' '=FURT'.
**
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
* PERFORM field USING 'BDC_OKCODE' '=TAB02'.
*
* PERFORM screen1 USING 'SAPLAMDP' '0100'.
PERFORM screen1 USING 'SAPLAMDPS2I' '0100'.
*END OF CHANGES C5183207/SR#7001003263/19.11.2014
PERFORM field USING 'RAIFP2-MONAT' per.
PERFORM field USING 'RAIFP1-BLART' dtyp.
PERFORM field USING 'RAIFP1-TRAVA' tnor.
PERFORM field USING 'RAIFP2-ZUONR' tab-ttxt.
PERFORM field USING 'BDC_OKCODE' '=SAVE'.
*
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
* CALL FUNCTION 'BDC_INSERT'
* EXPORTING
* tcode = 'ABT1N'
* TABLES
* dynprotab = bdcdata.
**
*BEGIN OF CHANGES C5183207/SR#7001003263/27.03.2015
SET PARAMETER ID 'AN1' field ldf_ANLN1.
*END OF CHANGES C5183207/SR#7001003263/27.03.2015
* REFRESH bdcdata.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
ENDLOOP.
*
*BEGIN OF CHANGES C5183207/SR#7001003263/26.11.2014
CALL FUNCTION 'BDC_INSERT'
EXPORTING
tcode = 'ABT1N'
TABLES
dynprotab = bdcdata.
*
REFRESH bdcdata.
*END OF CHANGES C5183207/SR#7001003263/26.11.2014
*
IF sy-subrc = 0.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
** begin of insert ISDK980413 **
* call transaction 'SM35'.
CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
EXPORTING
tcode = 'SM35'
EXCEPTIONS
call_transaction_denied = 1
tcode_invalid = 2
OTHERS = 3.
2015 Mar 30 4:21 PM
Hi Durgaprasanth,
I think for every record it is opening SM35 tcode. In your SAP system maximum number of session is 7.
Try to close previous session windows or else comment the below function module.
ABAP4_CALL_TRANSACTION
Hopes it helps you.
Thanks,
Ashok.
2015 Mar 30 4:45 PM
yes you are right that maxinum number of session is 7 but when i run in Session in SM35 in foreground and i did not see any 7 session opening but i am getting Maximum session reached .
And also ABAP4_CALL_TRANSACTION function module is not in the loop. so it will not call every time .