cancel
Showing results for 
Search instead for 
Did you mean: 

Page Protection

Former Member
0 Kudos

Hi All,

I'm facing a problem with page protection in SMARTFORM, i'm using 3 different linetypes to print data in one loop pass of the table(Old Table Node), i.e., 3 lines with different line types will be printed for every record(loop pass). Now i'm want to ensure that all the 3 different lines that constitute one record are page protected? How to achieve this? When i'm trying to use a folder, the page protection option is disabled. Any thoughts?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

HI,

I am not very sure of any way to do this. But the I found certain documentation hope this help you...

<b>Automatic Page Break vs No Break</b>

The output control triggers an automatic page break to print contents on several pages. As a form developer, you may not want the system to automatically break a page, for example, if you want to print all lines of a table on one page. For these table lines, you must specify No Break with the line type to prevent the system from breaking up the table at the end of the main window for space reasons. If there is not enough space left on the current page, the entire table will be printed on the next page.

For all other output, you can use the output option Page Protection instead of No Break .

For all other output, you can use the output option Page Protection instead of No Break .

Processing

Requirements for Automatic Page Breaks

During output SAP Smart Forms must determine dynamically whether the output still fits onto the current page. Otherwise it must trigger a page break. When processing tables, this is of special importance, since the table lines are not printed immediately after the corresponding node is processed. Whenever a new line starts, the output control must determine the height of it. To do so, it stores the entire line in a buffer. The following examples illustrate why:

The cells within a table line contain data that may be printed on one as well as on several lines. If the line type is protected against page break, all cells of the table line must be printed on the page. This depends on the height of the highest cell within the table line.

Even if the table line type is not break-protected, a subsequent cell might contain a graphic which is higher than the first cells.

These examples illustrate that the output control can determine the height of each line only by analyzing the entire line in the buffer.

Process Flow

For form development not every detail of the output control is important. We want to concentrate on two questions: When is the footer processed? How is the automatic page break determined?

If you activated output at the beginning of the table or at a page break, the header is processed and printed.

With the old table node, output of the first inferior node, for which the output option New Line is marked, determines the end of the current line as well as the beginning of a new line. With the new table node you specify the end of the line by explicitly creating table lines. In both cases, SAP Smart Forms calculates at this event wheter to execute an automatic line feed:

If the buffer already contains a table line, this is the line of the previous loop pass. With the beginning of the new line, the output control can now check whether the buffered line still fits onto the current page, thereby considering the yet unprinted footer (provided it must be printed before the page break):

If there is enough space left on the page, the buffered line is printed.

If there is not enough space left, the output control processes the footer and prints it. Then the output control processes all subsequent windows of the page and triggers a page break. It prints the buffered line after the page break.

The output control buffers the table line of the current loop pass to determine its height. However, this line is printed only during the next loop pass.

After processing the last inferior node, processing resumes with the first inferior node of the table (in the main area, with new table nodes).

Regards,

Vara

Former Member
0 Kudos

Hi VaraPrasad,

Ur document was informative however it didn't help me. Is it possible to meet my requirement if I use a single line type instead of 3 different line types? Any ideas on why is the page protection disabled for the Folder node in the main area of the old table node.

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

Now, i've used ony 1 linetype and enabled the No PageBreak feature for this linetype, so my problem got solved.

former_member193831
Active Participant
0 Kudos

Hi,

Create a SmartStyle in the transaction SmartForms - Choose 2nd Radaio button.

Assign this SmartStyle to the concerned texts in SmartForms. In this SmartStyle - Use the checkbox ' Page Protection'.

Regds

Vivek

*-->Reward points if helpful.

Former Member
0 Kudos

using create folder option and move all the data under to that folder and their enable the page protection option

Former Member
0 Kudos

Hi Laxman,

As i've mentioned in my first post itself the page protection option is disabled when i'm trying to use the Folder node.