cancel
Showing results for 
Search instead for 
Did you mean: 

Line Break, Page Break, Footer in Smartform

Former Member
0 Kudos

Hi Experts,

I have the following business requirements for a smartform.

I have 4 Internal tables to be displayed in the smartform.

I have created a Main Window and added 4 tables in the Main Window.

I have to display this smartform in a PDF format.

Now my requirements are as follows:

- I need to line break depending on a field value for the second table.

For Exampe: A B 1

A B 2

A B 3

B A 1

B A 2

As u can see above, whenever the third column is1, i need a line break before that.

- I need to display the last 2 tables in a new page. For example if the first two tables take up 2 and half page, i need to display the last two internal tables in 4 page.

- Footer for every page. for example on the page footer i need page number 1/4, 2/4, 3/4 etc on the right bottom corner of the

page. also i need system date and time on the left bottom corner.

Thanks ans Regards

Gaurav Kumar Raghav

Edited by: Gaurav Kumar Raghav on Sep 23, 2009 11:52 AM

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Experts,

I have solved my requirement 2 with the help of Phani's comments.

But i am still stuck with the Line-Break or empty Line between records issue.

Thanks and Regards

Gaurav umar Raghav

Former Member
0 Kudos

Hi Experts,

I solved the last issue also by forcing the system to enter a empty record in the interna table on the condition.

Please let me know if anyone of you have a better and cleaner solution.

Thanks and Regards

Gaurav Raghav

Former Member
0 Kudos

Hi,

To Break The Line at particular value and to display it in Next Page you can folow this Logic.

As per your Example :

For Exampe: A B 1

A B 2

A B 3

B A 1

B A 2

If Field Value is '1'.

v_flag = 'X'. " Declare v_flag as char type.

endif.

Then in smartforms Create Command ..

In command window Choose General attributes

click on Go to New Page ( there Choose the Page you want }

and in Conditions Tab Set

v_flag = '1'.

Like this you can Set for Differnet Values

and Make it to print in different Pages..

With Regards,

Vinu.R

Former Member
0 Kudos

Hi Vinu,

I think i have been not clear withmy requirements.

Requirement 1: I need to put a empty line between records depending on a value I dont need to print them on a new Page.

All i need is a empty line between records. So that it looks like a group of records starting with a particular value.

As given in th example above:

ABC1

ABB2

ABV3

BHR1

BHG2

BKH3

Requirement 2: I have 4 tables in my smartform. i want to show the last two tables in new page.

Can i follow the approach you just told or will the approach change???

Thanks and Regards

Gaurav raghav

Former Member
0 Kudos

Hi,

1). Regarding empty line.

In your table loop node/table node in the data tab where you assign your internal table and work area

you will find sort criteria option there select the field with what do you want sort then check the check box of

Event on sort end for that field there then it will automatically create a node for that after that node create a text

and just write some dot there then you will get the empty line.

2). Regarding new page.

After the end of your first two table create a command node and in the command node give the next page

as the new one what you required and in the new page.

Thanks,

Phani.

Former Member
0 Kudos

Hi Phani,

1) I dont want to sort the internal table by that field. I have the following constraints:

Lets say there is a Customer A having 3 flats and each flat has 2 sub-flats.

So i need to group the data based on main flats. and i need a empty line between each group.

For example:

A B C 1

A B D 2

A B E 3

A C P 1

A C Q 2

A C R 3.

If i sort by that field value, the whole data will change to something like this

A B C 1

A C P 1

......

which i dont want.

2) I created a command and a new page and called it as you explained. But it does not work.

Do you have any idea where i have gone wrong?? The new page was not called by the first page.

Thanks and Regards

Gaurav Kumar Raghav

Former Member
0 Kudos

in the loop (of the table) add a command element, check the condition as the third field of the work area to be 1, if yes then jump to next page

Former Member
0 Kudos

Hi Experts,

There are two different requirements, please dont mix them up.

1) I need an empty line between records of an internal table and hence the records appear to be grouped.

2) The last two internal tables have to be printed in new page. Example, the Terms and Conditions are always printed in a new page, no matter in which page the main data ends.

Thanks and Regards

Gaurav Kumar RAghav