Example 1 - Bank Statement
Figure 1 and Figure 2 show the printed output for a bank statement after PAGEDEF processing (the second figure is resized). Application Output (before PAGEDEF Processing) and PPFA Commands show the user data and the PPFA commands that create the printed output.
Application Output (before PAGEDEF Processing)
Each layout record contains all information for a specified layout. Because of lack of space, only the first 80 bytes are shown here. The first 10 characters must contain the layout ID.
11111111112222222222333333333344444444445555555555666666666677777777778
12345678901234567890123456789012345678901234567890123456789012345678901234567890
statmid 026-257311Justin Case 123 Redlight Lane Twistnshout MA 02345
statsum $2591.24 $1946.93 $1956.43 $0.00 $2581.72
pgenum
crheader
crdata DEPOSIT 01/05/02 $ 26.90
crdata AUTO DEPOSIT 01/15/02 $ 954.27
crdata AUTO DEPOSIT 01/30/02 $ 954.27
crdata INTEREST 01/31/02 $ 11.49
crtotal $1946.93
ckheader
ckdatal 352 01/04/02 $ 321.50
ckdatar 353 01/05/02 $ 100.00
ckdatal 354 01/10/02 $ 122.30
ckdatar 355 01/11/02 $ 59.95
ckdatal 356 01/15/02 $ 852.33
ckdatar 357 01/30/02 $ 500.35
ckdatal 358 01/15/02 $ 852.33
ckdatar 359 01/30/02 $ 500.35
ckdatal 360 01/15/02 $ 852.33
ckdatar 361 01/30/02 $ 500.35
ckdatal 362 01/15/02 $ 852.33
ckdatar 363 01/30/02 $ 500.35
ckdatal 364 01/15/02 $ 852.33
ckdatar 365 01/30/02 $ 500.35
ckdatal 366 01/15/02 $ 852.33
ckdatar 367 01/30/02 $ 500.35
ckdatal 368 01/15/02 $ 852.33
ckdatar 369 01/30/02 $ 500.35
ckdatal 370 01/15/02 $ 852.33
ckdatar 371 01/30/02 $ 500.35
ckdatal 372 01/15/02 $ 852.33
ckdatar 373 01/30/02 $ 500.35
ckdatal 374 01/15/02 $ 852.33
ckdatar 375 01/30/02 $ 500.35
ckdatal 376 01/15/02 $ 852.33
ckdatar 377 01/30/02 $ 500.35
ckdatal 378 01/15/02 $ 852.33
ckdatar 379 01/30/02 $ 500.35
ckdatal 380 01/15/02 $ 852.33
ckdatar 381 01/30/02 $ 500.35
ckdatal 382 01/15/02 $ 852.33
ckdatar 383 01/30/02 $ 500.35
ckdatal 384 01/15/02 $ 852.33
ckdatar 385 01/30/02 $ 500.35
ckdatal 386 01/15/02 $ 852.33
ckdatar 387 01/30/02 $ 500.35
ckdatal 388 01/15/02 $ 852.33
ckdatar 389 01/30/02 $ 500.35
ckdatal 390 01/15/02 $ 852.33
ckdatar 391 01/30/02 $ 500.35
ckdatal 392 01/15/02 $ 852.33
ckdatar 393 01/30/02 $ 500.35
ckdatal 394 01/15/02 $ 852.33
ckdatar 395 01/30/02 $ 500.35
ckdatal 396 01/15/02 $ 852.33
ckdatar 397 01/30/02 $ 500.35
ckdatal 398 01/15/02 $ 852.33
ckdatar 399 01/30/02 $ 500.35
ckdatal 400 01/15/02 $ 852.33
ckdatar 401 01/30/02 $ 500.35
ckdatal 402 01/15/02 $ 852.33
ckdatar 403 01/30/02 $ 500.35
ckdatal 404 01/15/02 $ 852.33
ckdatar 405 01/30/02 $ 500.35
ckdatal 406 01/15/02 $ 852.33
ckdatar 407 01/30/02 $ 500.35
ckdatal 408 01/15/02 $ 852.33
ckdatar 409 01/30/02 $ 500.35
ckdatal 410 01/15/02 $ 852.33
ckdatar 411 01/30/02 $ 500.35
ckdatal 412 01/15/02 $ 852.33
ckdatar 413 01/30/02 $ 500.35
ckdatal 414 01/15/02 $ 852.33
ckdatar 415 01/30/02 $ 500.35
ckdatal 416 01/15/02 $ 852.33
ckdatar 417 01/30/02 $ 500.35
ckdatal 418 01/15/02 $ 852.33
ckdatar 419 01/30/02 $ 500.35
cktotal $1956.43
balhead
baldatal 01/04/02 $2269.74
baldatar 01/05/02 $2196.64
baldatal 01/10/02 $2074.34
baldatar 01/11/02 $2014.39
baldatal 01/15/02 $2016.33
baldatar 01/30/02 $2570.25
baltotal $2581.74
statrail
PPFA Commands
PAGEDEF justin replace yes
WIDTH 8.5 in
HEIGHT 11.0 in;
FONT comp a075nc ; /*Big Brother Bank font */
FONT ital a175dc ; /*Italic theme */
FONT addr a075dc ; /*Big Brother address */
FONT varb gt10 ; /*Variable data */
FONT super a075dc ; /*Super Checking Account */
FONT head a055ac; /*Headings */
FONT bhead a075ac; /*Bold Headings */
PAGEFORMAT chub1 TOPMARGIN 2 in BOTMARGIN 2 in;
/************************************************/
/** statmid BODY **/
/************************************************/
LAYOUT C'statmid' PAGEHEADER NEWPAGE
POSITION .6 in ABSOLUTE .55 in;
FIELD TEXT C'Big Brother Bank' ALIGN LEFT
FONT comp ; /* default to LAYOUT positioning*/
FIELD TEXT C'"We watch over you"' ALIGN LEFT
POSITION 0 NEXT
FONT ital ; /*default to next line */
FIELD TEXT C'P.O. Box 1573' ALIGN LEFT
POSITION 0 NEXT
FONT addr ; /*default to next line */
FIELD TEXT C'Beantown, MA 02116' ALIGN LEFT
POSITION 0 NEXT
FONT addr ; /*default to next line */
FIELD TEXT C'Account Number:' ALIGN LEFT
POSITION 4.3 in .2 in
FONT head ; /*New area on right */
FIELD TEXT C'Statement Begin Date:' ALIGN LEFT
POSITION 4.3 in NEXT
FONT head ; /*New area on right */
FIELD TEXT C'Statement End Date:' ALIGN LEFT
POSITION 4.3 in NEXT
FONT head ; /*New area on right */
FIELD START 1 LENGTH 10 ALIGN RIGHT
POSITION 7.5 in .2 in
FONT varb ; /*variable - account number*/
FIELD START 75 LENGTH 12
POSITION 7.5 in NEXT
ALIGN RIGHT /* data is missing from example */
FONT varb ; /*variable - begin date */
FIELD START 88 LENGTH 12
POSITION 7.5 in NEXT
ALIGN RIGHT /* data is missing from example */
FONT varb ; /*variable - end date */
FIELD START 11 LENGTH 19 ALIGN LEFT
POSITION 1.1 in .9 in
FONT varb ; /*variable - customer name */
FIELD START 30 LENGTH 19 ALIGN LEFT
POSITION 1.1 in NEXT
FONT varb ; /*variable - customer address */
FIELD START 49 LENGTH 22 ALIGN LEFT
POSITION 1.1 in NEXT
FONT varb ; /*variable - customer city, st. */
/************************************************/
/** statsum BODY **/
/************************************************/
LAYOUT C'statsum' BODY
POSITION .6 in .5 in;
FIELD TEXT C'Super Checking Account Activity'
FONT super ; /* Static text - Super Checking */
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 .15 in
copy down 2 spaced 1 mm;
FIELD TEXT C'Beginning Balance'
POSITION .3 in .4 in
FONT head ; /* Static text - first header */
FIELD TEXT C'Credits'
POSITION 2.4 in CURRENT
FONT head ; /* Static text - first header */
FIELD TEXT C'Debits'
POSITION 3.6 in CURRENT
FONT head ; /* Static text - first header */
FIELD TEXT C'Service Charge'
POSITION 4.8 in CURRENT
FONT head ; /* Static text - first header */
FIELD TEXT C'Ending Balance'
POSITION 6.3 in CURRENT
FONT head ; /* Static text - first header */
FIELD START 1 LENGTH 8
POSITION .6 in .6 in
FONT varb ; /* Variable text - Beg balance */
FIELD START 10 LENGTH 8
POSITION 2.2 in CURRENT
FONT varb ; /* Variable text - Credits */
FIELD START 20 LENGTH 8
POSITION 3.4 in CURRENT
FONT varb ; /* Variable text - Debits */
FIELD START 30 LENGTH 5
POSITION 5.0 in CURRENT
FONT varb ; /* Variable text - Service Chrg */
FIELD START 40 LENGTH 8
POSITION 6.5 in CURRENT
FONT varb ; /* Variable text - End Balance */
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 .7 in;
/************************************************/
/** crheader GROUPHEADER **/
/************************************************/
LAYOUT C'crheader' GRPHEADER XSPACE .2 in
POSITION SAME .9 in;
FIELD TEXT C'Credits'
FONT bhead ; /* Static text - Credits */
FIELD TEXT C'Description'
POSITION 1.3 in CURRENT
FONT head ; /* Stat text - Deposit Descr. */
FIELD TEXT C'Date'
POSITION 3.2 in CURRENT
FONT head ; /* Static text - Date */
FIELD TEXT C'Amount'
POSITION 5.0 in CURRENT
FONT head ; /* Stat text - Amount of deposit*/
DRAWGRAPHIC LINE ACROSS 6.2 IN LINEWT BOLD
POSITION 1.3 in next;
/************************************************/
/** crdata BODY **/
/************************************************/
LAYOUT C'crdata' BODY GROUP;
FIELD START 1 LENGTH 13
POSITION 1.3 in CURRENT
FONT varb ; /* Variable text - Description */
FIELD START 14 LENGTH 8
POSITION 3 in CURRENT
FONT varb ; /* Variable text - Date */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 5.6 in CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** crtotal BODY **/
/************************************************/
LAYOUT C'crtotal' BODY GROUP;
FIELD TEXT C'Total Credits'
POSITION 1.5 in .2 in
FONT bhead ; /* Stat text - Total credits */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 7.3 in CURRENT
FONT varb ; /* Variable text - Amount */
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 next;
/************************************************/
/** ckheader GROUPHEADER **/
/************************************************/
LAYOUT C'ckheader' GRPHEADER XSPACE .2 in
POSITION SAME .6 in;
FIELD TEXT C'Checks'
FONT bhead ; /* Static text - Checks */
FIELD TEXT C'Check No.'
POSITION 1.4 in CURRENT
FONT head ; /* Stat text - Check number */
FIELD TEXT C'Date'
POSITION 2.5 in CURRENT
FONT head ;/* Stat text - Date of check */
FIELD TEXT C'Amount'
POSITION 3.5 in CURRENT
FONT head ;/* Static text - Amount of check*/
FIELD TEXT C'Check No.'
POSITION 4.6 in CURRENT
FONT head ; /* Stat text - Check number */
FIELD TEXT C'Date'
POSITION 5.6 in CURRENT
FONT head ;/* Stat text - Date of check */
FIELD TEXT C'Amount'
POSITION 6.8 in CURRENT
FONT head ;/* Static text - Amount of check*/
DRAWGRAPHIC LINE ACROSS 6.2 IN LINEWT BOLD
POSITION 1.3 in next;
DRAWGRAPHIC LINE DOWN LINETYPE shortdash
POSITION 4.5 in CPOS;
/************************************************/
/** ckdatal BODY left side **/
/************************************************/
LAYOUT C'ckdatal' BODY GROUP
POSITION SAME NEXT;
FIELD START 2 LENGTH 3
POSITION 1.4 in CURRENT
FONT varb ; /* Variable text - Check number */
FIELD START 14 LENGTH 8
POSITION 2.4 in CURRENT
FONT varb ; /* Variable text - Date */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 4.4 in CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** ckdatar BODY right side **/
/************************************************/
LAYOUT C'ckdatar' BODY GROUP
POSITION SAME SAME;
FIELD START 2 LENGTH 3
POSITION 4.6 in CURRENT
FONT varb ; /* Variable text - Check number */
FIELD START 14 LENGTH 8
POSITION 5.6 in CURRENT
FONT varb ; /* Variable text - Date */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 7.5 in CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** cktotal BODY **/
/************************************************/
LAYOUT C'cktotal' BODY GROUP;
ENDGRAPHIC LPOS; /*ends dashed line between checks */
FIELD TEXT C'Total Checks'
POSITION 1.5 in .2 in
FONT bhead ; /* Stat text - Total checks */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 7.3 in CURRENT
FONT varb ; /* Variable text - Amount */
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 next;
/************************************************/
/** balhead GROUPHEADER **/
/************************************************/
LAYOUT C'balhead' GRPHEADER XSPACE .2 in
POSITION SAME .6 in;
FIELD TEXT C'Daily'
FONT bhead ; /* Static text - Daily Balance */
FIELD TEXT C'Date'
POSITION 1.3 in CURRENT
FONT head ;/* Stat text - Date of balance */
FIELD TEXT C'Balance'
POSITION 2.8 in CURRENT
FONT head ;/* Static text - Balance */
FIELD TEXT C'Date'
POSITION 4.3 in CURRENT
FONT head ; / Stat text - Date of balance */
FIELD TEXT C'Balance'
POSITION 5.8 in CURRENT
FONT head ; /*Static text - Balance */
FIELD TEXT C'Balances'
POSITION 0 NEXT
FONT bhead ; /*Static text - Daily Balance */
DRAWGRAPHIC LINE ACROSS 6.2 IN LINEWT BOLD
POSITION 1.3 in CPOS;
/************************************************/
/** baldatal BODY left side **/
/************************************************/
LAYOUT C'baldatal' BODY GROUP
POSITION SAME NEXT;
FIELD START 14 LENGTH 8
POSITION 1.3 in CURRENT
FONT varb ; /* Variable text - Date */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 3.6 in CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** baldatar BODY right side **/
/************************************************/
LAYOUT C'baldatar' BODY GROUP
POSITION SAME SAME;
FIELD START 14 LENGTH 8
POSITION 4.3 in CURRENT
FONT varb ; /* Variable text - Date */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 6.6 in CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** baltotal BODY **/
/************************************************/
LAYOUT C'baltotal' BODY GROUP;
FIELD TEXT C'Final Balance'
POSITION 1.5 in .2 in
FONT bhead ; /* Stat text - Final balance */
FIELD START 24 LENGTH 8 ALIGN RIGHT
POSITION 7.3 IN CURRENT
FONT varb ; /* Variable text - Amount */
/************************************************/
/** statrail BODY **/
/************************************************/
LAYOUT C'statrail' BODY
POSITION SAME .4 in;
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 CPOS;
FIELD TEXT C'Interest Rate '
POSITION 2.0 in NEXT
FONT bhead ; /* Static text - Interest rate */
FIELD TEXT C'As of 01/04 * * * 5.321%'
POSITION CURRENT CURRENT
FONT varb ; /* Static text */
DRAWGRAPHIC LINE ACROSS 7.5 IN LINEWT BOLD
POSITION 0 NEXT
copy down 2 spaced 1 mm;
/************************************************/
/** pgenum PAGE NUMBER **/
/************************************************/
LAYOUT C'pgenum' PAGETRAILER
POSITION SAME ABSOLUTE 10.7 in;
FIELD TEXT C 'Page '
POSITION 6.5 in CURRENT
FONT varb;/* placement of page number */
FIELD PAGENUM PRINT RESET 1 /* request page numbering*/
FONT varb /* placement of page number */
POSITION CURRENT CURRENT;