6.0
Table Of Contents
- PlanetPress Talk Basics
- PlanetPress Talk Editor
- Key Concepts
- Detailed Directions
- Enter a New Program in the Editor
- Import or Export a Program
- Save a Program
- Print a Program
- Exit the PlanetPress Talk Editor
- Show or Hide the Commands Area or Spy List
- Adjust the Sizes of the Commands Area, Code Area and Spy List
- Expand or Collapse Command Groups
- Enter Commands in the Editor
- Use Command and Variable Name Completion
- PlanetPress Talk Summary
- Variables
- Operators and Operator Functions
- Loop and Condition Structures
- Commands
- Add a Comment
- Work with Emulations
- Work with Data Pages
- Work with Database Records
- Select or Define a Data Value
- Execute Documents and Document Elements
- Work with PostScript
- Work with PPDs
- Save and Restore the Current Graphics State
- Work with Global Functions
- Define and Assign Values to Variables
- Work with Objects
- Work with Bar Codes
- Work with Images and Attachments
- Work with Text
- Work with Styles
- Work with Strings
- Work with Characters
- Work with Arrays and Color Arrays
- Draw
- Search
- Debug
- Language Reference
- Language Reference (Alphabetical)
- % (procedure)
- @ (function)
- @name (function/procedure)
- @page (procedure)
- $element (procedure)
- + (operator & function)
- - (operator)
- * (operator)
- / (operator)
- > (operator)
- >= (operator)
- < (operator)
- <= (operator)
- = (operator)
- := (operator)
- <> (operator)
- Add (function)
- And (Boolean operator function)
- Arc (procedure)
- ArcN (procedure)
- BeginParagraph … EndParagraph (procedure)
- BeginUTF8Paragraph … EndUTF8Paragraph (procedure)
- BitmapWidth/BitmapHeight (function)
- Breakpoint (procedure)
- C128 (function)
- CallPPD (procedure)
- Char (function)
- Ceil (function)
- ClearPage (procedure)
- ClosePath (procedure)
- Cos (function)
- CRLF (procedure)
- Current (system object)
- currentiteration (variable)
- CurToStr (function)
- CurveTo/RCurveTo (procedure)
- Date (function)
- Define (procedure)
- DefineData (procedure)
- DefineImageIndex (procedure)
- Directory
- Div (function)
- DoForm (procedure)
- &EOJob (system variable)
- EPSWidth/EPSHeight (function)
- Eq (function)
- ExecPage (procedure)
- Exit (procedure)
- Field (function)
- FieldCount (function)
- FieldName (function)
- Fill (procedure)
- Find (function)
- &FirstSide (system variable)
- FloatToInt (function)
- FloatToStr (function)
- For… EndFor (procedure)
- Function @name (procedure)
- GE (function)
- Get (function)
- GetBlack (function)
- GetCyan (function)
- GetMagenta (function)
- GetNextDataPage(procedure)
- GetYellow (function)
- GRestore (procedure)
- GSave (procedure)
- GT (function)
- &Height (system variable)
- If (function)
- If … ElseIf… EndIf (procedure)
- IntToFloat (function)
- IntToStr (function)
- InStream... EndInStream (procedure)
- IsNumber (function)
- IsPageEmpty (function)
- iterationcount (variable)
- LE (function)
- Left (function)
- Length (function)
- LineTo/RLineTo (procedure)
- LowerCase (function)
- LT (function)
- MapUTF8 (function)
- Margin (procedure)
- Mid (function)
- Mod (function & procedure)
- MoveTo/RMoveTo (procedure)
- Mul (function)
- NE (function)
- Neg (function)
- Not (Boolean operator function)
- Object $name()... EndObject (procedure)
- Or (Boolean operator function)
- Ord (function)
- OutputDebugString (procedure)
- PassThrough (procedure)
- PDFPageCount (function)
- PDFWidth/PDFHeight (function)
- Physical (system object)
- Pie (procedure)
- PixelHeight (function)
- PixelWidth (function)
- Pos (function)
- &PrinterMode (system variable)
- Put (procedure)
- Random (function)
- Rectangle (procedure)
- RectFill (procedure)
- RectFillStroke (procedure)
- RectStroke (procedure)
- Repeat... Until (procedure)
- ResourceType (function)
- Right (function)
- RunPS (procedure)
- Scale (procedure)
- Search … EndSearch (procedure)
- SelectMedia (procedure)
- Set (procedure)
- SetAngle (procedure)
- SetBodyText (procedure)
- SetDash(procedure)
- SetDataPage(procedure)
- SetEmailAddress (procedure)
- SetEmailSubject (procedure)
- SetEmulation(procedure)
- SetFaxInformation (procedure)
- SetFaxNumber (procedure)
- SetFillColor (procedure)
- SetStyle (procedure)
- SetStyleExt (procedure)
- SetImageIndex (procedure)
- SetLineWidth (procedure)
- SetLPP(procedure)
- SetPDFBookmark (procedure)
- SetStrokeColor (procedure)
- Show / ShowCenter / ShowRight (procedure)
- ShowBarCode (procedure)
- ShowBitmap (procedure)
- ShowEPS (procedure)
- ShowLeftRight (procedure)
- ShowPage (procedure)
- ShowPDF (procedure)
- ShowUTF8 (procedure)
- ShowUTF8Left / ShowUTF8Right / ShowUTF8Center (procedure)
- Sin (function)
- StopJob (procedure)
- Store (procedure)
- &Str (system variable)
- StringReplace (function)
- StringWidth (function)
- StringWidthUTF8 (function)
- Strip (function)
- Stroke (procedure)
- StrokeAndFill (procedure)
- StrToCur (function)
- StrToFloat (function)
- StrToInt (function)
- Sub (function)
- SubRecCount (function)
- System (system object)
- Time (function)
- Translate (procedure)
- Trim (function)
- TrimLeft (function)
- TrimRight (function)
- UpperCase (function)
- &Width (system variable)
- XOr (Boolean operator function)
- xmlCount()
- xmlGet()
- xmlResetRoot()
- xmlSetRoot()
- Language Reference (Alphabetical)
- Conversion Tables
- Index
Detailed Directions
21
Remember that arguments can be variables. The following returns the string of data found on line &line,
from column &col1 to column &col2 of the current data page:
@(&line, &col1, &col2)
You usually assign the result of a function to a variable or use it as an argument to another command. For
example:
&customer_name := @(&line, &col1, &col2)
You can also use the Data Selector to insert a PlanetPress Talk data selection command. This is often
quicker and more convenient than manually typing the data selection command. Consult the PlanetPress
Design User Guide, and in particular the area of the PlanetPress Design user interface you are using to enter
PlanetPress Talk code, for help.
Use Functions as Arguments
You can nest functions so that the value returned by one function becomes the argument for another
function. For example, in the following example, the string returned by the @ function becomes one of two
arguments for the strip function:
strip('*',@(36,25,58))
As a more complex example, consider the following:
if((pos('BLACK', strip( ' ', @(36,25,58))) > 0 ), 'old', 'new')
It returns the string ‘old’ if the data selection contains the string ‘BLACK’ and ‘new’ if it does not. When the
PlanetPress Talk interpreter evaluates the statement, it first selects the data on line 36 of the current data
page, from columns 25 through 58. It then sends that data to the strip command which removes all spaces
in the data. It then sends the data (which now contains no spaces) to the pos command, which determines
whether it contains the string ‘BLACK’. Finally, it compares the value returned by the pos command to 0,
and returns the value of that comparison to the if command.
Debug Scripts
The PlanetPress Talk Editor has a solid set of features for debugging PlanetPress Talk scripts, including
execution control, breakpoints, spies, expression evaluation, and changing the value of a variable during
execution. Consult the PlanetPress Design Talk Editor section of the PlanetPress Design User Guide for a
description of these features, and suggestions on other debugging techniques.
PlanetPress Talk includes a breakpoint command that you can enter anywhere you can enter a PlanetPress
Talk script. See “Breakpoint (procedure)” on page 74.
PlanetPress Design reports errors in PlanetPress Talk code in two places: the status bar of a dialog box
when you are entering a PlanetPress Talk expression in a text box within that dialog box, and the Messages
area of the PlanetPress Design Program Window (consult the PlanetPress Design User Guide for a










