Macro Language Reference > PIs > Block > <?blockreshow>
  
<?blockreshow>
Description
Specifies the resetting of a block’s showstrings following a page overflow. When a block overflows a page and headers and footers etc. are inserted then by default the showstring counters flow through from the main body of the block. With a non-zero value for num, when inserting the header the showstring counters are put back to the values that they had when the header was first encountered. The header is then formatted and then the counters are restored to the value they had ready for the rest of the body of the block.
 
This includes restoring the value of the show string counters for the current page number. The header will therefore display, as its page number, the number of the page on which the header was defined.
* 
When using column and frame references there is a potential clash with any block headers, particularly if using <?blockreshow=1>. The column and frame references are inserted within the context of the header, so will pick up the header’s show string counters, will modify those counters for the duration of the header, and then those changes will be discarded for the main body of the block and any text afterwards. To ensure more flexibility in this situation, use <?blockreshow=2>.
Syntax
<?blockreshow num:n ( slot:n )?>
num
0
Do not reset showstrings
1
Reset showstrings
2
Header is still formatted within its original context and counters, but the frame and column references are given the counters from the main body of the block and any changes they make are then carried over into the main body of the block, after the header finishes.
This option also works when the block breaks mid row without headers.
slot
This optional parameter is only applicable if num has a non-zero value and defines the slot into which the counters can be placed.
The parameter takes a number from 1-5 and has two effects:
1. When the counters are recalled, the counters from the main flow of the block are placed in the designated slot (1-5), so they can then be accessed using <?showget, <?showput>, <?showswap>, and <?showclear>.
2. Whatever counters are in the designated slot will then be used when returning to the main body of the block.
Additional Information
The point of the slot options is to allow the header to pick up the counters it had when it was originally defined so that it formats as expected; but also to allow the header to make changes within the body of the block - i.e. to increment a count for each header displayed. The expected use is that the following actions will be carried out for any counter changes that the header needs to make for the body of the block:
Get the existing counters from the body of the block that are currently in the slot by using <?showget or <?showswap>
Modify the counters
Replace the counters to their slot using either <?showput> or <?showswap>, knowing that these will be restored to the body of the block once the header finishes.
Related Links