on 04-19-2006 6:28 AM
I am doing a Recording method of BDC using transaction XK01. Consider a Z program which is having a table control, and selects data from table MARA. The number of visible rows in this table control can be find out as ( sy-loopc - 1 )in PBO.
now my query is in the BDC, with transaction, XK01 I would like to know the number of visible rows at the 'bank details' for the vendor in my ZBDC program will it be possible.?
If so, please send me your valuable ideas.
Regards,
Ubedulla.
Hi MRUTYUN
As I am going to record the entries in my system I can see the visible number of rows in that particular screen, and while coding BDC I can take care of handling table control in BDC, Suppose some other user is going to make use of the same program, due to Screen resoultution he will face the updation problem.
can you Suppose a solution for solving this screen resolution problem with table controls in BDC.
Regars,
Ubedulla.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi ubedulla,
1. what we can do is
2. based upon your screen,
just see and note down
the number of records in table control.
3. then write your bdc program,
in accordance with that.
4. After that, run this program
in E or N mode (background mode, -- screens will not appear )
5. If that works fine,
then any user, on any computer,
if he runs the bdc program in N E mode,
then the number of rows will remain that only.
6. So just Fix/hardcode the number of rows,
what are u seeing presently on the screen,
and go ahead !.
regards,
amit m.
Hi Ubedulla,
IN your call transaction use the options from ctu_params structure
ctu_params-updmode = 'S'.
ctu_params-dismode = 'N'.
ctu_params-defsize = 'X'.
call transaction 'XK01' using it_bdcdata options from ctu_params.
This would ensure that the number of visible rows that you see in the recording (SHDB ) will be constant across all the systems , even if you change your screen resolution.
Regards,
Ravi
Hi Ubedulla,
This syntax should be written in the same BDc program which upload the data from a file into an internal table and then simulates the creation of a vendor using a call transaction to the 'XK01' transaction.
so you can include my previous posts code in the same bdc program.
perform bdc_dynpro using <progname> <Screen>.
perform bdc_field using <field name> <field Value>.
perform bdc_field using <field name> <field Value>.
perform bdc_field using <field name> <field Value>.
.
..
.
.
ctu_params-dismode = 'N'.
ctu_params-updmode = 'S'.
ctu_params-defsize = 'X'.
call transaction 'XK01' usinf it_bdcdata options from ctu_params.
Hi Ravi,
I was very happy with your answer.
I have applied your code in my BDC.
It is executing well.
Suppose If I changed my screen resolution, for my desktop
the number of rows are not varying in that screen.
what is the reason.
can you give me your contact number if you are in India, I will call you.
Tahnk you very much.
Ubedulla.
Hi Ubedulla,
I don't know the exact reason but it is a facility that SAP provides because it is a general case that no two users will be using the same resolutions and if you write your code with respect to your system, it may not work in another system.
BY mentioning ctu_params-defsize = 'X', we are telling the system to set the size of screen elements to default (defsize means Default size).
I don't have a contact right now(Not in office..)
Please award points if it really helps, by clicking on any one of the stars (Black, Green and yellow) on the left side of the replies.
Regards,
Ravi
Hi ubedulla,
1. Thats the problem with
BDC in table controls.
2. suppose we find out the number of rows which
appear,
but on different computers with differeent RESOLUTIONS,
this will VARY.
3. So instead of adding
1
2
3
4
....
4. Check out if there is any ADD Button,
first add 1.
then click ADD
the first row will shift down and
cursor will come on the first row.
5. then enter 2
then AGAIN click ADD
the first row will shift down and
cursor will come on the first row again,
6. If this fashion of entry is allowed
in this transaction, then u must go
for such, bcos then we will not have any problem
of counting the available number of rows.
regards,
amit m.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Check if you have any button to add records on this screen. If so, you can record transaction for add operation and then use this in program without concerning about how many visible records on screen.
Regds,
Akshay
PS: Reward with points if answer helps to resolve the problem
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi
good
you want to know number of visible row from bdc,but i dont think there is any funcion module ot method which will help you to solve your that probs.
Instead of getting the number of visible row though bdc if you get them using different logic outside BDC code,does it help you to solve your probs.
thanks
mrutyun
HI
GOOD
WHEN YOU WANT TO DISPALY THE ROWS OF THE BANK DETILAS.
IN BDC WHAT PROCESS YOU R FOLLOWING BDC SESSION OR CALL TRANSACTION .
IN BOTH THE PROCESS AS FAR AS MY KNOWLEDGE IS CONCERNED YOU CANT DISPLAY THE ROWS OF THE BANK DETILS FOR THE VENDOR.
THANKS
MRUTYUN
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Tripathy,
I would like to know the number of visible rows.
but I dont want to dispaly them.
As I am using recording I can use any of the methodsSession/Call Tcode .
Actually, if it is possible to know the number of visible rows in table control programitically in BDC, I can handle table control in BDC very easily.
Now I can handle Table control in BDC if I know the NUMBER OF VISIBLE ROWS in the table control, with out concerning the Screen resolution.
If you know any other way of solving this query, pls help me out.
Best Regards,
Ubedulla.
User | Count |
---|---|
106 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.