Related Information Examples & Tutorials

Notes Printing

There are many times when you may want to print a report with Client or Debtor Notes. Collect! has two methods for retrieving Note lines in a report.

Client Or Debtor Notes Loop

Generally, if you are just printing Notes for Clients you can use the @cl.no loop. For Debtor Notes, you can use the @de.no loop.

Each line in Notes is a separate record. You would loop through the Notes and print each line. You can do this with Client Notes or Debtor Notes. If you specify the character limit, you can ensure that you print each complete line.

Top of page.

Printing Client Notes

@cl.no is a loop, not a field. Each line in Notes is a separate
record. @no.te is the code for each line. <132> is the formatting code to control how many characters are printed for each line. 132 is the maximum that can be typed on a line.

Start On: Client

@cl.na

@cl.no
@no.te<132>
@cl.no

You can also nest the @cl.no loop inside an @cl loop to process several accounts in the same report.

Start On: Anywhere

@cl no total
@cl.na

@cl.no
@no.te<132>
@cl.no
@cl

tip.gif You can also use the Note Block Printing method described below for more detailed reporting needs.

Top of page.

Printing Debtor Notes

@de.no is a loop, not a field. Each line in Notes is a separate
record. @no.te is the code for each line. <132> is the formatting code to control how many characters are printed for each line. 132 is the maximum that can be typed on a line.

Start On: Debtor

@de.na

@de.no
@no.te<132>
@de.no

You can also nest the @de.no loop inside an @de loop to process several accounts in the same report.

Start On: Anywhere

@de no total
@de.na

@de.no
@no.te<132>
@de.no
@de

tip.gif You can also use the Note Block Printing method described below for more detailed reporting needs.

Top of page.

Note Block Printing

This feature is available in Collect! Version 11.3 Build 11.1 and newer.

If you want to print Notes with criteria, you can use the Note Block. The Note Block is a special Report Writer structure for parsing Notes. This enables you to apply search criteria when printing Debtor or Client Notes. This is very useful for filtering Notes when reporting account activity. You can retrieve note lines with a particular Status, Operator, Date/Time range, for example.

To use the Notes Block method, simply create an @nb loop. @nb stands for "Note Block" and will process the Notes for either the current Client or the current Debtor.

Start On: Debtor

@nb
@nb.da< @nb.ti< @nb.st< @nb.op : @nb.te
@nb

In this example, @nb is the Note Block loop initiator and terminator. The other printable information codes are

@nb.da (Date)
@nb.ti (Time)
@nb.st (Status)
@nb.op (Operator)
@nb.te (Text)

In the report, Collect! will put each valid note line on a separate line. A valid note line starts with one or more asterisks "*" or it is a Date/Time stamp followed by an optional Status or Operator ID. A Date/Time tag must be terminated with " : " for it to be recognized as a new note line. If Collect! cannot recognize a note line as a new note, it will add the line to the end of the previous note in the report output.

The maximum amount of text that will be read for each note line is 4095 bytes. If a single Note is longer than this, it will be truncated in the report. Only the first 4095 bytes will be rendered.

tip.gif @nb.te displays displays the text portion of the Note Block. Unlike @no.te, It will not output any Date/Time, Status or Operator information. You must use the individual @nb printable information codes to output that information.

You can nest this loop inside a Client loop or a Debtor loop to process notes from multiple accounts in the same report.

Start On: Anywhere

@cl no total
@cl.na

@nb no total
@nb.da< @nb.ti< @nb.st< @nb.op : @nb.te
@nb

@cl

Top of page.

Note Block With Where Clause

You can use WHERE clauses on @nb.da, @nb.ti, @nb.st, @nb.op or @nb.te to filter results.

Start On: Anywhere

@de no total
@de.fi

@nb no total WHERE ( @nb.da = 01/01/2011 .. 01/31/2011 )
@nb.da< @nb.ti< @nb.st< @nb.op : @nb.te
@nb

@de

Top of page.

Note Block Text Parsing

The Note Block gives you a powerful tool for parsing text. This feature greatly simplifies searching Notes for key indicators or information.

For example, the following snippet will give you the note lines with an address change.

Start On: Anywhere

@de no total

@nb no total WHERE ( @nb.te = Old Debtor->Address )
@de.fi @nb.da< @nb.ti< @nb.st< @nb.op<: @nb.te<
@nb

@de

Top of page.

Technical Notes

In the Note Block printable information codes, @nb.n1 - @nb.n6 are unused. Each one represents a separate 128 byte text buffer.

tip.gif The first time you use Collect! after upgrading to a version with this feature, you must rebuild your printable information so that the @nb codes are accessible to the Report Writer.

Note block parsing does not parse Time milliseconds. If you have enabled "Write millisecond notes" in Screen and Messages, Collect! will simply ignore the milliseconds when outputting the @nb.ti value.

Top of page.

Summary

Collect! provides two methods for outputting Client and Debtor Notes using reports. In general, you can use the Debtor Notes loop, @de.no for outputting Notes text lines. If you need more granular Notes parsing, you can use the powerful and flexible Note Block. The Note Block enables you to apply WHERE clauses to Notes in reports so that you can easily filter by Date range, Status and Operator. You can also parse Notes text for key indicators or information.

Top of page.

See Also

- Report Topics Index for a list of all report and letter topics

Top of page.

Was this page helpful? Do you have any comments on this document? Can we make it better? If so how may we improve this page.

Please click this link to send us your comments: helpinfo@collect.org