cancel
Showing results for 
Search instead for 
Did you mean: 

Need to draw line after the 2nd line item(Smart Forms)

Former Member
0 Kudos

Dear Friends,

I need to draw horizontal line after the 2nd line item and 3rd line item in smart forms.How can i achive this.

Plz help.

Edited by: farook shaik on May 19, 2009 8:19 AM

Accepted Solutions (0)

Answers (13)

Answers (13)

Former Member
0 Kudos

Hi,

Do the following the following procedure.

1. Go to table painter and create a table line( for example with name Hline) whose width is equal to the complete table width and give a lower frame to that created table line.

2. In the table main area where you create the table line for displaying the itemdata after that create two table lines with line type names HLINE.

3. Create a global variable counter (for example count) and keep that one incrementing with the loop passes inside the loop, before entering inside the loop intialize the counter variable to zero.

4. Inside the loop give the coding as Count = count + 1.

5. There in the two table lines which are created in step two inside them create two texts and for those texts go to condition tab and give the condition as

Count = 2, in the first table line (HLINE) for getting the horizontal line at the second line item .

Count = 3, in the second table line (HLINE) for getting the horizontal line at the third line item .

Hope this will help you.

Regards,

Venkat.

former_member559067
Participant
0 Kudos

Hi,

When SY-TABIX change print the line ( in Loop ).

former_member559067
Participant
0 Kudos

Hi,

When SY-TABIX change print the line ( in Loop ).

Former Member
0 Kudos

This is what you need to do:

1> In the tables->details section define two line types LT1 and LT2.

2> Come back to tables section pressing the table painter button.

3> Select a line type for which you want to have an underline(say LT2).

a] If the anchor cursor does not come click the draw lines and columns button( the pencil icon nutton)

b] select the line type ( it will become black after selection. Press and hold down ctrl to select

multiple cells.

c] after selection click the lower 'frame button' ( which is right at the top of box and shading).

4> Now goto data section where you have given your internal table name and work area.

a] in the sort criteria put your field POSNR and check the Event on Sort end chk box.

b] you will see an extra node under the main area of the table.

c] Create a table line with the line type LT2 in the node.

d]Also in the Main area add another table line with LT1 as the line type.

5> If POSNR remains unchnged LT1 will be triggered.

6> if Posnr changes then LT2 will be triggered with the underline.

This will suffice your requirement.

Former Member
0 Kudos

hi, farook,

just write uline1/(90) . before endloop statement. and after append statement .

Former Member
0 Kudos

Hi,

in smartform, create line type with border unerlined horizontaly for this line type.

n then in main window - > table, create row type and assign this line type to row.

and loopthe table when it reaches 2nd line or 3rd line item then take a counter and give this counter in row defined for horizontal line.

this horizontal line will be displayed on your form only after 2nd or 3rd line items are displayed.

Former Member
0 Kudos

Hi,

Go to TABLE PAINTER choose the lower frame(by clicking the Draw lines and columns) for the table line which you have given for the item data.

Hope this will be helpful.

Regards,

Raj

former_member205763
Active Contributor
0 Kudos

.

Edited by: Kartik Tarla on May 19, 2009 12:38 PM

Former Member
0 Kudos

Hi!

Define a counter variable in the interface parameters and define that parameter in your progarm also and pass it in the function module where u are passing the variables from driver program to the form.......

then in loop that u are assigning for the text there u increment the counter

then create the program lines for the text in which u will write uline(23)-> (write the lenght of line that u want )

and in that write the counter condition in that program lines (uline prints a horizontal line)....

u will get it.

in the loop(increment the counter)

|

|

text(uline(23)

|

|

program lines for that text in which write if condition for printing the lines.

Regards.

former_member205763
Active Contributor
0 Kudos

if sy-tabix eq 2 <--- this condition u put in conditions tab

use a text element to print &sy-uline&

Edited by: Kartik Tarla on May 19, 2009 12:15 PM

Former Member
0 Kudos

Hi farook shaik,

You mean in a Classical Report ???

Regards,

Suneel G

Former Member
0 Kudos

Hi Suneel,

I need to Draw a line from the Driver Program into the smart form.

Thanks & Regards

Farook.

Former Member
0 Kudos

Hi Suneel,

I need to Draw a line from the Driver Program into the smart form.

Thanks & Regards

Farook.

Former Member
0 Kudos

Hi Suneel,

I need to Draw a line from the Driver Program into the smart form.

Thanks & Regards

Farook.

former_member205763
Active Contributor
0 Kudos

.

Edited by: Kartik Tarla on May 19, 2009 12:39 PM

former_member205763
Active Contributor
0 Kudos

sorry for so many posts, its some browser problem that did not show me the posts and so mulitple posts came due to multiple clicks

Edited by: Kartik Tarla on May 19, 2009 12:40 PM

former_member205763
Active Contributor
0 Kudos

>

> Hi Suneel,

>

> I need to Draw a line from the Driver Program into the smart form.

>

>

> Thanks & Regards

> Farook.

Its not possible to draw a line from driver program only, u need to make changes in smartform, or its not possible

former_member205763
Active Contributor
0 Kudos

mistaken duplicates posts

Edited by: Kartik Tarla on May 19, 2009 12:39 PM

Former Member
0 Kudos

Hi farook shaik ,

If it is Smartforms for the Main Window why do't you Select Patterns as you need.

Hope this will solve your Problem.

Regards,

Suneel G

Former Member
0 Kudos

Hi,

Put a one variable in u r loop.

Ex:

loop at itab.

cnt = cnt + 1.

if cnt = '2' or

cnt = '3'.

Draw Horizantal Line.

endif.

endloop.

Former Member
0 Kudos

Hi Usha,

thanx.and like wise i need to draw lines based on Posnr.

If Posnr Changes then for that line item i need to draw the HOrizantal Line.

How can i Do dis.

Regards,

Farook.

Former Member
0 Kudos

Hi,

Create one text element.

In that write &sy-ulune(100)&

In Condition tab of the text element write wa-posnr = '00020'

or wa-posnr = '00030'.

former_member242255
Active Contributor
0 Kudos

you can write these conditons in the conditions tab where you can say that u need a line at the 2nd loop if the item table..

Former Member
0 Kudos

Hi Sravan,

Thanx for ur input.Can u explain a bit more plz.

Regards,

Farook.