How to handle subscreen in bdc?
Hi friends,
I am processing the BDC using the Call Transaction Method.
Here during the processing of Payment posting I need to select all invoice documents using the select all button and perform deactive discount. so that I can able to create and make payment successfully and I done the recording accordingly.
thanks
punjaala
Moderator message - Please ask a specific question - post locked
Edited by: Rob Burbank on May 15, 2009 1:23 PM
Like the normal screen.
What is happening ?
Similar Messages
-
How to handle tabstrips in BDC
Hi All,
Can anyone please let me know how to handle Tabstrips in BDC (Here Subscreen comes into picture).
Please give me advice on this any one, it is very urgent, please help me.
Many Thanks in Advance for u r Answer
NarenJust use ABAPDOCU Transaction and see the complex screen menu,there you will find out example program for Tab strips.
for bdc point of view you need to do recording propery and copy the code .
only changes you need to do get the data from file to internal table.
use loop ur internal table ,withinin internal table paste ur code(screens,program name) and it should work.
Reward Points if it is useful
Thanks
Seshu -
Hi,
How to handle the pop ups in BDC??
Thanks & Regards,
Abhishek SarkarHi,
I am not sure whether popup works in BDC.
Can u please confirm it or can u give me some sample code??
Thanks & Regards -
How to handle resolution in BDC
hi
how to handle resolution in BDCHi,
have a look at the following thread:
screen resolutions
Note that the key here is parameter DEFSIZE.
Best regards. -
hi guru's ,
how to handle subscreen in BDC.
my requirement is 'i have two header line , and 5 item lines in each header.
in item there is droupdown box for a field.
if we select this dropdown box the subscreen changes according to the selected value.
plese help me
thanks in advance.Hi,
U have 2 chioces: u can define a single scenario each time - for example run first all the lines which have a value X in the dropdown box, then all the lines with value Y and change the values in the BDC tab in between. The 2nd chioce is to change the data u enter dynamicly the BDC tab - check the value in the field you are about to enter to the dropdown box and according to that value change the BDC tab (u'll probably have to change only the bdcdata-dynpro value to the number of the different screen called for each value of the dropdown box).
Award point if helpful...
Igal -
hi,
how to handle popups in bdc.
it is very urgent.
thanks in advance...bdc.
some time bdc ok_code can't set for popup.
so Manually set.
screen no.
bdc_ok code..
else.
check backgrounf sucessful run or not.
after set bdc ok_code. -
Hi,
How to handle errors in bdc call transaction method.
what is the steps to download errors from bdcmsgcoll into flat file in call transaction method
udayHi friend,
Here is a beautiful example which explains how to trap erroreneous records ..if help full then please give me max reward point.
REPORT zgopi_report
NO STANDARD PAGE HEADING
LINE-SIZE 255
MESSAGE-ID ZRASH.
Internal Table Declarations *
*--Internal Table for Data Uploading.
DATA : BEGIN OF IT_FFCUST OCCURS 0,
KUNNR(10),
BUKRS(4),
KTOKD(4),
ANRED(15),
NAME1(35),
SORTL(10),
STRAS(35),
ORT01(35),
PSTLZ(10),
LAND1(3),
SPRAS(2),
AKONT(10),
END OF IT_FFCUST.
*--Internal Table to Store Error Records.
DATA : BEGIN OF IT_ERRCUST OCCURS 0,
KUNNR(10),
EMSG(255),
END OF IT_ERRCUST.
*--Internal Table to Store Successful Records.
DATA : BEGIN OF IT_SUCCUST OCCURS 0,
KUNNR(10),
SMSG(255),
END OF IT_SUCCUST.
*--Internal Table for Storing the BDC data.
DATA : IT_CUSTBDC LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
*--Internal Table for storing the messages.
DATA : IT_CUSTMSG LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
DATA : V_FLAG1(1) VALUE ' ',
"Flag used for opening session.
V_TLINES LIKE SY-TABIX,
"For storing total records processed.
V_ELINES LIKE SY-TABIX,
"For storing the no of error records.
V_SLINES LIKE SY-TABIX.
"For storing the no of success records.
Selection screen *
SELECTION-SCREEN BEGIN OF BLOCK B1.
PARAMETERS : V_FNAME LIKE RLGRAP-FILENAME,
V_SESNAM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.
Start-of-selection *
START-OF-SELECTION.
*-- Form to upload flatfile data into the internal table.
PERFORM FORM_UPLOADFF.
TOP-OF-PAGE *
TOP-OF-PAGE.
WRITE:/ 'Details of the error and success records for the transaction'
ULINE.
SKIP.
End of Selection *
END-OF-SELECTION.
*-- Form to Generate a BDC from the Uploaded Internal table
PERFORM FORM_BDCGENERATE.
*--To write the totals and the session name.
PERFORM FORM_WRITEOP.
*& Form form_uploadff
Form to upload flatfile data into the internal table.
FORM FORM_UPLOADFF .
*--Variable to change the type of the parameter file name.
DATA : LV_FILE TYPE STRING.
LV_FILE = V_FNAME.
*--Function to upload the flat file to the internal table.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = LV_FILE
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
IMPORTING
FILELENGTH =
HEADER =
TABLES
DATA_TAB = IT_FFCUST
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
IF SY-SUBRC = 0.
*--Deleting the headings from the internal table.
DELETE IT_FFCUST INDEX 1.
*--Getting the total number of records uploaded.
DESCRIBE TABLE IT_FFCUST LINES V_TLINES.
ENDIF.
ENDFORM. " form_uploadff
*& Form Form_bdcgenerate
Form to Generate a BDC from the Uploaded Internal table
FORM FORM_BDCGENERATE .
*--Generating the BDC table for the fields of the internal table.
LOOP AT IT_FFCUST.
PERFORM POPULATEBDC USING :
'X' 'SAPMF02D' '0105',
' ' 'BDC_OKCODE' '/00' ,
' ' 'RF02D-KUNNR' IT_FFCUST-KUNNR,
' ' 'RF02D-BUKRS' IT_FFCUST-BUKRS,
' ' 'RF02D-KTOKD' IT_FFCUST-KTOKD,
'X' 'SAPMF02D' '0110' ,
' ' 'BDC_OKCODE' '/00',
' ' 'KNA1-ANRED' IT_FFCUST-ANRED,
' ' 'KNA1-NAME1' IT_FFCUST-NAME1,
' ' 'KNA1-SORTL' IT_FFCUST-SORTL,
' ' 'KNA1-STRAS' IT_FFCUST-STRAS,
' ' 'KNA1-ORT01' IT_FFCUST-ORT01,
' ' 'KNA1-PSTLZ' IT_FFCUST-PSTLZ,
' ' 'KNA1-LAND1' IT_FFCUST-LAND1,
' ' 'KNA1-SPRAS' IT_FFCUST-SPRAS,
'X' 'SAPMFO2D' '0120',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0125',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0130',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0340',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0360',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0210',
' ' 'KNB1-AKONT' IT_FFCUST-AKONT,
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0215',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0220',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0230',
' ' 'BDC_OKCODE' '=UPDA'.
*--Calling the transaction 'fd01'.
CALL TRANSACTION 'FD01' USING IT_CUSTBDC MODE 'N' UPDATE 'S'
MESSAGES INTO IT_CUSTMSG.
IF SY-SUBRC <> 0.
*--Populating the error records internal table.
IT_ERRCUST-KUNNR = IT_FFCUST-KUNNR.
APPEND IT_ERRCUST.
CLEAR IT_ERRCUST.
*--Opening a session if there is an error record.
IF V_FLAG1 = ' '.
PERFORM FORM_OPENSESSION.
V_FLAG1 = 'X'.
ENDIF.
*--Inserting the error records into already open session.
IF V_FLAG1 = 'X'.
PERFORM FORM_INSERT.
ENDIF.
*--Populating the Success records internal table.
ELSE.
IT_SUCCUST-KUNNR = IT_FFCUST-KUNNR.
APPEND IT_SUCCUST.
CLEAR IT_SUCCUST.
ENDIF.
*--Displaying the messages.
IF NOT IT_CUSTMSG[] IS INITIAL.
PERFORM FORM_FORMATMSG.
ENDIF.
*--Clearing the message and bdc tables.
CLEAR : IT_CUSTBDC[],IT_CUSTMSG[].
ENDLOOP.
*--Getting the total no of error records.
DESCRIBE TABLE IT_ERRCUST LINES V_ELINES.
*--Getting the total no of successful records.
DESCRIBE TABLE IT_SUCCUST LINES V_SLINES.
*--Closing the session only if it is open.
IF V_FLAG1 = 'X'.
PERFORM FORM_CLOSESESS.
ENDIF.
ENDFORM. " Form_bdcgenerate
*& Form populatebdc
FOrm to Populate the BDC table.
FORM POPULATEBDC USING VALUE(P_0178)
VALUE(P_0179)
VALUE(P_0180).
IF P_0178 = 'X'.
IT_CUSTBDC-PROGRAM = P_0179.
IT_CUSTBDC-DYNPRO = P_0180.
IT_CUSTBDC-DYNBEGIN = 'X'.
ELSE.
IT_CUSTBDC-FNAM = P_0179.
IT_CUSTBDC-FVAL = P_0180.
ENDIF.
APPEND IT_CUSTBDC.
CLEAR IT_CUSTBDC.
ENDFORM. " populatebdc
*& Form FORM_OPENSESSION
Form to Open a session.
FORM FORM_OPENSESSION .
*--Variable to convert the given session name into reqd type.
DATA : LV_SESNAM(12).
LV_SESNAM = V_SESNAM.
*--Opening a session.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = LV_SESNAM
HOLDDATE = '20040805'
KEEP = 'X'
USER = SY-UNAME
PROG = SY-CPROG
IMPORTING
QID =
EXCEPTIONS
CLIENT_INVALID = 1
DESTINATION_INVALID = 2
GROUP_INVALID = 3
GROUP_IS_LOCKED = 4
HOLDDATE_INVALID = 5
INTERNAL_ERROR = 6
QUEUE_ERROR = 7
RUNNING = 8
SYSTEM_LOCK_ERROR = 9
USER_INVALID = 10
OTHERS = 11
IF SY-SUBRC <> 0.
WRITE :/ 'Session not open'.
ENDIF.
ENDFORM. " FORM_OPENSESSION
*& Form FORM_INSERT
fORM TO INSERT ERROR RECOED INTO A SESSION.
FORM FORM_INSERT .
*--Inserting the record into session.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'FD01'
POST_LOCAL = NOVBLOCAL
PRINTING = NOPRINT
SIMUBATCH = ' '
CTUPARAMS = ' '
TABLES
DYNPROTAB = IT_CUSTBDC
EXCEPTIONS
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
TCODE_INVALID = 4
PRINTING_INVALID = 5
POSTING_INVALID = 6
OTHERS = 7
IF SY-SUBRC <> 0.
WRITE :/ 'Unable to insert the record'.
ENDIF.
ENDFORM. " FORM_INSERT
*& Form FORM_CLOSESESS
Form to Close the Open Session.
FORM FORM_CLOSESESS .
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM. " FORM_CLOSESESS
*& Form FORM_FORMATMSG
Form to format messages.
FORM FORM_FORMATMSG .
*--Var to store the formatted msg.
DATA : LV_MSG(255).
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = SY-MSGID
LANG = SY-LANGU
NO = SY-MSGNO
V1 = SY-MSGV1
V2 = SY-MSGV2
V3 = SY-MSGV3
V4 = SY-MSGV4
IMPORTING
MSG = LV_MSG
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2.
IF SY-SUBRC = 0.
WRITE :/ LV_MSG.
ENDIF.
ULINE.
ENDFORM. " FORM_FORMATMSG
*& Form form_writeop
To write the totals and the session name.
FORM FORM_WRITEOP .
WRITE :/ 'Total Records Uploaded :',V_TLINES,
/ 'No of Error Records :',V_ELINES,
/ 'No of Success Records :',V_SLINES,
/ 'Name of the Session :',V_SESNAM.
ULINE.
ENDFORM. " form_writeop -
HOW TO HANDLE MULTIPLE VALUES IN BDC FOR A PARTICULAR FIELD.
I THINK IT IS HANDLING OF TABLE CONTROLS IN BDC
PLEASE LET KNOW WHETHER THESE TWO ARE SAME CONCEPT OR NOT
HOW TO HANDLE TABLE CONTROLS IN BDC
Moderator message - Please do not use all caps. Please do not ask interview questions - post locked
Edited by: Rob Burbank on Jun 26, 2009 10:02 AMHi,
To handle table control in BDC you will have to enter at least one record in the table control and there after use the index number to increment to the next line item.
Say you run a recording for a transaction which has a table control (ME21), here after you have completed the recording, you'll see the code which will have sometjing like <fieldname>(01) and the entered value. that valeu has been entered as the first line item (01 being the index).
You will have to replace the hard coded line item index with a variable and inside a loop increment the item index. Once you reach the maximum allowed line items on your screen juct press the pagedown button (or insert new row) and reset the index to 1.
Following is a code snippet I used while uploading data for ME31K (vendor contract). It is not the complete code but does show how your code needs to be changed with using index for line items.
Here we assumne that the maximun number of lines displayed at a time on the screen is 14.
<< Unformatable code removed >>
Hope this helps.
Regards,
Sachin
Edited by: Rob Burbank on Jun 26, 2009 10:03 AM -
In bdc how we handle page phone area in transaction pa30
in bdc how we handle page phone area in transaction pa30.suppose one maintain phone no but not pager no.in that case how we will handle
in my system ..i have phone number only displayed...if you want to put page number also then add a ddition qualifier like PG or some number by contacting functional guys..
regards:) -
In BDC how you handled header data and item data
In BDC how you handled header data and item data
Raja,
Can you be more clear ?
Usually you load the header data one and then loop at the item data and then load the item data.
This example should help you.
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
Regards,
Ravi
Note - Please mark all the helpful answers -
How to handle error messages in BDC background mode
Hi experts,
I got one problem in BDC, We are uploading data throgh BDC program,that program is calling Standard Batch Input programs,
Now we got one requirement, i.e., In some special cases we have to send one message as a error message.I handled this in foreground but, how to handle this in background.Hi,
if session is being used
automatically the log will begenereated in the sm35 transaction
but if call transaction is used
put all the error messages in the applicationserver using
open data set
and after the exectionof the program in the background
you have to run another progam which reads the data stroed inthe application server
that also with open data set only...
thanks & regards,
Venkatesh -
How to handle screen resolution in bdc session method.
hi all,
how to handle screen resolution in bdc session method.Hello,
Why do need that for? Is it to add rows on a table control??
If it does, add new rows by using the add button instead of adding into the table control directly to each row.
Bye
Gabriel. -
hello gurus,
I seen one post on how to handle popups.
the post is like this...
Many times in transaction pop-up screen appers and for this screen you dont pass any record but some indication to system telling it to proceed further.
For example u have a screen (pop up) with YES, NO Buttons on it.
To handle such screen, system has provided a variable called BDC_CURSOR. we pass this variable to BDC_DATA and process the screen.
Usually such screen appers in many transactions, in this you are just passing information that YES you want to save the information, that means YES should be clicked. so you are transferring the information to BDCDATA i.e., field name of YES, which is usually SPOP_option. Instead of BDC_OKCODE. you are passing BDC_CURSOR.
please kindly explain me how to handle the pop screens in detail if possible send me a sample code, pleaseHi Ashok,
I checked transaction PA40, but I am not getting any pop up message. Have you done the recording for PA40 in SHDB? I think in recording, you just need to press enter if any pop up comes. One more suggestion, instead of BDC, a function module ''HR_INFOTYPE_OPERATION' can be used for HR infotype update. I have used the same FM forinfotype 0017( travel privileges) update.
Regards,
Pranjali -
How to handle screen resolution in ME21 fro a bdc programme
I need to use BDC program for ME21 for that how to handle the screen resolution,
i know CTU_PARAMS structure is there ,but how to use them, please send the model code.
Thanks & Regards
krishnagot the solution
-
How to handle table control in BDC while uploading item details for anorder
How to handle table control in BDC while uploading item details for an order?
What is the use of CTU_PARAMS structure in BDC?
In Finance I have done some changes to the layout set by coping to a zscript(duning letter) and how can assign the print program?
What is the process to test the finance script?
How can I see the print preview whether it is coming correctly or not?
Thanks in advance.
Regards.
Abhilash.hi,
for the bdc control refer the following link:
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
ctu_params:
refer to the link
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/abap/dataTransfers-LSMW%2CALE%2C+BDC
reward if useful,
thanks and regards
Maybe you are looking for
-
Hardware Configuration in MAX when not logged in as Administrator
I am attempting to load a .cfg file for a VME device through the Hardware Configuration option on MAX. When you are not logged in as an administrator, the option is greyed out. I do not have the option of always running this as an administrator. H
-
What can I do to get Adobe to download a pdf file it has converted into a doc or docx file? Any help appreciated!
-
Split channel sound after nesting advice please!
I have a edited seq of which I have nice steroe split sound, one camera track the other lapel mics so I can easily kill the camera track and just have lapel mic when needed, on both channels etc, I have nested the seq and the sound on the the new nes
-
Hi! I have problem with creating text object which should be java script (for enabling one go button on dashboard). I have no option for enable HTML Markup. I see in documentation that check box for that should be marked, but I don't have that box. I
-
Content Type policy template - labels
Hello, I have create "Content Type policy template" . I enable "Labels" policy. When I press "Ok" , show the following error : "The label reference, ProjectName, could not be found" So What is wrong ? Thanks ASk